MENU navbar-image

Introducción

Esta documentación tiene como objetivo brindarte toda la información necesaria para trabajar con nuestra API.

<aside>A medida que navegues, verás ejemplos de código para trabajar con la API en diferentes lenguajes de programación en el área oscura a la derecha (o como parte del contenido en dispositivos móviles).
Podés cambiar el lenguaje usado con las pestañas en la parte superior derecha (o desde el menú de navegación en la parte superior izquierda en móviles).</aside>

Autenticación de solicitudes

Para autenticar solicitudes, incluí un encabezado Authorization con el valor "Bearer Bearer {YOUR_TOKEN}".

Todos los endpoints autenticados están marcados con una insignia requiere autenticación en la documentación a continuación.

Para obtener el token, inicia sesión con tus credenciales. El token será devuelto en la respuesta y deberá ser usado en el encabezado Authorization.

Cuenta

Consultar la configuración de la cuenta.

requiere autenticación

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/account/config" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/account/config"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (200):


{
    "config_comprobantes_validar_total_items": "true",
    "config_comprobantes_margen_total_items": "0.01"
}
 

Solicitud      

GET api/account/config

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Actualizar la configuración de la cuenta.

requiere autenticación

Permite actualizar las opciones de comprobantes del usuario autenticado. También conserva compatibilidad con el formato anterior basado en key y value.

Solicitud de ejemplo:
curl --request PUT \
    "http://localhost/api/account/config" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"config_comprobantes_validar_total_items\": true,
    \"config_comprobantes_margen_total_items\": \"0.01\",
    \"key\": \"config_comprobantes_margen_total_items\",
    \"value\": \"0.01\",
    \"code\": \"user_config\",
    \"data_type\": \"decimal\",
    \"serialized\": false
}"
const url = new URL(
    "http://localhost/api/account/config"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "config_comprobantes_validar_total_items": true,
    "config_comprobantes_margen_total_items": "0.01",
    "key": "config_comprobantes_margen_total_items",
    "value": "0.01",
    "code": "user_config",
    "data_type": "decimal",
    "serialized": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Respuesta de ejemplo (200):


{
    "message": "¡Los datos fueron actualizados con éxito!",
    "data": {
        "config_comprobantes_validar_total_items": "true",
        "config_comprobantes_margen_total_items": "0.01"
    }
}
 

Solicitud      

PUT api/account/config

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Parámetros del cuerpo

config_comprobantes_validar_total_items   boolean  optional    

Activa o desactiva la validación del total contra los subtotales de items. Ejemplo: true

config_comprobantes_margen_total_items   numeric  optional    

Margen permitido para la diferencia entre total e items. Ejemplo: 0.01

key   string  optional    

Clave de configuración para el formato legacy. Ejemplo: config_comprobantes_margen_total_items

value   string  optional    

Valor de configuración para el formato legacy. Ejemplo: 0.01

code   string  optional    

Código de grupo para el formato legacy. Ejemplo: user_config

data_type   string  optional    

Tipo de dato para el formato legacy. Ejemplo: decimal

serialized   boolean  optional    

Indica si el valor legacy está serializado. Ejemplo: false

Solicitudes

Generar token de API

requiere autenticación

Inicia sesión con email y contraseña, y devuelve un token de acceso.

Solicitud de ejemplo:
curl --request POST \
    "http://localhost/api/login" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"username\": \"usuario@email.com\",
    \"password\": \"secret123\"
}"
const url = new URL(
    "http://localhost/api/login"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "username": "usuario@email.com",
    "password": "secret123"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Solicitud      

POST api/login

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Parámetros del cuerpo

username   string     

Email del usuario. Ejemplo: usuario@email.com

password   string     

Contraseña del usuario. Ejemplo: secret123

Revocar el token

requiere autenticación

Revoca el token actual del usuario y cierra la sesión.

Solicitud de ejemplo:
curl --request POST \
    "http://localhost/api/logout" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/logout"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Solicitud      

POST api/logout

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Listado de alícuotas

requiere autenticación

Devuelve una lista de alícuotas obtenidas desde ARCA.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/arca/alicuotas" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/arca/alicuotas"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/arca/alicuotas

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Listado de conceptos

requiere autenticación

Devuelve una lista de conceptos obtenidos desde ARCA.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/arca/conceptos" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/arca/conceptos"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/arca/conceptos

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Obtener PDF de comprobante.

requiere autenticación

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/comprobantes/1/pdf/obtener" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/comprobantes/1/pdf/obtener"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/comprobantes/{comprobante_com_id}/pdf/obtener

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Parámetros de URL

comprobante_com_id   integer     

ID del comprobante. Ejemplo: 1

Generar PDF de comprobante.

requiere autenticación

Solicitud de ejemplo:
curl --request PUT \
    "http://localhost/api/comprobantes/1/pdf/generar" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"pdf_template\": \"comprobante_A\",
    \"pdf_datos\": {
        \"tipo_cbte_desc\": \"Factura A\",
        \"receptor_nombre\": \"Juan Perez\",
        \"receptor_localidad\": \"Bahia Blanca\",
        \"receptor_cod_postal\": \"8000\",
        \"receptor_calle\": \"Mitre\",
        \"receptor_calle_nro\": \"123\",
        \"receptor_telefono\": \"2911234567\"
    }
}"
const url = new URL(
    "http://localhost/api/comprobantes/1/pdf/generar"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "pdf_template": "comprobante_A",
    "pdf_datos": {
        "tipo_cbte_desc": "Factura A",
        "receptor_nombre": "Juan Perez",
        "receptor_localidad": "Bahia Blanca",
        "receptor_cod_postal": "8000",
        "receptor_calle": "Mitre",
        "receptor_calle_nro": "123",
        "receptor_telefono": "2911234567"
    }
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Solicitud      

PUT api/comprobantes/{comprobante_com_id}/pdf/generar

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Parámetros de URL

comprobante_com_id   integer     

ID del comprobante. Ejemplo: 1

Parámetros del cuerpo

pdf_template   string     

Nombre del template de PDF. Ejemplo: comprobante_A

pdf_datos   object     

Datos para completar el PDF.

tipo_cbte_desc   string     

Descripción del comprobante. Ejemplo: Factura A

receptor_nombre   string     

Nombre del cliente. Ejemplo: Juan Perez

receptor_localidad   string     

Localidad del cliente. Ejemplo: Bahia Blanca

receptor_cod_postal   string     

Código postal. Ejemplo: 8000

receptor_calle   string  optional    

Calle del cliente. Ejemplo: Mitre

receptor_calle_nro   string  optional    

Número de calle. Ejemplo: 123

receptor_telefono   string  optional    

Teléfono del cliente. Ejemplo: 2911234567

Listado de puntos de venta

requiere autenticación

Devuelve una lista de puntos de venta obtenidos desde ARCA.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/arca/puntos-venta" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/arca/puntos-venta"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/arca/puntos-venta

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Listado de templates.

requiere autenticación

Devuelve una lista de templates.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/templates?sortBy=tem_nombre&rowsPerPage=10&descending=1&filter=comprobante_A" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/templates"
);

const params = {
    "sortBy": "tem_nombre",
    "rowsPerPage": "10",
    "descending": "1",
    "filter": "comprobante_A",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/templates

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Parámetros de consulta

sortBy   string  optional    

Campo por el que se ordenarán los resultados. Ejemplo: tem_nombre

rowsPerPage   integer  optional    

Cantidad de resultados por página. Ejemplo: 10

descending   boolean  optional    

Si es false, ordena en forma ascendente. Si es true, ordena descendente. Afecta al campo especificado en sortBy. Ejemplo: true

filter   string  optional    

Filtro de búsqueda por nombre. Ejemplo: comprobante_A

Listado de tipos de comprobantes

requiere autenticación

Devuelve una lista de tipos de comprobantes obtenidos desde ARCA.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/arca/tipos-comprobantes" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/arca/tipos-comprobantes"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/arca/tipos-comprobantes

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Listado de tipos de documentos

requiere autenticación

Devuelve una lista de tipos de documentos obtenidos desde ARCA.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/arca/tipos-documentos" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/arca/tipos-documentos"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/arca/tipos-documentos

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Listado de tipos de datos opcionales

requiere autenticación

Devuelve una lista de tipos de datos opciones obtenidos desde ARCA.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/arca/tipos-opcional" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://localhost/api/arca/tipos-opcional"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/arca/tipos-opcional

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Listado de comprobantes.

requiere autenticación

Devuelve una lista de comprobantes.

Solicitud de ejemplo:
curl --request GET \
    --get "http://localhost/api/comprobantes?sortBy=com_tap_fecha&rowsPerPage=10&descending=1&filter=1234&punto_venta_id=1&fecha_desde=2026-01-01&fecha_hasta=2026-01-31" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"sortBy\": \"consequatur\",
    \"rowsPerPage\": 45
}"
const url = new URL(
    "http://localhost/api/comprobantes"
);

const params = {
    "sortBy": "com_tap_fecha",
    "rowsPerPage": "10",
    "descending": "1",
    "filter": "1234",
    "punto_venta_id": "1",
    "fecha_desde": "2026-01-01",
    "fecha_hasta": "2026-01-31",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "sortBy": "consequatur",
    "rowsPerPage": 45
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Respuesta de ejemplo (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
access-control-expose-headers: Pager-Total, X-Warning
 

{
    "message": "No autentificado."
}
 

Solicitud      

GET api/comprobantes

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Parámetros de consulta

sortBy   string  optional    

Campo por el que se ordenarán los resultados. Ejemplo: com_tap_fecha

rowsPerPage   integer  optional    

Cantidad de resultados por página. Ejemplo: 10

descending   boolean  optional    

Si es false, ordena en forma ascendente. Si es true, ordena descendente. Afecta al campo especificado en sortBy. Ejemplo: true

filter   string  optional    

Filtro de búsqueda por número de comprobante. Ejemplo: 1234

punto_venta_id   integer  optional    

Filtrar por punto de venta. Ejemplo: 1

fecha_desde   string  optional    

Fecha de emisión desde. Ejemplo: 2026-01-01

fecha_hasta   string  optional    

Fecha de emisión hasta. Ejemplo: 2026-01-31

Parámetros del cuerpo

sortBy   string  optional    

Ejemplo: consequatur

rowsPerPage   integer  optional    

El campo value debe ser al menos 1. Ejemplo: 45

descending   string  optional    

Crear comprobante

requiere autenticación

Genera un comprobante fiscal, lo envía a ARCA y opcionalmente genera un PDF.

Solicitud de ejemplo:
curl --request POST \
    "http://localhost/api/comprobantes" \
    --header "Authorization: Bearer Bearer {YOUR_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"concepto_id\": 1,
    \"punto_venta\": 1,
    \"tipo_cbte\": 1,
    \"fecha\": \"2026-01-01\",
    \"importe_total\": \"1000.50\",
    \"fecha_desde\": \"2026-01-01\",
    \"fecha_hasta\": \"2026-01-31\",
    \"receptor_doc_tipo\": 80,
    \"receptor_doc_numero\": \"20123456789\",
    \"receptor_categoria_iva\": 1,
    \"fecha_vto_pago\": \"2026-02-01\",
    \"comprobantes_asociados\": [
        1,
        2
    ],
    \"generar_pdf\": true,
    \"pdf_template\": \"comprobante_A\",
    \"pdf_datos\": {
        \"tipo_cbte_desc\": \"Factura A\",
        \"receptor_nombre\": \"Juan Perez\",
        \"receptor_localidad\": \"Bahia Blanca\",
        \"receptor_cod_postal\": \"8000\",
        \"receptor_calle\": \"Mitre\",
        \"receptor_calle_nro\": \"123\",
        \"receptor_telefono\": \"2911234567\"
    },
    \"items\": [
        \"consequatur\"
    ]
}"
const url = new URL(
    "http://localhost/api/comprobantes"
);

const headers = {
    "Authorization": "Bearer Bearer {YOUR_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "concepto_id": 1,
    "punto_venta": 1,
    "tipo_cbte": 1,
    "fecha": "2026-01-01",
    "importe_total": "1000.50",
    "fecha_desde": "2026-01-01",
    "fecha_hasta": "2026-01-31",
    "receptor_doc_tipo": 80,
    "receptor_doc_numero": "20123456789",
    "receptor_categoria_iva": 1,
    "fecha_vto_pago": "2026-02-01",
    "comprobantes_asociados": [
        1,
        2
    ],
    "generar_pdf": true,
    "pdf_template": "comprobante_A",
    "pdf_datos": {
        "tipo_cbte_desc": "Factura A",
        "receptor_nombre": "Juan Perez",
        "receptor_localidad": "Bahia Blanca",
        "receptor_cod_postal": "8000",
        "receptor_calle": "Mitre",
        "receptor_calle_nro": "123",
        "receptor_telefono": "2911234567"
    },
    "items": [
        "consequatur"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Solicitud      

POST api/comprobantes

Encabezados

Authorization        

Ejemplo: Bearer Bearer {YOUR_TOKEN}

Content-Type        

Ejemplo: application/json

Accept        

Ejemplo: application/json

Parámetros del cuerpo

concepto_id   integer     

Concepto. Ejemplo: 1

punto_venta   integer     

Punto de venta. Ejemplo: 1

tipo_cbte   integer     

Tipo de comprobante. Ejemplo: 1

fecha   date     

Fecha. Ejemplo: 2026-01-01

importe_total   numeric     

Importe total. Ejemplo: 1000.50

fecha_desde   string  optional    

Fecha desde. Ejemplo: 2026-01-01

fecha_hasta   string  optional    

Fecha hasta. Ejemplo: 2026-01-31

receptor_doc_tipo   integer     

Tipo de documento del receptor. Ejemplo: 80

receptor_doc_numero   string     

Número de documento del receptor. Ejemplo: 20123456789

receptor_categoria_iva   integer     

Categoría IVA del receptor. Ejemplo: 1

fecha_vto_pago   string  optional    

Fecha de vencimiento de pago. Ejemplo: 2026-02-01

comprobantes_asociados   string[]  optional    

Comprobantes relacionados.

generar_pdf   boolean  optional    

Indica si se debe generar PDF. Ejemplo: true

pdf_template   string  optional    

Template del PDF (requerido si generar_pdf es true). Ejemplo: comprobante_A

pdf_datos   object  optional    

Datos del PDF (requerido si generar_pdf es true)

tipo_cbte_desc   string  optional    

Descripción del tipo de comprobante. Ejemplo: Factura A

receptor_nombre   string  optional    

Cliente. Ejemplo: Juan Perez

receptor_localidad   string  optional    

Localidad. Ejemplo: Bahia Blanca

receptor_cod_postal   string  optional    

Código postal. Ejemplo: 8000

receptor_calle   string  optional    

Calle. Ejemplo: Mitre

receptor_calle_nro   string  optional    

Número. Ejemplo: 123

receptor_telefono   string  optional    

Teléfono. Ejemplo: 2911234567

items   string[]     

Items del comprobante

codigo   string     

Código. Ejemplo: A1

detalle   string     

Detalle. Ejemplo: Producto X

cantidad   numeric     

Cantidad. Ejemplo: 1

precio   numeric     

Precio unitario. Ejemplo: 100

subtotal   numeric     

Subtotal. Ejemplo: 100