PanDaaS · API
Data as a Service. Catálogos argentinos limpios, versionados y servidos por HTTP: marcas y modelos de vehículos, y los nomencladores de ARCA que necesita un sistema de facturación.
- URL base
https://api.pandaas.com.ar- Versión
- 3.3.0
- Formato
- JSON, campos en
camelCase, codificación UTF-8 - Verbos
- Solo
GET: los catálogos son de lectura
Todo lo que ves en esta página está también en /help como JSON, y en /openapi como especificación OpenAPI 3 lista para importar en Postman o para generar un cliente.
Autenticación
Cada llamada lleva un token en el encabezado Authorization. Los tokens se administran en el panel.
curl -H "Authorization: Bearer a1b2c3d4e5f60718293a4b5c6d7e8f90" \
https://api.pandaas.com.ar/autobase/segments- Formato del token
- 32 caracteres hexadecimales
- Sin token o inválido
401 Unauthorized- Cupo mensual agotado
429 Too Many Requests
Los endpoints de Sistema son abiertos: podés revisar la documentación y el estado del servicio antes de tener una credencial.
AutoBase
Marcas, modelos y segmentos de vehículos del mercado argentino. Es el catálogo que usan las aseguradoras, las concesionarias y los talleres para no mantener cada uno su propia lista.
GET /autobase/makes
Lista las marcas ordenadas por nombre.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
onlyValidated | query | boolean | true | Dejalo en true para recibir solo las marcas revisadas. En false vienen también las provisionales, que son fichas cargadas automáticamente y todavía sin revisión editorial. |
Devuelve Make[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/autobase/makesGET /autobase/makes/{id}
Devuelve una marca por su identificador.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Identificador de la marca. |
Devuelve Make
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/autobase/makes/1GET /autobase/makes/{id}/models
Modelos de una marca. Es un atajo de /autobase/models?makeId={id}, para no tener que armar la query desde el cliente.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Identificador de la marca. |
onlyValidated | query | boolean | true | Excluye los modelos pendientes de revisión. |
Devuelve Model[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/autobase/makes/1/modelsGET /autobase/models
Lista modelos. Sin filtros devuelve el catálogo completo, que son más de 6.600 fichas: para un combo encadenado conviene filtrar siempre por marca.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
makeId | query | integer? | — | Restringe a una marca. |
segmentId | query | integer? | — | Restringe a un segmento. |
onlyValidated | query | boolean | true | Excluye los modelos pendientes de revisión. |
Devuelve Model[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/autobase/modelsGET /autobase/models/{id}
Devuelve un modelo por su identificador.
Los Ids no se rompen. Si el que pedís correspondía a un modelo duplicado que se fusionó con otro, recibís el modelo que quedó, con su propio Id: si el id de la respuesta no es el que pediste, guardá el nuevo.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Identificador del modelo. |
Devuelve Model
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/autobase/models/1GET /autobase/segments
Lista todos los segmentos.
Devuelve Segment[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/autobase/segmentsGET /autobase/segments/{id}
Devuelve un segmento por su identificador.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Identificador del segmento. |
Devuelve Segment
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/autobase/segments/1ARCABase
GET /arcabase/cities
Lista localidades. Sin filtros son 2.372 filas: para un autocompletado usá search, y para un combo encadenado, provinceId.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
provinceId | query | integer? | — | Restringe a una provincia. |
search | query | string | — | Devuelve solo las localidades cuyo nombre empieza con este texto. No distingue mayúsculas ni acentos. |
Devuelve City[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/citiesGET /arcabase/cities/{id}
Devuelve una localidad por su identificador.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Identificador de la localidad. |
Devuelve City
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/cities/1GET /arcabase/concepts
Conceptos: producto, servicios o ambos. Define si ARCA va a exigir las fechas de servicio en el comprobante.
Devuelve Concept[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/conceptsGET /arcabase/countries
Países del nomenclador de ARCA, para los comprobantes de exportación.
Devuelve Country[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/countriesGET /arcabase/currencies
Monedas admitidas, ordenadas por nombre. "PES" son pesos argentinos.
Devuelve Currency[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/currenciesGET /arcabase/identity-document-types
Lista todos los tipos de documento.
Devuelve IdentityDocumentType[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/identity-document-typesGET /arcabase/identity-document-types/{id}
Devuelve un tipo de documento por su código.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Código oficial del tipo de documento (DocTipo). |
Devuelve IdentityDocumentType
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/identity-document-types/1GET /arcabase/invoice-type-rules
Lista las combinaciones habilitadas.
Cubre a los cinco emisores de la facturación electrónica: Responsable Inscripto (clases A, B, M y E), Exento y los tres monotributos (C y E). Por cada clase trae factura, nota de débito y nota de crédito. Las demás condiciones —consumidor final, no categorizado, del exterior— no emiten, así que no aparecen como emisoras.
La M aparece como posible para el Responsable Inscripto porque la emite en lugar de la A cuando ARCA se la asigna; si no te la asignaron, emití A. La E es exportación y va al cliente del exterior.
Se arma con dos fuentes: qué clase emite cada condición (RG 1415) y qué receptores admite cada clase según la tabla de ARCA (FEParamGetCondicionIvaReceptor). Un responsable inscripto le emite Factura A a un monotributista desde la RG 5.003.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
emitterId | query | integer? | — | Condición frente al IVA de quien emite. |
recieverId | query | integer? | — | Condición frente al IVA de quien recibe. |
Devuelve InvoiceTypeRule[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/invoice-type-rulesGET /arcabase/invoice-types
Lista los tipos de comprobante.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
letter | query | string | — | Filtra por letra del comprobante (A, B, C, M, E, R). Sin filtro devuelve los 96, incluidos los 20 cuya denominación oficial no nombra ninguna letra. |
onlyElectronic | query | boolean | false | Deja solo los 36 que se pueden emitir por el web service de facturación electrónica. La tabla completa es el nomenclador de ARCA e incluye comprobantes en papel y de regímenes especiales: si estás armando el combo de un sistema que factura, querés esto en true. |
Devuelve InvoiceType[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/invoice-typesGET /arcabase/invoice-types/{id}
Devuelve un tipo de comprobante por su código de ARCA.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Código oficial del comprobante (CbteTipo). |
Devuelve InvoiceType
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/invoice-types/1GET /arcabase/iva-rates
Alícuotas de IVA. El id va en cada ítem del array de IVA del comprobante; el campo percent trae el mismo valor como número, para no tener que parsear "10.5%".
Devuelve IvaRate[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/iva-ratesGET /arcabase/provinces
Lista las 25 provincias.
Devuelve Province[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/provincesGET /arcabase/provinces/{id}
Devuelve una provincia por su código.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Código de provincia de PanDaaS (1 a 25). |
Devuelve Province
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/provinces/1GET /arcabase/provinces/{id}/cities
Localidades de una provincia. Atajo de /arcabase/cities?provinceId={id}.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Código de la provincia. |
Devuelve City[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/provinces/1/citiesGET /arcabase/responsable-types
Lista las condiciones frente al IVA.
Para armar el combo del receptor en un sistema que factura, pedí invoiceClass con la letra del comprobante que vas a emitir: vuelven solo las condiciones que ARCA acepta para esa letra, y el error de informar una incompatible (el 10242) no puede ocurrir.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
onlyCurrent | query | boolean | true | Dejalo en true para recibir solo las 11 condiciones que ARCA acepta hoy. En false vienen también las derogadas —"IVA Responsable no Inscripto", "Pequeño Contribuyente Eventual"—, marcadas con isCurrent en false y con currentEquivalentId apuntando a su reemplazo. Sirven para migrar datos viejos, no para facturar. |
invoiceClass | query | string | — | Letra del comprobante: A, B, C o M. Filtra a las condiciones que ARCA admite como receptor de esa clase. |
Devuelve ResponsableType[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/responsable-typesGET /arcabase/responsable-types/{id}
Devuelve una condición por su código, vigente o derogada.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
id obligatorio | ruta | integer | — | Código de la condición. En las vigentes es el código de ARCA. |
Devuelve ResponsableType
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/responsable-types/1GET /arcabase/tax-types
Tipos de tributo que pueden sumarse a un comprobante: percepciones, ingresos brutos, impuestos provinciales y municipales.
Devuelve TaxType[]
curl -H "Authorization: Bearer $PANDAAS_TOKEN" https://api.pandaas.com.ar/arcabase/tax-typesSistema
GET / sin token
Documentación de la API en HTML.
curl https://api.pandaas.com.ar/GET /help sin token
Catálogo completo de la API: datasets, endpoints, parámetros, modelos de respuesta y códigos de error.
Se arma por reflexión sobre las rutas que la aplicación tiene registradas, no de una lista escrita a mano, así que nunca queda desfasado del código que efectivamente está corriendo.
Devuelve CatalogoApi
curl https://api.pandaas.com.ar/helpGET /help/{dataset} sin token
Los endpoints de un dataset, para no traerse el catálogo entero.
| Parámetro | En | Tipo | Por defecto | Descripción |
|---|---|---|---|---|
dataset obligatorio | ruta | string | — | Nombre del dataset: AutoBase, ARCABase o Sistema. |
Devuelve GrupoDoc
curl https://api.pandaas.com.ar/help/1GET /openapi sin token
Devuelve la API descrita en OpenAPI 3.0.3.
Sale del mismo catálogo que /help, así que las tres vistas —la página HTML, el JSON de /help y esta especificación— no pueden contradecirse entre sí.
curl https://api.pandaas.com.ar/openapiGET /openapi.json sin token
Alias con extensión, que es lo que esperan algunas herramientas. Necesita el handler declarado en el Web.config: si no, IIS trata el .json como archivo estático y responde 404 sin llegar acá.
curl https://api.pandaas.com.ar/openapi.jsonGET /status sin token
Dice si la API está viva y si llega a la base.
Existe por un motivo concreto: entre enero y agosto de 2026 la API respondió 500 en todos sus endpoints porque el binario publicado consultaba tablas que habían sido renombradas, y nadie se enteró. Este endpoint es lo que hace que eso se note el mismo día.
curl https://api.pandaas.com.ar/statusCódigos de error
| Código | Significado | Qué hacer |
|---|---|---|
200 | OK | El cuerpo trae el recurso pedido. |
400 | Parámetro inválido | Revisá tipos y valores contra la sección de parámetros del endpoint. |
401 | Token ausente, inexistente, desactivado o vencido | El cuerpo aclara el motivo en el campo 'error'. Los tokens se administran en admin.pandaas.com.ar. |
404 | El recurso no existe | El id pedido no está en el catálogo. No es un error de integración. |
429 | Límite mensual del token superado | Esperá al mes que viene o pedí que te amplíen el cupo. |
500 | Error del servidor | Escribinos: es nuestro. Guardamos el request en el log de consultas. |
Modelos
Los objetos que devuelven los endpoints. Los nombres van en camelCase, como salen serializados.
AutenticacionDoc
| Campo | Tipo | Descripción |
|---|---|---|
tipo | string puede ser null | |
encabezado | string puede ser null | |
formato | string puede ser null | |
dondeObtenerlo | string puede ser null | |
siFalta | string puede ser null | |
siSePasaDelCupo | string puede ser null |
CatalogoApi
El catálogo que sirve /help.
No hay una lista de endpoints escrita a mano en ningún lado: esto recorre las rutas que Web API tiene registradas de verdad y les pega encima los comentarios /// del código. Un controller nuevo aparece en la documentación por el solo hecho de existir, y un endpoint que se borra desaparece. Es la única forma de que la documentación de un producto que se vende como API no se atrase.
| Campo | Tipo | Descripción |
|---|---|---|
producto | string puede ser null | |
version | string puede ser null | |
descripcion | string puede ser null | |
baseUrl | string puede ser null | |
autenticacion | AutenticacionDoc puede ser null | |
datasets | GrupoDoc[] puede ser null | |
modelos | string[] puede ser null | |
errores | ErrorDoc[] puede ser null | |
todosLosEndpoints | EndpointDoc[] puede ser null | Todos los endpoints en una sola lista, sin agrupar. Es una comodidad para el código que consume el catálogo dentro de la aplicación, no parte de la respuesta: serializarla repetiría entero el contenido de Datasets y duplicaría el tamaño de /help. |
City
Localidad, con la provincia a la que pertenece embebida.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Identificador estable de la localidad. |
name | string puede ser null | Nombre de la localidad. |
province | Province puede ser null | Provincia a la que pertenece. Nunca es null. |
Concept
Concepto del comprobante: si lo que se factura son productos, servicios o ambos. Va en el campo Concepto, y determina si ARCA exige las fechas de servicio.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código oficial del concepto. |
name | string puede ser null | Denominación. |
Country
País, del nomenclador de ARCA. Se usa en los comprobantes de exportación.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código oficial del país. |
name | string puede ser null | Nombre del país. |
Currency
Moneda del comprobante. El va en el campo MonId.
| Campo | Tipo | Descripción |
|---|---|---|
id | string puede ser null | Código de ARCA: "PES" para pesos, "DOL" para dólar estadounidense. |
name | string puede ser null | Denominación de la moneda. |
EndpointDoc
| Campo | Tipo | Descripción |
|---|---|---|
metodo | string puede ser null | |
ruta | string puede ser null | |
descripcion | string puede ser null | |
requiereToken | boolean | |
devuelve | string puede ser null | |
parametros | ParametroDoc[] puede ser null | |
ejemplo | string puede ser null |
ErrorDoc
| Campo | Tipo | Descripción |
|---|---|---|
codigo | integer | |
significado | string puede ser null | |
queHacer | string puede ser null |
GrupoDoc
| Campo | Tipo | Descripción |
|---|---|---|
nombre | string puede ser null | |
descripcion | string puede ser null | |
endpoints | EndpointDoc[] puede ser null |
IdentityDocumentType
Tipo de documento de identidad del nomenclador de ARCA (CUIT, CUIL, DNI, pasaporte, etc.). El es el código oficial que viaja en el campo DocTipo de la facturación electrónica.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código oficial de ARCA (DocTipo). |
name | string puede ser null | Denominación del tipo de documento. |
InvoiceType
Tipo de comprobante del nomenclador de ARCA (ex AFIP): factura, nota de crédito, recibo, etc. El es el código oficial que viaja en el campo CbteTipo de los web services de facturación electrónica.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código oficial de ARCA (CbteTipo). |
name | string puede ser null | Denominación completa, por ejemplo "NOTAS DE CREDITO A". |
abreviation | string puede ser null | Abreviatura de uso corriente ("NC A"), o null si no tiene. |
letter | string puede ser null | Letra del comprobante (A, B, C, M, E, R), o null si su denominación oficial no nombra ninguna. |
wsfeEnabled | boolean | true si se puede emitir por el web service de facturación electrónica. La tabla es el nomenclador completo de ARCA e incluye comprobantes en papel y de regímenes especiales: de los 96, 36 son electrónicos. |
InvoiceTypeRule
Una combinación válida emisor / receptor / tipo de comprobante.
Es la regla que responde la pregunta que se hace cualquier sistema de facturación antes de emitir: "siendo yo responsable inscripto y mi cliente consumidor final, ¿qué comprobantes puedo emitirle?".
| Campo | Tipo | Descripción |
|---|---|---|
emitter | ResponsableType puede ser null | Condición frente al IVA de quien emite. |
reciever | ResponsableType puede ser null | Condición frente al IVA de quien recibe. |
invoiceType | InvoiceType puede ser null | Comprobante habilitado para esa combinación. |
IvaRate
Alícuota de IVA. El es el código que viaja en el campo Id de cada ítem del array Iva de la facturación electrónica.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código oficial de la alícuota. |
name | string puede ser null | Como la nombra ARCA: "21%", "10.5%". |
percent | number? puede ser null | El mismo valor como número, para calcular sin parsear el nombre. |
Make
Marca de vehículo.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Identificador estable de la marca. |
name | string puede ser null | Nombre comercial, tal como lo usa la terminal. |
isProvisional | boolean | true cuando la ficha se cargó de forma provisional y todavía no pasó por la revisión editorial. Por defecto la API no las devuelve. |
logoUrl | string puede ser null | URL absoluta del logo, o null si la marca no tiene logo cargado. |
Model
Modelo de vehículo, con su marca y su segmento embebidos.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Identificador estable del modelo. |
name | string puede ser null | Denominación del modelo, sin la marca adelante. |
make | Make puede ser null | Marca a la que pertenece. Nunca es null. |
segment | Segment puede ser null | Segmento asignado, o null si todavía no se clasificó. |
isProvisional | boolean | true si la ficha está pendiente de revisión editorial. |
ParametroDoc
| Campo | Tipo | Descripción |
|---|---|---|
nombre | string puede ser null | |
en | string puede ser null | |
tipo | string puede ser null | |
requerido | boolean | |
porDefecto | string puede ser null | |
descripcion | string puede ser null |
Province
Provincia argentina.
Atención: el es el código propio de PanDaaS, no el del nomenclador de ARCA. El esquema es 1 = Buenos Aires (interior), 2 = Gran Buenos Aires, 3 = Capital Federal y de 4 en adelante el resto en orden alfabético. Es el corte que usan los operadores logísticos argentinos, y es el que referencian las localidades de esta misma base. Para cruzar con otros sistemas, usá .
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código de provincia de PanDaaS (1 a 25). |
name | string puede ser null | Nombre de la provincia. |
isoCode | string puede ser null | Código ISO 3166-2:AR ("AR-X" para Córdoba, "AR-C" para la Ciudad de Buenos Aires). Es el identificador estándar para cruzar con mapas, operadores logísticos y cualquier sistema fuera de PanDaaS. Interior de Buenos Aires y Gran Buenos Aires comparten "AR-B": para ISO son la misma provincia. |
ResponsableType
Condición del contribuyente frente al IVA: responsable inscripto, monotributista, consumidor final, exento, etc.
El de las condiciones vigentes es el código oficial que ARCA espera en el campo CondicionIVAReceptorId de la facturación electrónica (tabla FEParamGetCondicionIvaReceptor). Desde el 01/12/2026 la RG 5.616 lo hace obligatorio y ARCA rechaza el comprobante que informa un código inexistente o incompatible con la letra.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código de la condición. En las vigentes, es el código de ARCA. |
name | string puede ser null | Denominación, tal como figura en la tabla de ARCA. |
isCurrent | boolean | true si ARCA acepta hoy este código en CondicionIVAReceptorId. Las no vigentes son figuras derogadas —"IVA Responsable no Inscripto", "Pequeño Contribuyente Eventual"— que se conservan porque pueden estar guardadas en sistemas viejos, pero no se pueden informar. |
currentEquivalentId | integer? puede ser null | Para una condición derogada, la vigente que la reemplaza; null en las vigentes. Las equivalencias son razonables pero no idénticas: ante un caso real conviene revisar al contribuyente, no confiar a ciegas en el reemplazo. |
Segment
Segmento de mercado de un modelo (hatchback, SUV, pick-up, etc.).
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Identificador estable del segmento. |
name | string puede ser null | Nombre del segmento. |
TaxType
Tipo de tributo que puede sumarse a un comprobante: percepciones, impuestos provinciales, ingresos brutos.
| Campo | Tipo | Descripción |
|---|---|---|
id | integer | Código oficial del tributo. |
name | string puede ser null | Denominación. |