Saltar al contenido principal

Provincias y CABA

Campo customer.stateId · no se envía a ARCA, se guarda con el comprobante

Son 24 jurisdicciones: las 23 provincias argentinas más la Ciudad Autónoma de Buenos Aires, que no es una provincia sino un distrito autónomo, pero cuenta como jurisdicción propia a efectos de Ingresos Brutos y del Convenio Multilateral. ARCA le asigna el código 0.

CódigoJurisdicciónCódigoJurisdicción
0Ciudad Autónoma de Buenos Aires (distrito)13Santiago del Estero
1Buenos Aires14Tucumán
2Catamarca16Chaco
3Córdoba17Chubut
4Corrientes18Formosa
5Entre Ríos19Misiones
6Jujuy20Neuquén
7Mendoza21La Pampa
8La Rioja22Río Negro
9Salta23Santa Cruz
10San Juan24Tierra del Fuego
11San Luis
12Santa Fe

Los códigos no son correlativos: el 15 no se usa. La numeración es de ARCA y no sigue un orden alfabético ni geográfico, así que conviene tomarla de esta tabla en vez de deducirla.

Omitir el campo, o mandar null, significa "jurisdicción no informada" y es un valor válido.

Por qué conviene mandarla

stateId es opcional a nivel técnico pero muy recomendado. Es el único dato estructurado de ubicación que queda guardado con el comprobante: address es texto libre y no se puede agrupar ni filtrar de forma confiable.

Con la provincia cargada podés después:

  • Saber cómo se reparte tu facturación por jurisdicción, que es la base de cualquier liquidación de Ingresos Brutos y del Convenio Multilateral.
  • Armar reportes de impuestos por provincia sin trabajo manual ni planillas paralelas.
  • Hacer que el PDF imprima las leyendas provinciales que correspondan (defensa al consumidor, IIBB local). Sin stateId, esas leyendas no aparecen.
No se puede reconstruir hacia atrás

Si no mandaste la provincia al emitir, ese dato no existe más. No hay forma de deducirlo del domicilio en texto libre de manera confiable, y el comprobante ya está autorizado: no se modifica.

Es una decisión que sólo se puede tomar una vez, en el momento de emitir.

null es mejor que inventar

Mandá null cuando genuinamente no sepas de dónde es el receptor. Es un valor legítimo que significa "no informada".

No pongas 0 por defecto: 0 es CABA, y te ensucia los reportes con facturación que no es de CABA. Un null honesto es un dato que falta; un 0 inventado es un dato equivocado, y es peor porque no se nota.

Traelo del padrón

GET /:id-empresa/arca/padron/:docNumber devuelve stateId ya codificado, y null cuando el contribuyente no tiene domicilio cargado. Podés reenviarlo tal cual.

En JavaScript, PHP y Python

PROVINCIAS.SANTA_FE // 12
PROVINCIAS.BUENOS_AIRES // 1
PROVINCIAS.CABA // 0
PROVINCIAS.CORDOBA // 3

Constantes para los tres lenguajes en el repositorio de ejemplos.