Obtener CUIT con DNI

RunLLM
RunLLM

Sí, con Afip SDK podés obtener el CUIT a partir de un DNI usando el web service "padrón alcance 13". Primero consultás el CUIT con el método getTaxIDByDocument y luego, si existe, podés usar ese CUIT para facturar o consultar más datos del contribuyente. Si el DNI no tiene CUIT asociado, la consulta devuelve null o error. Ejemplo en Python:

from afip import Afip
afip = Afip({"access_token": "TU_ACCESS_TOKEN", "CUIT": XXXXX})
tax_id = afip.RegisterScopeThirteen.getTaxIDByDocument(30111222)
if tax_id:
    print("CUIT encontrado:", tax_id)
else:
    print("No se encontró CUIT para ese DNI")

Según la documentación, este flujo es válido para desarrollo y producción, pero no todos los DNIs tienen CUIT asociado, especialmente en ambiente de pruebas. ¿Te gustaría ver el ejemplo para otro lenguaje o detalles sobre cómo usar el CUIT para facturar?

Sources:

Manu
Manu

@user Pero esa operacion debe estar autorizada para el cuit emisor o no?

RunLLM
RunLLM

Sí, para consultar el padrón alcance 13 y obtener el CUIT a partir de un DNI, el CUIT emisor debe tener autorizado el web service correspondiente ("ws_sr_padron_a13") en ARCA. Si no está autorizado, recibirás un error de autorización al intentar la consulta. Debés autorizar el servicio desde la cuenta de AFIP del CUIT emisor antes de usarlo en producción o pruebas.

¿Querés saber cómo autorizar el web service paso a paso?

Sources:

Manu
Manu

@user Como se puede autorizar para ese caso específico

RunLLM
RunLLM

Debés autorizar el web service "ws_sr_padron_a13" para el CUIT emisor desde el administrador de relaciones de AFIP/ARCA. Ingresá con clave fiscal, seleccioná "Nueva Relación", elegí el servicio "Consulta de Padrón Alcance 13", asociá el certificado correspondiente y confirmá la autorización. Si usás Afip SDK, podés automatizar este proceso con la automatización de autorización de web service de producción.

¿Querés el paso a paso detallado o el ejemplo de automatización con código?

Sources:

Manu
Manu

@user ejemplo de automatizacion para ese servicio

RunLLM
RunLLM

Para automatizar la autorización del web service "ws_sr_padron_a13" con Afip SDK, usá la automatización "auth-web-service-prod" y pasá como parámetro service: "ws_sr_padron_a13". Ejemplo en Python:

from afip import Afip
afip = Afip({"access_token": "TU_ACCESS_TOKEN"})
data = {
    "cuit": "XXXXX",
    "username": "20111111112",
    "password": "contraseña#segura?",
    "alias": "afipsdk",
    "service": "ws_sr_padron_a13"
}
response = afip.createAutomation("auth-web-service-prod", data, True)
print(response)

Esto autoriza el servicio para el CUIT y certificado indicados. ¿Te gustaría el ejemplo en otro lenguaje o más detalles sobre la respuesta?

Sources: