# API Factura electrónica AFIP/ARCA Argentina fácil.

Integra la facturación electrónica ARCA fácil y rápido con nuestra API. ¡Confiable desde 2015! Elegida por todos los desarrolladores y con el respaldo de un estudio contable.

TusFacturasAPP es el [software de facturación](https://www.tusfacturas.app/caracteristicas-de-tus-facturas-electronica-facturacion.html) líder para empresas que operan en Argentina. Desde 2015, facilitamos la integración de sistemas de facturación con ARCA a través de nuestra API REST. Contamos con el respaldo de un estudio contable que nos mantiene al día con las últimas normativas impositivas y de una empresa de desarrollo de software que habla el mismo idioma que tus *devs*.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2FRAu3WWpGIDZeIzdcZQ9j%2Fimage.png?alt=media&amp;token=f110414b-745a-4534-8267-ac58f0115ae0" alt=""><figcaption></figcaption></figure>

## ¿Qué es la API REST ARCA para Factura Electrónica ?

La [API REST de facturación electrónica AFIP](https://www.tusfacturas.app/api-factura-electronica-afip.html)[/ARCA](https://www.tusfacturas.app/factura-electronica-arca.html) provista por TusFacturasAPP , te permite generar de manera segura y rápida, comprobantes electrónicas válidos en AFIP/ARCA Argentina. Contamos con el respaldo de un estudio impositivo que nos mantiene asesorados ante las nuevas normativas que surgen día a día en nuestro país.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt=""><figcaption></figcaption></figure>

### ¿Qué es la factura electrónica ARCA?

La [factura electrónica AFIP/ARCA](https://www.tusfacturas.app/factura-electronica-afip.html) es un comprobante digital con el mismo valor legal que el papel, ya que AFIP por medio de la [RG (AFIP/ARCA) 4290](https://www.tusfacturas.app/normativa-afip-factura-electronica.html), ha generalizado el uso de la factura electrónica para todos los contribuyentes de Argentina.

### ¿Qué otros servicios incluye la API REST?

Además de usar el servicio API, podrás utilizar nuestra plataforma web y bot de WhatsApp, con todas las funcionalidades que ésta brinda.

### Integrá nuestra API REST para factura electrónica AFIP/ARCA con cualquier lenguaje

En ésta documentación encontrarás  ejemplos en formato JSON, para que los adaptes al lenguaje de programación de tu software Si bien no te podemos brindar soporte para los diferentes lenguajes de programación que existen en el mercado, al ser los input y los output en formato JSON, podes conectarlo el lenguaje que mas te guste, teniendo a mano stackoverflow, por si tenes dudas ;)

\
Versión actual: **API v2**\
Tipo de API: **API Rest**

SSL: **requiere TLS 1.2+**\
Tipo de datos entrada y respuesta: **JSON**\
Charset: **UTF-8**\
Tipo de request : **POST**\
&#x20;

Nuestra API para AFIP/ARCA ya ha sido implementada en diferentes plataformas con múltiples lenguajes (PHP, Visual basic 6.0, Ruby, Python, NodeJS), como así tambien en entornos AMAZON WS, Google Cloud, servidores dedicados y servidores compartidos.

### 💡 Soporte y Recursos

¿Tenes preguntas sobre la API? Visita nuestro Centro de Ayuda en [ayuda.tusfacturas.app](https://ayuda.tusfacturas.app) para acceder a guías paso a paso y solución de problemas o escribnos a <api@tusfacturas.app>


# ¿Cómo empiezo?

Conoce la guía paso a pase para integrar tu software con la API de facturación electrónica AFIP de TusFacturasAPP. Elegida por todos los desarrolladores desde 2015.

### ¿Qué es TusFacturasAPP?

TusFacturasAPP es la API líder en Argentina para integrar facturación electrónica AFIP/ARCA en tu software. Elegida por desarrolladores desde 2015, te permite emitir facturas electrónicas de forma simple y confiable.

#### 🏆 ¿Por qué confiar en TusFacturasAPP?

**Respaldo profesional dual:** **Estamos desde 2015** ayudando a crecer a miles de negocios, con el respaldo constante de un estudio contable impositivo que entiende tu realidad y nos asegura que siempre estén actualizados con las últimas normativas fiscales de Argentina, y [VOUSYS](https://www.vousys.com/), una empresa de desarrollo de software con +20 años de experiencia, que garantiza que tu integración requiera la menor cantidad de cambios posibles.

**Esto significa para tu desarrollo:**

* ✅ **Cumplimiento normativo garantizado** - Siempre al día con AFIP/ARCA
* ✅ **Estabilidad en la integración** - Menos cambios en tu código
* ✅ **Soporte técnico especializado** - Respaldado por profesionales contables y de desarrollo
* ✅ **Actualizaciones transparentes** - Te notificamos cualquier cambio con anticipación

### 🎯 Comenza en 3 Pasos

{% stepper %}
{% step %}

#### Crea tu Cuenta de Desarrollo

* Registrate gratis desde aquí:  <a href="https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html" class="button primary">Crear cuenta API DEV gratis</a>
* Se activará automáticamente tu **Plan API DEV** por 30 días gratis ( *podes renovarlo las veces que necesites contactando a nuestro equipo de soporte por email* ).
* Podrás emitir hasta **1.500 comprobantes de prueba** sin costo desde hasta 2 puntos de venta.
* No podes enlazar tu CUIT con ARCA para realizar las pruebas.
  {% endstep %}

{% step %}

#### Configura tus Credenciales

* Ingresa a **Menú > Mi espacio de trabajo > Puntos de venta**
* Configura tu CUIT personal con un punto de venta de prueba (ej: 679)
* Una vez creado el punto de venta, tendrás disponible las credenciales API. En caso de no visualizarlas, significa que tu plan actual no corresponde a API DEV. [Contactános](https://tusfacturas.app/contacto.html) y lo resolvemos.
  {% endstep %}

{% step %}

#### Realiza tu Primera Integración

[Envia una petición POST](/web-services-afip-api-arca) a nuestra API y comenzá a facturar inmediatamente.
{% endstep %}
{% endstepper %}

### 🔧 Entorno de Desarrollo

#### ¿Por qué no hay un entorno de pruebas tradicional?

Para garantizar el cumplimiento legal, no disponemos de un entorno de pruebas convencional. Esto significa que:

* ✅ **No podrás enlazar tu CUIT real** con AFIP/ARCA durante las pruebas
* ✅ **Evitas inconvenientes fiscales** ya que los comprobantes AFIP son inmodificables
* ✅ **La respuesta simula el comportamiento de producción** con campos CAE vacíos
* ✅ **No se aplican validaciones adicionales** de AFIP/ARCA durante las pruebas

#### 💡 ¿Cómo funciona el consumo de cupos en la API?

Es fundamental entender que los límites de tu plan no funcionan como un pozo único, sino que se distribuyen de forma independiente según el método que consumas. En la documentación de cada método podras ver si consume créditos de tu cupo.  Para más info, consulta nuestro centro de ayuda sobre [qué contabiliza como un request](https://ayuda.tusfacturas.app/es/articles/11679150-api-que-contabiliza-como-un-request-en-tusfacturasapp).

### 🆘 ¿Necesitas Ayuda?

#### Soporte Técnico

Si tenes dudas sobre la integración o necesitas asistencia:

* **📧 Email**: <api@tusfacturas.app>
* **💬**  [Bot de soporte 24/7](https://www.tusfacturas.app/contacto.html)
* 📖 [Centro de Ayuda](https://ayuda.tusfacturas.app/)
* 🫂 Brindamos soporte humano por e-mail o chat en el siguiente horario: lunes a viernes, de 8 a 16 hs (hora de Argentina), exceptuando feriados y días no laborables. Durante este tiempo respondemos de acuerdo a la demanda

### Beneficios del Plan API DEV

| Característica    | Detalle                                                                                                                                        |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| **Duración**      | 30 días completamente gratis                                                                                                                   |
| **Comprobantes**  | Hasta 1.500 facturas de prueba desde 2 puntos venta                                                                                            |
| **Validez legal** | No válidos legalmente (solo para desarrollo)                                                                                                   |
| **Soporte**       | **Ilimitado** desde nuestro centro de ayuda. Contamos con atención personalizada por e-mail o chat, de lunes a viernes de 09 a 15:30hs (GMT-3) |

{% hint style="info" %}
Te sugerimos revisar nuestros [términos y condiciones](https://www.tusfacturas.app/terminos-y-condiciones.html) para estar al tanto de lo que podes realizar en nuestra plataforma y leer las [FAQs](/faqs-or-preguntas-frecuentes) para despejar tus dudas.

En caso que necesites asistencia, podes [contactarnos](https://www.tusfacturas.app/contacto.html).
{% endhint %}

### 💻 Tu Primera Factura  en 2 Minutos

#### ¿Es realmente fácil crear una venta con TusFacturasAPP?

¡Si! Crear una venta con TusFacturasAPP es tan fácil como enviar el siguiente JSON para crear una factura B

#### Endpoint de Facturación

```
POST https://www.tusfacturas.app/app/api/v2/facturacion/nuevo
```

&#x20;JSON:

```json
{
   "apitoken":"xxxx",
   "apikey":"xxxx",
   "usertoken":"xxxx",
   
   "cliente":{
      "documento_tipo":"DNI",
      "condicion_iva":"CF",
      "domicilio":"Av Sta Fe 23132",
      "condicion_pago":"201",
      "documento_nro":"111132333",
      "razon_social":"Juan Pedro KJL",
      "provincia":"2",
      "email":"email@dominio.com",
      "envia_por_mail":"N",
       "rg5329": "N"
   },
   
   "comprobante":{
      "rubro":"Sevicios web", 
      "tipo":"FACTURA B",
      "numero":2134, 
      "operacion":"V",
      "detalle":[
         {
            "cantidad":1,
            "afecta_stock":"S",
            "actualiza_precio":"S",
            "bonificacion_porcentaje":0,
            "producto":{
               "descripcion":"Hosting pagina web ",
               "codigo":37,
               "lista_precios":"standard",
               "leyenda":"",
               "unidad_bulto":1,
               "alicuota":21,
               "actualiza_precio":"S",
               "rg5329": "N",
               "precio_unitario_sin_iva":114.88
            }
         }
      ],
      "fecha":"28/03/2018",
      "vencimiento":"26/03/2023",
      "rubro_grupo_contable":"Sevicios",
      "total":139.0,
      "cotizacion":1,
      "moneda":"PES",
      "punto_venta":3,
      "tributos":[]
   }
}
```

Podes enviarlo por CURL, o por tu lenguaje de programación favorito.&#x20;

A continuación te mostramos algunos ejemplos. Para conocer el detalle de cada campo,  accede desde [aquí](/api-factura-electronica-afip-facturacion-ventas) a la documentación.

{% tabs %}
{% tab title="CURL" %}

```
curl --request POST
--url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo
--header 'Content-Type: application/json'
--data '{ "apitoken":"xxxx", "cliente":{ "documento_tipo":"DNI", "condicion_iva":"CF", "domicilio":"Av Sta Fe 23132", "condicion_pago":"201", "documento_nro":"111132333", "razon_social":"Juan Pedro KJL", "provincia":"2", "email":"email@dominio.com", "envia_por_mail":"N", "rg5329": "N" }, "apikey":"xxxx", "comprobante":{ "rubro":"Sevicios web", "percepciones_iva":0, "tipo":"FACTURA B", "numero":2134, "bonificacion":0, "operacion":"V", "detalle":[ { "cantidad":1, "afecta_stock":"S", "actualiza_precio":"S", "bonificacion_porcentaje":0, "producto":{ "descripcion":"Hosting pagina web ", "codigo":37, "lista_precios":"standard", "leyenda":"", "unidad_bulto":1, "alicuota":21, "actualiza_precio":"S", "rg5329": "N", "precio_unitario_sin_iva":114.88 } } ], "fecha":"28/03/2018", "vencimiento":"26/03/2023", "rubro_grupo_contable":"Sevicios", "total":139.0, "cotizacion":1, "moneda":"PES", "punto_venta":3, "tributos":[] }, "usertoken":"xxxx" }'
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\n   \"apitoken\":\"xxxx\",\n   \"cliente\":{\n      \"documento_tipo\":\"DNI\",\n      \"condicion_iva\":\"CF\",\n      \"domicilio\":\"Av Sta Fe 23132\",\n      \"condicion_pago\":\"201\",\n      \"documento_nro\":\"111132333\",\n      \"razon_social\":\"Juan Pedro KJL\",\n      \"provincia\":\"2\",\n      \"email\":\"email@dominio.com\",\n      \"envia_por_mail\":\"N\",\n       \"rg5329\": \"N\"\n   },\n   \"apikey\":\"xxxx\",\n   \"comprobante\":{\n      \"rubro\":\"Sevicios web\",\n      \"percepciones_iva\":0,\n      \"tipo\":\"FACTURA B\",\n      \"numero\":2134,\n      \"bonificacion\":0,\n      \"operacion\":\"V\",\n      \"detalle\":[\n         {\n            \"cantidad\":1,\n            \"afecta_stock\":\"S\",\n            \"actualiza_precio\":\"S\",\n            \"bonificacion_porcentaje\":0,\n            \"producto\":{\n               \"descripcion\":\"Hosting pagina web \",\n               \"codigo\":37,\n               \"lista_precios\":\"standard\",\n               \"leyenda\":\"\",\n               \"unidad_bulto\":1,\n               \"alicuota\":21,\n               \"actualiza_precio\":\"S\",\n               \"rg5329\": \"N\",\n               \"precio_unitario_sin_iva\":114.88\n            }\n         }\n      ],\n      \"fecha\":\"28/03/2018\",\n      \"vencimiento\":\"26/03/2023\",\n      \"rubro_grupo_contable\":\"Sevicios\",\n      \"total\":139.0,\n      \"cotizacion\":1,\n      \"moneda\":\"PES\",\n      \"punto_venta\":3,\n      \"tributos\":[]\n   },\n   \"usertoken\":\"xxxx\"\n}",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "{\n   \"apitoken\":\"xxxx\",\n   \"cliente\":{\n      \"documento_tipo\":\"DNI\",\n      \"condicion_iva\":\"CF\",\n      \"domicilio\":\"Av Sta Fe 23132\",\n      \"condicion_pago\":\"201\",\n      \"documento_nro\":\"111132333\",\n      \"razon_social\":\"Juan Pedro KJL\",\n      \"provincia\":\"2\",\n      \"email\":\"email@dominio.com\",\n      \"envia_por_mail\":\"N\",\n       \"rg5329\": \"N\"\n   },\n   \"apikey\":\"xxxx\",\n   \"comprobante\":{\n      \"rubro\":\"Sevicios web\",\n      \"percepciones_iva\":0,\n      \"tipo\":\"FACTURA B\",\n      \"numero\":2134,\n      \"bonificacion\":0,\n      \"operacion\":\"V\",\n      \"detalle\":[\n         {\n            \"cantidad\":1,\n            \"afecta_stock\":\"S\",\n            \"actualiza_precio\":\"S\",\n            \"bonificacion_porcentaje\":0,\n            \"producto\":{\n               \"descripcion\":\"Hosting pagina web \",\n               \"codigo\":37,\n               \"lista_precios\":\"standard\",\n               \"leyenda\":\"\",\n               \"unidad_bulto\":1,\n               \"alicuota\":21,\n               \"actualiza_precio\":\"S\",\n               \"rg5329\": \"N\",\n               \"precio_unitario_sin_iva\":114.88\n            }\n         }\n      ],\n      \"fecha\":\"28/03/2018\",\n      \"vencimiento\":\"26/03/2023\",\n      \"rubro_grupo_contable\":\"Sevicios\",\n      \"total\":139.0,\n      \"cotizacion\":1,\n      \"moneda\":\"PES\",\n      \"punto_venta\":3,\n      \"tributos\":[]\n   },\n   \"usertoken\":\"xxxx\"\n}"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
const http = require("https");

const options = {
  "method": "POST",
  "hostname": "www.tusfacturas.app",
  "port": null,
  "path": "/app/api/v2/facturacion/nuevo",
  "headers": {
    "Content-Type": "application/json",
    "Content-Length": "1337"
  }
};

const req = http.request(options, function (res) {
  const chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.write(JSON.stringify({
  apitoken: 'xxxx',
  cliente: {
    documento_tipo: 'DNI',
    condicion_iva: 'CF',
    domicilio: 'Av Sta Fe 23132',
    condicion_pago: '201',
    documento_nro: '111132333',
    razon_social: 'Juan Pedro KJL',
    provincia: '2',
    email: 'email@dominio.com',
    envia_por_mail: 'N',
    rg5329: 'N'
  },
  apikey: 'xxxx',
  comprobante: {
    rubro: 'Sevicios web',
    percepciones_iva: 0,
    tipo: 'FACTURA B',
    numero: 2134,
    bonificacion: 0,
    operacion: 'V',
    detalle: [
      {
        cantidad: 1,
        afecta_stock: 'S',
        actualiza_precio: 'S',
        bonificacion_porcentaje: 0,
        producto: {
          descripcion: 'Hosting pagina web ',
          codigo: 37,
          lista_precios: 'standard',
          leyenda: '',
          unidad_bulto: 1,
          alicuota: 21,
          actualiza_precio: 'S',
          rg5329: 'N',
          precio_unitario_sin_iva: 114.88
        }
      }
    ],
    fecha: '28/03/2018',
    vencimiento: '26/03/2023',
    rubro_grupo_contable: 'Sevicios',
    total: 139,
    cotizacion: 1,
    moneda: 'PES',
    punto_venta: 3,
    tributos: []
  },
  usertoken: 'xxxx'
}));
req.end();
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["User-Agent"] = 'insomnia/9.3.2'
request.body = "{\n   \"apitoken\":\"xxxx\",\n   \"cliente\":{\n      \"documento_tipo\":\"DNI\",\n      \"condicion_iva\":\"CF\",\n      \"domicilio\":\"Av Sta Fe 23132\",\n      \"condicion_pago\":\"201\",\n      \"documento_nro\":\"111132333\",\n      \"razon_social\":\"Juan Pedro KJL\",\n      \"provincia\":\"2\",\n      \"email\":\"email@dominio.com\",\n      \"envia_por_mail\":\"N\",\n       \"rg5329\": \"N\"\n   },\n   \"apikey\":\"xxxx\",\n   \"comprobante\":{\n      \"rubro\":\"Sevicios web\",\n      \"percepciones_iva\":0,\n      \"tipo\":\"FACTURA B\",\n      \"numero\":2134,\n      \"bonificacion\":0,\n      \"operacion\":\"V\",\n      \"detalle\":[\n         {\n            \"cantidad\":1,\n            \"afecta_stock\":\"S\",\n            \"actualiza_precio\":\"S\",\n            \"bonificacion_porcentaje\":0,\n            \"producto\":{\n               \"descripcion\":\"Hosting pagina web \",\n               \"codigo\":37,\n               \"lista_precios\":\"standard\",\n               \"leyenda\":\"\",\n               \"unidad_bulto\":1,\n               \"alicuota\":21,\n               \"actualiza_precio\":\"S\",\n               \"rg5329\": \"N\",\n               \"precio_unitario_sin_iva\":114.88\n            }\n         }\n      ],\n      \"fecha\":\"28/03/2018\",\n      \"vencimiento\":\"26/03/2023\",\n      \"rubro_grupo_contable\":\"Sevicios\",\n      \"total\":139.0,\n      \"cotizacion\":1,\n      \"moneda\":\"PES\",\n      \"punto_venta\":3,\n      \"tributos\":[]\n   },\n   \"usertoken\":\"xxxx\"\n}"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Espacios de trabajo y puntos de venta en TusFacturasAPP

Antes de comenzar a programar, tómate un momento para familiarizarte con los siguientes artículos de ayuda, que cubren temas esenciales como el manejo de **Puntos de Venta**, la estructura de los **Espacios de Trabajo** y las consideraciones para la **gestión de múltiples clientes**.

**Artículos de referencia:**

* [Qué es un punto de venta](https://ayuda.tusfacturas.app/es/articles/10421730-que-es-un-punto-de-venta)
* [Qué es un espacio de trabajo](https://ayuda.tusfacturas.app/es/articles/11832654-que-es-un-espacio-de-trabajo)
* [Manejar múltiples puntos de venta en un mismo espacio de trabajo](https://ayuda.tusfacturas.app/es/articles/10533387-es-posible-manejar-multiples-puntos-de-venta-en-un-mismo-espacio-de-trabajo)
* [Gestión de múltiples clientes: espacios de trabajo separados vs. único](https://ayuda.tusfacturas.app/es/articles/11839614-gestion-de-multiples-clientes-conviene-espacios-de-trabajo-separados-vs-unico)

### Algunos ejemplos de como facturar una venta según su tipo / letra

{% content-ref url="/pages/RqbQg8hJZkircij91dSH" %}
[Factura A](/web-services-afip-api-arca/api-factura-electronica-afip-factura-a)
{% endcontent-ref %}

{% content-ref url="/pages/REFz6U86qe68x5giTN9u" %}
[Factura B](/web-services-afip-api-arca/api-factura-electronica-afip-factura-b)
{% endcontent-ref %}

{% content-ref url="/pages/AcdvxPWnqmfjQQwCRX61" %}
[Factura C](/web-services-afip-api-arca/api-factura-electronica-afip-factura-c)
{% endcontent-ref %}

{% content-ref url="/pages/Q7OVYuY8ggqN4kbrIl72" %}
[Factura E](/web-services-afip-api-arca/api-factura-electronica-afip-factura-e)
{% endcontent-ref %}

{% content-ref url="/pages/K1FYM8ROHk86oPXWZH41" %}
[Factura MiPyme A](/web-services-afip-api-arca/api-factura-electronica-afip-factura-mypyme-a)
{% endcontent-ref %}

📋 Tipos de Comprobantes Disponibles

La API soporta todos los tipos de comprobantes AFIP:

* **Facturas A, B, C, M**
* **Notas de Crédito y Débito**
* **Recibos**
* **Comprobantes de Exportación**
* **Facturación Electrónica MiPyME (FCE)**

[Ver documentación completa de tipos de comprobantes](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca)

***

### 🔄 Después del Período de Prueba

Una vez finalizado tu período de prueba de 30 días, podrás:

1. **Seleccionar el plan que mejor se adapte** a tu volumen de facturación
2. **Migrar a producción** con validaciones AFIP/ARCA completas
3. **Emitir facturas con validez legal** vinculadas a tu CUIT real

[Ver planes y tarifas disponibles](https://www.tusfacturas.app/tarifas-tusfacturas-planes-api-factura-electronica.html)

***

### 🚨 Puntos Importantes a Recordar

* ⚠️ **Las pruebas NO afectan tu información fiscal real** (plan API DEV no se conecta con AFIP/ARCA)
* ⚠️ **Los comprobantes de prueba son ficticios** y no se registran en AFIP/ARCA
* ⚠️ **La respuesta durante las pruebas simula el comportamiento de producción**
* ⚠️ **Los campos CAE y vencimiento CAE se devuelven vacíos** en modo desarrollo

***

### 🏁 ¡Comenzá Ahora!

¿Qué esperás para comenzar a emitir facturas electrónicas ARCA con nuestra API?

[**🚀 Crear cuenta gratuita ahora**](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html)[.](/api-factura-electronica-afip-facturacion-ventas)

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).

[ ](/api-factura-electronica-afip-facturacion-ventas)

¿Qué esperas para comenzar a [emitir factura electrónica AFIP](https://www.tusfacturas.app/como-empezamos-a-hacer-facturas-electronicas.html) con nuestra API?


# Autenticación

Conocé que datos necesitas para poder integrar en tu software con la API para AFIP -  facturación electrónica Argentina provista por TusFacturasAPP

{% hint style="info" %}
**¿Cómo obtener mis credenciales de acceso?**

Una vez creada tu cuenta y teniendo habilitado un plan API, accedé a nuestra plataforma web [www.tusfacturas.app](http://www.tusfacturas.app) > menú > Mi espacio de trabajo > Puntos de venta  y desde ahi, podrás obtener las keys requeridos para poder operar en cada uno de los métodos que tenemos disponibles.
{% endhint %}

### **¿Qué datos necesito para enviar un request a la API de TusFacturasAPP?**

Para cada solicitud o consulta que realices a nuestra **API de facturación electrónica**, es **obligatorio** que incluyas información clave relacionada con tu **Punto de Venta**. Esta información es esencial para autenticar tus operaciones y garantizar la seguridad de tus datos.

**¿Cómo obtener las credenciales API requeridas (API Key y API Token)?**

Acceder a tus credenciales es muy simple desde nuestra plataforma web:

1. Ingresá a tu cuenta en TusFacturasAPP.
2. Dirigite a **Menú > Mi Espacio de Trabajo > Puntos de Venta**.

Desde allí, podrás gestionar y obtener las claves API (API Key y API Token) necesarias para tus integraciones. Recordá que todos los planes API de TusFacturasAPP cuentan con estas herramientas disponibles una vez que hayas dado de alta tu punto de venta.

**Más información:** Para un tutorial completo sobre cómo obtener tu API Key y API Token y comenzar a probar nuestra API de facturación electrónica, visitá nuestro centro de ayuda: <https://ayuda.tusfacturas.app/es/articles/11503635-como-obtener-api-key-y-api-token-para-probar-la-api>

| `apitoken`  | <p>Valor alfanumerico<br><strong>Ejemplo:</strong> </p><p><strong>xxxxxxxx</strong></p>    |
| ----------- | ------------------------------------------------------------------------------------------ |
| `apikey`    | <p>Valor númerico</p><p><strong>Ejemplo:  1134</strong></p>                                |
| `usertoken` | <p>Valor alfanumerico<br><strong>Ejemplo:</strong> </p><p><strong>xxxxxxx</strong><br></p> |

## Requerimientos <a href="#errores-http" id="errores-http"></a>

SSL: **requiere TLS 1.2+**\
Tipo de datos entrada y respuesta: **JSON**\
Charset: **UTF-8**\
Tipo de request : **POST**

## Errores HTTP <a href="#errores-http" id="errores-http"></a>

Errores de HTTP comunes que puede devolver :\
401, 403: El acceso ha sido denegado\
404: El recurso no existe\
400: Entrada de datos invalida (query string, post, etc)\
405: Método no permitido

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# SDK AFIP/ARCA

La API de facturación electrónica AFIP/ARCA provista por TusFacturasAPP, cuenta con un SDK para que descargues desde nuestro repositorio.

### ¿Cómo enviar los requests según mi lenguaje de programación?

Podes enviar tus request por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos.

{% tabs %}
{% tab title="CURL" %}

```
curl --request POST
--url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo
--header 'Content-Type: application/json'
--data '{ "apitoken":"xxxx", "cliente":{ "documento_tipo":"DNI", "condicion_iva":"CF", "domicilio":"Av Sta Fe 23132", "condicion_pago":"201", "documento_nro":"111132333", "razon_social":"Juan Pedro KJL", "provincia":"2", "email":"email@dominio.com", "envia_por_mail":"N", "rg5329": "N" }, "apikey":"xxxx", "comprobante":{ "rubro":"Sevicios web", "percepciones_iva":0, "tipo":"FACTURA B", "numero":2134, "bonificacion":0, "operacion":"V", "detalle":[ { "cantidad":1, "afecta_stock":"S", "actualiza_precio":"S", "bonificacion_porcentaje":0, "producto":{ "descripcion":"Hosting pagina web ", "codigo":37, "lista_precios":"standard", "leyenda":"", "unidad_bulto":1, "alicuota":21, "actualiza_precio":"S", "rg5329": "N", "precio_unitario_sin_iva":114.88 } } ], "fecha":"28/03/2018", "vencimiento":"26/03/2023", "rubro_grupo_contable":"Sevicios", "total":139.0, "cotizacion":1, "moneda":"PES", "punto_venta":3, "tributos":[] }, "usertoken":"xxxx" }'
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\n   \"apitoken\":\"xxxx\",\n   \"cliente\":{\n      \"documento_tipo\":\"DNI\",\n      \"condicion_iva\":\"CF\",\n      \"domicilio\":\"Av Sta Fe 23132\",\n      \"condicion_pago\":\"201\",\n      \"documento_nro\":\"111132333\",\n      \"razon_social\":\"Juan Pedro KJL\",\n      \"provincia\":\"2\",\n      \"email\":\"email@dominio.com\",\n      \"envia_por_mail\":\"N\",\n       \"rg5329\": \"N\"\n   },\n   \"apikey\":\"xxxx\",\n   \"comprobante\":{\n      \"rubro\":\"Sevicios web\",\n      \"percepciones_iva\":0,\n      \"tipo\":\"FACTURA B\",\n      \"numero\":2134,\n      \"bonificacion\":0,\n      \"operacion\":\"V\",\n      \"detalle\":[\n         {\n            \"cantidad\":1,\n            \"afecta_stock\":\"S\",\n            \"actualiza_precio\":\"S\",\n            \"bonificacion_porcentaje\":0,\n            \"producto\":{\n               \"descripcion\":\"Hosting pagina web \",\n               \"codigo\":37,\n               \"lista_precios\":\"standard\",\n               \"leyenda\":\"\",\n               \"unidad_bulto\":1,\n               \"alicuota\":21,\n               \"actualiza_precio\":\"S\",\n               \"rg5329\": \"N\",\n               \"precio_unitario_sin_iva\":114.88\n            }\n         }\n      ],\n      \"fecha\":\"28/03/2018\",\n      \"vencimiento\":\"26/03/2023\",\n      \"rubro_grupo_contable\":\"Sevicios\",\n      \"total\":139.0,\n      \"cotizacion\":1,\n      \"moneda\":\"PES\",\n      \"punto_venta\":3,\n      \"tributos\":[]\n   },\n   \"usertoken\":\"xxxx\"\n}",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "{\n   \"apitoken\":\"xxxx\",\n   \"cliente\":{\n      \"documento_tipo\":\"DNI\",\n      \"condicion_iva\":\"CF\",\n      \"domicilio\":\"Av Sta Fe 23132\",\n      \"condicion_pago\":\"201\",\n      \"documento_nro\":\"111132333\",\n      \"razon_social\":\"Juan Pedro KJL\",\n      \"provincia\":\"2\",\n      \"email\":\"email@dominio.com\",\n      \"envia_por_mail\":\"N\",\n       \"rg5329\": \"N\"\n   },\n   \"apikey\":\"xxxx\",\n   \"comprobante\":{\n      \"rubro\":\"Sevicios web\",\n      \"percepciones_iva\":0,\n      \"tipo\":\"FACTURA B\",\n      \"numero\":2134,\n      \"bonificacion\":0,\n      \"operacion\":\"V\",\n      \"detalle\":[\n         {\n            \"cantidad\":1,\n            \"afecta_stock\":\"S\",\n            \"actualiza_precio\":\"S\",\n            \"bonificacion_porcentaje\":0,\n            \"producto\":{\n               \"descripcion\":\"Hosting pagina web \",\n               \"codigo\":37,\n               \"lista_precios\":\"standard\",\n               \"leyenda\":\"\",\n               \"unidad_bulto\":1,\n               \"alicuota\":21,\n               \"actualiza_precio\":\"S\",\n               \"rg5329\": \"N\",\n               \"precio_unitario_sin_iva\":114.88\n            }\n         }\n      ],\n      \"fecha\":\"28/03/2018\",\n      \"vencimiento\":\"26/03/2023\",\n      \"rubro_grupo_contable\":\"Sevicios\",\n      \"total\":139.0,\n      \"cotizacion\":1,\n      \"moneda\":\"PES\",\n      \"punto_venta\":3,\n      \"tributos\":[]\n   },\n   \"usertoken\":\"xxxx\"\n}"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
const http = require("https");

const options = {
  "method": "POST",
  "hostname": "www.tusfacturas.app",
  "port": null,
  "path": "/app/api/v2/facturacion/nuevo",
  "headers": {
    "Content-Type": "application/json",
    "Content-Length": "1337"
  }
};

const req = http.request(options, function (res) {
  const chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.write(JSON.stringify({
  apitoken: 'xxxx',
  cliente: {
    documento_tipo: 'DNI',
    condicion_iva: 'CF',
    domicilio: 'Av Sta Fe 23132',
    condicion_pago: '201',
    documento_nro: '111132333',
    razon_social: 'Juan Pedro KJL',
    provincia: '2',
    email: 'email@dominio.com',
    envia_por_mail: 'N',
    rg5329: 'N'
  },
  apikey: 'xxxx',
  comprobante: {
    rubro: 'Sevicios web',
    percepciones_iva: 0,
    tipo: 'FACTURA B',
    numero: 2134,
    bonificacion: 0,
    operacion: 'V',
    detalle: [
      {
        cantidad: 1,
        afecta_stock: 'S',
        actualiza_precio: 'S',
        bonificacion_porcentaje: 0,
        producto: {
          descripcion: 'Hosting pagina web ',
          codigo: 37,
          lista_precios: 'standard',
          leyenda: '',
          unidad_bulto: 1,
          alicuota: 21,
          actualiza_precio: 'S',
          rg5329: 'N',
          precio_unitario_sin_iva: 114.88
        }
      }
    ],
    fecha: '28/03/2018',
    vencimiento: '26/03/2023',
    rubro_grupo_contable: 'Sevicios',
    total: 139,
    cotizacion: 1,
    moneda: 'PES',
    punto_venta: 3,
    tributos: []
  },
  usertoken: 'xxxx'
}));
req.end();
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["User-Agent"] = 'insomnia/9.3.2'
request.body = "{\n   \"apitoken\":\"xxxx\",\n   \"cliente\":{\n      \"documento_tipo\":\"DNI\",\n      \"condicion_iva\":\"CF\",\n      \"domicilio\":\"Av Sta Fe 23132\",\n      \"condicion_pago\":\"201\",\n      \"documento_nro\":\"111132333\",\n      \"razon_social\":\"Juan Pedro KJL\",\n      \"provincia\":\"2\",\n      \"email\":\"email@dominio.com\",\n      \"envia_por_mail\":\"N\",\n       \"rg5329\": \"N\"\n   },\n   \"apikey\":\"xxxx\",\n   \"comprobante\":{\n      \"rubro\":\"Sevicios web\",\n      \"percepciones_iva\":0,\n      \"tipo\":\"FACTURA B\",\n      \"numero\":2134,\n      \"bonificacion\":0,\n      \"operacion\":\"V\",\n      \"detalle\":[\n         {\n            \"cantidad\":1,\n            \"afecta_stock\":\"S\",\n            \"actualiza_precio\":\"S\",\n            \"bonificacion_porcentaje\":0,\n            \"producto\":{\n               \"descripcion\":\"Hosting pagina web \",\n               \"codigo\":37,\n               \"lista_precios\":\"standard\",\n               \"leyenda\":\"\",\n               \"unidad_bulto\":1,\n               \"alicuota\":21,\n               \"actualiza_precio\":\"S\",\n               \"rg5329\": \"N\",\n               \"precio_unitario_sin_iva\":114.88\n            }\n         }\n      ],\n      \"fecha\":\"28/03/2018\",\n      \"vencimiento\":\"26/03/2023\",\n      \"rubro_grupo_contable\":\"Sevicios\",\n      \"total\":139.0,\n      \"cotizacion\":1,\n      \"moneda\":\"PES\",\n      \"punto_venta\":3,\n      \"tributos\":[]\n   },\n   \"usertoken\":\"xxxx\"\n}"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### SDK  AFIP/ARCA en PHP

Optimiza la facturación electrónica en PHP con nuestro **SDK para factura electrónica AFIP/ARCA**, una solución eficiente y actualizada para la emisión de comprobantes fiscales. Descarga gratuitamente el [**SDK AFIP/ARCA en PHP**](https://github.com/vousys/tusfacturas) desde nuestro repositorio GIT y automatiza la integración con los sistemas de facturación electrónica en Argentina. Nuestra herramienta simplifica la emisión de facturas, asegurando el cumplimiento de las normativas vigentes de AFIP/ARCA. A diferencia de otras soluciones, ofrecemos un **SDK para factura electrónica** optimizado, de fácil implementación y con documentación detallada para desarrolladores. Potencia tu sistema con la mejor tecnología para facturación electrónica en PHP.

<https://github.com/vousys/tusfacturas>

![https://github.com/vousys/tusfacturas](https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fgit-blob-058367aee38e0f1bb1d8b40f30de0a99c3da276f%2FGithub.png?alt=media)

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Ejemplos API AFIP/ARCA

Facturación electrónica AFIP/ARCA fácil y segura. TusFacturasAPP, respaldado por expertos contables impositivos y actualizada con las últimas normativas. ¡Comenza gratis!

[TusFacturasAPP](https://www.TusFacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. TusFacturasAPP te permite emitir facturas electrónicas ARCA de forma rápida y segura, cumpliendo con todos los requisitos legales de AFIP/ARCA. Olvídate de interactuar con los ws de AFIP/ARCA  y concéntrate en lo que realmente importa: hacer crecer tu negocio.

### Conoce como crear rápidamente:

{% content-ref url="/pages/RqbQg8hJZkircij91dSH" %}
[Factura A](/web-services-afip-api-arca/api-factura-electronica-afip-factura-a)
{% endcontent-ref %}

{% content-ref url="/pages/REFz6U86qe68x5giTN9u" %}
[Factura B](/web-services-afip-api-arca/api-factura-electronica-afip-factura-b)
{% endcontent-ref %}

{% content-ref url="/pages/AcdvxPWnqmfjQQwCRX61" %}
[Factura C](/web-services-afip-api-arca/api-factura-electronica-afip-factura-c)
{% endcontent-ref %}

{% content-ref url="/pages/Q7OVYuY8ggqN4kbrIl72" %}
[Factura E](/web-services-afip-api-arca/api-factura-electronica-afip-factura-e)
{% endcontent-ref %}

{% content-ref url="/pages/9D2dKbcpjmVNCEmmoWf6" %}
[Nota de crédito A](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-a)
{% endcontent-ref %}

{% content-ref url="/pages/yjlOrXI1XzlbHhD8OLJB" %}
[Nota de crédito B](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-b)
{% endcontent-ref %}

{% content-ref url="/pages/iEvdN0aePJYeII527SSu" %}
[Nota de crédito C](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-c)
{% endcontent-ref %}

{% content-ref url="/pages/lC5ybVMBz3EaMowCdPqU" %}
[Nota de crédito E](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-e)
{% endcontent-ref %}

{% content-ref url="/pages/twlDfpBqX9zB5WtrMEPA" %}
[Nota de débito A](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-debito-a)
{% endcontent-ref %}

{% content-ref url="/pages/WD967n3XJqoh1a4BpOBs" %}
[Nota de débito B](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-debito-b)
{% endcontent-ref %}

{% content-ref url="/pages/plxCZaCa9N2kVb8u4XuB" %}
[Nota de débito C](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-debito-c)
{% endcontent-ref %}

{% content-ref url="/pages/plxCZaCa9N2kVb8u4XuB" %}
[Nota de débito C](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-debito-c)
{% endcontent-ref %}

{% content-ref url="/pages/KhtXAHNergg2WSPnikZZ" %}
[Nota de débito E](/web-services-afip-api-arca/nota-de-debito-e)
{% endcontent-ref %}

{% content-ref url="/pages/Uu7R6FvwBxTGMHY2jeCt" %}
[Factura A - RG5329](/web-services-afip-api-arca/api-factura-electronica-afip-factura-a-rg5329)
{% endcontent-ref %}

{% content-ref url="/pages/SoyFnQbfBvVWRMVw7TXj" %}
[Factura A en dólares](/web-services-afip-api-arca/api-factura-electronica-afip-arca-factura-a-dolares)
{% endcontent-ref %}

{% content-ref url="/pages/boLGZKBoeyqBKYbbfOFX" %}
[Consulta por external reference](/web-services-afip-api-arca/consulta-avanzada-por-external-reference)
{% endcontent-ref %}

{% content-ref url="/pages/Fc5UwNn3OEWfvKVVRNV4" %}
[Consulta por fecha de comprobante](/web-services-afip-api-arca/consulta-avanzada-por-fecha)
{% endcontent-ref %}

{% content-ref url="/pages/OjbvjZ2X68mybM2LqlHK" %}
[Consulta por rango numérico de comprobantes](/web-services-afip-api-arca/consulta-avanzada-por-numero)
{% endcontent-ref %}

{% content-ref url="/pages/jfNR52T4KyUiMat1vRlB" %}
[Consulta por tipo y número de comprobante](/web-services-afip-api-arca/consulta-simple-tipo-numero)
{% endcontent-ref %}

{% content-ref url="/pages/c55ERAkJg4qoQzbtv0sl" %}
[¿Debo emitir una MiPyme?](/web-services-afip-api-arca/debo-emitir-una-mipyme)
{% endcontent-ref %}

{% content-ref url="/pages/-LCQvGs0ByiYaOfC5VHe" %}
[Estado de los servicios y Tareas de mantenimientos programados](/web-services-afip-api-arca/api-factura-electronica-afip-estado-de-los-servicios-afip)
{% endcontent-ref %}

{% content-ref url="/pages/JPK7gBMK7racS51Adll9" %}
[Factura A con bonificaciones](/web-services-afip-api-arca/api-factura-electronica-afip-arca-factura-a-con-bonificacion)
{% endcontent-ref %}

{% content-ref url="/pages/K1FYM8ROHk86oPXWZH41" %}
[Factura MiPyme A](/web-services-afip-api-arca/api-factura-electronica-afip-factura-mypyme-a)
{% endcontent-ref %}

{% content-ref url="/pages/pm9B1oVA121r4xTfSiNk" %}
[Nota de crédito MiPyme A](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-mipyme-a)
{% endcontent-ref %}

{% content-ref url="/pages/OfvzruApawHEcTvlLcbR" %}
[Liquidaciones A](/web-services-afip-api-arca/api-factura-electronica-arca-liquidaciones-a-63)
{% endcontent-ref %}

{% content-ref url="/pages/CwQD7MIydpn2vl9OTatQ" %}
[Liquidaciones B](/web-services-afip-api-arca/api-factura-electronica-arca-liquidaciones-b-64)
{% endcontent-ref %}

***

### 💡 Soporte y Recursos

¿Tenes preguntas sobre la API? Visita nuestro Centro de Ayuda en [ayuda.tusfacturas.app](https://ayuda.tusfacturas.app) para acceder a guías paso a paso y solución de problemas o escribnos a <api@tusfacturas.app>

&#x20;


# Factura A

TusFacturasAPP: API para Facturas A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura A ( Código ARCA: 0001 )  - emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura A en AFIP/ARCA

En éste ejemplo podes ver conceptos con alícuota de IVA 21%, 10%, exentos y no gravados, ademas de Percepciones IVA e IIBB. &#x20;

```json
{
   "usertoken":"xxxx",
   "apikey":"xxx",
   "apitoken":"xxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "reclama_deuda": "N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
      "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "tipo":"FACTURA A",
      "idioma":"1",
      "vencimiento":"26/03/2023",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "operacion":"V",
      "moneda":"DOL",
      "cotizacion": "1045.5",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
   				{
						"cantidad": 1,
						"producto": {
							"descripcion": "PIEDRA NEGRA RESERVA MALBEC/CAB/CHARD/PINOT GRIS",
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101474",
							"alicuota": 21,
							"unidad_bulto":1,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					},
					{
						"cantidad": 1,
						"producto": {
							"descripcion": "GRAN ENEMIGO (EXENTO)",
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101430",
							"alicuota": -1,
							"unidad_bulto":1,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					},
					{
						"cantidad": 1,
						"producto": {
							"descripcion": "ALAMOS CAB/CHARDONNAY (NOGRAVADO)",
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101439",
							"unidad_bulto":1,
							"alicuota": -2,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					},
					{
						"cantidad": 1,
						"producto": {
							"descripcion": "ANIMAL CABERNET", 				
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101463",
							"unidad_bulto":1,
							"alicuota": 10.5,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					}
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"4345",
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 4000},
		   {"descripcion" : "Efectivo", "importe" : 345} 			
			   ],
		"total": 4345
		} 
   }
}
```

### ¿Cómo enviar una factura A según mi lenguaje de programación?

Podes enviar las facturas A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Factura A&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca),  con referencia a cada parámetro y las[ tablas de referencia ](/parametros/tablas-de-referencia)necesarias para completar los campos.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### :hand\_splayed: ¿Quién genera una factura A?

Los responsables inscriptos solo pueden emitir comprobantes tipo "A",  cuando le facturan a otro responsable inscripto o a un monotributista. En ese caso el tipo de documento de tu cliente debe ser obligatoriamente CUIT.  Conoce mas detalles [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura A

¿Necesitas una factura de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_A-00010-00000122.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

#### Datos a tener en cuenta:

{% hint style="info" %}
A partir del 01-07-2021, todo comprobante A que se emita a un monotributista deberá llevar la siguiente leyenda: "*El crédito fiscal discriminado en el presente comprobante, sólo podrá ser computado a efectos del Régimen de Sostenimiento e Inclusión Fiscal para Pequeños Contribuyentes de la Ley Nº 27.618".* **Éste dato&#x20;**<mark style="background-color:yellow;">**no debe ser enviado**</mark>**&#x20;en el campo "leyenda\_gral", ya que saldrá automáticamente impreso en los PDF que se generen desde nuestra plataforma.**

{% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura B

TusFacturasAPP: API para Facturas B de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura B  ( Código ARCA: 0006 ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura B emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura B en AFIP/ARCA

```json
{
   "apitoken":"xxxx",
   "usertoken":"xxxx",
   "apikey":"xxxx",
   "cliente":{
      "documento_tipo":"DNI",
      "condicion_iva":"CF",
      "condicion_iva_operacion":"CF",
      "domicilio":"Av Sta Fe 23132",
      "condicion_pago":"201",
      "documento_nro":"111132333",
      "razon_social":"Juan Pedro KJL",
      "provincia":"2",
      "email":"email@dominio.com",
      "reclama_deuda": "N",
      "envia_por_mail":"N",
       "rg5329": "N"
   },
   "comprobante":{
      "rubro":"Sevicios web",
      "tipo":"FACTURA B",
      "numero":2134,
      "bonificacion":0,
      "operacion":"V",
      "moneda":"PES",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "cotizacion": 1,
      "detalle":[
         {
            "cantidad":1,
            "afecta_stock":"S",
            "bonificacion_porcentaje":0,
            "producto":{
               "descripcion":"Hosting pagina web ",
               "codigo":37,
               "lista_precios":"standard",
               "leyenda":"",
               "unidad_bulto":1,
               "alicuota":21,
               "actualiza_precio":"S",
                "unidad_medida": 7,
               "rg5329": "N",
               "precio_unitario_sin_iva":114.88
            }
         }
      ],
      "fecha":"28/03/2018",
      "vencimiento":"26/03/2023",
      "rubro_grupo_contable":"Sevicios",
      "total":139.0, 
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 139} 			
			   ],
		"total": 139
		},
      "punto_venta":3,
      "tributos":[]
   }
}
```

### ¿Cómo enviar una factura B según mi lenguaje de programación?

Podes enviar las facturas B por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para armar el JSON&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### :hand\_splayed: ¿Quién genera una factura B?

Los responsables inscriptos solo pueden emitir comprobantes tipo "B",  cuando le facturan a un exento en IVA o a un consumidor final.&#x20;

Cuando le facturan a un exento,  el tipo de documento de tu cliente debe ser obligatoriamente CUIT.  Cuando le facturan a un consumidor final,  el tipo de documento de tu cliente puede ser DNI, Pasaporte, OTRO, LE, LC.  Conoce mas detalles [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura B

¿Necesitas una factura de ejemplo? [Descárgala ahora.](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_B-00010-00000167.pdf) Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Quién genera una factura B?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una factura B.

### Datos a tener en cuenta:

{% hint style="info" %}

* En los comprobantes B el IVA se suma al total del producto, pero no aparecerá desglozado en la factura, ya que tu cliente no lo puede discriminar. Vos debes enviar los productos con el precio SIN IVA y su respectiva alícuota de IVA.
* Si queres enviar un comprobante a un consumidor final sin especificar su nombre y DNI,  consulta la siguiente documentación de "[Facturas a Consumidor final sin especificar datos](/api-factura-electronica-afip-facturacion-ventas/facturas-a-consumidor-final-sin-especificar-datos)"
  {% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura C

TusFacturasAPP: API para Facturas C de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura C  (  Código ARCA: 011  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura C emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura C en AFIP/ARCA

{% hint style="info" %}
Los comprobantes de tipo "C" deben llevar alícuota de IVA = 0 y no pueden incluir exentos, no gravados ni percepciones
{% endhint %}

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "reclama_deuda": "N",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"FACTURA C",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
			   "paga_misma_moneda": "N"
			},	
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "moneda":"PES",
      "cotizacion": 1,
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
                "unidad_medida": 7,
                "actualiza_precio":"S",
               "alicuota":"0"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"0"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "total":"110",
         "pagos": {
		         "formas_pago": [
		               {"descripcion" : "MercadoPago", "importe" : 110} 			
			            ],
		            "total": 110
		}
   }
}
```

### ¿Cómo enviar una factura C según mi lenguaje de programación?

Podes enviar las facturas C por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para armar el JSON&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### :hand\_splayed: ¿Quién genera una factura C?

Los monotributistas y exentos en IVA son los únicos que pueden emitir comprobantes tipo "C", sin importar a quien esten destinadas. Si le facturas a otro monotributista, a un exento en IVA o a un responsable inscripto, el tipo de documento de tu cliente debe ser obligatoriamente CUIT, en cualquier otro caso podes enviar DNI, OTRO, LE, Pasaporte, etc. Conoce mas detalles [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura C

¿Necesitas una factura de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_C-00010-00000003.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### Datos a tener en cuenta:

{% hint style="info" %}

* Los comprobantes C no llevan IVA.
* Si queres enviar un comprobante a un consumidor final sin especificar su nombre y DNI,  consulta la siguiente documentación de "[Facturas a Consumidor final sin especificar datos](/api-factura-electronica-afip-facturacion-ventas/facturas-a-consumidor-final-sin-especificar-datos)"
  {% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura E

TusFacturasAPP: API para Facturas E de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura E (  Código ARCA: 019  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

### JSON para generar una Factura E en AFIP/ARCA de exportación de bienes

```json
{
    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"OTRO",
      "documento_nro":"11124445",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"26",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "reclama_deuda": "N",
      "condicion_iva":"CDEX"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo":"FACTURA E",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"DOL",
      "idioma":"2",
      "cotizacion":"1115.20",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
                "unidad_medida": 7,
               "alicuota":"0",
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
      "fex": {
              "permisos_tiene"      : "" ,
              "fecha_pago"          : "12/02/2025",
              "tipo_exportacion"    : "1",
              "pais_comprobante_id" : "123",
              "forma_pago_leyenda"  : "Payment via paypal 30 days ",
              "cliente_pais_cuit"   : "50000000016",
              "incoterms_tipo_id"   : "FOB",
              "incoterms_nro"       : "AAAAGGGGGGGGGGGAAA ",
              "permisos"    : [
                                  {
                                      "codigo_despacho"  :  "1234567890123456",
                                       "pais_destino_id" :    "112"
                                  },

                                  {
                                      "codigo_despacho"   :  "1234567890144456",
                                       "pais_destino_id"  :    "123"
                                  },
                                   {
                                      "codigo_despacho"   :    "4444567890123456",
                                       "pais_destino_id"  :    "145"
                                  }
                              ]
               
      }
   }
}
```

### JSON para generar una Factura E en AFIP/ARCA de exportación de servicios

```json
{
    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"OTRO",
      "documento_nro":"11124445",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"26",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "reclama_deuda": "N",
      "condicion_iva":"CDEX"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo":"FACTURA E",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"DOL",
      "idioma":"2",
      "cotizacion":"1115.20",
      "tags": [ 
	"etiqueta1","etiqueta2"
       ],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0",
               "rg5329":"N"
            },
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
      "fex": {
              "permisos_tiene"      : "" ,
              "fecha_pago"          : "12/02/2025",
              "tipo_exportacion"    : "2",
              "pais_comprobante_id" : "123",
              "forma_pago_leyenda"  : "Payment via paypal 30 days ",
              "cliente_pais_cuit"   : "50000000016"
               
      }
   }
}
```

### JSON para generar una Factura E en ARCA de exportación de servicios a Tierra del Fuego

{% hint style="info" %}
Para facturar a Tierra del Fuego (TDE) una exportación debes enviar la info de la siguiente manera:

* Indica el CUIT de tu cliente en el campo "documento\_nro" y en "documento\_tipo" = "CUIT"
* Indica la alícuota de IVA real de tu cliente
* Agrega en el bloque fex el CUIT de tu cliente en el campo "cliente\_pais\_cuit"
* Agrega en el bloque fex  en "pais\_comprobante\_id" = "250"

{% endhint %}

Ejemplo:

```json
{
    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"23",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "reclama_deuda": "N",
      "condicion_iva":"CDEX"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo":"FACTURA E",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"DOL",
      "idioma":"2",
      "cotizacion":"1115.20",
      "tags": [ 
	"etiqueta1","etiqueta2"
       ],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0",
               "rg5329":"N"
            },
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
      "fex": {
              "permisos_tiene"      : "" ,
              "fecha_pago"          : "12/02/2025",
              "tipo_exportacion"    : "2",
              "pais_comprobante_id": "250",
              "forma_pago_leyenda"  : "Payment via paypal 30 days ",
              "cliente_pais_cuit"   : "30712293841"
               
      }
   }
}
```

### ¿Cómo enviar una factura E según mi lenguaje de programación?

Podes enviar las facturas E por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para armar el JSON&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [referencia de la API](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca) >  [comprobantes "E"](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-electronica-afip-exportacion),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

### ¿Quién genera una factura E?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una factura E.

### Datos a tener en cuenta:

{% hint style="info" %}

* Los comprobantes E no llevan IVA, tributos, bonificaciones, conceptos no gravados ni impuestos internos.
  {% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura M

TusFacturasAPP: API para Facturas M de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Transición ARCA de la factura M a la factura A con leyenda (a partir del 01/12/2025)

A partir del 1 de diciembre de 2025, ARCA elimina administrativamente el comprobante "Factura M", que pasa a denominarse "Factura A con leyenda". Sin embargo, el código interno sigue siendo el 0051, correspondiente a la ex Factura M.\
**IMPORTANTE:** <mark style="color:$primary;">Para emitir estos comprobantes debes enviar  "Factura M".</mark>&#x20;

El PDF generado mostrará correctamente "Factura A - Cod. 0051". Lo mismo sucede con las Notas de crédito y débito M.\
Podes ver el [instructivo de ayuda sobre la factura M acá](https://ayuda.tusfacturas.app/es/articles/11560951-factura-m-con-leyenda).

### Endpoints

Factura A ( Código ARCA: 0051 ) - Ex Factura M  - emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura M en AFIP/ARCA

```json
{
   "usertoken":"xxxx",
   "apikey":"xxx",
   "apitoken":"xxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "reclama_deuda": "N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
      "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "tipo":"FACTURA M",
      "vencimiento":"26/03/2023",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "operacion":"V",
      "moneda":"DOL",
      "cotizacion": "1045.5",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"21",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"151",
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 151} 			
			   ],
		"total": 151
		} 
   }
}
```

### ¿Cómo enviar una factura M según mi lenguaje de programación?

Podes enviar las facturas M por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Factura M&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

{% hint style="info" %}
Nuestra plataforma incorpora de manera automática en los PDF de tus Facturas M, la leyenda "OPERACIÓN SUJETA A RETENCIÓN".
{% endhint %}

### ¿Quién genera una factura M?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una factura M.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura MiPyme A

TusFacturasAPP: API para Facturas MiPyme A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura MiPyme A (  Código ARCA: 201  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

### JSON para generar una Factura MiPyme A en AFIP/ARCA

```json
{
    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"11124445",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"26",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
      "reclama_deuda": "N",
       "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo": "FACTURA DE CREDITO ELECTRONICA MiPyME (FCE) A",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"DOL",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "idioma":"1",
      "cotizacion":"1115.20",
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 100} 			
			   ],
		"total": 100
		},
      "rg_especiales": {
		"regimen": "Factura de Cr\u00e9dito Electr\u00f3nica MiPyMEs (FCE)",
		"datos": [{
				"id": 2101,
				"valor": "0111344440001111150"
			},
			{
				"id": 23,
				"valor": "PIRULO S.A"
			},
			{
				"id": 27,
				"valor": "ADC"
			}
		]
	 }
      }
}
```

### ¿Cómo enviar una factura MiPyme A según mi lenguaje de programación?

Podes enviar las facturas MiPyme A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para armar el JSON&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

### ¿Debo generar una factura MiPyme A?

Conocé [desde aqu](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-obligado-a-recibir-factura-de-credito-electronica-mipyme)i, si corresponde que para esa venta en particular, emitas una Factura MiPyme A.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura MiPyme B

TusFacturasAPP: API para Facturas MiPyme B de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura MiPyme B (  Código ARCA: 206  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

### JSON para generar una Factura MiPyme B en AFIP/ARCA

```json
{
    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"11124445",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"26",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"E",
      "reclama_deuda": "N",
       "condicion_iva_operacion":"E"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo": "FACTURA DE CREDITO ELECTRONICA MiPyME (FCE) B",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"PES",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "idioma":"1",
      "cotizacion":"1",
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
         "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 100} 			
			   ],
		"total": 100
		},
      "rg_especiales": {
		"regimen": "Factura de Cr\u00e9dito Electr\u00f3nica MiPyMEs (FCE)",
		"datos": [{
				"id": 2101,
				"valor": "0111344440001111150"
			},
			{
				"id": 23,
				"valor": "PIRULO S.A"
			},
			{
				"id": 27,
				"valor": "ADC"
			}
		]
	  
      }
}
```

### ¿Cómo enviar una Factura MiPyme B según mi lenguaje de programación?

Podes enviar las facturas MiPyme B por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para armar el JSON&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

### ¿Debo generar una factura MiPyme B?

Conocé [desde aqu](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-obligado-a-recibir-factura-de-credito-electronica-mipyme)i, si corresponde que para esa venta en particular, emitas una Factura MiPyme B.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de crédito A

TusFacturasAPP: API para Notas de crédito A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de crédito A (  Código ARCA: 003  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Nota de crédito A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Nota de crédito A en AFIP/ARCA con detalle de comprobantes anulados

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI",
      "rg5329":"N"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE CREDITO A",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "moneda": "PES",
      "cotizacion": "1",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"-1",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"21",
               "rg5329":"N"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"142.1",
      "comprobantes_asociados":[
         {
            "tipo_comprobante":"FACTURA A",
            "punto_venta":"0002",
            "numero":12313,
            "comprobante_fecha":"07/07/2018",
            "cuit":"30716000001"
         }
      ]
   }
}
```

### ¿Cómo enviar una nota de crédito A según mi lenguaje de programación?

Podes enviar las notas de crédito A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de crédito A&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)
* Tene en cuenta que la información que debes ingresar es referente a quien emitio esa NC
  * La fecha que tenia el comprobante que estas anulando
  * Que tipo de comprobante es
  * El CUIT emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC)
  * El punto de venta emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Nota de crédito A

¿Necesitas una Nota de Crédito A de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__NOTA_DE_CREDITO_A-00010-00000006.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Qué es una nota de crédito A?

Conocé  que es una[ nota de crédito A](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de crédito A?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de crédito A.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de crédito B

TusFacturasAPP: API para Notas de crédito B de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de crédito B (  Código ARCA: 008  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Nota de crédito B emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Nota de crédito B en AFIP/ARCA con detalle de comprobantes anulados

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"DNI",
      "documento_nro":"12345678",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"CF",
       "condicion_iva_operacion":"CF"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE CREDITO B",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "moneda": "PES",
      "cotizacion": "1",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
                "unidad_medida": 7,
               "precio_unitario_sin_iva":"100",
               "alicuota":"-1"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"21"
            },
            "afecta_stock": "N",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"112.1",
      "comprobantes_asociados":[
         {
            "tipo_comprobante":"FACTURA B",
            "punto_venta":"2",
            "numero": "12313",
            "comprobante_fecha":"07/07/2018",
            "cuit":"30716000001"
         }
      ]
   }
}
```

### ¿Cómo enviar una nota de crédito B según mi lenguaje de programación?

Podes enviar las notas de crédito B por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de crédito B&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)
* Tene en cuenta que la información que debes ingresar es referente a quien emitio esa NC
  * La fecha que tenia el comprobante que estas anulando
  * Que tipo de comprobante es
  * El CUIT emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC)
  * El punto de venta emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Nota de crédito B

¿Necesitas una Nota de Crédito B de ejemplo? [Descárgala ahora.](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__NOTA_DE_CREDITO_B-00010-00000005.pdf) Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Qué es una nota de crédito B?

Conocé  que es una[ nota de crédito B](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de crédito B?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de crédito B.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de crédito C

TusFacturasAPP: API para Notas de crédito C de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de crédito C (  Código ARCA: 013  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Nota de crédito C emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Nota de crédito C en AFIP/ARCA con detalle de comprobantes anulados

{% hint style="info" %}
Los comprobantes de tipo "C" deben llevar alícuota de IVA = 0 y no pueden incluir exentos, no gravados ni percepciones
{% endhint %}

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE CREDITO C",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "moneda": "PES",
      "cotizacion": "1",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
                "unidad_medida": 7,
               "precio_unitario_sin_iva":"100",
               "alicuota":"0"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"0"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "total":"110",
      "comprobantes_asociados":[
         {
            "tipo_comprobante":"FACTURA C",
            "punto_venta":"2",
            "numero":12313,
            "comprobante_fecha":"07/07/2018",
           "cuit":"30716000001"
         }
      ]
   }
}
```

### ¿Cómo enviar una nota de crédito C según mi lenguaje de programación?

Podes enviar las notas de crédito C por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de crédito C&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)
* Tene en cuenta que la información que debes ingresar es referente a quien emitio esa NC
  * La fecha que tenia el comprobante que estas anulando
  * Que tipo de comprobante es
  * El CUIT emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC)
  * El punto de venta emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Nota de crédito C

¿Necesitas una Nota de Crédito C de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__NOTA_DE_CREDITO_C-00010-00000001.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Qué es una nota de crédito C?

Conocé  que es una[ nota de crédito C](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de crédito C?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de crédito C.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Recibo C

TusFacturasAPP: API para Recibo C de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### ¿Qué son los Recibos C de ARCA? <a href="#h_078bc3c5c9" id="h_078bc3c5c9"></a>

Los Recibos C de ARCA (  Código ARCA: 015  ) son comprobantes fiscales que **funcionan de manera similar a las facturas "C" tradicionales**. Se utilizan para documentar operaciones comerciales, suman en la cuenta corriente de tu cliente y tienen validez ante ARCA. No son recibos de cobro.

#### :warning:  Importante: Los recibos "C", no son recibos de cobro <a href="#h_5705328de9" id="h_5705328de9"></a>

Aunque ARCA los haya nomenclado como "recibos", estos documentos son equivalentes a facturas C comunes en cuanto a su tratamiento contable.

### Endpoints

Recibo C emitido en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Recibo C emitido en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar un recibo C en AFIP/ARCA

{% hint style="info" %}
Los comprobantes de tipo "C" deben llevar alícuota de IVA = 0 y no pueden incluir exentos, no gravados ni percepciones
{% endhint %}

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"RECIBO C",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "moneda": "PES",
      "cotizacion": "1",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
                "unidad_medida": 7,
               "precio_unitario_sin_iva":"100",
               "alicuota":"0"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"0"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "total":"110"
   }
}
```

### ¿Cómo enviar un recibo C según mi lenguaje de programación?

Podes enviar recibos C por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear un recibo C&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Remito para papel pre-impreso con CAI

TusFacturasAPP: API para emitir remitos e imprimirlos sobre papel pre-impreso con CAI. Confiable desde 2015.

### Endpoint

Remito - solo en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

### JSON para generar un remito en AFIP/ARCA

{% hint style="info" %}
Los remitos generados en TusFacturasAPP no conectan con ARCA, ARBA ni ningún otro organismo provincial o nacional. Para que tengan validez legal deben imprimirse sobre papel pre-impreso con CAI desde un punto de venta que configures para los remitos.&#x20;

El remito por webservice provisto por ARCA solo está disponible para empresas de ciertos rubros específicos (carnico, lácteo, etc).

Conoce [cómo configurar el diseño del PDF de tus remitos](https://ayuda.tusfacturas.app/es/articles/12044811-como-configurar-el-estilo-de-un-remito-preimpreso-en-imprenta)&#x20;
{% endhint %}

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   },
   "comprobante": {
    "tags": [],
    "tipo": "REMITO",
    "operacion": "V",
    "punto_venta": "10",
    "fecha": "07/01/2026",
    "vencimiento": "10/12/2026",
    "idioma": 1,
    "numero": 0,
    "moneda": "PES",
    "cotizacion": 1,
    "periodo_facturado_desde": "",
    "periodo_facturado_hasta": "",
    "rubro": "Deudores Varios",
    "rubro_grupo_contable": "Ventas",
    "detalle": [
      {
        "cantidad": 1,
        "afecta_stock": "N",
        "leyenda": "Cajon de madera",
        "producto": {
          "codigo": "FR",
          "descripcion": "Cajon de frutas",
          "actualiza_precio": "N",
          "unidad_bulto": 1,
          "lista_precios": "Mayorista",
          "precio_unitario_sin_iva": 100,
          "impuestos_internos_alicuota": 0,
          "alicuota": 21,
          "unidad_medida": 7
        },
        "actualiza_precio": "N",
        "bonificacion_porcentaje": 0
      }
    ],
    "abono": "N",
    "abono_frecuencia": 1,
    "abono_hasta": "",
    "abono_actualiza_precios": "N",
    "bonificacion": 0,
    "leyenda_gral": "",
    "comentario": "",
    "exentos": 0,
    "nogravados": 0,
    "tributos": [],
    "impuestos_internos": "",
    "impuestos_internos_base": "0",
    "impuestos_internos_alicuota": "0",
    "total": 121
  }
}
```

### ¿Cómo enviar un remito según mi lenguaje de programación?

Podes enviar un remito para imprimir sobre papel pre-impreso con CAI por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear un remito

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro.

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de crédito E

TusFacturasAPP: API para Notas de crédito E de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de crédito E (  Código ARCA: 021  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

### JSON para generar una Nota de crédito E en AFIP/ARCA con detalle de comprobantes anulados

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"OTRO",
      "documento_nro":"11124445",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"26",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"CDEX"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo":"NOTA DE CREDITO E",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"DOL",
      "idioma":"2",
      "cotizacion":"1115.20",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
       "fex": {
                            "permisos_tiene"      : "S" ,
                            "tipo_exportacion"    : "1",
                            "pais_comprobante_id" : "123",
                            "forma_pago_leyenda"  : "Payment via paypal 30 days ",
                            "cliente_pais_cuit"   : "50000000016",
                            "incoterms_tipo_id"   : "FOB",
                            "incoterms_nro"       : "AAAAGGGGGGGGGGGAAA ",
                            "permisos"    : [
                                                {
                                                    "codigo_despacho"  :  "1234567890123456",
                                                     "pais_destino_id" :    "112"
                                                },
                    
                                                {
                                                    "codigo_despacho"   :  "1234567890144456",
                                                     "pais_destino_id"  :    "123"
                                                },
                    
                                                 {
                                                    "codigo_despacho"   :    "4444567890123456",
                                                     "pais_destino_id"  :    "145"
                                                }
                                            ],
                           "comprobantes_asociados": [
                                                {
                                                    "tipo_comprobante"   :    "FACTURA E",
                                                     "punto_venta"  :    "10",
                                                     "numero" : 12313,
                                                     "cuit":"30716000001"  
                                                } 
                                           ]
                    } 
        }
}
</code></pre>

### ¿Cómo enviar una nota de crédito E según mi lenguaje de programación?

Podes enviar las notas de crédito E por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de crédito E&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

### ¿Qué es una nota de crédito E?

Conocé  que es una[ nota de crédito E](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de crédito E?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de crédito E.

### Datos importantes:

{% hint style="info" %}
Solo deberán ser enviados los comprobantes asociados, cuando el campo exportacion\_tipo sea igual a "1" .
{% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de crédito MiPyme A

TusFacturasAPP: API para Notas de crédito MiPyme A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de crédito MiPyme A (  Código ARCA: 203  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

### JSON para generar una Nota de crédito MiPyme A en AFIP/ARCA con detalle de comprobantes anulados

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"1111111111",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"26",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo":"NOTA DE CREDITO ELECTRONICA MiPyME (FCE) A",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"DOL",
      "idioma":"2",
      "cotizacion":"1115.20",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
                "unidad_medida": 7,
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0",
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
      "rg_especiales": {
		"regimen": "Factura de Cr\u00e9dito Electr\u00f3nica MiPyMEs (FCE)",
		"datos": [{
				"id": 22,
				"valor": "N"
			},
			{
				"id": 23,
				"valor": "PIRULO S.A"
			},
			{
				"id": 27,
				"valor": "SCA"
			}
		]
	},
        "comprobantes_asociados": [
                            {
                               "tipo_comprobante"   :    "FACTURA DE CREDITO ELECTRONICA MiPyME (FCE) A",
                                "punto_venta"  :    "10",
                                 "numero" : 12313,
                                 "cuit":"30716000001",
                                 "comprobante_fecha":"07/07/2025"     
                             } 
                         ] 
        }
}
</code></pre>

### ¿Cómo enviar una nota de crédito MiPyme A según mi lenguaje de programación?

Podes enviar las notas de crédito MiPyme A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de crédito MiPyme A&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro.

Conocé  más de los [comprobantes MiPyme](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce#que-son-los-comprobantes-mipyme-afip) y cómo configurar el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)"&#x20;

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

### ¿Qué es una nota de crédito MiPyme A?

Conocé  que es una [nota de crédito ](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce)MiPyme A.

### ¿Cuándo generar una nota de crédito MiPyme A?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de crédito MiPyme A.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de débito A

TusFacturasAPP: API para Notas de débito A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de débito A (  Código ARCA: 002  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Nota de débito A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Nota de débito A en AFIP/ARCA con detalle de comprobantes cancelados

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI",
      "rg5329":"N"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE DEBITO A",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "moneda": "PES",
      "cotizacion": "1",
      
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"-1",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"21",
               "rg5329":"N"
            },
            "afecta_stock": "N",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"142.1",
      "comprobantes_asociados":[
         {
            "tipo_comprobante":"NOTA DE CREDITO A",
            "punto_venta":"145",
            "numero":12313,
            "comprobante_fecha":"07/07/2018",
            "cuit":"30716000001"
         }
      ]
   }
}
```

### JSON para generar una Nota de débito A en AFIP/ARCA asociando periodos

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"S",
      "condicion_pago":"211",
      "condicion_iva":"RI",
      "rg5329":"N"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE DEBITO A",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"-1",
               "rg5329":"N"
            },
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"21",
               "rg5329":"N"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"142.1",
       "comprobantes_asociados_periodo": {
        "fecha_desde"   :    "20/11/2020",
        "fecha_hasta"  :    "25/11/2020"  
   }
}
```

### ¿Cómo enviar una nota de débito A según mi lenguaje de programación?

Podes enviar las notas de débito A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de débito A&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Nota de débito A

¿Necesitas una Nota de débito A de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__NOTA_DE_CREDITO_A-00010-00000006.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Qué es una nota de débito A?

Conoce  que es una[ nota de débito A](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de débito A?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de débito A.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de débito B

TusFacturasAPP: API para Notas de débito B de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de débito B (  Código ARCA: 007  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Nota de débito B emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Nota de débito B en AFIP/ARCA con detalle de comprobantes cancelados

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"CF",
       "condicion_iva_operacion":"CF",
      "rg5329":"N"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE DEBITO B",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "moneda": "DOL",
      "cotizacion": "1045.5",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"-1",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"21",
               "rg5329":"N"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"142.1",
      "comprobantes_asociados":[
         {
            "tipo_comprobante":"NOTA DE CREDITO B",
            "punto_venta":"145",
            "numero":12313,
            "comprobante_fecha":"07/07/2018",
            "cuit":"30716000001"
         }
      ]
   }
}
```

### JSON para generar una Nota de débito B en AFIP/ARCA asociando periodos

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"S",
      "condicion_pago":"211",
      "condicion_iva":"CF",
      "rg5329":"N"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE DEBITO B",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"-1",
               "rg5329":"N"
            },
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"21",
               "rg5329":"N"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"142.1",
       "comprobantes_asociados_periodo": {
        "fecha_desde"   :    "20/11/2020",
        "fecha_hasta"  :    "25/11/2020"  
   }
}
```

### ¿Cómo enviar una nota de débito B según mi lenguaje de programación?

Podes enviar las notas de débito B por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de débito B&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Nota de débito B

¿Necesitas una Nota de débito B de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__NOTA_DE_CREDITO_A-00010-00000006.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Qué es una nota de débito B?

Conoce  que es una[ nota de débito B](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de débito B?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de débito B.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de débito C

TusFacturasAPP: API para Notas de débito C de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de débito C (  Código ARCA: 012  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Nota de débito C emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Nota de débito C en AFIP/ARCA con detalle de comprobantes cancelados

{% hint style="info" %}
Los comprobantes de tipo "C" deben llevar alícuota de IVA = 0 y no pueden incluir exentos, no gravados ni percepciones
{% endhint %}

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE DEBITO C",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "moneda": "PES",
      "cotizacion": "1",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
                "unidad_medida": 7,
               "precio_unitario_sin_iva":"100",
               "alicuota":"0"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"0"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "total":"110",
      "comprobantes_asociados":[
         {
            "tipo_comprobante":"NOTA DE CREDITO B",
            "punto_venta":"145",
            "numero":12313,
            "comprobante_fecha":"07/07/2018",
            "cuit":"30716000001"
         }
      ]
   }
}
```

### JSON para generar una Nota de débito C en AFIP/ARCA asociando periodos

<pre class="language-json"><code class="lang-json"><strong>{
</strong>   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"S",
      "condicion_pago":"211",
      "condicion_iva":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2023",
      "vencimiento":"26/03/2023",
      "tipo":"NOTA DE DEBITO C",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "moneda":"PES",
      "cotizacion": 1,
      "periodo_facturado_desde":"28/02/2023",
      "periodo_facturado_hasta":"28/02/2023",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0"
            },
            "leyenda":""
         },
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"p2",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"160398",
               "precio_unitario_sin_iva":"10",
               "alicuota":"0"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "total":"110",
      "comprobantes_asociados_periodo":{
         "fecha_desde":"20/11/2020",
         "fecha_hasta":"25/11/2020"
      }
   }
}
</code></pre>

### ¿Cómo enviar una nota de débito C según mi lenguaje de programación?

Podes enviar las notas de débito C por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de débito C&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Nota de débito C

¿Necesitas una Nota de débito C de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__NOTA_DE_CREDITO_A-00010-00000006.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Qué es una nota de débito C?

Conoce  que es una[ nota de débito C](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de débito C?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de débito C.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Nota de débito E

TusFacturasAPP: API para Notas de débito E de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Nota de débito E (  Código ARCA: 020 ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

### JSON para generar una Nota de débito E en AFIP/ARCA con detalle de comprobantes cancelados

```json
{
    "usertoken": "XXX",
    "apikey": XXX,
    "apitoken": "XXXX",
   "cliente":{
      "documento_tipo":"OTRO",
      "documento_nro":"11124445",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"26",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "condicion_iva":"CDEX"
   },
   "comprobante":{
      "fecha":"14/01/2025",
      "tipo":"NOTA DE CREDITO E",
      "vencimiento":"26/03/2025",
      "operacion":"V",
      "punto_venta":"0010",
      "moneda":"DOL",
      "idioma":"2",
      "cotizacion":"1115.20",
      "tags": [ ],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"01/02/2025",
      "periodo_facturado_hasta":"28/02/2025",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
               "precio_unitario_sin_iva":"100",
               "alicuota":"0",
                "unidad_medida": 7,
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"100",
       "fex": {
                            "permisos_tiene"      : "S" ,
                            "tipo_exportacion"    : "1",
                            "pais_comprobante_id" : "123",
                            "forma_pago_leyenda"  : "Payment via paypal 30 days ",
                            "cliente_pais_cuit"   : "50000000016",
                            "incoterms_tipo_id"   : "FOB",
                            "incoterms_nro"       : "AAAAGGGGGGGGGGGAAA ",
                            "permisos"    : [
                                                {
                                                    "codigo_despacho"  :  "1234567890123456",
                                                     "pais_destino_id" :    "112"
                                                },
                    
                                                {
                                                    "codigo_despacho"   :  "1234567890144456",
                                                     "pais_destino_id"  :    "123"
                                                },
                    
                                                 {
                                                    "codigo_despacho"   :    "4444567890123456",
                                                     "pais_destino_id"  :    "145"
                                                }
                                            ],
                           "comprobantes_asociados": [
                                                {
                                                    "tipo_comprobante"   :    "NOTA DE CREDITO E",
                                                     "punto_venta"  :    "145",
                                                     "numero" : 12313,
                                                     "cuit":"30716000001"    
                                                } 
                                           ]
                    } 
        }
}
```

### ¿Cómo enviar una nota de débito E según mi lenguaje de programación?

Podes enviar las notas de débito E por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado arriba.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Nota de débito E&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro, en especial el bloque de "[Comprobantes asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#como-emitir-notas-de-debito-credito-detallando-los-comprobantes-que-se-anulan)".

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

### ¿Qué es una nota de débito E?

Conoce  que es una[ nota de débito E](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito).

### ¿Cuándo generar una nota de débito E?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una nota de débito E.

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Liquidaciones A

TusFacturasAPP: API para Facturas A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Liquidaciones A ( Código ARCA: 0063 )  - emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Liquidaciones A en AFIP/ARCA

En éste ejemplo podes ver conceptos con alícuota de IVA 21%, 10%, exentos y no gravados, ademas de Percepciones IVA e IIBB. &#x20;

```json
{
   "usertoken":"xxxx",
   "apikey":"xxx",
   "apitoken":"xxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "reclama_deuda": "N",
      "condicion_pago":"211",
      "condicion_iva":"RI",
      "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "tipo":"LIQUIDACIONES A",
      "idioma":"1",
      "vencimiento":"26/03/2023",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "operacion":"V",
      "moneda":"DOL",
      "cotizacion": "1045.5",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
   				{
						"cantidad": 1,
						"producto": {
							"descripcion": "PIEDRA NEGRA RESERVA MALBEC/CAB/CHARD/PINOT GRIS",
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101474",
							"alicuota": 21,
							"unidad_bulto":1,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					},
					{
						"cantidad": 1,
						"producto": {
							"descripcion": "GRAN ENEMIGO (EXENTO)",
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101430",
							"alicuota": -1,
							"unidad_bulto":1,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					},
					{
						"cantidad": 1,
						"producto": {
							"descripcion": "ALAMOS CAB/CHARDONNAY (NOGRAVADO)",
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101439",
							"unidad_bulto":1,
							"alicuota": -2,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					},
					{
						"cantidad": 1,
						"producto": {
							"descripcion": "ANIMAL CABERNET", 				
							"precio_unitario_sin_iva": 1000,
							"codigo": "P101463",
							"unidad_bulto":1,
							"alicuota": 10.5,
							"impuestos_internos_alicuota": 0,
							"precio_total": 1000
						},
						"bonificacion_porcentaje": 0,
						"leyenda": ""
					}
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":2,
            "base_imponible":100,
            "alicuota":10,
            "total":10
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"4345",
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 4000},
		   {"descripcion" : "Efectivo", "importe" : 345} 			
			   ],
		"total": 4345
		} 
   }
}
```

### ¿Cómo enviar una liquidación A según mi lenguaje de programación?

Podes enviar las facturas A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Liquidación A&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca),  con referencia a cada parámetro y las[ tablas de referencia ](/parametros/tablas-de-referencia)necesarias para completar los campos.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### :hand\_splayed: ¿Quién genera una liquidación A?

* **Entidades financieras** comprendidas en la Ley 21.526
* **Compañías de seguros** reguladas por la Ley 20.091
* **Administradoras de tarjetas de crédito y prepagas**, y sistemas de pago por transferencia
* **Instituciones educativas privadas** y entidades de medicina prepaga constituidas como asociaciones o fundaciones
* **Proveedores de Servicios de Activos Virtuales (PSAV)** inscriptos ante la Comisión Nacional de Valores

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Liquidaciones B

TusFacturasAPP: API para Facturas A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Liquidaciones B ( Código ARCA: 0064 )  - emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Liquidaciones B en AFIP/ARCA

```json
 {
   "apitoken":"xxxx",
   "usertoken":"xxxx",
   "apikey":"xxxx",
   "cliente":{
      "documento_tipo":"DNI",
      "condicion_iva":"CF",
      "condicion_iva_operacion":"CF",
      "domicilio":"Av Sta Fe 23132",
      "condicion_pago":"201",
      "documento_nro":"111132333",
      "razon_social":"Juan Pedro KJL",
      "provincia":"2",
      "email":"email@dominio.com",
      "reclama_deuda": "N",
      "envia_por_mail":"N",
       "rg5329": "N"
   },
   "comprobante":{
      "rubro":"Sevicios web",
      "tipo":"LIQUIDACIONES B",
      "numero":2134,
      "bonificacion":0,
      "operacion":"V",
      "moneda":"PES",
      "external_reference":"0306-0301",
      "tags": [],
       "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "cotizacion": 1,
      "detalle":[
         {
            "cantidad":1,
            "afecta_stock":"S",
            "bonificacion_porcentaje":0,
            "producto":{
               "descripcion":"Hosting pagina web ",
               "codigo":37,
               "lista_precios":"standard",
               "leyenda":"",
               "unidad_bulto":1,
               "alicuota":21,
               "actualiza_precio":"S",
                "unidad_medida": 7,
               "rg5329": "N",
               "precio_unitario_sin_iva":114.88
            }
         }
      ],
      "fecha":"28/03/2018",
      "vencimiento":"26/03/2023",
      "rubro_grupo_contable":"Sevicios",
      "total":139.0, 
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 139} 			
			   ],
		"total": 139
		},
      "punto_venta":3,
      "tributos":[]
   }
}
```

### ¿Cómo enviar una liquidación B según mi lenguaje de programación?

Podes enviar las facturas A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Liquidación B&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca),  con referencia a cada parámetro y las[ tablas de referencia ](/parametros/tablas-de-referencia)necesarias para completar los campos.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### :hand\_splayed: ¿Quién genera una liquidación B?

* **Entidades financieras** comprendidas en la Ley 21.526
* **Compañías de seguros** reguladas por la Ley 20.091
* **Administradoras de tarjetas de crédito y prepagas**, y sistemas de pago por transferencia
* **Instituciones educativas privadas** y entidades de medicina prepaga constituidas como asociaciones o fundaciones
* **Proveedores de Servicios de Activos Virtuales (PSAV)** inscriptos ante la Comisión Nacional de Valores

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura A - RG5329

Servicio API de TusFacturasAPP para emitir Facturas A bajo la RG5239 de AFIP/ARCA. Confiable desde 2015. ¡Los desarrolladores la aman!

### Endpoints

Factura A (  Código ARCA: 001  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;background-color:purple;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura A que percibe IVA por la RG5329 en AFIP/ARCA

```json

{
   "usertoken":"xxxx",
   "apikey":"xxx",
   "apitoken":"xxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "reclama_deuda": "N",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI",
      "rg5329":"S"
   },
   "comprobante":{
      "fecha":"26/03/2023",
      "vencimiento":"26/03/2023",
      "tipo":"FACTURA A",
      "operacion":"V",
      "punto_venta":"0002",
      "numero":"00000012",
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"2",
            "afecta_stock":"N",
            "bonificacion_porcentaje":"0",
            "producto":{
               "descripcion":"Papel carta",
               "unidad_bulto":"1",
               "lista_precios":"MI LISTA DE PRECIOS",
               "codigo":"",
               "precio_unitario_sin_iva":102000,
               "alicuota":21,
               "impuestos_internos_alicuota":0,
               "rg5329":"S",
               "unidad_medida":"7",
               "actualiza_precio":"S"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":""
         },
         {
            "cantidad":"1",
            "afecta_stock":"N",
            "bonificacion_porcentaje":"0",
            "producto":{
               "descripcion":"Paneles solares",
               "unidad_bulto":"1",
               "lista_precios":"MI LISTA DE PRECIOS",
               "codigo":"",
               "precio_unitario_sin_iva":1000,
               "alicuota":21,
               "impuestos_internos_alicuota":0,
               "unidad_medida":"7",
               "actualiza_precio":"N"
            },
            "leyenda":""
         },
         {
            "cantidad":"1",
            "afecta_stock":"N",
            "bonificacion_porcentaje":"0",
            "producto":{
               "descripcion":"Celulares",
               "unidad_bulto":"1",
               "lista_precios":"MI LISTA DE PRECIOS",
               "codigo":"",
               "precio_unitario_sin_iva":200300,
               "alicuota":10.5,
               "impuestos_internos_alicuota":0,
               "unidad_medida":"7",
               "actualiza_precio":"S",
               "rg5329":"S"
            },
            "leyenda":""
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         {
            "tipo":6,
            "regimen":3,
            "base_imponible":204000,
            "alicuota":3,
            "total":6120
         },
         {
            "tipo":6,
            "regimen":3,
            "base_imponible":200300,
            "alicuota":1.5,
            "total":3004.5
         },
         {
            "tipo":7,
            "regimen":5,
            "base_imponible":200,
            "alicuota":10,
            "total":20
         }
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":478526,
      "pagos": {
		      "formas_pago": [
		         {"descripcion" : "MercadoPago", "importe" : 478526} 			
	         ],
		      "total": 478526
		},
      "comprobantes_asociados":[]
   }
}

```

### ¿Cómo enviar una factura A según mi lenguaje de programación?

Podes enviar las notas de crédito A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Factura A&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura A

¿Necesitas una factura de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_A-00010-00000122.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Quién genera una factura A RG5329?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una factura A y cuándo aplicar la RG5329, desde nuestras [FAQs](/faqs-or-preguntas-frecuentes)

#### Datos a tener en cuenta:

{% hint style="info" %}
A partir del 01-07-2021, todo comprobante A que se emita a un monotributista deberá llevar la siguiente leyenda: "*El crédito fiscal discriminado en el presente comprobante, sólo podrá ser computado a efectos del Régimen de Sostenimiento e Inclusión Fiscal para Pequeños Contribuyentes de la Ley Nº 27.618".* **Éste dato&#x20;**<mark style="background-color:yellow;">**no debe ser enviado**</mark>**&#x20;en el campo "leyenda\_gral", ya que saldrá automáticamente impreso en los PDF que se generen desde nuestra plataforma.**

{% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura A en dólares

Servicio API de TusFacturasAPP para emitir Facturas A en dólares de AFIP/ARCA. Confiable desde 2015. ¡Los desarrolladores la aman!

### Endpoints

Factura A (  Código ARCA: 001  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;background-color:purple;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura A en dólares u otra moneda extranjera

```json
{
   "usertoken":"xxxx",
   "apikey":"xxx",
   "apitoken":"xxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "reclama_deuda": "N",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   },
   "comprobante":{
      "fecha":"20/03/2018",
      "tipo":"FACTURA A",
      "vencimiento":"26/03/2023",
      "external_reference": "ABC444",
      "operacion":"V",
      "moneda":"DOL",
      "cotizacion": 1035,
      "punto_venta":"0002",
      "numero":"00000012",
      "datos_informativos": {
	  "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"28/02/2018",
      "periodo_facturado_hasta":"28/02/2018",
      "rubro":"Alimentos",
      "rubro_grupo_contable":"Alimentos",
      "detalle":[
         {
            "cantidad":"1",
            "producto":{
               "descripcion":"EXENTO - AVENA INSTANTANEA x5 kg. al 21",
               "unidad_bulto":"1",
               "lista_precios":"Lista de precios API 3",
               "codigo":"16098",
                "unidad_medida": 7,
               "precio_unitario_sin_iva":"100",
               "alicuota":"21",
               "rg5329":"N"
            },
            "afecta_stock": "S",
            "bonificacion_porcentaje": 0,
            "leyenda":"Enviadas en cajas separadas"
         }
      ],
      "bonificacion":"0.00",
      "leyenda_gral":" ",
      "tributos":[
         
      ],
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "total":"121",
      "pagos": {
		      "formas_pago": [
		            {"descripcion" : "MercadoPago", "importe" : 121} 			
			      ],
		      "total": 121
		      },
      "comprobantes_asociados":[]
   }
}
```

### ¿Cómo enviar una factura A en dólares según mi lenguaje de programación?

Podes enviar las facturas A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Factura A en dólares&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura A

¿Necesitas una factura de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_A-00010-00000122.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

#### Datos a tener en cuenta:

{% hint style="info" %}
A partir del 01-07-2021, todo comprobante A que se emita a un monotributista deberá llevar la siguiente leyenda: "*El crédito fiscal discriminado en el presente comprobante, sólo podrá ser computado a efectos del Régimen de Sostenimiento e Inclusión Fiscal para Pequeños Contribuyentes de la Ley Nº 27.618".* **Éste dato&#x20;**<mark style="background-color:yellow;">**no debe ser enviado**</mark>**&#x20;en el campo "leyenda\_gral", ya que saldrá automáticamente impreso en los PDF que se generen desde nuestra plataforma.**

{% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura A con bonificaciones

Servicio API de TusFacturasAPP para emitir Facturas A con bonificaciones de AFIP/ARCA. Confiable desde 2015. ¡Los desarrolladores la aman!

### Endpoints

Factura A (  Código ARCA: 001  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura A emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;background-color:purple;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura A con bonificaciones porcentuales a nivel producto

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "condicion_pago":"211",
      "reclama_deuda": "N",
      "condicion_iva":"RI",
       "condicion_iva_operacion":"RI"
   }, 
    "comprobante": {
        "external_reference": "0306-0301",
        "tags": [],
        "tipo": "FACTURA A",
        "operacion": "V",
        "punto_venta": "10",
        "fecha": "14/11/2024",
        "vencimiento": "26/12/2024",
        "idioma": 1,
        "numero": 0,
        "moneda": "PES",
        "cotizacion": 3,
        "periodo_facturado_desde": "",
        "periodo_facturado_hasta": "",
        "rubro": "Deudores Varios",
        "rubro_grupo_contable": "Ventas",
        "detalle": [
            {
                "cantidad": 1,
                "afecta_stock": "N",
                "leyenda": " Color rojo",
                "producto": {
                    "codigo": "LAPICERA1",
                    "descripcion": "LAPICERAS BIC",
                    "actualiza_precio": "N",
                    "unidad_bulto": 1,
                    "lista_precios": "LAPICERAS",
                    "precio_unitario_sin_iva": 100,
                    "impuestos_internos_alicuota": 0,
                    "alicuota": 21,
                    "unidad_medida": 7
                },
                "actualiza_precio": "S",
                "bonificacion_porcentaje": 20
            }
        ],
        "abono": "N",
        "abono_frecuencia": 1,
        "abono_hasta": "11\/2024",
        "abono_actualiza_precios": "N",
        "bonificacion": 0,
        "leyenda_gral": "",
        "comentario": "", 
        "total": 96.8,
        "pagos": {
            "formas_pago": [
                {
                    "descripcion": "MercadoPago",
                    "importe": 50
                },
                {
                    "descripcion": "Pago con especies",
                    "importe": 20
                }
            ],
            "total": 70
        }
    } 
}
    
```

### JSON para generar una Factura A con bonificaciones monetarias a nivel comprobante

```json
{
   "usertoken":"xxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxx",
   "cliente":{
      "documento_tipo":"CUIT",
      "documento_nro":"30712293841",
      "razon_social":"VOUSYS TusFacturasAPP",
      "email":"a@a.com",
      "domicilio":"AV.LIBERTADOR 571",
      "provincia":"2",
      "envia_por_mail":"N",
      "reclama_deuda": "N",
      "condicion_pago":"211",
      "condicion_iva":"RI"
   }, 
    "comprobante": {
        "external_reference": "0306-0301",
        "tags": [
            "etiqueta1",
            "etiqueta2"
        ],
        "tipo": "FACTURA A",
        "operacion": "V",
        "punto_venta": "10",
        "fecha": "14/11/2024",
        "vencimiento": "26/12/2024",
        "idioma": 1,
        "numero": 0,
        "moneda": "PES",
        "cotizacion": 3,
        "periodo_facturado_desde": "",
        "periodo_facturado_hasta": "",
        "rubro": "Deudores Varios",
        "rubro_grupo_contable": "Ventas",
        "detalle": [
            {
                "cantidad": 1,
                "afecta_stock": "N",
                "leyenda": " Color rojo",
                "producto": {
                    "codigo": "LAPICERA1",
                    "descripcion": "LAPICERAS BIC",
                    "actualiza_precio": "N",
                    "unidad_bulto": 1,
                    "lista_precios": "LAPICERAS",
                    "precio_unitario_sin_iva": 100,
                    "impuestos_internos_alicuota": 0,
                    "alicuota": 21,
                    "unidad_medida": 7
                },
                "actualiza_precio": "S",
                "bonificacion_porcentaje": 0
            }
        ],
        "abono": "N",
        "abono_frecuencia": 1,
        "abono_hasta": "11\/2024",
        "abono_actualiza_precios": "N",
        "bonificacion": 20,
        "leyenda_gral": "",
        "comentario": "",
         
        "total": 96.8,
        "pagos": {
            "formas_pago": [
                {
                    "descripcion": "MercadoPago",
                    "importe": 50
                },
                {
                    "descripcion": "Pago con especies",
                    "importe": 20
                }
            ],
            "total": 70
        }
    } 
}
    json
```

### ¿Cómo enviar una factura A con descuentos según mi lenguaje de programación?

Podes enviar las facturas A por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para crear una Factura A con bonificaciones&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina.&#x20;

Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro y conoce otras[ alternativas de cómo enviar bonificaciones](/api-factura-electronica-afip-facturacion-ventas/ejemplo-de-factura-con-bonificaciones-descuentos).

{% content-ref url="/pages/e7FtDU4cja6Oiel2ko0m" %}
[Bonificaciones](/api-factura-electronica-afip-facturacion-ventas/ejemplo-de-factura-con-bonificaciones-descuentos)
{% endcontent-ref %}

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura A

¿Necesitas una factura de ejemplo? [Descárgala ahora](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_A-00010-00000122.pdf). Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

#### Datos a tener en cuenta:

{% hint style="info" %}
A partir del 01-07-2021, todo comprobante A que se emita a un monotributista deberá llevar la siguiente leyenda: "*El crédito fiscal discriminado en el presente comprobante, sólo podrá ser computado a efectos del Régimen de Sostenimiento e Inclusión Fiscal para Pequeños Contribuyentes de la Ley Nº 27.618".* **Éste dato&#x20;**<mark style="background-color:yellow;">**no debe ser enviado**</mark>**&#x20;en el campo "leyenda\_gral", ya que saldrá automáticamente impreso en los PDF que se generen desde nuestra plataforma.**

{% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura B sin especificar datos del comprador

TusFacturasAPP: API para Facturas B  sin especificar datos del comprador en AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura B (  Código ARCA: 006  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura B emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### JSON para generar una Factura B sin especificar datos del comprador en AFIP/ARCA

```json
{
   "apitoken":"xxxx",
   "usertoken":"xxxx",
   "apikey":"xxxx",
   "cliente":{
      "documento_tipo":"OTRO",
      "condicion_iva":"CF",
       "condicion_iva_operacion":"CF",
      "domicilio":"No especifica",
      "condicion_pago":"201",
      "documento_nro":"0",
      "reclama_deuda": "N",
      "razon_social":"Consumidor final",
      "provincia":"2",
      "email":"email@dominio.com",
      "envia_por_mail":"N",
       "rg5329": "N"
   },
   "comprobante":{
      "rubro":"Sevicios web",
      "tipo":"FACTURA B",
      "numero":2134,
      "bonificacion":0,
      "operacion":"V",
      "moneda":"PES",
      "cotizacion": 1,
      "detalle":[
         {
            "cantidad":1,
            "afecta_stock":"S",
            "actualiza_precio":"S",
            "bonificacion_porcentaje":0,
            "producto":{
               "descripcion":"Hosting pagina web ",
               "codigo":37,
               "lista_precios":"standard",
               "leyenda":"",
               "unidad_bulto":1,
                "unidad_medida": 7,
               "alicuota":21,
               "actualiza_precio":"S",
               "rg5329": "N",
               "precio_unitario_sin_iva":114.88
            }
         }
      ],
      "fecha":"28/03/2018",
      "vencimiento":"26/03/2023",
      "rubro_grupo_contable":"Sevicios",
      "total":139.0,
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 139} 			
			   ],
		"total": 139
		},
      "cotizacion":1,
      "moneda":"PES",
      "punto_venta":3,
      "tributos":[]
   }
}
```

### ¿Cómo enviar una factura B según mi lenguaje de programación?

Podes enviar las facturas B por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para armar el JSON&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura B

¿Necesitas una factura de ejemplo? [Descárgala ahora.](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_B-00010-00000167.pdf) Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Quién genera una factura B?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una factura B.

### Datos a tener en cuenta:

{% hint style="info" %}

* En los comprobantes B el IVA se suma al total del producto, pero no aparecerá desglozado en la factura, ya que tu cliente no lo puede discriminar. Vos debes enviar los productos con el precio SIN IVA y su respectiva alícuota de IVA.
* Si queres enviar un comprobante a un consumidor final sin especificar su nombre y DNI,  consulta la siguiente documentación de "[Facturas a Consumidor final sin especificar datos](/api-factura-electronica-afip-facturacion-ventas/facturas-a-consumidor-final-sin-especificar-datos)"
  {% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Factura B a cliente del exterior

TusFacturasAPP: API para Facturas B  a clientes del exterior AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Endpoints

Factura B (  Código ARCA: 006  ) emitida en la modalidad "[Instantánea](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Factura B emitida en la modalidad "[Asincrónica](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)"

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

### ¿Cúando emitir una factura B a un cliente del exterior?

Cuando los servicios prestados  producen efectos en Argentina,  se facturan como operaciones locales en Argentina, mediante la emisión de facturas tipo "A" o "B", según corresponda.  **Siempre corroborá esta información con tu estudio contable previa emisión ya que puede no corresponder para tu negocio.**

### JSON para generar una Factura B a un cliente del exterior en AFIP/ARCA con la condición frente al iva "Consumidor final"

```json
{
   "apitoken":"xxxx",
   "usertoken":"xxxx",
   "apikey":"xxxx",
   "cliente":{
      "documento_tipo":"PASAPORTE",
      "condicion_iva":"CF",
       "condicion_iva_operacion":"CF",
      "domicilio":"No especifica",
      "condicion_pago":"201",
      "documento_nro":"122321310",
      "reclama_deuda": "N",
      "razon_social":"CLaudia Hans",
      "provincia":"26",
      "email":"email@dominio.com",
      "envia_por_mail":"N",
       "rg5329": "N"
   },
   "comprobante":{
      "rubro":"Sevicios web",
      "tipo":"FACTURA B",
      "numero":2134,
      "bonificacion":0,
      "operacion":"V",
      "moneda":"PES",
      "cotizacion": 1,
      "detalle":[
         {
            "cantidad":1,
            "afecta_stock":"S",
            "actualiza_precio":"S",
            "bonificacion_porcentaje":0,
            "producto":{
               "descripcion":"Hosting pagina web ",
               "codigo":37,
               "lista_precios":"standard",
               "leyenda":"",
               "unidad_bulto":1,
               "alicuota":21,
                "unidad_medida": 7,
               "actualiza_precio":"S",
               "rg5329": "N",
               "precio_unitario_sin_iva":114.88
            }
         }
      ],
      "fecha":"28/03/2018",
      "vencimiento":"26/03/2023",
      "rubro_grupo_contable":"Sevicios",
      "total":139.0,
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 139} 			
			   ],
		"total": 139
		},
      "cotizacion":1,
      "moneda":"PES",
      "punto_venta":3,
      "tributos":[]
   }
}
```

### JSON para generar una Factura B a cliente del exterior en AFIP/ARCA con la condición frente al iva "Cliente del exterior"

```json
{
   "apitoken":"xxxx",
   "usertoken":"xxxx",
   "apikey":"xxxx",
   "cliente":{
      "documento_tipo":"OTRO",
      "condicion_iva":"CDEX",
       "condicion_iva_operacion":"CDEX",
      "domicilio":"No especifica",
      "condicion_pago":"201",
      "documento_nro":"0",
      "reclama_deuda": "N",
      "razon_social":"Cliente del exterior",
      "provincia":"26",
      "email":"email@dominio.com",
      "envia_por_mail":"N",
       "rg5329": "N"
   },
   "comprobante":{
      "rubro":"Sevicios web",
      "tipo":"FACTURA B",
      "numero":2134,
      "bonificacion":0,
      "operacion":"V",
      "moneda":"PES",
      "cotizacion": 1,
      "detalle":[
         {
            "cantidad":1,
            "afecta_stock":"S",
            "actualiza_precio":"S",
            "bonificacion_porcentaje":0,
            "producto":{
               "descripcion":"Hosting pagina web ",
               "codigo":37,
               "lista_precios":"standard",
               "leyenda":"",
               "unidad_bulto":1,
               "alicuota":21,
               "actualiza_precio":"S",
               "rg5329": "N",
               "precio_unitario_sin_iva":114.88
            }
         }
      ],
      "fecha":"28/03/2018",
      "vencimiento":"26/03/2023",
      "rubro_grupo_contable":"Sevicios",
      "total":139.0,
      "pagos": {
		"formas_pago": [
		   {"descripcion" : "MercadoPago", "importe" : 139} 			
			   ],
		"total": 139
		},
      "cotizacion":1,
      "moneda":"PES",
      "punto_venta":3,
      "tributos":[]
   }
}
```

### ¿Cómo enviar una factura B según mi lenguaje de programación?

Podes enviar las facturas B por CURL, o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/nuevo \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/nuevo",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/nuevo", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/nuevo',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/nuevo")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para armar el JSON&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas),  con referencia a cada parámetro.

#### 📘 Información esencial

Antes de implementar o integrar con nuestra API, asegurate de revisar estos dos recursos fundamentales (¡sí, estos!):

* **Tablas de referencia:** valores, códigos y parámetros que necesitas para que la API funcione correctamente.\
  👉 [Ver tablas de referencia](/parametros/tablas-de-referencia)
* **Referencia completa de cada campo de la API:** descripción exacta, tipo de dato y uso correcto de cada parámetro.\
  👉 [Ver referencia de campos](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-json-a-enviar)

### Respuesta esperada

Consulta la respuesta esperada, según el método que uses para enviarla:

{% content-ref url="/pages/BAkjgMGutrDmAIktI8lO" %}
[Facturación instantánea e individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
{% endcontent-ref %}

{% content-ref url="/pages/oPXepUWy4PAeR1pUdmmk" %}
[Facturación asincrónica e  individual](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)
{% endcontent-ref %}

{% content-ref url="/pages/-LRJRSc8IsiWWp4wiCPB" %}
[Facturación instantánea por Lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)
{% endcontent-ref %}

### PDF de ejemplo de una Factura B

¿Necesitas una factura de ejemplo? [Descárgala ahora.](https://www.tusfacturas.app/app/archivos-modelo/tipos-comprobante/27285051466__FACTURA_B-00010-00000167.pdf) Podes personalizar el diseño accediendo a nuestra [plataforma web](https://www.tusfacturas.app/app/login.html) >  Menú > Mi espacio de trabajo > CUITs/pDV > Editar.

### ¿Quién genera una factura B?

Conocé [desde aqui](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir), quien está obligado a emitir una factura B.

### Datos a tener en cuenta:

{% hint style="info" %}

* En los comprobantes B el IVA se suma al total del producto, pero no aparecerá desglozado en la factura, ya que tu cliente no lo puede discriminar. Vos debes enviar los productos con el precio SIN IVA y su respectiva alícuota de IVA.
* Si queres enviar un comprobante a un consumidor final sin especificar su nombre y DNI,  consulta la siguiente documentación de "[Facturas a Consumidor final sin especificar datos](/api-factura-electronica-afip-facturacion-ventas/facturas-a-consumidor-final-sin-especificar-datos)"
  {% endhint %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Estado de los servicios y Tareas de mantenimientos programados

Mediante éste servicio podrás consultar el estado de los servicios de facturación AFIP/ARCA, como así también el estado del servicio API.

## Consulta el estado de los servicios en TusFacturasAPP y el estado de los servicios de ARCA

{% hint style="danger" %}
**Los servicios de ARCA (ex AFIP) se caen regularmente.**

Ante una caída, la **facturación instantánea (sincrónica) se ve afectada de inmediato**: recibirás un error en cada request que intente impactar en ARCA. La **facturación asincrónica puede seguir funcionando**, ya que los comprobantes se encolan y se procesan cuando el servicio se restablece. Todos nuestros métodos controlan internamente el estado de los servicios de ARCA y te devuelven la respuesta correspondiente con su mensaje de error.
{% endhint %}

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`estado_servicios/alertas`</mark>
{% endhint %}

### Ejemplo del JSON a enviar para consultar el estado de los servicios

{% code title="JSON" %}

```json
{
	"usertoken": "xxxxx",
	"apikey": "xxx",
	"apitoken": "xxxx"
}

```

{% endcode %}

### Response

En caso de no detectarse errores, la variable `error` será devuelta con el valor `"N"`, junto con las variables detalladas a continuación.

La variable `facturacion` devolverá `"OK"` cuando los servicios de ARCA funcionen correctamente. En caso contrario, se informará un mensaje de alerta con el detalle de la incidencia detectada. Si facturas en **modalidad instantánea (sincrónica)**, tus requests serán rechazados de inmediato. Si usas **facturación asincrónica**, los comprobantes podrán seguir encolándose y procesarse una vez que ARCA restablezca el servicio.

Dentro del bloque `prox_mantenimientos_programados` te informaremos las próximas tareas de mantenimiento programadas, ya sea por nuestro equipo o por ARCA.

Cuando las tareas sean realizadas por nuestro equipo, durante ese período no podrás acceder a la plataforma y todas las solicitudes enviadas vía API serán rechazadas hasta la finalización de las mejoras implementadas.

En el caso de mantenimientos programados por ARCA, únicamente serán rechazados los requests que impacten en la facturación instantánea.

Ten en cuenta que también podrán realizarse tareas de mantenimiento de urgencia que, debido a la inmediatez con la que deban aplicarse, podrían no encontrarse previamente listadas dentro de este bloque.

```json
{
	"error": "N",
	"errores": [""],
	"rta": "OK",
	"facturacion": "OK",
	"prox_mantenimientos_programados": [
		{
			"desde": "30/05/2026 08:29",
			"hasta": "30/05/2026 11:29",
			"titulo": "Mantenimiento programado",
			"texto": "Te informamos que realizaremos tareas de mantenimiento en nuestra plataforma entre las XX y las XX. Durante este tiempo, no podras acceder a la plataforma hasta que finalicen las mejoras implementadas."
		}
	],
	"novedades": "24\/03\/2016 | App M\u00f3vil - Actualizaci\u00f3nYa se encuentra disponible para Iphone\/Ipad , la version 2.1 de nuestra app m\u00f3vil.  Descargala! 17\/03\/2016 | Reclamo de deudas autom\u00e1tico: Ahora podes indicar la cantidad de dias desde cuando el sistema empieza a reclamarle a tu cliente la deuda. Ingres\u00e1 a cliente y configuralo ",
}
```

### Mantenimientos programados

En ocasiones, nuestro equipo técnico realiza tareas de mantenimiento programado que requieren suspender temporalmente la operatoria de la API o bien ARCA programa tareas de mantenimiento sobre sus servicios de facturación. Durante ese período, las solicitudes devolverán una respuesta JSON como la siguiente:

```json
{
	"error": "S",
	"mantenimiento": 1,
	"mantenimiento_hasta": "26/07/2026 05:25",
	"errores": [
		"Estaremos realizando tareas de mantenimiento hasta las 05:25"
	]
}
```

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consulta por external reference

Servicio API de TusFacturasAPP para consultar tus ventas por la external reference enviada. Confiable desde 2015. Con el respaldo de un estudio impositivo. ¡Los desarrolladores la aman!

### Endpoint

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`consulta_avanzada`</mark>
{% endhint %}

Ésta consulta tiene 2 herramientas útiles:

* Consulta BULK por external reference
* Consulta individual por external reference

### JSON para consultar ventas individuales por external reference

```json
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"busqueda_tipo": "EXT_REF",
 "pagina" : 0,
 "limite": 100 ,
"comprobante": 
	{
			"external_reference": "ABC1234",
			"operacion": "V"  
	}
} 
```

### JSON para consultar ventas BULK por external reference

Podes enviar hasta 100 external reference para consultar, sin embargo puede suceder que jsons muy extensos sean bloqueados a nivel firewall. En ese caso te sugerimos reducir la cantidad de ext. reference a consultar.

```json
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"busqueda_tipo": "EXT_REF_LIST",
 "pagina" : 0,
 "limite": 100 ,
"comprobante": 
	{
			"external_reference": ["ABC1234", "ABC1235", "ABC188" ],
			"operacion": "V"  
	}
} 
```

### ¿Cómo enviar una consulta según mi lenguaje de programación?

Podes enviar un request para consultar tus ventas por external reference, mediante CURL o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/consulta_avanzada", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para enviar una consulta por external reference&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#consulta-avanzada-por-external-reference),  con referencia a cada parámetro.

### Respuesta esperada

{% content-ref url="/pages/7fTn6rdpNqiuwthSJXxT" %}
[Consulta avanzada](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada)
{% endcontent-ref %}

***

TusFacturasAPP , el [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y  [gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consulta por tipo y número de comprobante

Servicio API de TusFacturasAPP para consultar por tipo y número. Confiable desde 2015. Con el respaldo de un estudio impositivo. ¡Los desarrolladores la aman!

### Endpoint

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`consulta`</mark>
{% endhint %}

### JSON para consultar un comprobante por tipo y número

```json
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"comprobante":  {
                "tipo":                     "NOTA DE DEBITO B",
                "operacion":                "V",
                "punto_venta":              "2",
                "numero":                   "6"
        }
}
```

### ¿Cómo enviar una consulta según mi lenguaje de programación?

Podes enviar un request para consultar un comprobante, por CURL o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/consulta \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/consulta",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/consulta", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/consulta',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/consulta")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para enviar una consulta simple por tipo y número de comprobante&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes),  con referencia a cada parámetro.

### Respuesta esperada

{% content-ref url="/pages/7fTn6rdpNqiuwthSJXxT" %}
[Consulta avanzada](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada)
{% endcontent-ref %}

***

TusFacturasAPP , el [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y  [gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consulta por fecha de comprobante

Servicio API de TusFacturasAPP para consultar tus ventas por fecha. Confiable desde 2015. Con el respaldo de un estudio impositivo. ¡Los desarrolladores la aman!

### Endpoint

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`consulta_avanzada`</mark>
{% endhint %}

### JSON para consultar ventas por fecha

```json
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"busqueda_tipo": "F",
"pagina" : 0,
"limite": 100 ,
"comprobante":  {
                "fecha":     "23/05/2021",
                "operacion": "V"
        }
}
```

### ¿Cómo enviar una consulta según mi lenguaje de programación?

Podes enviar un request para consultar tus ventas en una determinada fecha, mediante CURL o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/consulta_avanzada", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para enviar una consulta por fecha comprobante&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#consulta-avanzada-por-fecha),  con referencia a cada parámetro.

### Respuesta esperada

{% content-ref url="/pages/7fTn6rdpNqiuwthSJXxT" %}
[Consulta avanzada](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada)
{% endcontent-ref %}

***

TusFacturasAPP , el [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y  [gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consulta por rango numérico de comprobantes

Servicio API de TusFacturasAPP para consultar tus ventas por rango numérico. Confiable desde 2015. Con el respaldo de un estudio impositivo. ¡Los desarrolladores la aman!

### Endpoint

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`consulta_avanzada`</mark>
{% endhint %}

### JSON para consultar ventas por rango numérico

```json
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"busqueda_tipo": "TN",
 "pagina" : 0,
 "limite": 100 ,
"comprobante": 
	{
			"tipo": "FACTURA A",
			"operacion": "V",
			"punto_venta": "00010",
			"numero_desde": "00000001",
			"numero_hasta": "00000300" 
			 
	}
} 
```

### ¿Cómo enviar una consulta según mi lenguaje de programación?

Podes enviar un request para consultar tus ventas por rango numérico, mediante CURL o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/consulta_avanzada", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/consulta_avanzada")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para enviar una consulta por rango numérico&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#consulta-avanzada-por-rango-de-numeros),  con referencia a cada parámetro.

### Respuesta esperada

{% content-ref url="/pages/7fTn6rdpNqiuwthSJXxT" %}
[Consulta avanzada](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada)
{% endcontent-ref %}

***

TusFacturasAPP , el [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y  [gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# ¿Debo emitir una MiPyme?

Servicio API de TusFacturasAPP para consultar si debes emitir una MiPyme. Confiable desde 2015. Con el respaldo de un estudio impositivo. ¡Los desarrolladores la aman!

### Endpoint

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`requiere_fec`</mark>
{% endhint %}

### JSON para consultar ventas por rango numérico

```json
{
	"apitoken": "xxxx",
	"apikey": "xxxx",
	"usertoken": "xxxx",
	"cuit": 12345678901,
	"fecha": "08/12/2019"
}
```

### ¿Cómo enviar una consulta según mi lenguaje de programación?

Podes enviar un request para consultar si debes emitir una MiPyme, mediante CURL o usando tu lenguaje de programación favorito. A continuación te mostramos algunos ejemplos. Reemplaza "TUSFACTURAS\_JSON\_DATA" por el JSON especificado anteriormente.

{% tabs %}
{% tab title="CURL" %}

```sh
curl --request POST \
  --url https://www.tusfacturas.app/app/api/v2/facturacion/requiere_fec \
  --header 'Content-Type: application/json' \
  --data ' 
     TUSFACTURAS_JSON_DATA
     '
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.tusfacturas.app/app/api/v2/facturacion/requiere_fec",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "TUSFACTURAS_JSON_DATA",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("www.tusfacturas.app")

payload = "TUSFACTURAS_JSON_DATA"

headers = {
    'Content-Type': "application/json"
    }

conn.request("POST", "/app/api/v2/facturacion/requiere_fec", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://www.tusfacturas.app/app/api/v2/facturacion/requiere_fec',
  headers: {'Content-Type': 'application/json'},
  data: TUSFACTURAS_JSON_DATA
   
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});
```

{% endtab %}

{% tab title="Ruby" %}

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://www.tusfacturas.app/app/api/v2/facturacion/requiere_fec")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "TUSFACTURAS_JSON_DATA"

response = http.request(request)
puts response.read_body
```

{% endtab %}
{% endtabs %}

### Parámetros para enviar la consulta &#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación avalado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-obligado-a-recibir-factura-de-credito-electronica-mipyme),  con referencia a cada parámetro.

***

TusFacturasAPP , el [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y  [gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consultar numeración de comprobantes.

Consulta desde la API de facturación electrónica de TusFacturas.app, la numeración de tus comprobantes.

### 🧾 ¿Para que sirve la consulta de numeración?

Utiliza este endpoint para obtener el **último número de comprobante emitido** por cada tipo (por ejemplo, Factura E, Nota de Débito A, Factura C) registrado en TusFacturasAPP. Esta funcionalidad es clave para desarrolladores e integradores que necesitan:

* Sincronizar sistemas externos con la numeración oficial de AFIP.
* Asegurar que las nuevas emisiones sigan la secuencia correcta.
* Prevenir errores de duplicidad al generar comprobantes.

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/numeracion`
{% endhint %}

💡 El uso de éste método no contabiliza como un request en tu suscripción

### Ejemplo del JSON a enviar

{% code title="JSON" %}

```json
{
	"usertoken": "xxxxx",
	"apikey": "xxxxx",
	"apitoken": "xxxxx",
	"comprobante": {
		"tipo": "NOTA DE DEBITO B",
		"operacion": "V",
		"punto_venta": "2"
	}
}
```

{% endcode %}

#### Estructura del JSON

| `tipo`        | <p>Campo numérico según tabla de referencia de <a href="https://www.tusfacturas.com.ar/api-factura-electronica-afip.html#tabla-comprobantes">Tipos de comprobantes(\*\*\*)</a>.<br><strong>Ejemplo: FACTURA B</strong></p> |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operacion`   | <p>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de venta (V) o de compra (C).<br>Valores Permitidos: <strong>V, C</strong><br><strong>Ejemplo: V</strong></p>                                      |
| `punto_venta` | <p>Campo numérico entero. Longitud máxima 4 digitos.<br><strong>Ejemplo: 3</strong></p>                                                                                                                                    |

### Ejemplo de JSON de respuesta

```json
{
	"error": "N",
	"errores": [""],
	"rta": "OK",
	"comprobante": {
		"tipo": "NOTA DE DEBITO B",
		"operacion": "V",
		"punto_venta": 2,
		"numero": 6
	}
}
```

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Eliminar comprobantes encolados

Utiliza la API de TusFacturasAPP, para eliminar aquellos comprobantes que se encuentran en cola de procesamiento

En **TusFacturasAPP**, entendemos que pueden surgir situaciones donde necesites corregir o cancelar una solicitud de comprobante antes de que sea procesada oficialmente por ARCA. Para ello, ponemos a tu disposición la función de eliminación de comprobantes encolados.

**¿Qué es un "comprobante encolado"?** Un comprobante se considera "encolado" cuando ha sido enviado a TusFacturasAPP, superó las validaciones iniciales de formato, y se encuentra en nuestra "fila de espera" para ser procesado por AFIP/ARCA y obtener su CAE (Código de Autorización Electrónico). Aún no es un comprobante oficial emitido por AFIP.

**¿Cómo funciona la eliminación via API?** Este endpoint te permite enviar una solicitud para anular y eliminar definitivamente un comprobante que se encuentre en estado "encolado".&#x20;

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`eliminar_encolado`</mark>
{% endhint %}

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

### Ejemplo del JSON a enviar:

```
{
    "apitoken":"XXXX",
    "apikey": XXX,
    "usertoken":"XXXX",
	"external_reference": "mi_extref" ,
	"fecha": "23/03/2022" 	 
}
```

Estructura del body

| Name                | Type   | Description                                         |
| ------------------- | ------ | --------------------------------------------------- |
| apikey              | string | Tus credenciales de acceso.                         |
| apitoken            | string | Tus Credenciales de acceso.                         |
| usertoken           | string | Tus Credenciales de acceso.                         |
| fecha               | string | Fecha del comprobante. Formato esperado: dd/mm/aaaa |
| external\_reference | String | Campo alfanumérico de hasta 255 caracteres.         |

### 📌 Respuestas posibles

Aunque idealmente una `external_reference` debería corresponder a un único comprobante, en casos excepcionales donde existan múltiples, la respuesta se presentará en 3 modalidades:

* **Éxito**
* **Éxito parcial**
* **Error**

#### ✔️ Response de operación éxitosa:

Al enviar la petición recibirás instantáneamente la siguiente respuesta:

```
{
	"error": "N",
	"errores": [],
	"procesados_cant": 1,
	"procesados": [
		"El comprobante FACTURA A 00010-00000000 se ha eliminado correctamente. "
	]
}
```

y también recibirás un webhook, para informarte de dicha eliminación:

```
{
	"creado": "18/03/2022 15:58:11",
	"evento": "eliminado",
	"recurso": "facturacion",
	"external_reference": "mi_extref",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxxx"
}
```

#### ☑️ Response con éxito parcial:

En el supuesto caso que exista +1 comprobante, para una misma external\_reference y no todas apliquen a los criterios necesarios para eliminar el comprobante:

```
{
	"error": "PARCIAL",
	"errores": [
		"El comprobante FACTURA B 00010-000000 no se ha podido eliminar."
	],
	"procesados_cant": 1,
	"procesados": [
		"El comprobante FACTURA A 00010-00000000 se ha eliminado correctamente. "
	]
}
```

#### 🛑 Response con error:&#x20;

```
{
	"error": "S",
	"errores": [
		"No se han encontrado comprobantes."
	],
	"procesados_cant": 0,
	"procesados": []
}
```

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Cambiar fecha a comprobante encolado

Utiliza la API de TusFacturasAPP, para cambiar la fecha de aquellos comprobantes que se encuentran en cola de procesamiento

Este método permite **cambiar la fecha de un comprobante** que se encuentra en la cola de procesamiento.

**Consideraciones importantes:**

* La fecha asignada al comprobante determinará su **fecha de emisión**.
* El sistema solo procesa y emite de la cola aquellos comprobantes cuya fecha sea **igual o anterior a la fecha actual**.

### &#x20;Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`cambiar_fecha_encolado`</mark>
{% endhint %}

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

### Ejemplo del JSON a enviar:

```
{
    "apitoken":"xxxx",
    "apikey": "xxx",
    "usertoken":"xxxx",
    "external_reference": "mi_ext_rf" ,
    "fecha": "25/03/2022",
    "vencimiento": "28/03/2022"
	 
}
 
```

#### Estructura del Body

| Name                | Type   | Description                                                                      |
| ------------------- | ------ | -------------------------------------------------------------------------------- |
| apikey              | string | Tus credenciales de acceso.                                                      |
| apitoken            | string | Tus Credenciales de acceso.                                                      |
| usertoken           | string | Tus Credenciales de acceso.                                                      |
| fecha               | string | Fecha del comprobante. Formato esperado: dd/mm/aaaa                              |
| external\_reference | String | Campo alfanumérico de hasta 255 caracteres.                                      |
| vencimiento         | String | Fecha de vencimiento del pago de dicho comprobante. Formato esperado: dd/mm/aaaa |

### 📌 Respuestas posibles

Si, excepcionalmente, una `external_reference` se asocia a más de un comprobante, el sistema tomará la información del **primer comprobante encontrado**.

#### ✅ Response exitoso:

Al enviar la petición, recibirás instantáneamente la siguiente respuesta:

```
{
	"error": "N",
	"errores": []
}
```

y también recibirás un webhook, para informarte de dicha eliminación:

```
{
	"creado": "18/03/2022 15:58:11",
	"evento": "cambio_fecha",
	"recurso": "facturacion",
	"external_reference": "mi_extref",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxxx"
}
```

#### 🛑 Response con error

```
{
	"error": "S",
	"errores": [
		"No se han encontrado comprobantes."
	]
}
```

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Regenerar el archivo PDF

La API de facturación electrónica ARCA de TusFacturasAPP te permite regenerar el archivo pdf las veces que necesites.

### ¿Necesitas la URL del PDF actualizado?

Cuando necesites consultar la URL de una venta debes hacer una [consulta de comprobantes avanzada por external reference](/web-services-afip-api-arca/consulta-avanzada-por-external-reference).

### **¿Cuándo regenerar el PDF?**&#x20;

La funcionalidad de regeneración de PDF permite **recrear un comprobante existente** utilizando el diseño y los datos actualmente configurados en tu cuenta de TusFacturasAPP. Esto es particularmente útil cuando has realizado cambios en la configuración visual de tus puntos de venta.

### **¿Cómo regenerar el PDF?**&#x20;

Puedes llevar a cabo esta operación de dos maneras:

* **Vía API:** Utilizando el método específico de regeneración de PDF, enviando la solicitud directamente a nuestro endpoint API.
* **Desde la Plataforma Web:**
  1. Navegá a **Menú > Facturación > Mis ventas**.
  2. Ubicá el comprobante que deseas actualizar.
  3. Al seleccionar el ícono de Herramientas correspondiente a dicho comprobante, encontrarás  la opción **"Regenerar PDF"**.

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`regenerar_pdf`</mark>
{% endhint %}

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

### Ejemplo del JSON&#x20;

{% code title="JSON" %}

```
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"comprobante":  {
                "tipo":                     "NOTA DE DEBITO B",
                "operacion":                "V",
                "punto_venta":              "2",
                "numero":                   "6"
        }
}

```

{% endcode %}

#### Estructura del Body

| Name        | Type   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| usertoken   | string | tus credenciales de acceso                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| apitoken    | string | Tus credenciales de acceso                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| apikey      | string | Tus credenciales de acceso                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| comprobante | String | <p>Un objeto compuesto de los siguientes atributos: </p><p><strong>tipo:</strong> Campo alfanumérico. Longitud máx: 50 caracteres, conteniendo el tipo de comprobante a consultar. Ej: FACTURA A </p><p><strong>operacion :</strong> Campo alfanumérico. Longitud máx: 1 carácter. Valores permitidos (V o C) ya sea para ventas o compras.</p><p><strong>punto\_venta</strong> Campo númerico para indicar el número del punto de venta.</p><p><strong>numero :</strong> Campo numérico. Longitud máx: 8. Indica el número del comprobante a consultar.</p><p></p> |

### Ejemplo del JSON de respuesta:

```
{
        "error" :  "N",
        "comprobante_pdf_url"    :  "http://www.prueba.com", 
        "comprobante_ticket_url": "https://www.dominio.com/url"
}
```

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Reenvío de Comprobantes Encolados con Error

Utiliza la API de TusFacturasAPP, para re-enviar a procesar aquellos comprobantes que se encuentran en cola de procesamiento con error

Esta funcionalidad permite reenviar un comprobante que se encuentra en la cola de procesamiento con un estado de error. Es útil para errores de tipo transitorio o de comunicación.

**Consideración Crítica:** Si el error reportado es una inconsistencia o falta de datos, el reprocesamiento no tendrá efecto. En tal escenario, se recomienda **eliminar el comprobante original** y enviar una **nueva solicitud con los datos corregidos**.

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`reenviar_encolado`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.
{% endhint %}

### Ejemplo del JSON a enviar:

```
{
    "apitoken":"xxxx",
    "apikey": "xxx",
    "usertoken":"xxxx",
    "external_reference": "mi_ext_rf"  
}
 
```

### 📌 Respuestas posibles

Ante la existencia de más de un comprobante para una misma `external_reference`, se priorizará el **primer comprobante detectado** por el sistema.

#### ✅ Response exitoso

Al enviar la petición, recibirás instantáneamente la siguiente respuesta:

```
{
	"error": "N",
	"errores": []
}
```

y también recibirás un webhook, para informarte que el comprobante se ha enviado a la cola de procesamiento:

```
{
	"creado": "18/03/2022 15:58:11",
	"evento": "encolado",
	"recurso": "facturacion",
	"external_reference": "mi_extref",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxxx"
}
```

#### 🛑 Response con error

```
{
	"error": "S",
	"errores": [
		"No se han encontrado comprobantes."
	]
}
```

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Reenvío de Comprobantes por Email a Clientes

Mediante éste método podrás hacer el reenvío por e-mail de un comprobante a tu cliente las veces que necesites.

Este método permite reenviar un comprobante a tu cliente por correo electrónico, tantas veces como sea necesario.

**Consideración importante:** La función de reenvío por email solo estará habilitada si, al momento de generar el comprobante original, se había configurado el envío por correo electrónico en el perfil del cliente.

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`reenviar`</mark>
{% endhint %}

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

### Ejemplo del JSON a enviar para reenviar un comprobante:

```
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"comprobante":  {
                "tipo":                     "NOTA DE DEBITO B",
                "operacion":                "V",
                "punto_venta":              "2",
                "numero":                   "6"
        }
}
```

#### Detalle de la estructura del Body

| Name        | Type   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| comprobante | String | <p>Un objeto compuesto de los siguientes atributos: </p><p><strong>tipo:</strong> Campo alfanumérico. Longitud máx: 50 caracteres, conteniendo el tipo de comprobante a consultar. Ej: FACTURA A </p><p><strong>operacion :</strong> Campo alfanumérico. Longitud máx: 1 carácter. Valores permitidos (V o C) ya sea para ventas o compras.</p><p><strong>punto\_venta</strong> Campo númerico para indicar el número del punto de venta.</p><p><strong>numero :</strong> Campo numérico. Longitud máx: 8. Indica el número del comprobante a consultar.</p><p></p> |
| apikey      | string | Tus credenciales de acceso.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| apitoken    | string | Tus Credenciales de acceso.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| usertoken   | string | Tus Credenciales de acceso.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consultar el Tope AFIP/ARCA para Ventas a Consumidor Final

Consulta fácil y rápido el tope AFIP/ARCA para ventas a consumidor final. ¡Sin necesidad de datos del comprador!

Accedé de forma **rápida y sencilla** al monto límite establecido por AFIP/ARCA para tus ventas a consumidor final, ¡sin necesidad de los datos del comprador! Esta herramienta te proporciona la información necesaria para emitir Facturas B o Facturas C a consumidor final sin especificar los datos del cliente, agilizando tu proceso de facturación.

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`topecf`</mark>
{% endhint %}

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

### Ejemplo de JSON a enviar

```
{
    "apitoken":"xxxx",
    "apikey": xxx,
    "usertoken":"xxxx"
}
```

### JSON de respuesta

```
{
	"error": "N",
	"errores": [],
	"monto": 26228
}
```

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consultar cotización dolar ARCA

Consulta fácil y rápido la cotización oficial del dólar provisto por ARCA.

Obtene información en tiempo real y precisa sobre el tipo de cambio oficial de ARCA para sus facturas electrónicas. Tene en cuenta que para la moneda "dólar", ARCA trabaja con la cotización oficial del Banco de la Nación Argentina, correspondiente al DOLAR DIVISAS y la cotización es actualizada a cada hora.

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">tablas\_referencia/cotizacion</mark>
{% endhint %}

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

### Ejemplo de JSON a enviar

```
{
   "usertoken" :  "xxxx",
   "apikey"    :  "xxxx",
   "apitoken"  :  "xxxx",
   "moneda"    :  "DOL",
   "fecha"     :  "02/03/2025"
 }
```

### JSON de respuesta

```
{
        "error":     "N",
        "errores":
                    [
                        ""
                    ],
        "cotizacion": "1500.10"
    }
```

***

### Parámetros para consultar la cotización del dolar en ARCA&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la [documentación de la API de facturación AFIP/ARCA](/consultas-varias-a-servicios-afip-arca/cotizacion-monedas-afip).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consultar CUIT en ARCA

Consulta la información asociada a un CUIT provista en tiempo real desde ARCA y obtene los datos en formato JSON.

{% hint style="info" %}
**IMPORTANTE**: Para utilizar esta consulta, tu CUIT debe estar **enlazado con ARCA**. Por lo tanto, esta funcionalidad **no está disponible** en el plan API DEV.
{% endhint %}

### Endpoint

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">clientes/afip-info</mark>
{% endhint %}

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

### Ejemplo de JSON para consultar un CUIT en ARCA

```
{
"usertoken" :  "xxxx",
"apikey"    :  "xxx",
"apitoken"  :  "xxxx",
"cliente":  {                      
    "documento_nro":    "30712293841",      
    "documento_tipo":   "CUIT"                   
    } 
 }
​
```

### JSON de respuesta exitosa

```
{
   "error":             "N",
   "razon_social":      "LA RAZON SOCIAL O NOMBRE",
   "condicion_impositiva": "RESPONSABLE INSCRIPTO",
   "direccion": "la calle 123",
   "localidad": "Castelar",
   "codigopostal": "1712",
   "estado":"ACTIVO",
   "provincia": "BUENOS AIRES",
   "actividad":[
        {
            "descripcion":"SERVICIOS DE CONSULTORES EN INFORM\u00c3\u0081TICA Y SUMINISTROS DE PROGRAMAS DE INFORM\u00c3\u0081TICA",
            "id":"620100",
            "nomenclador":"883",
            "periodo":"201311"
         },
         {
            "descripcion":"SERVICIOS EMPRESARIALES N.C.P.",
            "id":"829900",
            "nomenclador":"883",
            "periodo":"201906"
         }
   ],
   "apoc_existe": "SI",
    "apoc_info": "CUIT en base APOC desde el 22/07/2019.  (base APOC actualizada al 26/08/2024 18:42) -  Sugerimos consultar con su estudio contable inmediatamente.",
   "errores":  [  "" ] 
}
​
```

***

### Parámetros para consultar un CUIT en ARCA&#x20;

[TusFacturasAPP](https://www.tusfacturas.app) es un robusto software de facturación respaldado por un estudio contable impositivo que lo mantiene actualizado día a día con los constantes cambios en materia impositivas de Argentina. Consulta la documentación de la API del método de [consulta de CUIT en ARCA](/consultas-varias-a-servicios-afip-arca/api-factura-electronica-afip-clientes-consultar-cuit-en-constancia-de-inscripcion), para obtener información detallada de los posibles errores, datos devueltos y comentarios adicionales

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Webhook

TusFacturasAPP: API para Facturas A de AFIP/ARCA. Confiable desde 2015. Creada por devs y respaldada por expertos impositivos. ¡Los desarrolladores la aman!

### Ejemplos de Webhook

Segun tu lenguaje de programacion

{% tabs %}
{% tab title="Workflow " %}

1. Obtener los headers recibidos
2. Evaluar si el header incluye el token esperado de TF
3. Si el token coincide:
   1. Obtener la informacion recibida&#x20;
   2. Ejecutar la consulta avanzada por ext. reference para traer la info del comprobante en cuestion.&#x20;
   3. Devolver un codigo http = 200
4. Si el token no coincide, salir del proceso.
   {% endtab %}

{% tab title="PHP" %}

```php
<?php

$tf_token 	= 'TOKEN_TF';  
$headers 	= getallheaders();
$header_token 	= ($headers['TF-WebhookToken'] ??  ($headers['tf-webhooktoken'] ?? '')  );

if ($header_token !== $tf_token) 
{

	http_response_code(403);
	echo 'El Token recibido no coincide con el esperado';
	exit;

}else{

	$data = file_get_contents('php://input');

	// Consulto en TF la info asociada a la ext. reference recibida
	consultar_por_ext_ref($data['external_reference']);

	// Respondo a TF con 200 para evitar entrar en el workflow de reintentos
	http_response_code(200);
	echo 'OK';
	
}



// -------------------------------------------------------------------------------------------------------
// Funcion que usa la consulta avanzada por ext. ref
// Docu: 
// https://developers.tusfacturas.app/web-services-afip-api-arca/consulta-avanzada-por-external-reference
// -------------------------------------------------------------------------------------------------------
function consultar_por_ext_ref(string $ext_ref)
{
	//
}

?>
```

{% endtab %}

{% tab title="Python" %}

```python
import os
from flask import Flask, request, abort, jsonify

# Create a Flask application instance
app = Flask(__name__)

# --- Configuration ---
# Your secret token from TusFacturasAPP
# It's better practice to load this from environment variables
# For example: os.environ.get('TF_WEBHOOK_TOKEN', 'YOUR_DEFAULT_TOKEN_IF_ENV_VAR_NOT_SET')
TF_WEBHOOK_TOKEN = 'TOKEN_TF'

# --- Webhook Endpoint ---
# This is the URL where TusFacturasAPP will send webhooks (e.g., http://yourserver.com:5000/webhook)
@app.route('/webhook', methods=['POST'])
def webhook():
    app.logger.info('Webhook received!')

    # 1. Get the token from the request headers
    # Headers in Flask's request.headers are case-insensitive by default, but it's good to check common casings.
    header_token = request.headers.get('TF-WebhookToken') or \
                   request.headers.get('tf-webhooktoken')

    # 2. Validate the token
    if header_token != TF_WEBHOOK_TOKEN:
        app.logger.warning('Unauthorized webhook access: Token mismatch.')
        # Use abort() for Flask to handle HTTP responses more cleanly
        abort(403, description='El Token recibido no coincide con el esperado')

    # 3. Token is valid, process the webhook data
    # request.json automatically parses JSON bodies
    data = request.json

    if not data:
        app.logger.error('No JSON data received in webhook request.')
        abort(400, description='No se recibió información en formato JSON.')

    app.logger.info(f'Webhook data: {data}')

    # Call your function to consult info based on external_reference
    # In a real application, this would involve database operations,
    # calling external APIs, or other backend logic.
    # We'll use a try-except block for robust error handling.
    try:
        # Ensure 'external_reference' exists in the payload
        external_reference = data.get('external_reference')
        if external_reference:
            consultar_por_ext_ref(external_reference)
        else:
            app.logger.warning("Webhook data missing 'external_reference' key.")

        # 4. Respond with 200 OK to prevent re-attempts from TusFacturasAPP
        app.logger.info('Webhook processed successfully. Sending 200 OK.')
        return 'OK', 200
    except Exception as e:
        app.logger.error(f'Error processing webhook: {e}', exc_info=True)
        # For webhook handlers, sending 200 OK even on internal processing errors
        # is often desired to acknowledge receipt and prevent re-attempts from sender.
        # Handle the error internally.
        return 'OK (processed with internal error)', 200


# --- Helper Function (simulating PHP's consultar_por_ext_ref) ---
def consultar_por_ext_ref(ext_ref: str):
    """
    Simulates a function to consult information associated with an external reference.
    In a real scenario, this would involve database operations, calling external APIs, etc.
    """
    app.logger.info(f'Consulting info for external_reference: {ext_ref}')
    # Implement your actual logic here (e.g., call TusFacturasAPP API, update database)
    # This could be an asynchronous operation if using a framework like FastAPI or Quart
    # For Flask, if you need async, you'd use a library like 'gevent' or 'eventlet' or move to FastAPI.
    pass # Placeholder for actual implementation


# --- Start the server ---
if __name__ == '__main__':
    # When running with 'flask run' (development server):
    # Flask will automatically handle port and debug mode.
    # To run directly as a script (for basic testing, not production):
    app.run(host='0.0.0.0', port=5000, debug=True)
    # For production, use a WSGI server like Gunicorn or uWSGI.

```

{% endtab %}

{% tab title="Node.js" %}

```javascript
// Import necessary modules
const express = require('express');
const bodyParser = require('body-parser'); // To parse incoming JSON bodies

// Create an Express application
const app = express();
const port = 3000; // Choose a port for your webhook listener

// --- Configuration ---
// Your secret token from TusFacturasAPP
// It's better practice to load this from environment variables (e.g., process.env.TF_WEBHOOK_TOKEN)
const TF_WEBHOOK_TOKEN = 'TOKEN_TF';

// Middleware to parse JSON request bodies
app.use(bodyParser.json());

// --- Webhook Endpoint ---
// This is the URL where TusFacturasAPP will send webhooks (e.g., http://yourserver.com:3000/webhook)
app.post('/webhook', (req, res) => {
    console.log('Webhook received!');

    // 1. Get the token from the request headers
    // Headers are typically lowercase in Node.js/Express
    const headerToken = req.headers['tf-webhooktoken'];

    // 2. Validate the token
    if (headerToken !== TF_WEBHOOK_TOKEN) {
        console.warn('Unauthorized webhook access: Token mismatch.');
        // Return a 403 Forbidden response
        return res.status(403).send('El Token recibido no coincide con el esperado');
    }

    // 3. Token is valid, process the webhook data
    const data = req.body; // The parsed JSON body of the webhook

    if (!data) {
        console.error('No JSON data received in webhook request.');
        return res.status(400).send('No se recibió información en formato JSON.');
    }

    console.log('Webhook data:', data);

    // Call your function to consult info based on external_reference
    // In a real application, this would involve database operations,
    // calling external APIs, or other backend logic.
    // We'll use a try-catch block for robust error handling.
    try {
        // Ensure 'external_reference' exists in the payload
        const externalReference = data.external_reference; // Access directly from parsed JSON object
        if (externalReference) {
            consultarPorExtRef(externalReference);
        } else {
            console.warn("Webhook data missing 'external_reference' key.");
        }

        // 4. Respond with 200 OK to prevent re-attempts from TusFacturasAPP
        console.log('Webhook processed successfully. Sending 200 OK.');
        res.status(200).send('OK');
    } catch (error) {
        console.error('Error processing webhook:', error);
        // For webhook handlers, sending 200 OK even on internal processing errors
        // is often desired to acknowledge receipt and prevent re-attempts from sender.
        // Handle the error internally.
        res.status(200).send('OK (processed with internal error)');
    }
});

// --- Helper Function (simulating PHP's consultar_por_ext_ref) ---
/**
 * Simulates a function to consult information associated with an external reference.
 * In a real scenario, this would likely be an async operation (e.g., database query, API call).
 * @param {string} extRef The external reference from the webhook.
 */
function consultarPorExtRef(extRef) {
    console.log(`Consulting info for external_reference: ${extRef}`);
    // Implement your actual logic here (e.g., call TusFacturasAPP API, update database)
    // This function can be async if it involves promises (e.g., network requests, database calls)
    // Example:
    // return new Promise(resolve => {
    //     setTimeout(() => {
    //         console.log(`Information for ${extRef} consulted.`);
    //         resolve();
    //     }, 100); // Simulate network delay
    // });
}

// --- Start the server ---
app.listen(port, () => {
    console.log(`Node.js Webhook listener running on http://localhost:${port}`);
    console.log('Remember to expose this server to the internet if TusFacturasAPP needs to reach it!');
});

```

{% endtab %}

{% tab title="Ruby" %}

```ruby
# Import necessary gems
require 'sinatra'
require 'json' # To parse incoming JSON bodies

# --- Configuration ---
# Your secret token from TusFacturasAPP
# It's better practice to load this from environment variables (e.g., ENV['TF_WEBHOOK_TOKEN'])
TF_WEBHOOK_TOKEN = 'TOKEN_TF'

# Set the port for your webhook listener
# This can also be set via environment variable: PORT=4567 ruby app.rb
set :port, 4567

# Disable Sinatra's default error pages for a cleaner response
disable :show_exceptions
disable :raise_errors

# --- Webhook Endpoint ---
# This is the URL where TusFacturasAPP will send webhooks (e.g., http://yourserver.com:4567/webhook)
post '/webhook' do
  puts 'Webhook received!'

  # 1. Get the token from the request headers
  # Headers in Rack (which Sinatra uses) are prefixed with HTTP_ and uppercase,
  # with hyphens converted to underscores.
  header_token = request.env['HTTP_TF_WEBHOOKTOKEN']

  # 2. Validate the token
  if header_token != TF_WEBHOOK_TOKEN
    warn 'Unauthorized webhook access: Token mismatch.'
    status 403 # Set HTTP status code to 403 Forbidden
    body 'El Token recibido no coincide con el esperado'
    return # Stop processing
  end

  # 3. Token is valid, process the webhook data
  # request.body is an IO object, read its content
  request_body = request.body.read
  data = nil
  begin
    data = JSON.parse(request_body)
  rescue JSON::ParserError => e
    warn "Invalid JSON received: #{e.message}"
    status 400 # Bad Request
    body 'No se recibió información válida en formato JSON.'
    return
  end

  puts "Webhook data: #{data}"

  # Call your function to consult info based on external_reference
  # In a real application, this would involve database operations,
  # calling external APIs, or other backend logic.
  # We'll use a begin-rescue block for robust error handling.
  begin
    # Ensure 'external_reference' exists in the payload
    external_reference = data['external_reference'] # Access directly from parsed JSON hash
    if external_reference
      consultar_por_ext_ref(external_reference)
    else
      warn "Webhook data missing 'external_reference' key."
    end

    # 4. Respond with 200 OK to prevent re-attempts from TusFacturasAPP
    puts 'Webhook processed successfully. Sending 200 OK.'
    status 200 # Set HTTP status code to 200 OK
    body 'OK'
  rescue StandardError => e
    warn "Error processing webhook: #{e.message}"
    # For webhook handlers, sending 200 OK even on internal processing errors
    # is often desired to acknowledge receipt and prevent re-attempts from sender.
    # Handle the error internally.
    status 200
    body 'OK (processed with internal error)'
  end
end

# --- Helper Function (simulating PHP's consultar_por_ext_ref) ---
# This is a synchronous function for simplicity, but in a real app,
# it might involve network requests or database calls that could be async.
def consultar_por_ext_ref(ext_ref)
  puts "Consulting info for external_reference: #{ext_ref}"
  # Implement your actual logic here (e.g., call TusFacturasAPP API, update database)
  # Example:
  # some_api_client.fetch_data(ext_ref)
end


```

{% endtab %}
{% endtabs %}

### **Información sobre Webhooks:**&#x20;

Para una comprensión completa de cómo integrar y utilizar el webhook, [**consultá la documentación detallada desde aquí.**](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones)

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# ¿Cómo puedo debugear?

Controlá y debugueá tus integraciones en TusFacturasAPP. Accedé a logs detallados de hooks y requests enviados para una depuración efectiva.

Para que tengas total control y puedas debugear tus integraciones de manera efectiva, TusFacturasAPP te ofrece acceso a tus registros detallados directamente desde nuestra plataforma web:

{% stepper %}
{% step %}

### Consultar los hooks

Para consultar los hooks que te enviamos, podés ingresar tu "external reference" en Menú > Mi espacio de trabajo > API Request > Log de hooks dentro de nuestra plataforma.
{% endstep %}

{% step %}

### Descargar los requests enviados

Para descargar un registro de los requests que enviaste, podés acceder a Menú > Mi espacio de trabajo > API Request > Log de request API dentro de nuestra plataforma. Podras recuperar los logs de los últimos 3 días.
{% endstep %}

{% step %}

### Reporte de IVA ventas-compras

Para obtener un detalle completo de tus ventas, incluyendo la referencia externa que te permitirá relacionarlas con tu software, puedes acceder a un archivo Excel desde la plataforma. Dirígete a Menú > Reportes > IVA compras-ventas
{% endstep %}
{% endstepper %}

Estas herramientas te permitirán revisar la información enviada y recibida, identificando rápidamente cualquier posible inconveniente.

### 💡 Soporte y Recursos

¿Tenes preguntas sobre la API? Visita nuestro Centro de Ayuda en [ayuda.tusfacturas.app](https://ayuda.tusfacturas.app) para acceder a guías paso a paso y solución de problemas o escribnos a <api@tusfacturas.app>


# ¿Cómo paso a producción?

API de facturación electrónica ARCA: Cómo pasar a Producción: Recomendaciones y Pasos a Seguir

Una vez completadas las pruebas con tu **Plan API DEV**, es momento de migrar tu integración a producción para comenzar a emitir facturas electrónicas con validez legal. Esta guía te acompañará paso a paso en el proceso de transición.

***

### 📋 Antes de Comenzar: Checklist de Preparación

Antes de iniciar el proceso de migración, asegurate de haber completado:

* ✅ **Pruebas exhaustivas** de tu integración
* ✅ **Validación** de todos los tipos de comprobantes que necesitás
* ✅ **Verificación** de los flujos de error y manejo de excepciones
* ✅ **Documentación** de tu integración para futuro mantenimiento
* ✅ **Backup** de tu código y configuraciones de desarrollo

***

### 🔄 Opciones para tu estrategias de Migración:&#x20;

#### Opción 1: Crear Nueva Cuenta para tu integración (Recomendada)

**✅ Ventajas:**

* Entorno completamente limpio
* Conservás tu cuenta de desarrollo para futuras pruebas
* Ideal para cuentas de clientes separadas

**⚠️ Consideraciones:**

* Requiere una configuración completa de tu cuenta&#x20;

#### Opción 2: Reutilizar Cuenta de Desarrollo&#x20;

**✅ Ventajas:**

* Mantenés toda tu configuración actual
* Conservás el historial de desarrollo
* Proceso más rápido

**⚠️ Consideraciones:**

* Debés limpiar los datos de prueba antes de la migración
* Una vez vinculado con AFIP/ARCA, no podrás usar planes API DEV en esta cuenta

{% hint style="info" %}
Conoce la guía que datos necesitas pedirle a tus clientes para hacer el onboarding en TusFacturasAPP

<a href="https://ayuda.tusfacturas.app/es/articles/15706757-que-informacion-necesito-pedirle-a-mis-usuarios-para-integrarlos-con-la-api-de-tusfacturasapp" class="button primary" data-icon="rocket-launch">Requisitos de Onboarding para clientes</a>
{% endhint %}

***

### 🛠️ Proceso de Migración Paso a Paso

{% stepper %}
{% step %}

#### Paso 1: Preparación de la Cuenta

**Si reutilizás tu cuenta de desarrollo:**

1. **Eliminá los comprobantes de prueba:**
   * Accedé a  [TusFacturasAPP](https://www.tusfacturas.app/) e ingresá a tu cuenta.
   * Navegá a **Menú > Facturación > Mis ventas**
   * Eliminá todos los comprobantes asociados al CUIT/PDV de prueba
   * Verificá que no queden registros de desarrollo
2. **Limpiá configuraciones de prueba:**
   * Revisá los productos y servicios de prueba
   * Eliminá clientes ficticios
   * Verificá las configuraciones de puntos de venta

**Si creás una nueva cuenta:**

1. **Registrá la nueva cuenta** en [TusFacturasAPP](https://www.tusfacturas.app/registrarme-factura-electronica.html)
2. **Accedé a:** Menú > Mi espacio de trabajo > Puntos de venta > Crear nuevo
3. **Configurá los datos reales** del punto de venta:
   * CUIT real de tu cliente/empresa
   * Punto de venta oficial asignado por AFIP/ARCA
   * Razón social correcta
   * Domicilio fiscal
     {% endstep %}

{% step %}

#### Paso 2: Contratación del Plan API de Producción

1. **Accedé a la plataforma web**
2. **Navegá a:** Menú > Mi cuenta > Cambiar o renovar mi plan actual
3. **Consultá los** [**planes API disponibles**](https://www.tusfacturas.app/tarifas-tusfacturas-planes-api-factura-electronica.html)
4. **Seleccioná el plan** que mejor se adapte a tu volumen de facturación

#### **💡 Gestión de Transición de Planes**

**Si tu Plan API DEV está activo:**

* La nueva suscripción comenzará cuando expire la actual
* Para activar inmediatamente, contactá a <soporte@tusfacturas.app>
* O [activá manualmente](https://ayuda.tusfacturas.app/es/articles/10354324-me-quede-sin-cupo-como-activo-mi-nueva-suscripcion-a-partir-de-hoy) desde **Menú > Mi cuenta > Mis suscripciones**
  {% endstep %}

{% step %}

#### Paso 3: Vincula tu cuenta de TusFacturasAPP con AFIP/ARCA

**📧 Certificado Digital**

Después de crear el punto de venta, recibirás un **email con un certificado** para realizar la vinculación con AFIP/ARCA.

**🔗 Proceso de Enlace**

1. **Seguí nuestro** [**instructivo interactivo de enlace ARCA**](https://www.tusfacturas.app/enlace-arca.html)
2. **Completá la vinculación** siguiendo cada paso cuidadosamente
3. **Verificá que la conexión** se haya establecido correctamente
   {% endstep %}

{% step %}

#### Paso 4: Sincronización de Numeración

Una vez completada la vinculación con AFIP/ARCA:

1. **Accedé a:** Menú > Facturación > Recuperar numeración desde AFIP/ARCA
2. **Ejecutá la sincronización** para actualizar el numerador interno
3. **Verificá que la numeración** coincida con la oficial de AFIP/ARCA

⚠️ **Importante:** Este proceso se ejecuta **una única vez** y asegura que tu configuración esté lista para producción.
{% endstep %}
{% endstepper %}

***

### 🔧 Actualización de Credenciales API

#### Nuevas Credenciales de Producción

Una vez completada la migración, necesitarás actualizar las credenciales en tu aplicación:

```json
{
  "apitoken": "nuevo_token_produccion",
  "apikey": "nueva_key_produccion", 
  "usertoken": "nuevo_user_token_produccion"
}
```

#### 📍 Dónde Encontrar las Credenciales

* **Ubicación:** Menú > Mi espacio de trabajo > Puntos de venta
* **Seleccioná** el punto de venta de producción
* **Copiá** las nuevas credenciales

#### 🔄 Actualización en tu Código

Asegurate de actualizar **todas las referencias** a las credenciales en:

* Variables de entorno
* Archivos de configuración
* Código de la aplicación
* Documentación del equipo

***

### 🧪 Pruebas de Producción

#### Checklist de Validación

Antes de lanzar completamente, realizá estas verificaciones:

* ✅ **Emitir una factura de prueba** con datos reales
* ✅ **Verificar la numeración** en AFIP/ARCA
* ✅ **Comprobar la recepción** del comprobante por email
* ✅ **Validar el PDF generado** y su formato
* ✅ **Revisar los campos CAE** y fecha de vencimiento
* ✅ **Probar diferentes tipos** de comprobantes (A, B, C)
* ✅ **Verificar el manejo de errores** en producción

#### 📊 Monitoreo Inicial

Durante los primeros días en producción:

* Supervisá el volumen de facturas emitidas
* Verificá la estabilidad de la integración
* Monitoreá los tiempos de respuesta
* Revisá los logs de errores

***

### 🚨 Consideraciones Importantes

#### ⚠️ Puntos Críticos

1. **Una vez vinculado con AFIP/ARCA**, no podrás volver a usar planes API DEV en esa cuenta
2. **Los comprobantes emitidos en producción** tienen validez legal y son irrevocables
3. **La numeración debe ser consecutiva** según las normativas AFIP/ARCA
4. **Mantené siempre un backup** de tu configuración de producción

#### 🔒 Seguridad

* **Protegé las credenciales** de producción
* **Usá HTTPS** en todas las comunicaciones
* **Implementá logs** de auditoria
* **Configurá alertas** para errores críticos

***

### 📈 Escalabilidad y Planes

Si necesitás cambiar tu plan:

* Podés **escalar hacia arriba** en cualquier momento
* Los cambios se reflejan en el próximo ciclo de facturación
* Contactá a soporte para cambios inmediatos

***

### 🆘 Soporte y Asistencia

#### 📞 Canales de Soporte

* **📧 Email:** <api@tusfacturas.app>
* **💬 Chat:** Disponible en [www.tusfacturas.app](https://www.tusfacturas.app/)
* :information\_source: Centro de Ayuda: <https://ayuda.tusfacturas.app/es>

#### 🕐 Horarios de Atención personalizada

* **Lunes a Viernes:** 9:00 - 15:30 (GMT-3)

#### 📚 Recursos Adicionales

* [**Centro de Ayuda**](https://ayuda.tusfacturas.app/es/)
* [**Documentación API completa**](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca)
* [**Ejemplos de código**](/web-services-afip-api-arca)
* [**Status de servicios**](https://www.tusfacturas.app/app/estado-servicios.html)

***

### 🚀 ¡Listo para Producción!

Siguiendo esta guía, garantizarás una transición ordenada y sin registros de prueba en tu entorno de producción. Tu integración estará lista para emitir facturas electrónicas AFIP/ARCA con total validez legal.

¿Necesitás asistencia durante el proceso? Nuestro equipo de soporte está disponible para ayudarte en cada paso.

[**🎯 Comenzar migración ahora**](https://www.tusfacturas.app/tarifas-tusfacturas-planes-api-factura-electronica.html)


# Documentación API Facturación AFIP/ARCA

Integra la facturación electrónica AFIP fácil y rápido con nuestra API. ¡Confiable desde 2015! Elegida por todos los desarrolladores.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="TusFacturasAPP API Factura Electronica AFIP. SDK AFIP"><figcaption></figcaption></figure>

### 🚀 API ARCA para Desarrolladores

Nuestra **API Factura electronica AFIP/ARCA** elimina la complejidad de los webservices AFIP/ARCA. Desarrollada específicamente para desarrolladores que buscan **automatización facturación** confiable y escalable.

#### 🔧 Integración Simplificada

La **API de ARCA** más fácil de integrar. Documentación completa con ejemplos JSON para desarrolladores que necesitan emitir [factura electrónica AFIP/ARCA](https://www.tusfacturas.app/factura-electronica-afip.html) desde su [sistema de gestión](https://www.tusfacturas.app/como-integrar-mi-software-de-facturacion-con-afip.html), ERP o software.

#### ⚡ Procesamiento Rápido

Automatización facturación instantánea o asíncrona. Elige el método que mejor se adapte a tu arquitectura.

#### ☁️ SaaS de facturación confiable

Nuestro **SaaS facturación AFIP** garantiza el cumplimiento normativo actualizado&#x20;

### **🏆 ¿Por qué confiar en TusFacturasAPP?**

**Respaldo profesional dual:** Contamos con el soporte de un estudio contable especializado que nos mantiene actualizados con las últimas normativas fiscales de Argentina, y [VOUSYS](https://www.vousys.com/), una empresa de desarrollo de software con +20 años de experiencia, que garantiza que tu integración requiera la menor cantidad de cambios posibles.

### 💻 Endpoints para la API ARCA

Integra nuestra **API Factura electronica AFIP/ARCA** con estos endpoints optimizados para desarrolladores:

#### 🔄 Facturación Asíncrona (Recomendado)

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo_encola`</mark>
{% endhint %}

Ideal para la **automatización de tu facturación** en producción. Respuesta vía webhook. No dependes del estado de los servicios de AFIP. Conoce más de la [facturación asincrónica.](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)

#### ⚡ Facturación Instantánea

{% hint style="info" %}
&#x20;<mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`nuevo`</mark>
{% endhint %}

Respuesta inmediata para integraciones con la **API ARCA**. Dependes del estado de los servicios de facturación de ARCA. Conoce más de la [facturación instantánea.](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)

#### 📦 Facturación por Lotes

{% hint style="info" %} <mark style="color:purple;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:blue;">`lotes`</mark>
{% endhint %}

Procesa múltiples comprobantes simultáneamente para alta performance. Conoce más de la [facturación por lotes](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)

### 📋 Tipos de Comprobantes Soportados

Nuestra **API Factura electronica AFIP/ARCA** soporta todos los tipos de comprobantes:

* Facturas A, B, C, E, M
* Notas de crédito y débito
* Facturas de crédito MiPyme (FCE)
* Facturas-recibos
* Remitos
* Pedidos
* Presupuestos<br>

### 🛠️ Características Técnicas para Desarrolladores

{% stepper %}
{% step %}

#### REST API

Arquitectura REST estándar con formato JSON. Fácil integración en cualquier lenguaje.
{% endstep %}

{% step %}

#### Webhooks

Notificaciones automáticas para la **automatización de tu facturación** sin polling.
{% endstep %}

{% step %}

#### Documentación Completa

Guías paso a paso y [ejemplos de código](broken://pages/SOqWX4022D2OKZCHrSAH) para desarrolladores.
{% endstep %}
{% endstepper %}

### 📚 Empezar con la API

Comienza a usar nuestra **API ARCA** en minutos:

1. [Crea tu cuenta gratuita](/consultas-varias-a-servicios-afip-arca/api-factura-electronica-afip-clientes-consultar-cuit-en-constancia-de-inscripcion) de desarrollador
2. Genera tus credenciales API
3. Integra los endpoints en tu software. Accede a la [referencia de la API](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca)
4. Emití tu primer factura electrónica

### 🎯 ¿Por qué elegir nuestro SaaS Facturación AFIP?

* ✅ **API ARCA** confiable desde 2015
* ✅ Soporte técnico especializado para desarrolladores
* ✅ Cumplimiento normativo automático
* ✅ Escalabilidad para cualquier volumen
* ✅ Integración en minutos, no días

🧐 ¿Tenés alguna duda del servicio? checkea las [FAQs](/faqs-or-preguntas-frecuentes), y si no encontrás lo que buscabas, contactanos por los [canales de atención](https://www.tusfacturas.app/contacto.html) que tenemos disponibles.

### Explora la API AFIP/ARCA

Explora las funcionalidades de nuestra [API Rest para AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca) y descubrí cómo podes personalizarla para tus necesidades.&#x20;

{% content-ref url="/pages/649U7yiXUeR7wdh8JqmZ" %}
[Referencia API AFIP ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca)
{% endcontent-ref %}

***

### 💡 Soporte y Recursos

¿Tenes preguntas sobre la API? Visita nuestro Centro de Ayuda en [ayuda.tusfacturas.app](https://ayuda.tusfacturas.app) para acceder a guías paso a paso y solución de problemas o escribnos a <api@tusfacturas.app>


# Referencia API AFIP ARCA

Conecta tu plataforma y factura en ARCA/AFIP con la API de factura electrónica más fácil de Argentina.

### API ARCA – Integra tu sistema con los Web Services de ARCA fácilmente para facturar tus ventas.

La **API de facturación electrónica para ARCA de TusFacturasAPP** te permite interactuar de forma directa y eficiente con los **web services de AFIP/ARCA**, facilitando la emisión de comprobantes electrónicos desde tu software.

#### ¿Qué es un comprobante electrónico?

En el contexto de nuestra API, se denomina **"comprobante"** a cualquier documento digital vinculado a operaciones comerciales, tales como:

* Facturas electrónicas (de venta o compra), recibos C y liquidaciones.
* Notas de crédito y débito
* Pedidos
* Presupuestos
* Remitos&#x20;

Esto permite a tu sistema manejar toda la documentación fiscal y comercial en formato electrónico, cumpliendo con las exigencias legales vigentes.

### Endpoint principal de la API ARCA:

{% hint style="info" %} <mark style="color:purple;">**POST**</mark>

`https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">**`metodo-elegido`**</mark>
{% endhint %}

Este endpoint permite el envío de comprobantes en distintos modos de operación, según las necesidades de tu sistema:

#### ⚙️ Modos de envío disponibles

* [**Envío instantáneo**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)**:**\
  Envía un comprobante y recibe la respuesta al instante. Ideal para sistemas que requieren confirmación inmediata. Sujeto a la disponibilidad del servicio de **AFIP o ARCA**.
* [**Envío asincrónico**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)**:**\
  Envía el comprobante a una cola de procesamiento. Recibirás una notificación por **webhook** una vez procesado. Recomendado para sistemas que manejan grandes volúmenes.
* [**Lotes instantáneos**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)**:**\
  Permite enviar varios comprobantes en un único lote y recibir una única respuesta inmediata. También depende de la disponibilidad del servicio de AFIP o ARCA.

> 🔧 Nuestra API ARCA está diseñada para desarrolladores que buscan una integración rápida, robusta y conforme a las normativas de facturación electrónica en Argentina.

### Estructura del JSON  a enviar

Tipo de datos: **JSON ,** Charset: **UTF-8**

Request: Body

| Name        | Type   | Description                                                 |
| ----------- | ------ | ----------------------------------------------------------- |
| usertoken   | string | Tus credenciales de acceso                                  |
| apitoken    | string | Tus credenciales de acceso                                  |
| apikey      | string | Tus credenciales de acceso                                  |
| comprobante | object | Estructura de "comprobante" según se informa a continuación |
| cliente     | object | Estructura de "Cliente", según se informa a continuación    |

### JSON de ejemplo para emitir comprobantes electrónicos

A continuación te mostramos un **ejemplo completo en formato JSON** que incluye todas las opciones disponibles para personalizar tus **comprobantes electrónicos** con la API de TusFacturasAPP.

> ⚠️ **Importante**: No todos los campos son obligatorios. Los datos requeridos varían según el [**tipo de comprobante**](/web-services-afip-api-arca) que desees emitir (factura, nota de crédito, remito, etc.).

Para obtener una guía detallada de los campos específicos por tipo de comprobante, visitá nuestra [página de ejemplos por tipo de comprobante](/web-services-afip-api-arca).

Este ejemplo te servirá como referencia para construir tus requests correctamente y evitar errores comunes al integrarte con los **web services de AFIP/ARCA**.

{% code title="JSON" %}

```json
{
   "usertoken":"xxxxxx",
   "apikey":"xxxx",
   "apitoken":"xxxxxx",
   "cliente":{
      "documento_tipo":"DNI",
      "documento_nro":"1292963535",
      "razon_social":"Pirulo",
      "nombre_fantasia": "",
      "email":"test@test.com",
      "domicilio":"Av Sta Fe 123",
      "provincia":"2",
      "envia_por_mail":"S",
      "condicion_pago":"214",
      "condicion_pago_otra":"Cobrado en ventanilla",
      "condicion_iva":"CF",
      "condicion_iva_operacion":"CF",
      "reclama_deuda": "S",
      "reclama_deuda_dias": 5,
      "reclama_deuda_repite_dias": 10,       
      "rg5329":"N"
   },
   "comprobante":{
      "fecha":"28\/07\/2015",
      "tipo":"NOTA DE DEBITO B",
      "moneda":"DOL",
      "idioma":"1",
      "cotizacion":"15.20",
      "operacion":"V",
      "punto_venta":"2",
      "numero":"6",
      "datos_informativos": {
            "paga_misma_moneda": "N"
      },
      "periodo_facturado_desde":"27\/07\/2015",
      "periodo_facturado_hasta":"30\/07\/2015",
      "vencimiento":"30\/08\/2015",
      "rubro":"Servicios web",
      "external_reference":"ABC123",
      "tags":[
         "etiqueta1",
         "etiqueta2"
      ],
      "rubro_grupo_contable":"servicios",
      "abono":"S",
      "abono_frecuencia":"2",
      "abono_hasta":"10/2019",
      "abono_actualiza_precios":"N",
      "detalle":[
         {
            "cantidad":"1",
            "afecta_stock":"N",
            "bonificacion_porcentaje":"0",
            "producto":{
               "descripcion":"PAPAS",
               "unidad_bulto":"10",
               "lista_precios":"MI LISTA DE PRECIOS",
               "codigo":"",
               "precio_unitario_sin_iva":"100.45",
               "alicuota":"21",
               "impuestos_internos_alicuota":0,
               "unidad_medida":"7",
               "actualiza_precio":"S",
               "rg5329":"N"
            },
            "leyenda":"blanca, cepillada"
         },
         {
            "cantidad":"1.5",
            "bonificacion_porcentaje":"0",
            "afecta_stock":"N",
            "producto":{
               "descripcion":"HUEVOS",
               "unidad_bulto":"30",
               "lista_precios":"MAPPLETS",
               "codigo":"MPH",
               "precio_unitario_sin_iva":"50",
               "alicuota":"10.5",
               "impuestos_internos_alicuota":0,
               "unidad_medida":"7",
               "actualiza_precio":"N",
               "rg5329":"N"
            },
            "leyenda":""
         },
         {
            "cantidad":"2",
            "bonificacion_porcentaje":"0",
            "afecta_stock":"S",
            "producto":{
               "descripcion":"ZANAHORIA",
               "unidad_bulto":"50",
               "lista_precios":"MI LISTA DE PRECIOS",
               "codigo":"ZNH1",
               "precio_unitario_sin_iva":"200",
               "alicuota":"21",
               "impuestos_internos_alicuota":0,
               "unidad_medida":"7",
               "actualiza_precio":"S",
               "rg5329":"N"
            },
            "leyenda":""
         }
      ],
      "rg_especiales":{
         "regimen":"Factura de Cr\u00e9dito Electr\u00f3nica MiPyMEs (FCE)",
         "datos":[
            {
               "id":2101,
               "valor":"0170215820000005295250"
            },
            {
               "id":23,
               "valor":"HANDYWAY CARGO S.A"
            },
            {
               "id":27,
               "valor":"SCA"
            }
         ]
      },
      "comprobantes_asociados":[
         {
            "tipo_comprobante":"FACTURA C",
            "punto_venta":"3",
            "numero":"00000349",
            "comprobante_fecha":"03/03/2022",
            "cuit":27285051466
         }
      ],
      "comprobantes_asociados_periodo":{
         "fecha_desde":"20/11/2020",
         "fecha_hasta":"20/12/2020"
      },
      "pagos":{
         "formas_pago":[
            {
               "descripcion":"VISA DB",
               "importe":0.6
            },
            {
               "descripcion":"MercadoPago",
               "importe":50
            }
         ],
         "total":50.6
      },
      "tributos":[
         {
            "tipo":6,
            "regimen":1,
            "base_imponible":1000,
            "alicuota":10,
            "total":100
         }
      ],
      "exentos":"0",
      "impuestos_internos":"0",
      "impuestos_internos_base":"0",
      "impuestos_internos_alicuota":"0",
      "bonificacion":"120",
      "leyenda_gral":"Segun Orden de compra III1333",
      "comentario":"Factura correspondiente al servicio XX",
      "total":"573.22"
   }
}
```

{% endcode %}

### Ejemplos de comprobantes según su tipo y letra

Con TusFacturasAPP podrás emitir comprobantes electrónicos ARCA, clasificados según su **tipo (Factura, Nota de Crédito, etc.)** y **letra (A, B, C, E, M)**.

Explorá los distintos escenarios de facturación que podés implementar, adaptados a las normativas fiscales vigentes de AFIP:

#### ✅ Tipos de comprobantes disponibles:

* **Factura A / B / C / E / M / MiPyme**
* **Nota de Crédito A / B / C / E / MiPyme**&#x20;
* **Nota de Débito A / B / C / E / MiPyme**
* **Presupuestos**
* **Pedidos**
* **Remitos**
* **Recibos C**
* **Liquidaciones A y B**

Cada ejemplo incluye los campos requeridos y opcionales, además de los valores específicos para cada categoría. Esto te permitirá implementar la facturación electrónica de forma ágil y segura desde cualquier sistema.

{% content-ref url="/pages/Dm21kTcCE81FgnskvnSX" %}
[Ejemplos API AFIP/ARCA](/web-services-afip-api-arca)
{% endcontent-ref %}

### Datos para tener en cuenta:

{% hint style="info" %}
**PDF**

* La URL del PDF que recibis es temporal,  solo sirve para el día que la consultas.
* La URL del ticket sera devuelta para todos los modelos de PDF que seleccionas desde tu punto de venta, con excepción del modelo "1.1 - Modelo Viejo".
* Es importante que descargues toda la información junto con el contenido del pdf y lo almacenes en tu plataforma, ya que si si tu cuenta o suscripción no se encuentran vigentes, no podrás volver a obtenerlo.  AFIP no genera archivos en PDF, por lo que tampoco podrás obtenerlo desde ahi.
* Tene en cuenta que a partir del 01-07-2021, todo comprobante A que se emitan a un monotributista deberá llevar la siguiente leyenda: "*El crédito fiscal discriminado en el presente comprobante, sólo podrá ser computado a efectos del Régimen de Sostenimiento e Inclusión Fiscal para Pequeños Contribuyentes de la Ley Nº 27.618".* **Éste valor no debe ser enviado,** ya que saldrá automáticamente impreso en los PDF que se generen desde nuestra plataforma.

**CAE (Código de Autorización electrónica de AFIP)**

* El CAE es el Código de Autorización Electrónico que otorga AFIP, como confirmación de la creación del comprobante. Es un dato importante para almacenar como respuesta.
* Los CAE tienen fecha de vencimiento y se devuelve en formato dd/mm/aaaa
* Por cuestiones de compatibilidad, el número de CAE se envia como texto con un espacio al final, el cual sugerimos eliminar de tu lado.

**AFIP CÓDIGO DE BARRAS / QR**

* Por cuestiones de compatibilidad, el texto que se retorna en el campo  afip\_qr, se envía con un espacio al final, el cual sugerimos eliminar de tu lado.
* El campo afip\_codigo\_barras dejará de ser enviado a partir del 01/01/2024
* Cuando la respuesta es exitosa, podes obtener el texto que se necesita para armar el código QR, en caso que generes el PDF desde tu lado .

**NOTAS DE DÉBITO Y CRÉDITO**

* Las notas de débito y crédito requieren que envies obligatoriamente los comprobantes asociados (o su período asociado). Conocé más [desde aquí](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito)

**FECHA**

* Una vez emitido un comprobante (factura, nota de crédito o débito) en AFIP/ARCA con una fecha determinada, no podrás emitir otro comprobante del mismo punto de venta con una fecha anterior. Esta restricción es impuesta por AFIP/ARCA y no puede ser modificada, incluso mediante la emisión de notas de crédito o débito.
* AFIP/ARCA ademas, tiene otra validación para la fecha del comprobante:&#x20;
  * Para actividades vinculadas a servicios, AFIP/ARCA te permitirá facturar con una anterioridad de hasta 10 días, si no has emitido ningún comprobante con fecha posterior a esa.
  * Para actividades relacionadas a la comercialización de bienes,  el plazo es de 5 días hacia atrás, si no has emitido ningún comprobante con fecha posterior a esa.

**REDONDEO DE NÚMEROS / SUMATORIAS / TOTALES**

* Usamos punto (.) como separador decimal y no utilizamos separador de miles.
* Nuestra plataforma gestiona los precios unitarios de productos y servicios con 3 decimales, mientras que los totales se calculan con 2 decimales. Debido a esto, pueden surgir pequeñas diferencias de facturación en aquellas empresas que trabajan con precios finales (IVA incluido).

  Para garantizar la precisión fiscal, aplicamos el método de redondeo "Round half even" (redondeo bancario), siguiendo estrictamente los lineamientos de ARCA.

  En el siguiente artículo sobre [ajustes, redondeos y precios sin IVA](https://ayuda.tusfacturas.app/es/articles/12548047-redondeos-ajustes-y-precios-sin-iva) te explicamos cómo funciona mediante un ejemplo práctico.
* Siempre debes enviar los valores en positivo (mayor o igual a cero), nunca con valores negativos.
* **TusFacturas.app NO válida la totalidad de los datos enviados como asi tampoco las sumatorias de los ítems que estas enviando para facturar. Es tu responsabilidad corroborar y validar éstos datos antes de enviarlos.**
* **AFIP recibe únicamente totales**, no el detalle de los items que facturas, ya que para los comprobantes de tipo "A" , "B" , "C" y "M" , Factura de crédito electrónica, TusFacturas.app utiliza el método de facturación mediante webservice AFIP "WSFEv1" ( Factura electrónica sin detalle de productos ).

**MICROSITIOS**

* Las URL de los micrositios solo te serán devueltas con datos, si los mismos se encuentran habilitados en tu cuenta.  Éstas URL no cambian y le permiten a tu cliente acceder a un portal neutro a descargar la factura y/o a consultar su historial de facturas emitidas.
* Para configurar los micrositios, ingresa a nuestra plataforma web, menú > mi espacio de trabajo > mis micrositios. Conocé más de los micrositios [desde aquí](https://www.tusfacturas.app/).

**EDICIÓN / ELIMINACIÓN DE COMPROBANTES**&#x20;

* **Aquellos comprobantes que hayan impactado en AFIP, no podrán ser eliminados. Sólo pueden ser anulados contablemente generando una** [**nota de crédito**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#que-es-una-nota-de-credito-nc-electronica)**.**
* Ningún comprobante puede ser modificado una vez creado.

**TEXTOS**

* La información debe estar encodeada con UTF-8 para evitar errores.

**OBSERVACIONES**

* El campo de "observaciones" contiene las observaciones  enviadas por AFIP/ARCA sobre esa operación, dado que los comprobantes pueden ser aprobados pero aún así, observados. Sugerimos almacenar ésta información y revisarla.

ERRORES

* Revisa el código de estado HTTP: Confirma siempre que recibas una respuesta HTTP 200. Esto garantiza que tu solicitud llegó y fue procesada correctamente.
* Valida el campo de error: Controla el campo `"error"` en la respuesta. Su valor será `"S"` si hubo un problema o `"N"` si la operación se realizó con éxito, y dentro de `"errores"` encontraras el detalle del error. En caso de error te recomendamos tener un campo de texto en amplio en tu base de datos, ya que los mismos pueden tener +255 caracteres cada uno.

**RATE LIMIT y ABUSO DE RECURSOS**

* RATE LIMIT: El código de estado HTTP: 429 indica que tu aplicación está excediendo el límite de solicitudes permitido por segundo. Esto se debe a las reglas de seguridad de nuestra plataforma, diseñadas para proteger la estabilidad del sistema.
* ABUSO DE RECURSOS: Te recomendamos leer las "Facultades sancionatorias de la plataforma" desde los [términos y condiciones](https://www.tusfacturas.app/terminos-y-condiciones.html)

**CONCURRENCIA**

* Espera la respuesta de la API antes de enviar la siguiente solicitud.
* Si el proceso es paralelo, incorporar un delay mínimo (por ejemplo, 100ms) entre las peticiones para evitar que ingresen en el mismo segundo.

**NUMERACIÓN**

* La numeración es correlativa por punto de venta + Tipo de comprobante.

**⚠️ IMPORTANTE - Consideraciones Legales:**

En Argentina, todas las operaciones comerciales deben estar debidamente facturadas y declaradas ante AFIP/ARCA según lo establece la normativa vigente.\
Mantener "doble contabilidad" o facturas no declaradas:\
\- Constituye evasión fiscal (Ley 24.769)\
\- Puede resultar en sanciones económicas significativas\
\- Puede derivar en acciones penales\
\- Pone en riesgo la continuidad de tu negocio
{% endhint %}

### 🔁 ¿Qué devuelve la API ARCA de TusFacturasAPP?

La **respuesta que recibís al emitir un comprobante electrónico** depende del **método de invocación** que elijas en la integración con la API de TusFacturasAPP.

#### 📌 Modalidades de invocación y sus respuestas

* **🕒 Envío instantáneo**\
  Recibís inmediatamente la respuesta con todos los datos del comprobante autorizado por AFIP o ARCA. Ideal para integraciones en tiempo real.
* **⏳ Envío asincrónico**\
  La respuesta inicial solo confirma que el comprobante fue recibido para su procesamiento. Más tarde, cuando se autorice, **te notificamos por webhook** con la respuesta final y los datos fiscales completos.
* **📦 Envío por lotes**\
  Podés enviar varios comprobantes a la vez. Recibís una respuesta agrupada que incluye el resultado individual de cada comprobante (siempre sujeta al estado del servicio de AFIP/ARCA).

### 📊 ¿Dónde puedo ver las ventas generadas?

Desde la plataforma web de **TusFacturasAPP**, podés consultar y administrar fácilmente los comprobantes electrónicos emitidos. Accedé desde el panel principal a:

* **Menú > Facturación > Mis ventas**: para ver todas las ventas ya emitidas.
* **Menú > Facturación > Ventas programadas**: para consultar las ventas aún pendientes de emisión automática o manual.

Desde estas secciones podrás **visualizar, filtrar, descargar o anular** los comprobantes emitidos, todo desde una única interfaz centralizada.

### ✅ ¿Cómo verificar si un comprobante fue emitido correctamente en ARCA?

Además del panel de TusFacturasAPP  y cuando estes en producción, también podés corroborar que un comprobante fue autorizado por **AFIP/ARCA** de forma oficial:

1. Ingresando a la web de AFIP con tu **CUIT y clave fiscal**.
2. Usando el servicio “**Mis Comprobantes**” en el menú de servicios habilitados. Contempla que ARCA pone a disposición la información al día anterior.
3. Utilizando la herramienta oficial de [**Constatación de Comprobantes Electrónicos**](https://servicioscf.afip.gob.ar/publico/comprobantes/cae.aspx), donde podes ingresar el CUIT del emisor, tipo y número de comprobante. Conoce más desde la guía de [Constatación de comprobantes en AFIP.](https://ayuda.tusfacturas.app/es/articles/10844438-constatacion-de-comprobantes-en-afip)

> 🧩 Esta verificación es útil para control fiscal o para mostrarle al cliente final que su comprobante fue validado correctamente.

### Definición de datos a enviar para generar ventas:

### Estructura del bloque: "Comprobante"

<table><thead><tr><th width="237.1885936052475">Nombre del campo</th><th width="150.8396361895644" align="center">Es requerido?</th><th>Comentarios</th></tr></thead><tbody><tr><td>fecha</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo fecha. Formato esperado: dd/mm/aaaa. Ejemplo: 13/05/2018.  Si usas el metodo asincrónico, la fecha será el día que queres que se emita. Una vez emitido un comprobante (factura, nota de crédito o débito) en AFIP/ARCA con una fecha determinada, no podrás emitir otro comprobante del mismo punto de venta con una fecha anterior. Esta restricción es impuesta por AFIP/ARCA y no puede ser modificada, incluso mediante la emisión de notas de crédito o débito.</td></tr><tr><td>tipo</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfabético según <a href="/parametros/tablas-de-referencia#tipos-de-comprobantes">tabla de referencia de Tipos de comprobantes</a></td></tr><tr><td>operacion</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de venta (V) o de compra (C). Valores Permitidos: V, C Ejemplo: V</td></tr><tr><td>idioma</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico. Longitud 1 caracter. Indica el idioma en que se imprimira el PDF del comprobante. Valores Permitidos: 1 = Español, 2= Ingles</td></tr><tr><td>punto_venta</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico entero. Longitud máxima 5 digitos.</td></tr><tr><td>moneda</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico de 3 Digitos según <a href="/parametros/tablas-de-referencia#monedas">tabla de referencia de Monedas</a> .</td></tr><tr><td>cotizacion</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td><p>Número decimal con 3 lugares decimales. Representa el valor en pesos argentinos de una moneda extranjera. Se obtiene en tiempo real a través de nuestra API de cotización ARCA. </p><p>Si moneda = PES, la cotizacion debe ser siempre 1.</p><p>Si facturas en otra moneda, debes indicar un dato valido, ya que ARCA lo validara.</p><p>Ejemplo: 15.20. Solo aplicable a monedas distintas al peso argentino.</p></td></tr><tr><td>numero</td><td align="center">OPCIONAL</td><td>El numero del comprobante a generar. Campo numérico entero. Longitud máxima 8 digitos. La numeración será validada internamente previa generación del comprobante contra AFIP. Si el nro de comprobante NO es enviado, traeremos la próxima numeración . Ejemplo: 4567</td></tr><tr><td>vencimiento</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo fecha, formato esperado: dd/mm/aaaa. </td></tr><tr><td>periodo_facturado_desde</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo fecha. Formato esperado: dd/mm/aaaa. Opcional solo para quienes facturen productos y asi lo indiquen en la configuración de su CUIT+punto de venta. Obligatorio para quienes facturen Servicios o Productos y Servicios.</td></tr><tr><td>periodo_facturado_hasta</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo fecha. Formato esperado: dd/mm/aaaa. Opcional solo para quienes facturen productos y así lo indiquen en la configuración de su CUIT+punto de venta.Obligatorio para quienes facturen Servicios o Productos y Servicios.</td></tr><tr><td>rubro</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico que no sale impreso en el pdf. Se utiliza para los reportes que brinda nuestra plataforma web y no es requerido por AFIP. Longitud máxima 255 caracteres. Indica el rubro al cual pertenecerá el comprobante. </td></tr><tr><td>rubro_grupo_contable</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico que no sale impreso en el pdf. Se utiliza para los reportes que brinda nuestra plataforma web y no es requerido por AFIP/ARCA. Longitud máxima 255 caracteres. Indica el grupo contable al que pertenece el rubro.  </td></tr><tr><td>abono</td><td align="center">OPCIONAL (Solo disponible para ventas)</td><td>Campo alfabético, longitud máxima 1 caracter. Valores permitidos S (si) o N (no). Indica si el comprobante a generar es un abono recurrente.</td></tr><tr><td>abono_frecuencia</td><td align="center"><mark style="color:purple;">REQUERIDO SOLO SI ENVIA ABONO</mark></td><td>Campo numerico sin decimales. Indica la frecuencia en meses con la que debe generarse la recurrencia del abono.</td></tr><tr><td>abono_hasta</td><td align="center"><mark style="color:purple;">REQUERIDO SOLO SI ENVIA ABONO</mark></td><td>Campo fecha (mm/yyyy). Longitud maxima 7. Indica el mes y año hasta el cual debe generarse el abono recurrente.</td></tr><tr><td>abono_actualiza_precios</td><td align="center"><mark style="color:purple;">REQUERIDO SOLO SI ENVIA ABONO</mark></td><td>Campo alfabético, longitud máxima 1 caracter. Valores permitidos S (si) o N (no). Indica si cada vez que se genera el abono, se actualiza los precios de los productos contra el precio actual de la lista de precios.</td></tr><tr><td><mark style="color:blue;">detalle</mark></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Lista de conceptos a facturar. <a href="#estructura-de-detalle-de-conceptos">Objeto JSON</a>, según estructura que se detalla a continuación</td></tr><tr><td><mark style="color:blue;">fex</mark></td><td align="center"><mark style="color:purple;">REQUERIDO PARA COMPROBANTES E</mark></td><td>Solo para comprobantes de tipo E. Objeto JSON, según estructura detallada en: <a href="/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-electronica-afip-exportacion">Factura electronica de exportacion".</a></td></tr><tr><td>bonificacion</td><td align="center">OPCIONAL</td><td><p>Campo numérico positivo con 2 decimales. separador de decimales: punto. Indica el valor aplicado en concepto de bonificación sin IVA Ejemplo: 12.67. </p><p>Tener en cuenta para el cálculo que la bonificación se aplica sobre el primer subtotal SIN IVA (generalmente el del 21%) y se lo gravará con el importe de IVA que le corresponda.</p></td></tr><tr><td>leyenda_gral</td><td align="center">OPCIONAL</td><td><p>Campo alfanumérico. Longitud máxima 500 caracteres. Contenido opcional. Es una leyenda general / observación comercial, que saldrá impresa en el bloque central del PDF, al final del último producto. </p><p>Si queres que parte del texto salga en una linea nueva, agrega: #@# , si queres enviar el "%", en su lugar envía: #&#x26;#.</p><p>Ejemplo: Aplica plan 12 cuotas, con un 10#&#x26;# de interes.</p></td></tr><tr><td>comentario</td><td align="center">OPCIONAL</td><td>Campo alfanumerico, opcional. Longitud máxima: 255 caracteres. Éste campo no saldrá impreso en la factura.</td></tr><tr><td><mark style="color:blue;">tributos</mark></td><td align="center"><mark style="color:purple;">SOLO SI APLICA</mark></td><td>Objeto JSON, con la lista de percepciones y otros impuestos, según se detalla su estructura a continuación.</td></tr><tr><td>impuestos_internos</td><td align="center">OPCIONAL</td><td>Si envias impuestos internos en cada uno de los items, debes Indicar el valor monetario correspondiente a la sumatoria los impuestos internos detallados en cada uno de los items que incluis. Campo numérico positivo con 2 decimales. separador de decimales: punto. Ejemplo: 42.67</td></tr><tr><td>impuestos_internos_base</td><td align="center">OPCIONAL</td><td>Si envías impuestos internos en cada uno de los items, debes indicar la sumatoria de la base imponible sobre la cual se calcularon los impuestos internos. Campo numérico positivo con 2 decimales. separador de decimales: punto. Ejemplo: 42.67</td></tr><tr><td>impuestos_internos_alicuota</td><td align="center">OPCIONAL</td><td>La alícuota sobre la cual se calcularon los impuestos internos de cada uno de los items que incluiste. Por cada comprobante se permite una única alícuota de impuestos internos. Campo numérico positivo con 2 decimales. separador de decimales: punto. Ejemplo: 42.67</td></tr><tr><td>total</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico positivo con 2 decimales. separador de decimales: punto. Indica el valor monetario de la sumatoria de conceptos incluyendo IVA e impuestos. Ejemplo: 12452.67</td></tr><tr><td><mark style="color:blue;">comprobantes_asociados</mark></td><td align="center"><mark style="color:orange;">SOLO PARA NC O ND</mark></td><td>Lista de comprobantes asociados. Requerido únicamente para NC o ND de tipo A,B,C,M. <a href="#estructura-de-comprobantes-asociados">Objeto JSON</a> Según estructura que se detalla a continuación</td></tr><tr><td><mark style="color:blue;">rg_especiales</mark></td><td align="center"><mark style="color:orange;">SOLO SI APLICA ALGUNA RG</mark></td><td>Lista de datos adicionales requeridos por AFIP, según la RG a la que aplique el comprobante. <a href="#estructura-de-rg-especiales">Objeto JSON</a> Según estructura que se detalla a continuación</td></tr><tr><td>external_reference</td><td align="center"><mark style="color:purple;">SOLO PARA VENTAS ASINCRÓNICAS</mark></td><td>Dato alfanumérico de hasta 255 caracteres (solo se permiten letras, números, guión bajo y guión medio), que se utiliza para referenciar a éste comprobante, dentro de tu sistema. Es opcional, salvo que utilices los métodos de envió a la cola de procesamiento. No se realiza validación de éste campo, para verificar que el mismo no exista.</td></tr><tr><td><mark style="color:blue;">tags</mark></td><td align="center">OPCIONAL</td><td>Dato que no sale impreso en el PDF, solo para gestion interna ya que se visualiza en la consulta del comprobante desde la plataforma web. Objeto JSON, según estructura que se detalla a continuación.</td></tr><tr><td>datos_informativos</td><td align="center">OPCIONAL</td><td>Objeto JSON, según estructura que se detalla a continuación.</td></tr></tbody></table>

### Estructura del bloque: "Cliente" y "Proveedor"

Para poder generar el comprobante debes enviar un detalle de todos los datos  según se informa a continuación. Si vas  a enviar una venta, debes enviar el bloque "cliente", en cambio si vas a enviar una compra para almacenar en nuestra plataforma, debes enviar el bloque "proveedor".

```json
comprobante: {
   .... 
   cliente: {   
      "documento_tipo":       "DNI",
      "documento_nro":        "1292963535",
      "razon_social":         "Pirulo",
      "nombre_fantasia":      "",
      "email":                "test@test.com",
      "domicilio":            "Av Sta Fe 123",
      "provincia":            "2",
      "codigo":               "CLO2",
      "envia_por_mail":       "S",
      "condicion_pago":       "214",
      "condicion_pago_otra":  "Cobrado en ventanilla",
      "condicion_iva":        "CF",
      "condicion_iva_operacion":        "CF",
      "reclama_deuda":        "S",
      "reclama_deuda_dias":   5,
      "reclama_deuda_repite_dias": 10,  
      "rg5329":                "N"
   }
}
```

En caso de enviar una compra, el nombre del bloque debe cambiar a "proveedor" en lugar de  "cliente"

```
comprobante: {
   .... 
   proveedor: {   
      "documento_tipo":       "DNI",
      "documento_nro":        "1292963535",
      "razon_social":         "Pirulo",
      "email":                "test@test.com",
      "domicilio":            "Av Sta Fe 123",
      "provincia":            "2",
      "codigo":               "CLO2",
      "envia_por_mail":       "S",
      "condicion_pago":       "214",
      "condicion_pago_otra":  "Cobrado en ventanilla",
      "condicion_iva":        "CF"
   }
}
```

#### Información de los campos a enviar:

<table data-header-hidden><thead><tr><th align="center">NOMBRE DEL CAMPO</th><th width="144.66666666666669" align="center">REQUERIDO?</th><th>INFO</th></tr></thead><tbody><tr><td align="center"><strong><code>documento_tipo</code></strong></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Valores Permitidos: <strong>CUIT , DNI, PASAPORTE, OTRO</strong><br><strong>Ejemplo: DNI</strong></td></tr><tr><td align="center"><code>documento_nro</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico, sin puntos ni guiones. Max 11 dígitos.<br><strong>Ejemplo: 30111222334</strong></td></tr><tr><td align="center"><code>razon_social</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico. Longitud máxima 255 caracteres.<br><strong>Ejemplo: Pirulo S.A</strong></td></tr><tr><td align="center"><code>email</code></td><td align="center">OPCIONAL</td><td>Campo alfanumérico. Longitud máxima 255 caracteres. Máximo 15 direcciones separadas por coma.<br><strong>Ejemplo: tusfacturas@vousys.com</strong></td></tr><tr><td align="center"><code>domicilio</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico. Longitud máxima 255 caracteres. <br><strong>Ejemplo: Av. Santa Fe 123</strong></td></tr><tr><td align="center"><code>provincia</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico según <a href="/parametros/tablas-de-referencia#provincias">tabla de referencia(*)</a>.<br><strong>Ejemplo: 2</strong></td></tr><tr><td align="center"><code>envia_por_mail</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Indica Si/No para el envio del comprobante por e-mail. Valores Permitidos: <strong>S , N</strong><br><strong>Ejemplo: S</strong></td></tr><tr><td align="center"><code>condicion_pago</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td><p>Campo numérico según <a href="/parametros/tablas-de-referencia#condiciones-de-venta">tabla de referencia</a>. Si envias la condición de pago "Otra" (214) se debe enviar obligatoriamente el campo <strong>condicion_pago_otra</strong> " con la descripción de dicha condición.</p><ul><li><strong>Ejemplo: "211"</strong></li></ul><p><strong>Éste dato  informativo sale impreso en el PDF</strong>  </p></td></tr><tr><td align="center">condicion_pago_otra</td><td align="center">OPCIONAL</td><td>Campo alfanumérico. Longitud máxima 100 caracteres. <strong>Ejemplo: Cobrado en ventanilla.</strong></td></tr><tr><td align="center"><code>condicion_iva</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td><p>Campo numérico que indica la condición de IVA, según <a href="/parametros/tablas-de-referencia#condiciones-frente-al-iva">tabla de referencia Condiciones ante el IVA</a></p><p><span data-gb-custom-inline data-tag="emoji" data-code="26a0">⚠️</span> Si envias una condición que no es válida se asignará automáticamente "CF" (Consumidor final).</p></td></tr><tr><td align="center">condicion_iva_operacion</td><td align="center">OPCIONAL</td><td>Éste campo entra en vigencia a partir del 15/04/2025 mediante la RG 5616/2024 de AFIP/ARCA. Deberá consignarse la condición frente al IVA en que se realiza la operación. <span data-gb-custom-inline data-tag="emoji" data-code="26a0">⚠️</span> De no enviarse éste campo se enviará lo que se especifique en el campo "condicion_iva". De enviarse un valor inexistente se asignará  automáticamente "CF" (Consumidor final) </td></tr><tr><td align="center">codigo</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanúmerico de hasta 20 caracteres para referenciar a ese cliente. Éste dato debería ser único dentro de tu plataforma pero TusFacturasAPP  no realiza dicha verificación. Si existiera +1 con el mismo código podrías sufrir problemas al actualizar los datos. <strong>Ejemplo: "CLI2394"</strong></td></tr><tr><td align="center">rg5329</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td><p>Este campo te permite indicar si tu cliente es pasible de <a href="/faqs-or-rg5329">percepción IVA RG5329</a>.</p><p>Valores posibles: "S" o "N".</p></td></tr><tr><td align="center">reclama_deuda</td><td align="center">OPCIONAL</td><td>Indica SI/No para el envio del <a href="https://www.tusfacturas.app/caracteristicas-de-tus-facturas-electronica-clientes.html">recordatorio de pago</a> al cliente. Opciones validas: "S" o "N"</td></tr><tr><td align="center">reclama_deuda_dias</td><td align="center">OPCIONAL</td><td>En caso de haber habilitado el recordatorio de pago atrasado, se debe indicar cuantos dias pasados la fecha de vencimiento del comprobante se desea comenzar a recordar el pago adeudado. Se espera recibir un valor numerico indicando el número de días)</td></tr><tr><td align="center">reclama_deuda_repite_dias</td><td align="center">OPCIONAL</td><td>En caso de haber habilitado del recordatorio de pago atrasado, se debe indicar la frecuencia de cada cuantos dias se desea volver a recordar. Se espera recibir un valor numérico, indicando el número de días.</td></tr><tr><td align="center">nombre_fantasia</td><td align="center">OPCIONAL</td><td>Campo alfanumérico. Longitud máxima 255 caracteres.<br><strong>Ejemplo: Pirulo y Amigos</strong></td></tr></tbody></table>

{% hint style="info" %}
**Datos a tener en cuenta:**

* Si el cliente ya existe en tu base de clientes/proveedores en TusFacturasAPP por código o tipo + número de documento, la info será actualizada con los nuevos datos que envies, con excepción de los campos:  tipo de documento, número de documento y condición ante el IVA.
* Si queres enviar un comprobante a un consumidor final, sin especificar su nombre y DNI,  consulta la siguiente documentación de "[Facturas a Consumidor final sin especificar datos](/api-factura-electronica-afip-facturacion-ventas/facturas-a-consumidor-final-sin-especificar-datos)"
* Para casos de clientes del exterior, que posean **pasaporte**, tene en cuenta que AFIP/ARCA sólo permite el envío de números.&#x20;
* Te recomendamos utilizar el método de [consulta de CUITs](/consultas-varias-a-servicios-afip-arca/api-factura-electronica-afip-clientes-consultar-cuit-en-constancia-de-inscripcion) antes de emitir facturas, ya que el CUIT de tu cliente podría no estar activo, lo que podría generar inconvenientes con el fisco.
* Si no vas a gestionar los cobros de las facturas que emitas con TusFacturasAPP, env'a siempre el campo "reclama\_deuda": "N", ya que sino nuestra plataforma le enviará un email a tu cliente recordandole todas las facturas impagas.
* Si queres indicar en TusFacturasAPP que este comprobante ademas fue abonado, debes enviar el bloque de "pagos" con la información requerida, ya que el campo "condicion\_pago" es solo informativo. &#x20;
* En caso que no desees llevar el estado de pagado/impago en la plataforma, debes enviar el campo "reclama\_deuda" en "N", ya que sino la plataforma le recordará por e-mail a tu cliente de todos los comprobantes que adeuda.
  {% endhint %}

### Estructura del bloque: "Detalle de conceptos"

El detalle de conceptos se compone de una lista de cada uno de los productos o servicios que vas a facturar. Cada producto o servicio único que incluyas en tu cmoprobante se considera un concepto diferente. Por ejemplo, si vendes 10 unidades de un producto, solo contarían como un concepto. **El límite máximo de conceptos por comprobante es de 130**.

{% hint style="info" %}
Nuestra plataforma gestiona los precios unitarios de productos y servicios con 3 decimales, mientras que los totales se calculan con 2 decimales. Debido a esto, pueden surgir pequeñas diferencias de facturación en aquellas empresas que trabajan con precios finales (IVA incluido).

Para garantizar la precisión fiscal, aplicamos el método de redondeo "Round half even" (redondeo bancario), siguiendo estrictamente los lineamientos de ARCA.

En el siguiente artículo sobre [ajustes, redondeos y precios sin IVA](https://ayuda.tusfacturas.app/es/articles/12548047-redondeos-ajustes-y-precios-sin-iva) te explicamos cómo funciona mediante un ejemplo práctico.
{% endhint %}

La estructura **de la lista de conceptos** a enviar es la siguiente:

{% code title="JSON" %}

```json
comprobante: {
   .... 
   detalle: [{
									"cantidad": "1.5",
									"afecta_stock": "N",
									"bonificacion_porcentaje": "0",
									"incluir_lista_precios_venta": "N",
									"leyenda": "",
									"producto": {
										"descripcion": "HUEVOS",
										"unidad_bulto": "30",
										"lista_precios": "MAPPLETS",
										"codigo": "MPH",
										"precio_unitario_sin_iva": "50",
										"impuestos_internos_alicuota": 0,
										"alicuota": "10.5",
										"unidad_medida": "7",
										"actualiza_precio":"S",
										"rg5329": "S"
									}
       				},
       				{
								"cantidad": "3",
								"afecta_stock": "S",
								"bonificacion_porcentaje": "50",
								"incluir_lista_precios_venta": "N",
								"leyenda": "En paquetes de 190gr",
								"producto": {
										"descripcion": "PALITOS SALADOS",
										"unidad_bulto": "30",
										"lista_precios": "SNACKS",
										"codigo": "PLi",
										"precio_unitario_sin_iva": "50",
										"impuestos_internos_alicuota": 0,
										"alicuota": "10.5",
										"unidad_medida": "7",
										"actualiza_precio":"S",
										"rg5329": "N"
									}
       				}
      ]
   } 
```

{% endcode %}

Los campos que debes enviar en cada concepto de la lista del bloque "detalle" son los siguientes:

<table data-header-hidden><thead><tr><th width="242.66666666666666">NOMBRE DEL CAMPO</th><th width="157" align="center">REQUERIDO?</th><th></th></tr></thead><tbody><tr><td><code>cantidad</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico positivo con 2 decimales. Separador de decimales: punto.<br><strong>Ejemplo: 1.50</strong></td></tr><tr><td><code>afecta_stock</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico de 1 posición. Valores posibles: "S" (si), "N" (no)<br><strong>Ejemplo: S</strong></td></tr><tr><td><mark style="color:blue;"><code>producto</code></mark></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Según estructura de producto que se detalla a continuación.</td></tr><tr><td><code>leyenda</code></td><td align="center">OPCIONAL</td><td>Campo alfanumérico. Longitud máxima 1000 caracteres. Contenido opcional. Será una descripción que acompañe al producto.<br><strong>Ejemplo: Blanca, cepillada</strong></td></tr><tr><td>bonificacion_porcentaje</td><td align="center">OPCIONAL</td><td>Si se ha aplicado un porcentaje de descuento sobre éste concepto, debe ser enviado. Es un campo númerico positivo con 2 decimales. El separador de decimales esperado es el punto. Ej: 25</td></tr><tr><td>incluir_lista_precios_venta</td><td align="center"><mark style="color:purple;">REQUERIDO</mark> <mark style="color:purple;">SOLO PARA COMPRAS</mark></td><td><p>Si estas enviando una compra, podes indicar que éste producto que compraste, se incorpore como un producto mas a los de tu lista de precios de venta. De esa manera podrás <a href="/productos/gestion-de-stock">gestionar el stock</a> tanto por la API como por la plataforma web.</p><p>Valores esperados: "S" o "N" </p><p>Ej: "S" </p></td></tr></tbody></table>

### Estructura de "producto"

Cada producto o servicio que envies sera almacenado en la lista de precios que se mantiene en nuestra plataforma, ademas de generar el comprobante requerido. A continuación podrás conocer que datos debes enviar:

<pre class="language-json"><code class="lang-json">{
    "descripcion":     "HUEVOS",
<strong>    "unidad_bulto":    "30",
</strong>    "lista_precios":   "MAPPLETS",
    "codigo":          "MPH",
    "precio_unitario_sin_iva":"50",
    "alicuota":      "10.5",
    "unidad_medida": "7",
    "impuestos_internos_alicuota": 0,
    "actualiza_precio": "N",
    "rg5329": "N"
}
</code></pre>

{% hint style="info" %}
**Datos a tener en cuenta:**

* Si el producto ya existía en tu base de productos de nuestra plataforma ( se valida que sea la misma lista de precios, código de producto y/o descripción del mismo), el mismo será actualizado por completo, con los nuevos datos que envíes, solo  si indicas que deseas actualizar el precio con el campo "actualiza\_precio":"S".  En caso de no querer actualizar el producto, si el mismo ya existía, se facturará con el nuevo precio y descripción que envíes, pero mantendrá sus datos anteriores.
* Nuestra plataforma gestiona los precios unitarios de productos y servicios con 3 decimales, mientras que los totales se calculan con 2 decimales. Debido a esto, pueden surgir pequeñas diferencias de facturación en aquellas empresas que trabajan con precios finales (IVA incluido).

  Para garantizar la precisión fiscal, aplicamos el método de redondeo "Round half even" (redondeo bancario), siguiendo estrictamente los lineamientos de ARCA.

  En el siguiente artículo sobre [ajustes, redondeos y precios sin IVA](https://ayuda.tusfacturas.app/es/articles/12548047-redondeos-ajustes-y-precios-sin-iva) te explicamos cómo funciona mediante un ejemplo práctico.
* Si el comprobante que envías a facturar es de tipo C, todos los productos/conceptos que factures no deben llevar IVA y deberás enviar cada concepto con su precio final
* Si el comprobante que envías, es de tipo A o B, los productos o servicios que envíes a facturar, deben ser enviados siempre SIN IVA, porque el IVA se calcula del lado de nuestra plataforma en base al campo "alicuota" que envías. Conocé más de los tipos de comprobantes, [desde aquí ](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)
* En caso que alguno de tus conceptos cuente con un signo porcentual (%) en el nombre (ej:  Promo 20% OFF)  deberás reemplazarlo por los siguientes caracteres: **#\&#**&#x20;
* En caso que alguno de tus conceptos cuente con una nueva línea, en su nombre, o porque deba imprimirse en 2 líneas, deberás generar el salto de línea donde desees, ingresando los caracteres:  **#@#**&#x20;
* **Cómo calcular el IVA:**
  * Si necesitas calcular cuánto vale tu producto sin IVA, te dejamos un cálculo rápido:&#x20;

    Precio del producto con 21% de IVA = 121

    Para saber el precio sin el 21% de IVA debes hacer:  121 / 1.21  = 100
  * Si quisieras saber cuanto es el precio de tu producto + 21% de IVA, debes hacer el siguiente cálculo:

&#x20;            Precio del producto sin 21% de IVA = 100

&#x20;            Para saber el precio con el 21% de IVA debes hacer:  100 x 1.21 = 121

{% endhint %}

Detalle de los campos a enviar:

<table data-header-hidden><thead><tr><th width="335.66666666666663">NOMBRE DEL CAMPO</th><th width="145" align="center">REQUERIDO?</th><th>INFO</th></tr></thead><tbody><tr><td><code>descripcion</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico. Longitud máxima 255 caracteres y mínima de 4 caracteres.<br><strong>Ejemplo: Papa blanca</strong></td></tr><tr><td><code>unidad_bulto</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico entero requerido. Indica la cantidad de unidades que componen un bulto. Éste dato se usa únicamente para los remitos para calcular la cantidad de bultos.  Valor minimo esperado: 1<br><strong>Ejemplo: 12</strong></td></tr><tr><td><code>lista_precios</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico. Longitud mínima de 4 caracteres y máxima 255 caracteres. Nombre de la lista de precios a la cual pertenece. No saldrá impreso en la factura pero es requerido.<br><strong>Ejemplo: Verdura Orgánica</strong></td></tr><tr><td><code>codigo</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanúmerico de hasta 20 caracteres para referenciar a ese producto. Éste dato debería ser único dentro de tu plataforma pero TusFacturasAPP no realiza dicha verificación. Si existiera +1 con el mismo código podrías sufrir problemas al actualizar los datos.<br><strong>Ejemplo: ABX780</strong></td></tr><tr><td><code>precio_unitario_sin_iva</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico positivo con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></td></tr><tr><td><code>alicuota</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td><p>Indica la alícuota de IVA con la que grava ese producto. Valores Permitidos:</p><p><strong>27, 21 , 10.5 , 0 , -1 ( para exento), -2 (no gravados)</strong><br><strong>Ejemplo: 10.5</strong></p></td></tr><tr><td><code>unidad_medida</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico que indica la unidad de medida, según<a href="/parametros/tablas-de-referencia#productos-unidades-de-medida-afip"> tabla de referencia Unidades de Medida(**).</a><br><strong>Ejemplo: 7</strong></td></tr><tr><td><code>actualiza_precio</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Indica si se actualiza el precio del producto y sus datos adicionales (como ser la unidad de medida, código, unidades por bulto y otros datos adicionales), tomando como valor de referencia,la información enviada en el comprobante. Campo Alfabético, de 1 carácter. Valores permitidos: S (si) N (no). <strong>Ejemplo: S</strong></td></tr><tr><td><code>impuestos_internos_alicuota</code></td><td align="center">OPCIONAL</td><td>La alícuota que se cobra en concepto de impuestos internos para éste producto. Se permite una única alícuota por comprobante. Campo numérico positivo, con 2 decimales. ej: 10.5</td></tr><tr><td>rg5329</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td><p>Este campo te permite indicar si tu producto percibe la percepción IVA RG5329.</p><p>Valores posibles: "S" o "N".</p><p>Si envias el valor en "S", debes enviar el campo "actualiza_precio" tambien en "S".</p><p>Conocé cuando aplicar la RG5329 <a href="/faqs-or-rg5329">desde aquí</a></p></td></tr></tbody></table>

### Estructura del bloque "Comprobantes Asociados"

Los comprobantes asociados son requeridos a la hora de emitir una Nota de crédito o nota de débito. Encontrá la estructura e información de éste bloque desde la sección: [Notas de crédito/Notas de débito](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito)

### Estructura del bloque: "tributos"&#x20;

Cuando debas enviar percepciones de IVA o Ingresos Brutos (IIBB), incluye un array con la siguiente estructura dentro del bloque "comprobante". El límite es de 26 percepciones por comprobante.

Ejemplo:&#x20;

<pre class="language-json"><code class="lang-json">		 
<strong> "tributos": [	
</strong>			{
				"tipo" : 7,
				"regimen": 22,
				"base_imponible": 2000,
				"alicuota": 20,
				"total": 400				
			}, 		
			{
				"tipo" : 6,
				"regimen": 3,
				"base_imponible": 1000,
				"alicuota": 3,
				"total": 30
			}, 		
			{
				"tipo" : 6,
				"regimen": 3,
				"base_imponible": 1000,
				"alicuota": 1.5,
				"total": 15	
			},
			{
				"tipo" : 6,
				"regimen": 1,
				"base_imponible": 1000,
				"alicuota": 10,
				"total": 100
			}
		],  
</code></pre>

#### Información de los campos a enviar dentro de cada "tributo":

<table><thead><tr><th width="248">nombre del campo</th><th width="133.66666666666669">REQUERIDO</th><th>Valores esperados</th></tr></thead><tbody><tr><td>tipo</td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico, según tabla de referencia <a data-mention href="/parametros/tablas-de-referencia#bloque-tributos-greater-than-tipos-de-percepcion-a-aplicar">Tablas de referencia</a></td></tr><tr><td>regimen</td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico, según tabla de referencia: <a data-mention href="/parametros/tablas-de-referencia#bloque-tributos-greater-than-regimen-de-percepcion">Tablas de referencia</a></td></tr><tr><td>base_imponible</td><td><mark style="color:purple;">REQUERIDO</mark></td><td> Campo numérico positivo con hasta 2 decimales, donde se indica la base imponible sobre la cual se aplica la percepción.</td></tr><tr><td>alicuota</td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico con hasta 2 decimales, donde se indica la alícuota de dicha percepción</td></tr><tr><td>total</td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico positivo de hasta 2 decimales, con el importe total de la percepción a aplicar.</td></tr></tbody></table>

### Estructura de "RG Especiales"&#x20;

Si la empresa, opera bajo alguna RG particular, se deberá enviar un array con los datos adicionales, según se especifican en la [tabla de Datos adicionales para RG Especiales](/parametros/tablas-de-referencia#datos-opcionales-para-rg-especiales).

Ten en cuenta que solo podrás aplicar a un solo [regimen](/parametros/tablas-de-referencia#datos-opcionales-para-rg-especiales) , por cada comprobante que emitas.

{% code title="JSON" %}

```
comprobante: {
   .... 
   "rg_especiales":   
  {   "regimen" : "RG 4004-E",
      "datos"  : 
               [{
                   "id"      :    18,
                   "valor"  :    "PRUEBA "
                },
                {
                  "id"      :    19,
                 "valor"  :    "PRUEBA (2) "
                 }]
   } 
 }
```

{% endcode %}

#### Datos a tener en cuenta:

{% hint style="info" %}

* TusFacturasAPP no realiza validaciones sobre éstos campos. Todas las validaciones son realizadas por la propia AFIP en caso que corresponda.
* Si alguno de los items enviados posee un valor vacio, éste item no será procesado.
  {% endhint %}

#### Información de los campos a enviar en el array de "datos":

<table data-header-hidden><thead><tr><th width="214"></th><th width="151.66666666666669">REQUERIDO</th><th></th></tr></thead><tbody><tr><td><code>id</code></td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo númerico. Valores esperados según Tabla de referencia: <a href="/parametros/tablas-de-referencia#regimenes-posibles-para-el-bloque-rg_especiales"> Datos Opcionales para RG Especiales</a></td></tr><tr><td><code>valor</code></td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico.</td></tr></tbody></table>

### Estructura de "pagos"    <a href="#estructuradepagos" id="estructuradepagos"></a>

Si quisieras reflejar junto al envío del comprobante, el pago parcial o total del mismo, debes enviar un bloque, dentro del comprobante, llamado "**pagos**" con la estructura como se detalla a continuación. Dado que la plataforma gestiona la contabilidad en las cuentas corrientes en pesos, el importe que envies debe corresponder al total de tu comprobante en pesos argentinos.

**Éste bloque es opcional.**

Los pagos que informes, se usan solo para la gestión interna de nuestra plataforma y tu cliente no lo verá reflejado en el PDF del comprobante que emitiste, ya que el único objetivo que tiene éste bloque es nutrir la cuenta corriente de tu cliente, con el pago realizado.

#### Datos a tener en cuenta:

{% hint style="info" %}

* **NO** podrás enviar los siguientes medios de pago: cheques y detalle de retenciones.
* Se realizará una validación del total que se indique, contra la sumatoria de los medios de pago detallados, previo al guardado del comprobante.
* El total de los pagos **NO** debe superar el importe total del comprobante, pero si puede ser inferior, para indicar que el comprobante recibió un pago parcial.
  {% endhint %}

#### Información de los campos que componen el **bloque "pagos"**

<table><thead><tr><th>Nombre del campo</th><th width="141.66666666666669" align="center">REQUERIDO</th><th>Detalle</th></tr></thead><tbody><tr><td>formas_pago</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>array con multiples items, según estructura que se detalla a continuación</td></tr><tr><td>total</td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico positivo con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></td></tr></tbody></table>

#### Información de los campos que componen el **array de  "formas\_pago"**

| Nombre del campo |                   Requerido                  | Detalle                                                                                                                                                                                 |
| ---------------- | :------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| descripcion      | <mark style="color:purple;">REQUERIDO</mark> | El nombre del medio de pago elegido para cancelar el comprobante. 255 caracteres max. En caso que el medio de pago, no exista en nuestra plataforma, será dado de alta automáticamente. |
| importe          | <mark style="color:purple;">REQUERIDO</mark> | <p>Campo numérico positivo con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></p>                                                                       |

#### Ejemplo del JSON a enviar.

{% code title="JSON" %}

```
comprobante: {
   .... 
   "pagos" : 
   {
	"formas_pago" : [ 
			{"descripcion" : "VISA DB", "importe" : 0.6},
			{"descripcion" : "MercadoPago", "importe" : 50}
			], 
	"total": 50.6
   }, 
 }
```

{% endcode %}

### Estructura de "tags"

Si quisieras enviar tags para agregar a tus comprobantes, a modo de etiqueta informativa, debes enviar un array con el nombre de cada una de éstas.

Cada tag, debe ser un campo alfanumérico de hasta 255 caracteres y puedes enviar hasta 50 tags por comprobante.

#### Ejemplo del JSON a enviar.

{% code title="JSON" %}

```
comprobante: {
   .... 
   "tags" :  [ "etiqueta1", "etiqueta2"],   
 }
```

{% endcode %}

### Estructura de "datos\_informativos"

Dentro de este bloque deberá enviarse según corresponda, la información requerida por AFIP/ARCA en carácter informativo. Éstos datos no tienen ninguna relevancia dentro de la gestión de TusFacturasAPP.

#### Ejemplo del JSON a enviar.

{% code title="JSON" %}

```
comprobante: {
   .... 
   "datos_informativos" :  {
         "paga_misma_moneda": "N"
      } ,   
 }
```

{% endcode %}

#### Información de los campos que componen el **bloque "datos\_informativos"**

<table><thead><tr><th>Nombre del campo</th><th align="center">Requerido</th><th>Detalle</th></tr></thead><tbody><tr><td><pre><code>paga_misma_moneda
</code></pre></td><td align="center">OPCIONAL</td><td><p>Éste dato entra en vigencia el 15/04/2025 según la RG5616/2024 y deberá enviarse "N" para indicar "No informa" o "S" para indicar "Si". </p><p>En caso de enviarse con el valor "S", la moneda enviada debe ser diferente al Peso Argentino y la cotización debe ser la oficial provista por AFIP/ARCA desde <a href="/consultas-varias-a-servicios-afip-arca/cotizacion-monedas-afip">éste método</a></p></td></tr></tbody></table>

### 💡 Soporte y Recursos

¿Tenes preguntas sobre la API? Visita nuestro Centro de Ayuda en [ayuda.tusfacturas.app](https://ayuda.tusfacturas.app) para acceder a guías paso a paso y solución de problemas o escribnos a <api@tusfacturas.app>


# Facturación instantánea e individual

TusFacturasAPP: Solución SaaS líder en facturación electrónica para empresas. Integra nuestra API de facturación AFIP y emití comprobantes desde tu plataforma.

### ⚡ ¿Qué es la API de facturación individual e instantánea?

La **API de facturación electrónica instantánea de TusFacturasAPP** te permite **emitir comprobantes fiscales válidos ante AFIP/ARCA en tiempo real**, de forma individual. Es ideal para integrar fácilmente la facturación electrónica a tu sistema actual, cumpliendo con las normativas fiscales vigentes en Argentina.

### ¿Qué podes hacer con la API para facturación AFIP?

Integra fácil y rápido la facturación electrónica ARCA en tu software. Emití comprobantes fiscales válidos desde tu software y obtene respuestas inmediatas desde ARCA.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="SDK AFIP. TusFacturasAPP API Factura Electronica AFIP. "><figcaption></figcaption></figure>

### ¿Cómo empiezo?

Te sugerimos revisar la guia de [¿Cómo empiezo?](/como-empiezo) . Una vez configurada tu cuenta y creado tu CUIT/Punto de venta (PDV) en TusFacturasAPP, podrás comenzar a emitir facturas electrónicas AFIP Argentina válidas.&#x20;

### Características de la facturación individual e instantánea

Esta modalidad se caracteriza por brindar una **respuesta inmediata del servicio de AFIP**, permitiéndote generar facturas, notas de crédito, notas de débito y otros tipos de comprobantes sin demoras innecesarias.

> 📌 **Importante:** La respuesta inmediata depende directamente del estado de los servidores de AFIP/ARCA. En momentos de alta carga o interrupciones, el proceso puede tardar hasta **1 minuto y 30 segundos** o más. Nuestro sistema de facturación electrónica cuenta con mecanismos robustos de manejo de errores que te notificarán oportunamente cualquier inconveniente con los servidores de la AFIP. De esta manera, podrás tomar las medidas necesarias y evitar demoras o interrupciones en tus procesos de facturación.
>
> Te sugerimos utilizar siempre que puedas, el método de [facturación asincrónico](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1) para evitar éstos inconvenientes.

### 🔍 ¿Qué ventajas ofrece este método?

* ✅ Emisión inmediata de comprobantes válidos ante AFIP/ARCA.
* ✅ Integración directa con tus sistemas o plataformas.
* ✅ Ideal para puntos de venta, ecommerce o sistemas que requieren respuesta en tiempo real.
* ✅ Compatible con todos los tipos de comprobantes: facturas, NC, ND, remitos, presupuestos, pedidos, etc.

### ⚠️ Consideraciones clave sobre errores y estabilidad

Los servicios de AFIP/ARCA pueden presentar **intermitencias frecuentes**. Por eso, **TusFacturasAPP incluye un sistema robusto de manejo de errores**, que te notifica en caso de fallas o demoras del servicio oficial.

* 🔔 Si la respuesta contiene errores, recibirás un campo `"error": "S"` y una lista detallada en `"errores"`, para facilitar el diagnóstico.
* 🧩 Si el comprobante se genera correctamente, recibirás toda la información fiscal junto con los enlaces al archivo PDF.

> 🛑 **Recomendación:** Si tu aplicación requiere máxima estabilidad, considerá usar la modalidad **asincrónica**, que coloca los comprobantes en una cola de procesamiento automática. Esto ayuda a evitar interrupciones causadas por caídas en los servidores de AFIP.

### 🚀 ¿Cómo crear una venta instantánea?

Consultá nuestra [guía completa 👉 **“Referencia API AFIP ARCA”**](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca), donde encontrarás:

* Especificaciones técnicas
* Campos requeridos para armar el request
* [Ejemplos de código](/web-services-afip-api-arca) listos para usar
* Buenas prácticas de integración y manejo de errores

> Con nuestra documentación clara y ejemplos reales, **la integración de la facturación electrónica en tu software será rápida, sencilla y confiable**.

### 📌 Endpoint para ventas individuales e instantáneas:

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`nuevo`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.
{% endhint %}

Charset: UTF-8 / JSON&#x20;

#### Body

| Name        | Type   | Description                                                                                                                                                                           |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| usertoken   | string | Tus credenciales de acceso                                                                                                                                                            |
| apitoken    | string | Tus credenciales de acceso                                                                                                                                                            |
| apikey      | string | Tus credenciales de acceso                                                                                                                                                            |
| comprobante | object | Estructura de "comprobante" según se informa en la [referencia API](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-bloque-comprobante)      |
| cliente     | object | Estructura de "Cliente", según se informa en la [referencia API](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#estructura-del-bloque-cliente-y-proveedor) |

### ¿Qué te retorna la llamada a la API de facturación AFIP/ARCA en la modalidad individual e instantánea?

#### &#x20;:white\_check\_mark: Cuando el request resultó exitoso:

Cuando un comprobante se emite correctamente en modalidad individual e instantánea, recibirás:

```json
{
    "error":     "N",
     "errores": [ ""],    
     "rta":      "El comprobante NOTA DE DEBITO B 0002-00000006 (MI CUIT) se ha guardado correctamente",    
     "cae":      "65301278726386 ",
     "requiere_fec":   "NO ",    
     "vencimiento_cae":"07\/08\/2015",    
     "vencimiento_pago":"27\/08\/2015",    
     "comprobante_pdf_url": "https://www.dominio.com/url",
     "comprobante_ticket_url": "https://www.dominio.com/url",
     "afip_qr" : "https://www.afip.gob.ar/fe/qr/?p=eyJ2ZXIiOjEsImZlY2hhIjoiMjAyMC0xMS0xNSIsImN1aXQiOiIyNzI4NTA1MTQ2NiIsInB0b1Z0YSI6IjAwMDAzIiwidGlwb0NtcCI6MTEsIm5yb0NtcCI6IjAwMDAwMjQ5IiwiaW1wb3J0ZSI6IjAwMDAwMDAwMDAwMDEwMCIsIm1vbmVkYSI6IlBFUyIsImN0eiI6IjAwMDAwMDAwMDAwMDEwMDAwMDAiLCJ0aXBvRG9jUmVjIjo5OSwibnJvRG9jUmVjIjoiMCIsInRpcG9Db2RBdXQiOiJFIiwiY29kQXV0IjoiNzA0NjY4OTk1OTcwOTEifQ== "
     "afip_codigo_barras" : "12121212121006000300000000000000201811052 ",
     "envio_x_mail": "S",
     "external_reference":  "ABC123",
     "comprobante_nro": "0000123",
     "comprobante_tipo": "NOTA DE DEBITO B",
        "micrositios": {
			"cliente": "url-del-micrositio",
			"descarga":"url-del-micrositio"
		     },
     "envio_x_mail_direcciones":"direccion1@sudominio.com,direccion2@sudominio.com"
  }  
```

{% hint style="info" %}
**Importante:** La URL de descarga del PDF es temporal, por lo que es esencial que descargues y guardes los archivos generados (PDF en hoja A4/ticket para papel de 80mm), ya que si tu cuenta o suscripción vence, **no podrás volver a acceder a esos documentos** desde la API.&#x20;
{% endhint %}

#### :octagonal\_sign: Response con error

En caso de detectar error, la variable "error" contendrá una "S" y "errores" una lista con todos los errores encontrados.

{% hint style="warning" %}
Cuando un comprobante devuelve error (debido a microcortes o latencia en los servicios de ARCA/AFIP), es posible de que el comprobante se haya procesado correctamente en el organismo fiscal a pesar de la falla reportada hacia TusFacturasAPP.

Para evitar bloqueos en la facturación y garantizar la recuperación del CAE, el flujo de reintento debe cumplir con la siguiente regla estricta:

> Regla de reintento secuencial: Todo comprobante rechazado o con error debe enviarse a reprocesar exactamente en el mismo orden cronológico/secuencial en el que fue emitido originalmente.
> {% endhint %}

```json
{
  "error": "S",
  "errores": [
   "El tipo de documento enviado no es valido",
    "Para la condicion de IVA seleccionada no se permite realizar comprobantes de tipo B."
  ],
  "external_reference": "ABC123",
  "error_cod": [],
  "error_details": [
    {
      "code": "TFC-8004",
      "text": "Para la condicion de IVA seleccionada no se permite realizar comprobantes de tipo B."
    }
  ]
}
```

### :red\_circle: Mantenimientos programados

En ocasiones, nuestro equipo técnico realiza tareas de mantenimiento programado que requieren suspender temporalmente la operatoria de la API. Durante ese período, las solicitudes devolverán una respuesta JSON como la siguiente:

```json
{
	"error": "S",
	"mantenimiento": 1,
	"mantenimiento_hasta": "26/07/2026 05:25",
	"errores": [
		"Estaremos realizando tareas de mantenimiento hasta las 05:25"
	]
}
```

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).

***

[TusFacturasAPP](https://www.tusfacturas.app) es un proveedor [SaaS](https://www.tusfacturas.app/saas-facturacion-b2b-argentina.html) líder de servicios de [facturación electrónica en Argentina](https://www.tusfacturas.app/factura-electronica-afip.html), que permite a empresas de todos los tamaños emitir comprobantes fiscales válidos de manera rápida, segura y cumpliendo con todas las regulaciones de la AFIP.


# Facturación asincrónica e  individual

TusFacturasAPP: La solución SaaS líder para automatizar tu facturación electrónica. Integración API AFIP/ARCA asincrónica.

### ⚡ ¿Qué es la API de facturación individual y asincrónica? <a href="#que-es-la-api-de-facturacion-individual-e-instantanea" id="que-es-la-api-de-facturacion-individual-e-instantanea"></a>

La **API de ARCA para facturación electrónica individual y asincrónica de TusFacturasAPP** te permite **emitir comprobantes fiscales válidos ante ARCA**. Es ideal para grandes volúmenes de facturación o cuándo el funcionamiento de tu plataforma no dependa del estado en tiempo real  de los servicios de ARCA. Integra fácil la facturación electrónica de AFIP/ARCA a tu sistema, cumpliendo con las normativas fiscales vigentes en Argentina.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="SDK AFIP. TusFacturasAPP API Factura Electronica AFIP. AFIP WS"><figcaption></figcaption></figure>

### ¿Cómo empiezo?

Te sugerimos revisar la guia de [¿Cómo empiezo?](/como-empiezo) . Una vez configurada tu cuenta y creado tu CUIT+Punto de venta (PDV) en [TusFacturasAPP](https://www.tusfacturas.app), podrás comenzar a emitir facturas electrónicas AFIP Argentina válidas.&#x20;

### 🛠 ¿Cómo funciona la modalidad Asincrónica de Facturación ARCA/AFIP?

{% stepper %}
{% step %}

### Envias un request a TusFacturasAPP

Tu plataforma debe enviar el [`request`](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca) del comprobante a TusFacturasAPP sin incluir el número de factura. Si es válido, el comprobante se añadirá a una cola de procesamiento.
{% endstep %}

{% step %}

### Se genera la factura, nota de débito o nota de crédito

Si el comprobante se pudo facturar, generamos el PDF y le enviamos a tu cliente un email para que descargue el comprobante.
{% endstep %}

{% step %}

### TusFacturasAPP te envia un hook

A medida que se procesan las ventas, TusFacturasAPP te envía [webhooks](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones) con diferentes eventos:\
\- encolado\
\- emitido\
\- error

Una vez recibido el hook, debes consultar la información del comprobante con una [consulta avanzada por external\_reference](/web-services-afip-api-arca/consulta-avanzada-por-external-reference).
{% endstep %}
{% endstepper %}

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2FikINRLQhxrodm05Sbw4O%2Fapi-tusfacturasapp-como-funciona-arca-webhook.png?alt=media&amp;token=cae9d139-2d37-4e68-880c-d88f68aa6651" alt="TusFacturasAPP: API Rest facturacion ARCA Webhook"><figcaption></figcaption></figure>

### ⚠️ Consideraciones clave

* **La fecha que envíes en el comprobante, determina cuándo será enviado a procesar**, por lo que puedes enviar comprobantes a la cola de procesamiento con fecha posterior a hoy.  Te sugerimos leer el apartado de "[FAQs sobre la cola de procesamiento](/faqs-or-ventas-asincronicas)".&#x20;
* El **campo external\_reference es obligatorio** y debe ser único, sin embargo TusFacturasAPP no realiza ese control.
* **El número del comprobante debe enviarse en 0**, ya que será determinado al momento de emitirse.
* **Tu punto de venta debe tener una URL de webhook configurada**. Ésto se realiza desde nuestra plataforma web, accediendo a Menú > Mi espacio de trabajo > Puntos de venta.
* En la modalidad asincrónica no se permiten comprobantes tipo E.
* Para que tus comprobantes se emitan, **la suscripción de tu espacio de trabajo debe encontrarse vigente, activa y con cupo de facturación disponible** para emitir el comprobante (aunque no se emita hoy).
* Los errores de validación de datos bloquean el envío a la cola y generan una respuesta inmediata (no por webhook).

### ⏱ Tiempos de procesamiento

Los tiempos varían según:\
\- Volumen de ventas programadas\
\- Estado de los servicios de facturación de ARCA\
\- Tipo de comprobante a emitir

#### Capacidades máximas:

* Hasta 100.000 comprobantes A por día, por punto de venta.
* Hasta 150.000 comprobantes B por día, por punto de venta.
* Hasta   14.000 de otros tipos por día, por punto de venta.

Para acelerar la facturación podrías distribuir la carga de facturación en múltiples puntos de venta. Sin embargo, no podemos garantizar que todo el volumen se emita en un solo día, por lo que recomendamos enviar la facturación con antelación para evitar inconvenientes.

### 📄 ¿Qué dato no debe faltar  en un request asincrónico?

El bloque "comprobante" debe incluir el campo "external\_reference". Ejemplo:

```
 "comprobante":{
      "external_reference":"ABC123",
      ...
}
```

### 🚀 ¿Cómo crear una venta asincrónica? <a href="#como-crear-una-venta-instantanea" id="como-crear-una-venta-instantanea"></a>

Consultá nuestra [guía completa 👉 **“Referencia API AFIP ARCA”**](https://developers.tusfacturas.app/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca), donde encontrarás:

* Especificaciones técnicas
* Campos requeridos para armar el request
* [Ejemplos de código](https://developers.tusfacturas.app/web-services-afip-api-arca) listos para usar
* Buenas prácticas de integración y manejo de errores

> Con nuestra documentación clara y ejemplos reales, **la integración de la facturación electrónica en tu software será rápida, sencilla y confiable**.

### 📌 Endpoint para ventas individuales y asincrónicas

{% hint style="info" %} <mark style="color:green;">`POST`</mark>&#x20;

`https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">**`nuevo_encola`**</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.
{% endhint %}

Charset: UTF-8  Formato: JSON&#x20;

#### Body

| Name        | Type   | Description                                                                                                                      |
| ----------- | ------ | -------------------------------------------------------------------------------------------------------------------------------- |
| usertoken   | string | Tus credenciales de acceso                                                                                                       |
| apitoken    | string | Tus credenciales de acceso                                                                                                       |
| apikey      | string | Tus credenciales de acceso                                                                                                       |
| comprobante | object | Estructura de "comprobante" según se informa en el apartado de ["facturacion"](/api-factura-electronica-afip-facturacion-ventas) |
| cliente     | object | Estructura de "Cliente", según se informa en el apartado de ["facturacion"](/api-factura-electronica-afip-facturacion-ventas)    |

### ✅ Respuestas posibles

#### :red\_circle: ERROR  de válidación -  Respuesta: instántanea

Si el request que enviaste posee errores de formato de los campos enviados, pero  cumple con los siguientes requisitos básicos:

* Tu punto de venta tiene una dirección de webhook valida
* Tu request cuenta con el campo "external\_reference"&#x20;

Ese comprobante sera rechazado inmediatamente y recibirás la respuesta junto con el webhook de error.&#x20;

Ejemplo de un request, cuya external\_reference no es válida:

{% code title="JSON" %}

```json
{
	"error": "S",
	"errores": [
		"La external reference enviada, posee caracteres no validos.",
		"Error al crear al cliente . No se podra generar el comprobante. Revise los datos enviados."
	],
	"error_cod": [],
	"error_details": [
		{
			"code": "TFC-8002",
			"text": "La external reference enviada, posee caracteres no validos."
		},
		{
			"code": "TFC-6001",
			"text": "Error al crear al cliente . No se podra generar el comprobante. Revise los datos enviados."
		}
	],
	"external_reference": "1%'703"
}

```

{% endcode %}

Ejemplo del hook que recibirás:

```json
{
	"creado": "24\/05\/2022 16:58:51",
	"evento": "error",
	"recurso": "facturacion",
	"external_reference": "1%'703",
	"intento": 1,
	"msg": ["La external reference enviada, posee caracteres no validos.", "Error al crear al cliente . No se podra generar el comprobante. Revise los datos enviados."],
	"hook_id": "xxxx"
}
```

### :red\_circle: Mantenimientos programados

En ocasiones, nuestro equipo técnico realiza [tareas de mantenimiento programado](/web-services-afip-api-arca/api-factura-electronica-afip-estado-de-los-servicios-afip#consulta-el-estado-de-los-servicios-en-tusfacturasapp-y-el-estado-de-los-servicios-de-arca) que requieren suspender temporalmente la operatoria de la API. Durante ese período, las solicitudes devolverán una respuesta JSON como la siguiente:

```json
{
	"error": "S",
	"mantenimiento": 1,
	"mantenimiento_hasta": "26/07/2026 05:25",
	"errores": [
		"Estaremos realizando tareas de mantenimiento hasta las 05:25"
	]
}
```

#### :green\_circle: ACEPTADO: Cuando el request se ha aceptado para su procesamiento

Una vez que tu solicitud pase la validación inicial, obtendrás una respuesta instantánea del sistema. Adicionalmente, para informarte que la operación ha sido encolada, se enviará un [**webhook**](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones), cuyo funcionamiento se explica a continuación.

Ejemplo de la respuesta instantánea :

```json
{
	"error": "N",
	"errores": [],
	"error_cod": [],
	"error_details": [],
	"external_reference": "ex_rf1",
	"requiere_fec": "NO",
	"observaciones": "",
	"rta": "El comprobante  se ha guardado correctamente ",
	"cae": " ",
	"vencimiento_cae": "01\/01\/2000",
	"vencimiento_pago": "21\/03\/2022",
	"comprobante_nro": "00010-00000000",
	"comprobante_tipo": "FACTURA A",
	"afip_codigo_barras": "",
	"afip_qr": "",
	"envio_x_mail": "N",
	"envio_x_mail_direcciones": "",
	"micrositios": {
			"cliente": "",
			"descarga":""
		     },
	"comprobante_pdf_url": ""
}
```

### 📬 Webhooks de respuesta de la API ARCA/AFIP

Existen 3 tipos de eventos posibles para el recurso de facturación que podes recibir en ésta instancia:  "encolado", "emitido" y "error".&#x20;

Conoce más sobre los [webhooks](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones).

### :purple\_circle:  Hook: "encolado"  &#x20;

|   recurso   |  evento  |
| :---------: | :------: |
| facturacion | encolado |

El hook de "encolado", te informa que el request ha sido aceptado para su procesamiento. Mientras un comprobante se encuentre dentro de la cola de procesamiento, podes realizar las siguientes operaciones:  [Cambiar fecha del comprobante](/web-services-afip-api-arca/cambiar-fecha-a-comprobante-encolado) o [eliminar el comprobante de la cola de procesamiento](/web-services-afip-api-arca/eliminar-comprobantes-encolados).

&#x20;El JSON que recibirás será similar al siguiente ejemplo:

```json
{
	"creado": "18/03/2022 15:58:11",
	"evento": "encolado",
	"recurso": "facturacion",
	"external_reference": "17032",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxxx"
}
```

### &#x20;:green\_circle: Hook: "emitido"&#x20;

|   recurso   |  evento |
| :---------: | :-----: |
| facturacion | emitido |

El hook de "emitido"  te informa que el request ha sido procesado con éxito y se ha emitido el comprobante correctamente.  Una vez recibido éste hook, deberás realizar una [consulta avanzada por external\_reference](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#como-realizar-una-consulta-avanzada-por-external-reference),  para obtener la información de éste comprobante.&#x20;

El JSON que recibirás será similar al siguiente ejemplo:&#x20;

```json
{
	"creado": "18/03/2022 15:58:11",
	"evento": "emitido",
	"recurso": "facturacion",
	"external_reference": "17032",
	"intento": 1,
	"msg": [],
	"hook_id": "xxx"
} 
```

### 🔴 Hook: "error"

|   recurso   | evento |
| :---------: | :----: |
| facturacion |  error |

El hook de "error", te informa que el request ha sido procesado, pero se han detectado errores y no se podrá facturar. Si un comprobante se encuentra procesado con error dentro de la cola de procesamiento, puedes realizar las siguientes operaciones:  [Cambiar fecha del comprobante,](/web-services-afip-api-arca/cambiar-fecha-a-comprobante-encolado) [re-enviar el comprobante a la cola de procesamiento](/web-services-afip-api-arca/reenvio-de-comprobantes-encolados-con-error) o [eliminar el comprobante de la cola de procesamiento](/web-services-afip-api-arca/eliminar-comprobantes-encolados).

{% hint style="warning" %}
Cuando un comprobante devuelve error (debido a microcortes o latencia en los servicios de ARCA/AFIP), es posible de que el comprobante se haya procesado correctamente en el organismo fiscal a pesar de la falla reportada hacia TusFacturasAPP.

Para evitar bloqueos en la facturación y garantizar la recuperación del CAE, el flujo de reintento debe cumplir con la siguiente regla estricta:

> Regla de reintento secuencial: Todo comprobante rechazado o con error debe enviarse a reprocesar exactamente en el mismo orden cronológico/secuencial en el que fue emitido originalmente.
> {% endhint %}

El JSON que recibirás será similar al siguiente ejemplo y a diferencia de los anteriores, obtendrás la lista de errores detectados, dentro del campo "msg".

```json
{
	"creado": "18/03/2022 15:58:11",
	"evento": "error",
	"recurso": "facturacion",
	"external_reference": "17032",
	"intento": 1,
	"msg": [
		" AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.0 - AFIP rechazo la generacion del comprobante Si necesitas ayuda, contactanos en hola@tusfacturas.app", 
		" AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.10036 - El campo FchVtoPago no puede ser anterior a la fecha del comprobante. Si necesitas ayuda, contactanos en hola@tusfacturas.app", 
		"AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1254)", 
		"AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1278)"
	],
	"hook_id": "xxx"
}  
```

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).

***

TusFacturasAPP es una solución SaaS líder en facturación electrónica en Argentina, diseñada para facilitar a empresas y desarrolladores la integración directa con los webservices de facturación de ARCA (ex AFIP) mediante una API robusta, segura y fácil de implementar.


# Facturación instantánea por Lotes

TusFacturasAPP: Solución SaaS líder en facturación electrónica para empresas. Integra nuestra API y emití comprobantes por lote desde tu plataforma.

TusFacturasAPP es un proveedor SaaS líder de servicios de facturación electrónica en Argentina, que permite a empresas de todos los tamaños emitir comprobantes fiscales válidos de manera rápida, segura y cumpliendo con todas las regulaciones de la AFIP.

### ¿Qué podes hacer con la API para facturación AFIP?

Integra fácilmente la facturación electrónica en tu software con la API de TusFacturasAPP. Emite comprobantes fiscales válidos desde tu sistema y obtén respuestas inmediatas de la AFIP.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="TusFacturasAPP API Factura Electronica AFIP. SDK AFIP"><figcaption></figcaption></figure>

### ¿Cómo empiezo?

Te sugerimos revisar la guia de [¿Cómo empiezo?](/como-empiezo) . Una vez configurada tu cuenta y creado tu CUIT+Punto de venta (PDV) en [TusFacturasAPP](https://www.tusfacturas.app), podrás comenzar a emitir facturas electrónicas AFIP Argentina válidas.&#x20;

Comenza ya a cumplir con las regulaciones fiscales y brinda una experiencia de facturación digital eficiente a tus clientes. [Solicita acceso](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html) a nuestra API de facturación electrónica.

### ¿Qué puedo facturar por lote?

Podes enviar a facturar comprobantes de tipo A,B,C y M; ya sean facturas, notas de crédito, notas de débito y hasta facturas-recibos. **No podrás enviar comprobantes de tipo E ni de Factura de crédito electrónica (FEC) en ésta modalidad.**

&#x20;¿No sabes qué [tipo de comprobante debes emitir](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)? Consultalo [desde aquí](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)

Tenés alguna duda del servicio? checkea las [API FAQs](/faqs-or-preguntas-frecuentes), y si no encontrás lo que buscabas, contactanos por los canales de atención que tenemos disponibles en la plataforma web [www.tusfacturas.app](https://www.tusfacturas.app)

### **Facturación instantánea por Lote**

Al utilizar éste servicio, los comprobantes que emitas impactarán de inmediato en nuestra plataforma y obtendrás la respuesta al instante, ya que utiliza el servicio de facturación por lotes de AFIP (siempre y cuando los servicios de dicho organismo se encuentren funcionando).

{% hint style="danger" %}
Es importante que controles los errores, dado que los servicios de AFIP se caen muy seguido y según funcionen sus servicios, la generación de un comprobante puede llegar a demorar hasta 1,30 minutos 😰. Para evitar éste tipo de problemas, te sugerimos utilizar la [facturación por lotes asincrónica (encolada)](/api-factura-electronica-afip-facturacion-ventas/facturacion-asincronica-por-lotes-encolada)
{% endhint %}

Es necesario leer primero, la documentación de "[Facturación](/api-factura-electronica-afip-facturacion-ventas)", para conocer cómo debe componerse cada request que envíes.

### ¿Cómo generar una venta por lotes instantáneos?

Consulta nuestra guía detallada "[Referencia API AFIP ARCA](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca)" para conocer a profundidad el servicio, los requerimientos de cada solicitud y los datos específicos que debes enviar para generar nuevos comprobantes de venta. Nuestra documentación completa y ejemplos de código te facilitarán una integración rápida y eficiente de la facturación electrónica en tu sistema actual.

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`lotes`</mark>

💡 El uso de éste método contabiliza como "n" request en tu suscripción, siendo "n" la cantidad de comprobantes que envíes.
{% endhint %}

Charset: UTF-8

Formato esperado: JSON

#### Request Body

| Name      | Type   | Description                                         |
| --------- | ------ | --------------------------------------------------- |
| requests  | array  | Según estructura de de cada item (detallado abajo). |
| usertoken | string | Tus credenciales de acceso                          |
| apitoken  | string | Tus credenciales de acceso                          |
| apikey    | string | Tus credenciales de acceso                          |

#### Estructura del bloque: "requests"

"requests" debe ser un array que contiene cada uno de los comprobantes a emitir, según se define en la [Referencia a la API de Facturación](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca).

{% hint style="info" %}
**Datos a tener en cuenta**

* **La cantidad máxima de requests (por lote) debe ser de 20**, pero debes tener en cuenta que por cuestiones de seguridad, nuestra plataforma funciona limitando su tiempo de procesamiento y según funcionen los servicios de AFIP, puedes obtener una respuesta de timeout (524). En caso de recibir un 524, ten en cuenta que los comprobantes que enviaste, seguirán siendo procesados en background, pero no recibirás la respuesta.  Te sugerimos utilizar la modalidad de [Facturación encolada por lotes](/api-factura-electronica-afip-facturacion-ventas/facturacion-asincronica-por-lotes-encolada) para evitar éste tipo de errores.
* Todos los requests de ésta llamada, deben ser del **mismo tipo de comprobante**. Ej: todos deben ser FACTURA A
* Los request deben venir **ordenados por número ascendente**, de la misma manera que si los enviarás a procesar uno por uno.
* **No podrás enviar comprobantes de** [**tipo E**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-electronica-afip-exportacion) **ni de** [**Factura de crédito electrónica (FEC)**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce) **en ésta modalidad.**
* Si se detecta al menos un (1) error de validación de datos de nuestro lado, el lote no se mandará a procesar.
  {% endhint %}

La estructura de cada "{objeto\_comprobante}" debe ser acorde a los siguientes tipos de comprobante a generar, incluyendo todos sus campos:&#x20;

[comprobantes de tipo A](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-a-nota-de-debito-a-nota-de-credito-a)

&#x20;[comprobantes de tipo B](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-nota-de-debito-b-nota-de-credito-bb)

[comprobantes de tipo C](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-c-nota-de-debito-c-nota-de-credito-c)[ ](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-electronica-afip-exportacion)

&#x20;[Comprobantes de tipo Factura de crédito electrónica MiPyme](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce)

Revisa nuestra guía  "[API Facturación AFIP](/api-factura-electronica-afip-facturacion-ventas)" para conocer a fondo el servicio y los requerimientos de cada solicitud.

#### Ejemplo de JSON a enviar

{% code title="JSON" %}

```json
{
	"apitoken": "xxxx",
	"apikey": "xxxx",
	"usertoken": "xxxxx",
	"requests": [
			{objeto_comprobante}, 
			{objeto_comprobante}, 
			{objeto_comprobante}
		    ]
}
```

{% endcode %}

#### Ejemplo de como invocarlo desde PHP

{% code title="PHP" %}

```php
// ENVIO REQUEST
$url ="https://www.tusfacturas.app/api/v2/facturacion/lotes" ;

$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_POSTFIELDS,  json_encode($facturacion_json) );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );

$json_rta_curl =  json_decode(  curl_exec($ch) ) ;  
curl_close($ch);
​
```

{% endcode %}

### :green\_circle: **¿Qué te retornaremos en caso de exito?**

Ej: una llamada con 2 requests.

```json

{
"error": "N",
"errores": [],
"response": [
   {
    "error": "N",
    "errores": [],
    "response": [{
        "error": "N",
        "errores": [],
        "cae": "68466696512853 ",
        "comprobante_nro": "00003-00000074",
        "cae_vencimiento": "26\/11\/2018",
        "observaciones": "AFIP genero el comprobante pero lo ha marcado como observado por los siguientes motivos: Observacion: Factura individual, DocTipo: 80, DocNro 22222222222 no se encuentra inscripto en condicion ACTIVA en el impuesto (IVA). [ codigo: 10063 ]. Dichas observaciones no requieren accion de su parte.",
        "envio_x_mail": "N",
        "envio_x_mail_direcciones": "",
        "rta": "El comprobante FACTURA A 00003-00000074 (XXXXXX) se ha guardado correctamente ",
        "vencimiento_cae": "26\/11\/2018",
        "vencimiento_pago": "16\/11\/2018",
        "comprobante_tipo": "FACTURA A",
        "afip_codigo_barras": "111111111110010000368466696512853201811262 ",
        "comprobante_pdf_url": "https:\/\/www.dominio.com\/00000074.pdf"
    }, {
        "error": "N",
        "errores": [],
        "cae": "68466696512866 ",
        "comprobante_nro": "00003-00000075",
        "cae_vencimiento": "26\/11\/2018",
        "observaciones": "AFIP genero el comprobante pero lo ha marcado como observado por los siguientes motivos: Observacion: Factura individual, DocTipo: 80, DocNro 22222222222 no se encuentra inscripto en condicion ACTIVA en el impuesto (IVA). [ codigo: 10063 ]. Dichas observaciones no requieren accion de su parte.",
        "envio_x_mail": "N",
        "envio_x_mail_direcciones": "",
        "rta": "El comprobante FACTURA A 00003-00000075 (XXXXXX) se ha guardado correctamente ",
        "vencimiento_cae": "26\/11\/2018",
        "vencimiento_pago": "16\/11\/2018",
        "comprobante_tipo": "FACTURA A",
        "afip_codigo_barras": "111111111110010000368466696512866201811266 ",
        "comprobante_pdf_url": "https:\/\/www.dominio.com\/00000075.pdf"
    }]
}
```

### :red\_circle: **¿Que te retornaremos en caso de error ?**

#### Error de validación de datos / formato:

Ej: una llamada con 3 requests, donde segundo el comprobante enviado tiene un tipo de comprobante diferente.

{% code title="JSON" %}

```json
{
    "error": "S",
    "errores": ["El comprobante enviado en la fila 1 (comenzando en 0) tiene un tipo de comprobante diferente."]
}
```

{% endcode %}

{% hint style="warning" %}
Cuando un comprobante devuelve error (debido a microcortes o latencia en los servicios de ARCA/AFIP), es posible de que el comprobante se haya procesado correctamente en el organismo fiscal a pesar de la falla reportada hacia TusFacturasAPP.

Para evitar bloqueos en la facturación y garantizar la recuperación del CAE, el flujo de reintento debe cumplir con la siguiente regla estricta:

> Regla de reintento secuencial: Todo comprobante rechazado o con error debe enviarse a reprocesar exactamente en el mismo orden cronológico/secuencial en el que fue emitido originalmente.
> {% endhint %}

### :red\_circle: Mantenimientos programados

En ocasiones, nuestro equipo técnico realiza [tareas de mantenimiento programado](/web-services-afip-api-arca/api-factura-electronica-afip-estado-de-los-servicios-afip#consulta-el-estado-de-los-servicios-en-tusfacturasapp-y-el-estado-de-los-servicios-de-arca) que requieren suspender temporalmente la operatoria de la API. Durante ese período, las solicitudes devolverán una respuesta JSON como la siguiente:

```json
{
	"error": "S",
	"mantenimiento": 1,
	"mantenimiento_hasta": "26/07/2026 05:25",
	"errores": [
		"Estaremos realizando tareas de mantenimiento hasta las 05:25"
	]
}
```

#### :red\_circle: Error de Procesamiento parcial:

{% hint style="warning" %}
En el caso que se envíe a ARCA el lote a procesar y un comprobante venga rechazado, todos los comprobantes subsiguientes del lote, vendrán rechazados. Ésta funcionalidad está determinada por ARCA.
{% endhint %}

{% code title="JSON" %}

```json
 {
    "error": "S",
    "errores": [],
    "response": [{
        "error": "N",
        "errores": [],
        "cae": "68466696512853 ",
        "comprobante_nro": "00003-00000074",
        "cae_vencimiento": "26\/11\/2018",
        "observaciones": "AFIP genero el comprobante pero lo ha marcado como observado por los siguientes motivos: Observacion: Factura individual, DocTipo: 80, DocNro 22222222222 no se encuentra inscripto en condicion ACTIVA en el impuesto (IVA). [ codigo: 10063 ]. Dichas observaciones no requieren accion de su parte.",
        "envio_x_mail": "N",
        "envio_x_mail_direcciones": "",
        "rta": "El comprobante FACTURA A 00003-00000074 (XXXXXX) se ha guardado correctamente ",
        "vencimiento_cae": "26\/11\/2018",
        "vencimiento_pago": "16\/11\/2018",
        "comprobante_tipo": "FACTURA A",
        "afip_codigo_barras": "111111111110010000368466696512853201811262 ",
        "comprobante_pdf_url": "https:\/\/www.dominio.com\/074.pdf",
        "comprobante_ticket_url": "https://www.dominio.com/url",
           "micrositios": {
			"cliente": "url-del-micrositio",
			"descarga":"url-del-micrositio"
		     },
        "external_reference":"AAAA"
    }, {
        "error": "S",
        "errores": [" AFIP Factura electronica, rechazo el comprobante - ERROR: AFIP rechazo la generacion del comprobante Cod: 0", " AFIP Factura electronica, rechazo el comprobante - ERROR: El campo FchServDesde no puede ser posterior al campo FchServHasta. Cod: 10032"],
        "cae": "",
        "comprobante_nro": "00003-00000082",
        "external_reference":"ABC124",
        "cae_vencimiento": "",
        "observaciones": "",
        "envio_x_mail": "",
        "envio_x_mail_direcciones": ""
    }, {
        "error": "S",
        "errores": [" AFIP Factura electronica, rechazo el comprobante - ERROR: AFIP rechazo la generacion del comprobante Cod: 0"],
        "cae": "",
        "comprobante_nro": "00003-00000083",
        "external_reference":"ABC125",
        "cae_vencimiento": "",
        "observaciones": "",
        "envio_x_mail": "",
        "envio_x_mail_direcciones": ""
    }]
}
```

{% endcode %}

## FAQs

#### Si falla una emisión del comprobante de un lote, ¿se realiza un rollback de las emitidas hasta el momento en ese lote? ¿Se emite hasta dicha factura? ¿Saltea el comprobante y continúa con el siguiente?

No se realiza rollback, ya que se utiliza el método por lotes provisto por AFIP. Si un comprobante tiene error, ese comprobante y los siguientes vendrán rechazados.&#x20;

#### ¿Hay una reducción de tiempo considerable al emitir los comprobantes de esta forma?

Si.

#### ¿Puedo enviar la información sin algún criterio de ordenamiento?

No, los comprobantes deben ser enviados bajo el criterio de:

1. Mismo tipo de comprobante
2. Fecha (ascendente)
3. Número de comprobante (ascendente)

### &#x20;¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Facturación asincrónica por Lotes (encolada)

TusFacturasAPP: Solución SaaS líder en facturación electrónica para empresas. Integra nuestra API y emití comprobantes por lote asincrónicos desde tu plataforma.

{% hint style="warning" %}
Éste método dejó de estar disponible desde el 01/03/2026
{% endhint %}

TusFacturasAPP es un proveedor SaaS líder de servicios de facturación electrónica en Argentina, que permite a empresas de todos los tamaños emitir comprobantes fiscales válidos de manera rápida, segura y cumpliendo con todas las regulaciones de la AFIP.

### ¿Qué podes hacer con la API para facturación AFIP?

Integra fácilmente la facturación electrónica en tu software con la API de TusFacturasAPP. Emite comprobantes fiscales válidos desde tu sistema y obtén respuestas inmediatas de la AFIP.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="SDK AFIP. TusFacturasAPP API Factura Electronica AFIP. AFIP WS"><figcaption></figcaption></figure>

### ¿Cómo empiezo?

Te sugerimos revisar la guia de [¿Cómo empiezo?](/como-empiezo) . Una vez configurada tu cuenta y creado tu CUIT+Punto de venta (PDV) en [TusFacturasAPP](https://www.tusfacturas.app), podrás comenzar a emitir facturas electrónicas AFIP Argentina válidas.&#x20;

Comenza ya a cumplir con las regulaciones fiscales y brinda una experiencia de facturación digital eficiente a tus clientes. [Solicita acceso](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html) a nuestra API de facturación electrónica.

### ¿Cómo funciona el modo asincrónico de facturación API por lote?

![](https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fgit-blob-8b711e0ec3a50cc19e13acf2fcb1e9174c8d2c88%2Fimage.png?alt=media)

### ¿Qué puedo facturar con la API por lote asincrónica?

Podes enviar a facturar comprobantes de tipo A,B,C, M y comprobantes de tipo Factura de crédito electrónica MiPyme; ya sean facturas, notas de crédito, notas de débito y hasta facturas-recibos, pero **no podrás enviar comprobantes de tipo E  en ésta modalidad.**

&#x20;¿No sabes qué [tipo de comprobante debes emitir](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)? Consultalo [desde aquí](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir)

Tenés alguna duda del servicio? chequea las [API FAQs](/faqs-or-preguntas-frecuentes), y si no encontrás lo que buscabas, contáctanos por los canales de atención que tenemos disponibles en la plataforma web [www.tusfacturas.app](https://www.tusfacturas.app)

### **Facturación asincrónica por Lote**

Al utilizar éste servicio los comprobantes que envíes quedarán en una cola de procesamiento. A medida que se van procesando, se te enviará un [webhook](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones) para que puedas obtener la información generada. &#x20;

#### Antes de comenzar, te sugerimos leer :&#x20;

1. La documentación de "[API Facturación AFIP](/api-factura-electronica-afip-facturacion-ventas)", para conocer cómo debe componerse el request que envíes
2. La documentación "[Webhooks (notificaciones)](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones)" para conocer cómo funciona el servicio de notificaciones.
3. [FAQs sobre la cola de procesamiento](/faqs-or-ventas-asincronicas)

{% hint style="info" %}

### Sugerencias para grandes volúmenes de facturación

* Distribuí tu facturación en múltiples puntos de venta, de modo que cada uno se procese en paralelo y así optimizarás la emisión de las facturas.
* Cantidad estimada de comprobantes que se emiten por hora, dependiendo del día y horario: entre 600 y 900 por hora y punto de venta.
  {% endhint %}

### ¿A dónde debes enviar el request?

Consulta nuestra guía detallada "[API Facturación AFIP](/api-factura-electronica-afip-facturacion-ventas)" para conocer a profundidad el servicio, los requerimientos de cada solicitud y los datos específicos que debes enviar para generar nuevos comprobantes de venta. Nuestra documentación completa y ejemplos de código te facilitarán una integración rápida y eficiente de la facturación electrónica en tu sistema actual.

{% hint style="info" %} <mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`lotes_encola`</mark>

💡 El uso de éste método contabiliza como "n" request en tu suscripción, dependiendo de la cantidad de comprobantes que envies en cada lote. Ejemplo: Si envias un lote con 5 comprobantes, descontará 5.
{% endhint %}

Charset: UTF-8

Formato esperado: JSON

{% hint style="warning" %}
Máximo: 20 comprobantes por lote.
{% endhint %}

#### Request Body

| Name      | Type   | Description                                                                                                                                |
| --------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------ |
| requests  | array  | Lista de comprobantes a enviar , segun estructura se detalla en  [API Facturacion AFIP](/api-factura-electronica-afip-facturacion-ventas). |
| usertoken | string | Tus credenciales de acceso                                                                                                                 |
| apitoken  | string | Tus credenciales de acceso                                                                                                                 |
| apikey    | string | Tus credenciales de acceso                                                                                                                 |

### Estructura del bloque: "requests"

"requests" debe ser un array (en JSON) que contiene cada uno de los comprobantes a emitir, según se define en la documentación de "[API Facturación AFIP](/api-factura-electronica-afip-facturacion-ventas)".

{% hint style="info" %}

### Datos a tener en cuenta:

* **La cantidad máxima de requests por lote es de 20 comprobantes**, pero debes tener en cuenta que por cuestiones de seguridad, nuestra plataforma funciona limitando su tiempo de procesamiento y  podes llegar a obtener una respuesta de timeout (524). En caso de recibir un 524, los requests que enviaste, seguirán siendo procesados en background, y recibirás un hook con la respuesta de éxito o error de su encolamiento. &#x20;
* Podes enviar en un mismo lote comprobantes de **diferente tipo de comprobante**.   Ej: Podes enviar en el mismo lote Facturas A Y FACTURAS  B.
* **La fecha que envíes en cada comprobante determina cuándo será enviado a procesar**, por lo que puedes enviar comprobantes a la cola de procesamiento con fecha posterior a hoy. &#x20;
* Los request deben venir **con el campo número en cero (0)**.
* **Debes enviar un "external\_reference" de manera obligatoria y debería ser único**. TusFacturasAPP no realiza ésta validación, por lo que si envias +1 request con el mismo external\_reference, tendrás problemas de tu lado para procesar las respuestas.
* **Tu CUIT + PDV, debe tener una** [**dirección de webhook**](/mi-cuenta/agregar-o-modificar-puntos-de-venta) definida, de manera obligatoria, ya que sin ella, no se podrán enviar a procesar los lotes y serán rechazados de manera instantánea.
* **No podrás enviar comprobantes de** [**tipo E**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-electronica-afip-exportacion)  **en ésta modalidad.**
* **Al momento del envío del lote, la suscripción de tu espacio de trabajo debe encontrarse  vigente, activa y con cupo disponible** para emitir la cantidad de comprobante que estás enviando en el lote.
* Si se detecta al menos un (1) error de validación de datos, el lote se procesará parcialmente. De aquellos comprobantes con error obtendrás la respuesta al instante, no por un webhook.

{% endhint %}

La estructura de cada "{objeto\_comprobante}" debe ser acorde a los siguientes tipos de comprobante a generar:&#x20;

[comprobantes de tipo A](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-a-nota-de-debito-a-nota-de-credito-a)

&#x20;[comprobantes de tipo B](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-nota-de-debito-b-nota-de-credito-bb)

[comprobantes de tipo C](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-c-nota-de-debito-c-nota-de-credito-c)[ ](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-electronica-afip-exportacion)

&#x20;[Comprobantes de tipo Factura de crédito electrónica MiPyme](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce)

Revisa nuestra guía  "[API Facturación AFIP](/api-factura-electronica-afip-facturacion-ventas)" para conocer a fondo el servicio y los requerimientos de cada solicitud.

#### Ejemplo de JSON a enviar

{% code title="JSON" %}

```json
{
	"apitoken": "xxxx",
	"apikey": "xxxx",
	"usertoken": "xxxxx",
	"requests": [
			{objeto_comprobante}, 
			{objeto_comprobante}, 
			{objeto_comprobante}
		    ]
}
```

{% endcode %}

### **¿Que te retornaremos ?**

#### :red\_circle: ERROR: Error de validación de los datos enviados en el lote:

Si envias un lote que no cumple con los requisitos básicos, detallados a continuación:&#x20;

* La cantidad de requests supera el máximo permitido.
* No has enviado ningún request a procesar en el bloque de "requests"
* Tu CUIT+PDV no posee una dirección de webhook válida

Ten en cuenta que el lote no se procesará, obtendrás la respuesta al instante y no se te notificará vía webhook.

Ejemplo de una llamada con 300 requests, que superan el máximo establecido:

{% code title="JSON" %}

```json
{
	"error": "S",
	"errores": [
		"Esta enviando 300 requests, cuando el limite permitido. El lote no se procesara.",
		"El lote no se procesara ya que contiene errores en todos sus requests. Se enviaron a procesar: 3 requests y se aceptaron procesar: 0. "
	],
	"error_cod": [],
	"error_details": [],
	"response": []
}
```

{% endcode %}

En cambio, si existen errores en algunos requests, el lote se procesará parcialmente y se te irá notificando vía webhook de su procesamiento.

Ej: un lote con 3 requests, donde el primero no tiene una external\_reference definida, puede arrojarte una respuesta al instante, de éste estilo:

```json
{
	"error": "S",
	"errores": [
		"El lote se procesara parcialmente ya que contiene errores en alguno de sus requests. Se enviaron a procesar: 3 requests y se aceptaron procesar: 2. "
	],
	"error_cod": [],
	"error_details": [],
	"response": [
		{
			"error": "N",
			"errores": [],
			"cae": " ",
			"cae_vencimiento": null,
			"observaciones": "",
			"envio_x_mail": "N",
			"envio_x_mail_direcciones": "",
			"external_reference": "M170_502",
			"rta": "El comprobante  se ha guardado correctamente ",
			"vencimiento_cae": "01\/01\/2000",
			"vencimiento_pago": "13\/05\/2022",
			"comprobante_nro": "00010-00000000",
			"comprobante_tipo": "FACTURA B",
			"afip_codigo_barras": "",
			"afip_qr": "",
			"comprobante_pdf_url": ""
		},
		{
			"error": "N",
			"errores": [],
			"cae": " ",
			"cae_vencimiento": null,
			"observaciones": "",
			"envio_x_mail": "N",
			"envio_x_mail_direcciones": "",
			"external_reference": "M170503",
			"rta": "El comprobante  se ha guardado correctamente ",
			"vencimiento_cae": "01\/01\/2000",
			"vencimiento_pago": "11\/04\/2022",
			"comprobante_nro": "00010-00000000",
			"comprobante_tipo": "FACTURA A",
			"micrositios": {
				"cliente": "url-del-micrositio",
				"descarga":"url-del-micrositio"
		     	},
			"afip_codigo_barras": "",
			"afip_qr": "",
			"comprobante_pdf_url": ""
		},
		{
			"error": "S",
			"errores": [
				"El request enviado en el orden 0 (comenzando en 0) incluye un comprobante con un external_reference no valido.  Este request no se procesara."
			],
			"external_reference": "% 'M17051",
			"rta": "Eror. No se procesara"
		}
	]
}
```

y a su vez, enviarte los siguientes webhooks:

```json
{
	"creado": "24\/05\/2022 16:46:39",
	"evento": "encolado",
	"recurso": "facturacion",
	"external_reference": "M170_502",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxx"
}
```

```
{
	"creado": "24\/05\/2022 16:46:39",
	"evento": "error",
	"recurso": "facturacion",
	"external_reference": "% 'M17051",
	"intento": 1,
	"msg": ["El request enviado en el orden 0 (comenzando en 0) incluye un comprobante con un external_reference no valido.  Este request no se procesara."],
	"hook_id": "xxxx"
}
```

```json
{
	"creado": "24\/05\/2022 16:46:39",
	"evento": "encolado",
	"recurso": "facturacion",
	"external_reference": "M170503",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxx"
}
```

```json
{
	"creado": "24\/05\/2022 16:47:06",
	"evento": "error",
	"recurso": "facturacion",
	"external_reference": "M170503",
	"intento": 1,
	"msg": [" AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.10016 - El numero o fecha del comprobante no se corresponde con el proximo a autorizar. Consultar metodo FECompUltimoAutorizado. Si necesitas ayuda, contactanos", " AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.0 - AFIP rechazo la generacion del comprobante Si necesitas ayuda, contactanos ", "AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1254)", "AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1278)"],
	"hook_id": "xxxx"
}
```

```json
{
	"creado": "24\/05\/2022 16:47:10",
	"evento": "error",
	"recurso": "facturacion",
	"external_reference": "M170_502",
	"intento": 1,
	"msg": [" AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.10016 - El numero o fecha del comprobante no se corresponde con el proximo a autorizar. Consultar metodo FECompUltimoAutorizado. Si necesitas ayuda, contactanos", " AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.0 - AFIP rechazo la generacion del comprobante Si necesitas ayuda, contactanos", "AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1254)", "AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1278)"],
	"hook_id": "xxxx"
}
```

#### :green\_circle: ACEPTADO: Cuando el lote se ha aceptado para su procesamiento:

En caso que no se detecten errores tempranos en la etapa de validación de los datos enviados en el lote, obtendrás la respuesta a cada request enviado, en su mismo orden y luego de enviarte ésta información, recibirás un [webhook](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones) por cada request enviado, para informarte que se ha encolado, como se explica a continuación.

Ejemplo de un lote enviado con 3 requests:

```json
{
	"error": "N",
	"errores": [],
	"response": [
		{
			"error": "N",
			"errores": [],
			"cae": " ",
			"cae_vencimiento": null,
			"observaciones": "",
			"envio_x_mail": "N",
			"envio_x_mail_direcciones": "",
			"external_reference": 17032,
			"rta": "El comprobante  se ha guardado correctamente ",
			"vencimiento_cae": "01\/01\/2000",
			"vencimiento_pago": "16\/03\/2022",
			"comprobante_nro": "00010-00000000",
			"comprobante_tipo": "FACTURA A",
			"afip_codigo_barras": "",
			"micrositios": {
				"cliente": "url-del-micrositio",
				"descarga":"url-del-micrositio"
		     	},
			"afip_qr": "",
			"comprobante_pdf_url": ""
		},
		{
			"error": "N",
			"errores": [],
			"cae": " ",
			"cae_vencimiento": null,
			"observaciones": "",
			"envio_x_mail": "N",
			"envio_x_mail_direcciones": "",
			"external_reference": "1453_01",
			"rta": "El comprobante  se ha guardado correctamente ",
			"vencimiento_cae": "01\/01\/2000",
			"vencimiento_pago": "18\/03\/2022",
			"comprobante_nro": "00010-00000000",
			"comprobante_tipo": "FACTURA B",
			"micrositios": {
				"cliente": "url-del-micrositio",
				"descarga":"url-del-micrositio"
		     	},
			"afip_codigo_barras": "",
			"afip_qr": "",
			"comprobante_pdf_url": ""
		},
		{
			"error": "N",
			"errores": [],
			"cae": " ",
			"cae_vencimiento": null,
			"observaciones": "",
			"envio_x_mail": "N",
			"envio_x_mail_direcciones": "",
			"external_reference": "1453_02",
			"rta": "El comprobante  se ha guardado correctamente ",
			"vencimiento_cae": "01\/01\/2000",
			"vencimiento_pago": "18\/03\/2022",
			"comprobante_nro": "00010-00000000",
			"comprobante_tipo": "FACTURA A",
			"micrositios": {
				"cliente": "url-del-micrositio",
				"descarga":"url-del-micrositio"
		     	},
			"afip_codigo_barras": "",
			"afip_qr": "",
			"comprobante_pdf_url": ""
		}
	]
}
```

## Webhooks de respuesta&#x20;

Existen 3 tipos de evento posible, para el recurso de facturación que podes recibir en ésta instancia:  "encolado", "emitido" y "error". Te sugerimos conocer más sobre los webhooks, en la documentación de [Webhooks (notificaciones)](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones).

### :purple\_circle: Hook de "encolado"  &#x20;

|   recurso   |  evento  |
| :---------: | :------: |
| facturacion | encolado |

El hook de "encolado", te informa que el request ha sido aceptado para su procesamiento. Mientras un comprobante se encuentre dentro de la cola de procesamiento, puedes realizar las siguientes operaciones:  [Cambiar fecha del comprobante](/web-services-afip-api-arca/cambiar-fecha-a-comprobante-encolado) o [eliminar el comprobante de la cola de procesamiento](/web-services-afip-api-arca/eliminar-comprobantes-encolados).

&#x20;El JSON que recibirás será similar al siguiente ejemplo:

```json
{
	"creado": "18/03/2022 15:58:11",
	"evento": "encolado",
	"recurso": "facturacion",
	"external_reference": "17032",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxxx"
}
```

### &#x20;:green\_circle: Hook de "emitido"&#x20;

|   recurso   |  evento |
| :---------: | :-----: |
| facturacion | emitido |

El hook de "emido", te informa que el request ha sido procesado con éxito y se ha emitido el comprobante correctamente.  Una vez recibido éste hook, podrás realizar una [consulta avanzada por external\_reference](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#como-realizar-una-consulta-avanzada-por-external-reference),  para obtener los datos generados de éste comprobante.&#x20;

El JSON que recibirás será similar al siguiente ejemplo:&#x20;

```json
{
	"creado": "18/03/2022 15:58:11",
	"evento": "emitido",
	"recurso": "facturacion",
	"external_reference": "17032",
	"intento": 1,
	"msg": [],
	"hook_id": "xxx"
} 
```

### :red\_circle: Hook de "error"&#x20;

|   recurso   | evento |
| :---------: | :----: |
| facturacion |  error |

El hook de "error", te informa que el request ha sido procesado, pero se han detectado errores y no se podrá facturar. Si un comprobante se encuentra procesado con error dentro de la cola de procesamiento, puedes realizar las siguientes operaciones:  [Cambiar fecha del comprobante,](/web-services-afip-api-arca/cambiar-fecha-a-comprobante-encolado) [re-enviar el comprobante a la cola de procesamiento](/web-services-afip-api-arca/reenvio-de-comprobantes-encolados-con-error) o [eliminar el comprobante de la cola de procesamiento](/web-services-afip-api-arca/eliminar-comprobantes-encolados).

El JSON que recibirás será similar al siguiente ejemplo y a diferencia de los anteriores, obtendrás la lista de errores detectados, dentro del campo "msg".

```json
{
	"creado": "18/03/2022 15:58:11",
	"evento": "error",
	"recurso": "facturacion",
	"external_reference": "17032",
	"intento": 1,
	"msg": [
		" AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.0 - AFIP rechazo la generacion del comprobante Si necesitas ayuda, contactanos en hola@tusfacturas.app", 
		" AFIP Factura electronica, informa el siguiente error: Cod. Error: #6661145.10036 - El campo FchVtoPago no puede ser anterior a la fecha del comprobante. Si necesitas ayuda, contactanos en hola@tusfacturas.app", 
		"AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1254)", 
		"AFIP No devolvio el CAE asociado. (Cod. Error #6661141.S1278)"
	],
	"hook_id": "xxx"
}  
```

&#x20;

### &#x20;¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Webhooks (notificaciones)

Recibi notificaciones instantáneas (hooks) sobre cada evento de facturación, sin retrasos.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2FzBTZGEmxUNPtv2V2HQhN%2F69-4.png?alt=media&amp;token=377865dd-51bd-4cfa-9dcf-2989618e99d1" alt=""><figcaption></figcaption></figure>

### ¿Qué es un WebHook?

Un `webhook` es una notificación que se envía de un servidor a otro, mediante una llamada `HTTP POST` al ocurrir un determinado evento.

TusFacturasAPP te enviará un webhook, siempre que se produzca uno o más eventos registrados en la modalidad de facturación asincrónica encolada,  evitando pérdida de datos siempre que se presente alguna situación.

### Dirección del webhook

La dirección del webhook se configura dentro de la información de tu punto de venta. Para eso deberás ingresar al MENÚ > Mi espacio de trabajo > Puntos de venta.  Entra a editar tu punto de venta y al pie de la pantalla podrás indicar la dirección del webhook.

La dirección que establezcas para el webhook, no debe contener un redirect y debe encontrarse funcionando. Si la misma se encuentra fuera de servicio por más de 24hs será ignorada por completo y no se te notificará nada más, hasta que indiques una nueva URL.

El formato esperado es: *<https://www.dominio.com/script-nombre>*

{% hint style="info" %}
Los webhooks se aplican tanto a ventas asincrónicas como a ventas instantáneas individuales, siempre que se haya informado el **external\_reference**.

En el caso de las ventas instantáneas, el webhook se enviará únicamente una vez que el comprobante haya sido emitido.
{% endhint %}

### **¿Qué te notificaremos vía  webhook?**

Vas a recibir por **POST** un JSON, con la siguiente estructura, para que puedas relacionar mediante el ***external\_reference*** que nos enviaste, al comprobante en cuestión, por tal motivo el *external\_reference* que envíes, debe ser único.

{% code title="JSON" %}

```
{
	"creado": "18/03/2022 15:58:11",
	"evento": "encolado",
	"recurso": "facturacion",
	"external_reference": "17032",
	"intento": 1,
	"msg": [],
	"hook_id": "xxxxx"
} 
```

{% endcode %}

### Headers

{% hint style="success" %}
**Verificá el hook recibido:**

En los headers del request que te enviamos, podrás observar los siguientes headers:

User-Agent: TusFacturasAPP-webhook/1.0

TF-WebhookToken: TU\_TOKEN\_DEL\_PDV

Tene en cuenta que algunos servidores pueden mostrarte el header todo en minúsculas, ej: tf-webhooktoken
{% endhint %}

Podrás obtener el TF-WebhookToken desde la grilla de puntos de venta, ingresando a Menú > Mi espacio de trabajo > CUITs/PDV.&#x20;

### Detalle de tipos de evento posibles por recurso

<table><thead><tr><th align="center">recurso</th><th width="154.8318397469689" align="center">evento</th><th>info</th></tr></thead><tbody><tr><td align="center">facturacion</td><td align="center">encolado</td><td>Éste evento te informa, que el comprobante que enviaste, se encuentra ya en la cola de procesamiento, para ser emitido en la fecha que indicaste.</td></tr><tr><td align="center">facturacion</td><td align="center">emitido</td><td>Éste evento te informa que el comprobante que enviaste, se ha facturado correctamente.</td></tr><tr><td align="center">facturacion</td><td align="center">error</td><td>Éste evento te informa que el comprobante que enviaste, no se ha podido procesar y recibrás dentro del atributo "msg", la lista con los errores detectados</td></tr><tr><td align="center">facturacion</td><td align="center">eliminado</td><td>Éste evento te informa que se ha eliminado un comprobante.</td></tr><tr><td align="center">facturacion</td><td align="center">cambio_fecha</td><td>Éste evento te informa que se ha cambiado la fecha del comprobante.</td></tr><tr><td align="center">test</td><td align="center">test</td><td>Se utilizará éste evento para probar la url de tu webhook</td></tr></tbody></table>

### Reintentos

Cuando recibís una notificación en tu plataforma, TusFacturasAPP espera una respuesta para validar que la recibiste correctamente. Para eso, debes devolver un `HTTP STATUS 200 (OK)`. Si no se envía esta respuesta, se entenderá que no ha recibido la notificación y se realizará un nuevo intento de envío hasta que reciba la respuesta.

|      Evento     | Plazo después del último envío | Tiempo de espera de tu confirmación |
| :-------------: | ------------------------------ | ----------------------------------- |
|      Envío      | -                              | 20 segundos                         |
|  Primer intento | 5 minutos                      | 5 segundos                          |
| Segundo intento | 30 minutos                     | 5 segundos                          |
|  Tercer intento | 3 horas                        | 5 segundos                          |
|  Cuarto intento | 6 horas                        | 5 segundos                          |
|  Quinto intento | 12 horas                       | 5 segundos                          |

#### Ejemplo de reintentos

Hook 0 \_\_\_\_\_\_\_\_\_\_\_\_\_ enviado el 22/03/2022 a las 10:00

Hook 1 \_\_\_\_\_\_\_\_\_\_\_\_\_ será enviado el 22/03/2022 a las 10:05

Hook 2 \_\_\_\_\_\_\_\_\_\_\_\_\_ será enviado el 22/03/2022 a las 10:35

Hook 3 \_\_\_\_\_\_\_\_\_\_\_\_\_ será enviado el 22/03/2022 a las 13:35

Hook 4 \_\_\_\_\_\_\_\_\_\_\_\_\_ será enviado el 22/03/2022 a las 19:35

Hook 5 \_\_\_\_\_\_\_\_\_\_\_\_\_ será enviado el 23/03/2022 a las 07:35

### &#x20;Una vez que recibo el webhook, ¿Qué hago?

Una vez recibido el webhook, deberás  realizar una [consulta avanzada](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada) a TusFacturasAPP para obtener los datos generados de ese comprobante.

&#x20;A continuación te mostramos, la documentación asociada al recurso del que recibís el webhook.

|   Recurso   |                                                                                Documentación                                                                               |
| :---------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| facturacion | [consulta avanzada por external\_reference](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#como-realizar-una-consulta-avanzada-por-external-reference) |
|             |                                                                                                                                                                            |

### Herramientas útiles&#x20;

[Webhook.site](https://webhook.site/) o [Pipedream.com](https://pipedream.com/) son herramientas útiles para probar webhooks rápidamente, ver cómo funcionan e inspeccionar lo que se envía, sin necesidad de codificar.

### Consulta los hooks desde TusFacturasAPP

Ingresando a "Menú"> "API Request" > Hooks podrás consultar los hooks que te enviamos de una determinada external reference en los últimos 3 días.

### FAQs&#x20;

#### ¿Dónde configuro mi webhook?

La dirección del webhook, se configura dentro de tu Punto de venta. Para eso deberás ingresar al MENÚ > Mi espacio de trabajo > Puntos de venta y editando el registro de tu punto de venta, podrás agregarlo. Tené en cuenta que la dirección del hook, debe ser válida.

#### En caso de que la dirección de mi webhook, presente inconvenientes y falle el webhook, ¿se realizan reintentos hasta completar la notificación?

Si. Te sugerimos consultar el apartado de "[reintentos](#reintentos)", de ésta misma página.

**Si envío un lote de comprobantes, ¿Cómo recibo los hooks?**

Siempre vas a recibir los hooks independientes por cada comprobante.

### **Preguntas Frecuentes**

Consulta las [preguntas frecuentes](/faqs-or-ventas-asincronicas) sobre las ventas asincrónicas.

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Errores comunes de ARCA en TusFacturasAPP

Guía de referencia de errores comunes de ARCA en TusFacturasAPP: causas, soluciones rápidas y links a los artículos detallados de cada error.

ARCA puede devolver distintos tipos de errores al momento de facturar. Esta página reúne los más frecuentes, organizados por categoría, con una descripción breve de la causa y el link al artículo detallado con la solución paso a paso.

***

#### **Errores de certificado y enlace con ARCA**

Estos errores ocurren cuando el certificado digital que vincula tu cuenta con ARCA no está vigente, está mal configurado o el proceso de enlace no se completó correctamente.

| Error                                                      | Causa principal                                                                  | Solución                                                                                                                                   |
| ---------------------------------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| No se puede establecer la comunicación con ARCA            | Certificado vencido o mal configurado                                            | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10355215-error-de-afip-no-se-puede-establecer-la-comunicacion-con-arca)           |
| Computador no autorizado                                   | El alias fue creado pero le faltan relaciones en ARCA                            | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10355512-error-de-afip-computador-no-autorizado)                                  |
| Java.null.pointer                                          | El certificado que cargaste en TusFacturasAPP no es compatible con ARCA          | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10358967-error-afip-java-null-pointer)                                            |
| ValidacionDeToken: No apareció CUIT en lista de relaciones | El enlace se realizó con el CUIT de la persona física en lugar del de la empresa | [Ver solución](https://ayuda.tusfacturas.app/es/articles/15507777-error-de-arca-validaciondetoken-no-aparecio-cuit-en-lista-de-relaciones) |
| javax.ejb.EJBTransactionRolledbackException                | Error interno de ARCA, generalmente transitorio                                  | [Ver solución](https://ayuda.tusfacturas.app/es/articles/11542698-error-arca-javax-ejb-ejbtransactionrolledbackexception)                  |

***

#### **Errores de punto de venta**

Ocurren cuando el punto de venta no está correctamente configurado en ARCA o en TusFacturasAPP.

| Error                                                                                    | Causa principal                                                            | Solución                                                                                                                                                                             |
| ---------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| El punto de venta no se encuentra habilitado para el presente WS en AFIP                 | El PDV está configurado para "Comprobantes en línea" y no para webservices | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10355080-el-punto-de-venta-no-se-encuentra-habilitado-para-el-presente-ws-en-afip)                                          |
| No autorizado a emitir comprobantes – el PDV debe estar dado de alta y ser del tipo RECE | El PDV no está creado como RECE en ARCA                                    | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10497778-error-no-autorizado-a-emitir-comprobantes-el-punto-de-venta-informado-debe-estar-dado-de-alta-y-ser-del-tipo-rece) |
| Punto de venta no existe en Webservices ARCA pero lo veo en pantalla                     | El PDV fue creado en TusFacturasAPP pero no en ARCA o fue dado de baja     | [Ver solución](https://ayuda.tusfacturas.app/es/articles/12353006-error-punto-de-venta-no-existe-en-webservices-arca-pero-lo-veo-en-pantalla)                                        |

***

#### **Errores de numeración y fecha**

Ocurren cuando el número o la fecha del comprobante no coincide con lo que ARCA espera recibir.

| Error                                                                                                  | Causa principal                                                                            | Solución                                                                                                                                                                                         |
| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| El número o fecha del comprobante no se corresponde con el último a autorizar (FECompUltimoAutorizado) | La numeración en TusFacturasAPP y en ARCA están desincronizadas                            | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10453580-error-el-numero-o-fecha-del-comprobante-no-se-corresponde-con-el-ultimo-a-autorizar-consulte-el-metodo-fecompultimoautorizado) |
| Campo CbteFch debe estar comprendido en el rango N-10 y N+10                                           | La fecha del comprobante está fuera del rango permitido por ARCA                           | [Ver solución](https://ayuda.tusfacturas.app/es/articles/11463770-error-afip-campo-cbtefch-debe-estar-comprendido-en-el-rango-n-10-y-n-10-siendo-n-la-fecha-de-envio-del-pedido-de-autorizacion) |
| Error de numeración al facturar un abono                                                               | La numeración del abono se desincronizo de ARCA                                            | [Ver solución](https://ayuda.tusfacturas.app/es/articles/11905048-error-de-numeracion-al-facturar-un-abono)                                                                                      |
| El comprobante existe en ARCA pero no en TusFacturasAPP                                                | Caída de ARCA durante la emisión: el comprobante impactó en ARCA pero no en TusFacturasAPP | [Ver solución](https://ayuda.tusfacturas.app/es/articles/15574413-error-el-comprobante-existe-en-arca-pero-no-en-tusfacturasapp)                                                                 |

***

#### **Errores de comprobantes MiPyME (FCE)**

Específicos de Facturas de Crédito Electrónica MiPyME y sus notas de crédito/débito.

| Error                                                                                      | Causa principal                                                               | Solución                                                                                                                                                                                                                                   |
| ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| No es un comprobante válido bajo el Régimen de la Ley N° 27.440                            | El tipo de comprobante o el receptor no corresponde al régimen MiPyME         | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10355169-error-de-afip-no-es-un-comprobante-valido-bajo-el-regimen-de-la-ley-n-27-440)                                                                                            |
| Si informa comprobante MiPyMEs (FCE) del tipo Factura, es obligatorio informar opcional... | Faltan datos obligatorios del régimen FCE (CBU, tipo de transferencia)        | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10355175-error-de-afip-si-informa-comprobante-mipymes-fce-del-tipo-factura-es-obligatorio-informar-opcional)                                                                      |
| Campo CbtesAsoc con tipo inválido (NC/ND MiPyME)                                           | El tipo de comprobante asociado en la nota de crédito/débito no es correcto   | [Ver solución](https://ayuda.tusfacturas.app/es/articles/10546150-notas-de-credito-debito-mipyme-error-campo-cbtesasoc-con-tipo-invalido)                                                                                                  |
| El campo Condición IVA receptor no es válido para la clase de comprobante informado        | La condición IVA del receptor no es compatible con el tipo de nota de crédito | [Ver solución](https://ayuda.tusfacturas.app/es/articles/11498685-error-al-generar-una-nota-de-credito-el-campo-condicion-iva-receptor-no-es-valido-para-la-clase-de-comprobante-informado-consular-metodo-feparamgetcondicionivareceptor) |
| El comprobante asociado no posee una fecha válida                                          | La fecha del comprobante original que se intenta asociar está fuera de rango  | [Ver solución](https://ayuda.tusfacturas.app/es/articles/12801403-error-el-comprobante-asociado-xxxx-no-posee-una-fecha-valida)                                                                                                            |

***

#### **Errores de autorización de CUIT**

Ocurren cuando el CUIT no está habilitado para emitir determinados tipos de comprobantes.

| Error                                                                                                              | Causa principal                                                  | Solución                                                                                                                                                                                        |
| ------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| No autorizado a emitir comprobantes – la CUIT informada no se encuentra autorizada a emitir comprobantes clase "A" | El CUIT no tiene habilitada la emisión de comprobantes A en ARCA | [Ver solución](https://ayuda.tusfacturas.app/es/articles/13902064-error-de-arca-no-autorizado-a-emitir-comprobantes-la-cuit-informada-no-se-encuentra-autorizada-a-emitir-comprobantes-clase-a) |
| Validación de CUIT en ARCA: errores comunes                                                                        | El CUIT del receptor no pasa las validaciones de ARCA            | [Ver solución](https://ayuda.tusfacturas.app/es/articles/13570004-validacion-de-cuit-en-arca-errores-comunes)                                                                                   |

***

#### **Errores en comprobantes asociados**

Ocurren al emitir notas de crédito, notas de débito u otros comprobantes que referencian a uno anterior.

| Error                                                | Causa principal                                                      | Solución                                                                                                                                        |
| ---------------------------------------------------- | -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| Error AFIP/ARCA 10041                                | El comprobante asociado no existe o está mal referenciado            | [Ver solución](https://ayuda.tusfacturas.app/es/articles/11557313-error-afip-arca-10041)                                                        |
| Error ARCA 10041 - No existe el comprobante asociado | El comprobante al que se intenta asociar una NC/ND no figura en ARCA | [Ver solución](https://ayuda.tusfacturas.app/es/articles/11624427-error-arca-10041-no-existe-el-comprobante-asociado)                           |
| FchServDesde no puede ser posterior a FchServHasta   | Las fechas de servicio están invertidas en el comprobante            | [Ver solución](https://ayuda.tusfacturas.app/es/articles/13259511-solucion-al-error-fchservdesde-no-puede-ser-posterior-a-fchservhasta-de-arca) |

***

**¿No encontras tu error en esta lista?**

Contactate con nuestro [equipo de soporte](https://ayuda.tusfacturas.app/es/articles/12656184-conoce-nuestros-canales-oficiales) indicando el mensaje de error completo que ves en pantalla y el tipo de comprobante que intentabas emitir.


# Notas de crédito / Notas de débito

Emití con la API para AFIP de TusFacturas.app notas de crédito y notas de débito A, B, C, M y MiPyme.

TusFacturasAPP es un proveedor SaaS líder de servicios de facturación electrónica en Argentina, que permite a empresas de todos los tamaños emitir comprobantes fiscales válidos de manera rápida, segura y cumpliendo con todas las regulaciones de la AFIP.

### ¿Qué podes hacer con la API para facturación AFIP?

Integra fácilmente la facturación electrónica en tu software con la API de TusFacturasAPP. Emite comprobantes fiscales válidos desde tu sistema y obtén respuestas inmediatas de la AFIP.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="SDK AFIP. TusFacturasAPP API Factura Electronica AFIP. AFIP WS"><figcaption></figcaption></figure>

### ¿Cómo empiezo?

Te sugerimos revisar la guia de [¿Cómo empiezo?](/como-empiezo) . Una vez configurada tu cuenta y creado tu CUIT+Punto de venta (PDV) en [TusFacturasAPP](https://www.tusfacturas.app), podrás comenzar a emitir facturas electrónicas AFIP Argentina válidas.&#x20;

Comenza ya a cumplir con las regulaciones fiscales y brinda una experiencia de facturación digital eficiente a tus clientes. [Solicita acceso](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html) a nuestra API de facturación electrónica.

### ¿Cómo crear una Nota de crédito o una Nota de débit&#x6F;**?**

Consulta nuestra guía detallada "[API Facturación AFIP](/api-factura-electronica-afip-facturacion-ventas)" para conocer a profundidad el servicio, los requerimientos de cada solicitud y los datos específicos que debes enviar para generar nuevos comprobantes de venta. Nuestra documentación completa y ejemplos de código te facilitarán una integración rápida y eficiente de la facturación electrónica en tu sistema actual.

ARCA (ex AFIP) te permite emitir notas de crédito y notas de débito parciales o totales, detallando un comprobante en particular que se anula o hacerlo por períodos desde-hasta, para esto solo debes agregar los bloques: "comprobantes\_asociados" o "comprobantes\_asociados\_periodo" al JSON.

### ¿Qué es una nota de crédito electrónica?

Es un comprobante dígital legalmente equivalente a la [nota de crédito](https://www.tusfacturas.app/como-emitir-notas-de-credito-electronica-afip.html) en formato papel, que la reemplaza en la mayoría de las operaciones de quienes estén obligados u opten por su utilización.&#x20;

### ¿Qué es una nota de débito electrónica?

Es un comprobante dígital legalmente equivalente a la [nota de débito](https://www.tusfacturas.app/como-emitir-notas-de-debito-electronica-afip.html) en formato papel, que la reemplaza en la mayoría de las operaciones de quienes estén obligados u opten por su utilización.

### ¿Cómo emitir Notas de débito/crédito detallando los comprobantes que se anulan?

Para éste tipo de información, es obligatorio enviar el detalle de los comprobantes que se anulan, dentro de un array, en el bloque llamado "**comprobantes\_asociados**", acorde a la estructura que se detalla a continuación para cada comprobante asociado.

{% hint style="info" %}
**Datos a tener en cuenta:**&#x20;

* Solo podras enviar hasta 10 comprobantes asociados por NC/ND
* Los comprobantes que se asocien deben haberse emitido en la misma moneda en que se esta emitiendo la nota de crédito/débito.
* La fecha del comprobante que asocies debe ser menor o igual a la fecha del comprobante que estas queriendo emitir. Tené en cuenta que ARCA realiza validaciones en cuanto a la fecha de los comprobantes que asocies, ya que no se permiten notas de crédito hacia comprobantes con  +15 días. Mas info: [Hasta cuántos días atras puedo facturar](https://ayuda.tusfacturas.app/es/articles/10355161-hasta-cuantos-dias-puedo-facturar-para-atras)
* El servicio de AFIP/ARCA no permite emitir notas de crédito E por período.

**Auto-acreditación en cuenta corriente:**

A partir del 26/03/2022, comienza a funcionar la "auto-acreditación" con las NC, solo si cumple con los siguientes requisitos:

1. Detalla un solo comprobante.&#x20;
2. El importe de la NC es exactamente igual al del comprobante que éstas anulando (factura o nota de débito).
3. La factura o nota de débito que estás anulando, se encuentra impaga al 100%.

La auto-acreditación generará un recibo de cobro, en la cuenta corriente de tu cliente, para anular contablemente esa factura o nota de débito asociada. No se enviará ningún PDF a tu cliente ni se enviará éste recibo de cobro a AIP. Esta información es solo para tu gestión interna dentro de nuestra plataforma.

{% endhint %}

Ejemplo del JSON a enviar:

```json
comprobante: {
   .... 
   ,comprobantes_asociados:[
           {
             "tipo_comprobante"   :    "FACTURA A",
              "punto_venta"  :    "145",
              "numero" : 12313,
              "comprobante_fecha": "07/07/2019",
              "cuit": 111111111     
            } ,
           {
             "tipo_comprobante"   :    "FACTURA A",
              "punto_venta"  :    "146",
              "numero" : 12314,
              "comprobante_fecha": "08/07/2019",
              "cuit": 111111111     
            } ,   
      ] 
  }
```

:warning: **Importante**: La información que debes detallar es referente al comprobante que estas anulando &#x20;

* La fecha que tenia el comprobante que estas anulando
* Que tipo de comprobante estas anulando&#x20;
* El CUIT emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC/ND)
* El punto de venta emisor de ese comprobante que estas anulando (debe coincidir con el CUIT desde donde estas emitiendo la NC/ND)

<table data-header-hidden><thead><tr><th></th><th width="140.66666666666669" align="center">REQUERIDO</th><th></th></tr></thead><tbody><tr><td><code>tipo_comprobante</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfabético. Valores esperados según <a href="/parametros/tablas-de-referencia#tipos-de-comprobantes">tabla de tipos de comprobante.</a></td></tr><tr><td><code>punto_venta</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico entero. Longitud máxima 5 digitos.<br><strong>Ejemplo: 3</strong></td></tr><tr><td><code>numero</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico entero. Longitud máxima 8 digitos. La numeración será validada internamente previa generación del comprobante.<br><strong>Ejemplo: 4567</strong></td></tr><tr><td><code>cuit</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>Campo numérico, sin puntos ni guiones. Es el CUIT de quien emitió el comprobante asociado. Siempre debe ser el mismo de quien está facturando.  Longitud máxima 11 digitos<br><strong>Ejemplo: 30716000000</strong></td></tr><tr><td><code>comprobante_fecha</code></td><td align="center"><mark style="color:purple;">REQUERIDO</mark></td><td>La fecha del comprobante en formato dd/mm/aaaa. El día y el mes deben tener 2 dígitos.</td></tr></tbody></table>

### ¿Cómo emitir notas de crédito/débito anulando "por período"?

{% hint style="info" %}
:rotating\_light: *Te sugerimos siempre consultar con el estudio contable que asesore a tu cliente antes de utilizar éste método para que ellos te asesoren de las posibles implicancias impositivas que puede llevar el uso de ésta herramienta.*
{% endhint %}

A partir del 01/04/2021, ARCA (ex AFIP) habilitó la posibilidad de emitir notas de débito y/o crédito indicando un período desde/hasta en lugar del detalle de comprobantes asociados, para todo comprobante de tipo tradicional (A,B,C). Ésta herramienta no esta disponible para emitir notas de crédito E.

Para utilizar ésta herramienta, **no se debe enviar el bloque de "*****comprobantes asociados"*** **y en su lugar debe enviarse un bloque llamado&#x20;*****"comprobantes\_asociados\_periodo",*** el cual debe tener la siguiente estructura:

```
 comprobante: {
   .... 
   ,comprobantes_asociados_periodo: {
        "fecha_desde"   :    "20/11/2020",
        "fecha_hasta"  :    "25/11/2020"  
    }
 } 
```

Estructura de los campos a enviar

| Nombre del campo | Tipo de dato               | ¿Requerido?                                  |
| ---------------- | -------------------------- | -------------------------------------------- |
| fecha\_desde     | Fecha. Formato: dd/mm/aaaa | <mark style="color:purple;">REQUERIDO</mark> |
| fecha\_hasta     | Fecha. Formato: dd/mm/aaaa | <mark style="color:purple;">REQUERIDO</mark> |
|                  |                            |                                              |

### Ejemplos JSON completos

Podes ver ejemplos de JSON completos desde aquí:

[Ejemplo Nota de crédito A](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-a-nota-de-debito-a-nota-de-credito-a#nota-de-credito-a), detallando comprobante

[Ejemplo Nota de débito A](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-a-nota-de-debito-a-nota-de-credito-a#ejemplo-de-nota-de-debito-a-asociando-periodos), asociando un periodo

[Ejemplo de Nota de crédito MiPyme](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-de-credito-electronica-mipyme-fce#nota-de-credito-electronica-a-mipyme-fce)

[Ejemplo de Nota de crédito E](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-factura-electronica-afip-exportacion#ejemplo-de-nota-de-debito-e)

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Como confeccionar una venta

API AFIP para emitir facturas electrónicas AFIP. Ejemplos de facturas A, B, C, notas de crédito y débito. Confiable desde 2015. ¡Los desarrolladores la aman!

TusFacturasAPP ofrece tres modalidades para emitir comprobantes a través de la API REST ARCA. Elegí la que mejor se adapte a tu arquitectura e integrala en minutos.

**Facturación asincrónica (recomendada)**

El comprobante se encola y se emite en segundo plano. Recibís la confirmación vía webhook una vez procesado. No depende del estado de los servicios de ARCA en el momento del request, por lo que es la opción más robusta para entornos de producción.

👉 [Ver documentación: facturación asincrónica](https://developers.tusfacturas.app/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante-1)

**Facturación instantánea**

El comprobante se emite en el momento y recibís la respuesta de forma inmediata. Depende del estado de los servicios de ARCA: si ARCA no responde, el request será rechazado.

👉 [Ver documentación: facturación instantánea](https://developers.tusfacturas.app/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)

**Facturación por lotes**

Permite enviar múltiples comprobantes en un solo request para procesarlos simultáneamente. Ideal para alto volumen.

👉 [Ver documentación: facturación por lotes](https://developers.tusfacturas.app/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-api-facturacion-por-lotes)

***

**¿Buscas ejemplos de JSON listos para usar?**

Accede a la colección de ejemplos por tipo de comprobante: Facturas A, B, C, E, MiPyME, notas de crédito, notas de débito, facturas en dólares, con bonificaciones y más.

👉 [Ver ejemplos por tipo de comprobante](https://developers.tusfacturas.app/web-services-afip-api-arca)


# Comprobantes "A"

API AFIP para emitir comprobantes A. Ideal para Responsables Inscriptos. Ejemplos incluidos. Confiable desde 2015. ¡Los desarrolladores la aman!

Los comprobantes de tipo "A", como son la Factura A, Nota de débito A , Nota de crédito A,  Factura de crédito MiPyme A, Nota de crédito MiPyme A y Nota de débito MiPyme A, son aquellos que solo pueden ser emitidos por un CUIT cuya condición frente al IVA sea "Responsable inscripto". No sabes en qué momento emitir comprobantes de tipo **A**? Consulta [desde aquí](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir) quienes deben emitir un comprobante A.&#x20;

### ¿Cómo crear comprobantes de tipo "A"?

* Ejemplo de [Factura A](/web-services-afip-api-arca/api-factura-electronica-afip-factura-a)
* Ejemplo de[ Factura A con bonificaciones](/api-factura-electronica-afip-facturacion-ventas/ejemplo-de-factura-con-bonificaciones-descuentos)
* Ejemplo de [Nota de crédito A](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-a)
* Ejemplo de [Nota de débito A](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-debito-a)

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).&#x20;

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Comprobantes "B"

API AFIP para emitir comprobantes B. Ideal para Responsables Inscriptos. Ejemplos incluidos. Confiable desde 2015. ¡Los desarrolladores la aman!

Los comprobantes de tipo "B" (Factura B / Notas de débito B / Nota de crédito B / Factura de crédito MiPyme B / Notas de crédito MiPyme B / Nota de débito MiPyme B), son aquellos que solo pueden ser emitidos por un CUIT cuya condición frente al IVA sea "Responsable inscripto" y se emitan a un consumidor final o un exento en IVA.  No sabes en qué momento emitir comprobantes de tipo **B**? Consulta [desde aquí](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir) quienes deben emitir un comprobante B.&#x20;

### ¿Cómo crear comprobantes de tipo "B"?

* Ejemplo de [Factura B](/web-services-afip-api-arca/api-factura-electronica-afip-factura-b)
* Ejemplo de [Nota de crédito B](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-b)
* Ejemplo de [Nota de débito B](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-debito-a)

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Comprobantes "C"

API AFIP para emitir comprobantes C. Ideal para Monotributistas. Ejemplos incluidos. Confiable desde 2015. ¡Los desarrolladores la aman!

Los comprobantes de tipo "C" (Factura C / Nota de débito C / Nota de crédito C / Factura de crédito MiPyme C / Nota de crédito MiPyme C / Nota de débito MiPyme C), son aquellos que solo pueden ser emitidos por un CUIT cuya [condición frente al IVA](https://www.tusfacturas.app/que-tipo-de-comprobante-debo-emitir-segun-mi-condicion-frente-al-iva.html) sea "Monotributo" o "Exento". No sabes en qué momento emitir comprobantes de tipo **C**? Consultá [desde aquí](/api-factura-electronica-afip-facturacion-ventas/que-tipos-de-comprobante-debo-puedo-emitir) quienes deben emitir un comprobante C.

### ¿Cómo crear comprobantes de tipo "C"?

* Ejemplo de [Factura C](/web-services-afip-api-arca/api-factura-electronica-afip-factura-c)
* Ejemplo de [Nota de crédito C](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-c)
* Ejemplo de [Nota de débito C](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-debito-c)

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Comprobantes "E" de exportación

API de facturación electrónica AFIP para emitir comprobantes de exportación de tipo E: FACTURA E, NOTA DE DÉBITO E, NOTA DE CRÉDITO E.

TusFacturasAPP es un proveedor SaaS líder de servicios de facturación electrónica en Argentina, que permite a empresas de todos los tamaños emitir comprobantes fiscales válidos de manera rápida, segura y cumpliendo con todas las regulaciones de la AFIP.

### ¿Qué podes hacer con la API para facturación AFIP?

Integra fácilmente la facturación electrónica en tu software con la API de TusFacturasAPP. Emite comprobantes fiscales válidos desde tu sistema y obtén respuestas inmediatas de la AFIP.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="SDK AFIP. TusFacturasAPP API Factura Electronica AFIP. AFIP WS"><figcaption></figcaption></figure>

### ¿Cómo empiezo?

Te sugerimos revisar la guia de [¿Cómo empiezo?](/como-empiezo) . Una vez configurada tu cuenta y creado tu CUIT+Punto de venta (PDV) en [TusFacturasAPP](https://www.tusfacturas.app), podrás comenzar a emitir facturas electrónicas AFIP Argentina válidas.&#x20;

Comenza ya a cumplir con las regulaciones fiscales y brinda una experiencia de facturación digital eficiente a tus clientes. [Solicita acceso](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html) a nuestra API de facturación electrónica.A continuación te mostramos la estructura de los datos que se requieren para generar un comprobante de tipo exportación, ya sea NC, ND o FACTURA.

### ¿Qué son las **Facturas Electrónicas de Exportación "E"?**

Las **Facturas Electrónicas de Exportación "E"** son comprobantes digitales que respaldan las ventas de bienes o servicios realizados a clientes en el exterior. Son emitidas de forma obligatoria por empresas argentinas que realizan operaciones de exportación.

### **¿Qué las diferencia de las facturas electrónicas comunes?**

* **Uso específico:** Las Facturas "E" se utilizan exclusivamente para **ventas a compradores no residentes en el país**.
* **Información adicional:** Las Facturas "E" requieren datos específicos relacionados con la exportación, como el **destino de la mercadería**, el **medio de transporte** y los **datos del comprador extranjero**.
* **Exención de IVA:** Las exportaciones de bienes y servicios generalmente están exentas del IVA, lo que se refleja en las Facturas "E".

### **¿Quiénes deben emitir Facturas "E"?**

Están obligadas a emitir Facturas "E" todas las empresas argentinas que realicen:

* **Ventas de bienes al exterior:** Incluye productos físicos, como mercaderías, maquinaria y alimentos.
* **Prestaciones de servicios a no residentes:** Abarca servicios como consultoría, turismo, transporte internacional y otros.

### **¿Cómo emitir Facturas "E"?**

La emisión de Facturas "E" se realiza de forma electrónica a través de **AFIP** o mediante **software homologado por la AFIP, como lo es**[ **TusFacturas.app**](https://www.tusfacturas.app) **y únicamente de manera instantánea.**  [Conocé más desde aquí](https://ayuda.tusfacturas.app/es/articles/11471841-como-crear-una-factura-e-en-tusfacturasapp)**.**

### ¿Cómo crear  Comprobantes de exportacion "E"**?**

Ejemplos de cómo podes crear comprobantes de exportación:

{% content-ref url="/pages/Q7OVYuY8ggqN4kbrIl72" %}
[Factura E](/web-services-afip-api-arca/api-factura-electronica-afip-factura-e)
{% endcontent-ref %}

{% content-ref url="/pages/lC5ybVMBz3EaMowCdPqU" %}
[Nota de crédito E](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-e)
{% endcontent-ref %}

{% content-ref url="/pages/KhtXAHNergg2WSPnikZZ" %}
[Nota de débito E](/web-services-afip-api-arca/nota-de-debito-e)
{% endcontent-ref %}

### **Particularidades de los comprobantes "E":**

Para emitir Comprobantes Electrónicos de Exportación ("E"), solo debes **agregar el bloque "fex" al request** que construyas, con la siguiente estructura :

```json
{ 

  "comprobante": { 
        ..., 
        "fex": {
              "permisos_tiene"      : "S" ,
              "fecha_pago"          : "12/10/2019",
              "tipo_exportacion"    : "1",
              "pais_comprobante_id" : "123",
              "forma_pago_leyenda"  : "Payment via paypal 30 days ",
              "cliente_pais_cuit"   : "50000000016",
              "incoterms_tipo_id"   : "FOB",
              "incoterms_nro"       : "AAAAGGGGGGGGGGGAAA ",
              "permisos"    : [
                                  {
                                      "codigo_despacho"  :  "1234567890123456",
                                       "pais_destino_id" :    "112"
                                  },

                                  {
                                      "codigo_despacho"   :  "1234567890144456",
                                       "pais_destino_id"  :    "123"
                                  },
                                   {
                                      "codigo_despacho"   :    "4444567890123456",
                                       "pais_destino_id"  :    "145"
                                  }
                              ]
               
      }
}
```

### Parámetros para armar el bloque "fex" :

| `tipo_exportacion`       | <p>Campo numérico. Longitud 1 caracter. Valores esperados:<br>1= Exportación definitiva de bienes<br>2= Servicios<br>4= Otros.<br><strong>Ejemplo: 2</strong></p>                                                                                                      |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `permisos_tiene`         | <p>Campo alfabético. Longitud 1 caracter. Indica si se posee documento aduanero de exportación (permiso de embarque). Valores esperados:<br>S= Si posee<br>N= No posee<br>(vacio)= No especifica<br><strong>Ejemplo: S</strong></p>                                    |
| `permisos`               | Solo deberán ser enviados los permisos cuando el campo permisos\_tiene sea igual a "S". Valores a enviar según estructura de datos definida a continuación en ["Permisos de exportacion".](#estructura-de-permisos)                                                     |
| `pais_comprobante_id`    | <p>Campo numérico. Según tabla de referencia <a href="/parametros/consulta-de-paises-afip">Paises AFIP (\*\*)</a><br><strong>Ejemplo: 123</strong></p>                                                                                                                  |
| `forma_pago_leyenda`     | <p>Campo alfanumérico. Descripción adicional de la forma de pago<br><strong>Ejemplo: Favor depositar en cuenta XXXXX</strong></p>                                                                                                                                      |
| `cliente_pais_cuit`      | <p>Campo numérico. Según tabla de referencia <a href="/parametros/consulta-de-cuit-pais-afip">CUIT Pais AFIP (\*\*)</a> salvo que factures a Tierra del Fuego, Argentina y en ese caso debes enviar el CUIT de tu cliente.<br><strong>Ejemplo: 51600004380</strong></p> |
| `incoterms_tipo_id`      | <p>Campo alfabético Incoterms – Cláusula de Venta. Según tabla de referencia <a href="/parametros/consulta-de-incoterms">Incoterms (\*\*)</a><br><strong>Ejemplo: EXW</strong></p>                                                                                     |
| `incoterms_nro`          | <p>Campo alfanumérico - Información complementaria del incoterm<br><strong>Ejemplo: Texto dic.</strong></p>                                                                                                                                                            |
| `comprobantes_asociados` | OPCIONAL. Se deberá informar el/los comprobante/s asociados solamente si el comprobante que se está autorizando corresponde a una Nota de Débito o Nota de Crédito. Según estructura de "[Comprobantes asociados"](#estructura-de-comprobantes-asociados).          |
| fecha\_pago              | Campo fecha - formato esperado: dd/mm/aaaa. Éste campo es obligatorio únicamente para Facturas E, si se envia tipo\_exportacion = 2 o tipo\_exportacion=4                                                                                                               |

#### Estructura de "Permisos "

El bloque de "permisos" es un array con cada uno de los permisos de exportación que dispongas. Cada uno de éstos debe ser enviado acordes a la estructura que se detalla a continuación

```
{
 "codigo_despacho"  :  "1234567890123456",
 "pais_destino_id" :    "112"
}
```

Información de los campos a enviar:Información de los campos a enviar:

| `codigo_despacho` | Campo alfanumérico. Longitud 16 caracteres. Deberá ser un permiso válido, formato 99999AAXX999999A (donde XX podrán ser números o letras).         |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `pais_destino_id` | <p>Campo numérico. Según tabla de referencia <a href="/parametros/consulta-de-paises-afip">Paises AFIP (\*\*)</a><br><strong>Ejemplo: 123</strong></p> |

{% hint style="info" %}
Datos a tener en cuenta para los comprobantes de exportación:&#x20;

Los siguientes campos dentro del json del comprobante deberá enviarlos en cero:&#x20;

* bonificación,&#x20;
* no gravados&#x20;
* impuestos internos.
* El bloque tributos deberá ser enviado vacío.
* Consulta siempre con tu estudio contable y el despachante de aduana la informacion que debes suministrar, ya que no es lo mismo una exportación de servicios que una exportación de bienes.
* Si tenes que facturar a un cliente de Tierra del Fuego, debes indicar  el campo pais\_comprobante\_id = 250   (Tierra del Fuego) y enviar en cliente\_pais\_cuit  el CUIT de tu cliente.
  {% endhint %}

#### Ejemplo de Factura E

{% content-ref url="/pages/Q7OVYuY8ggqN4kbrIl72" %}
[Factura E](/web-services-afip-api-arca/api-factura-electronica-afip-factura-e)
{% endcontent-ref %}

### Notas de crédito E / Notas de débito E

En caso que debas anular una factura de exportación, el comprobante que debes emitir es una Nota de crédito E, para ésto debes agregar dentro del bloque "fex" un bloque adicional según estructura de "[comprobantes\_asociados](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito#ejemplos-json-completos)", que es un array con cada uno de los comprobantes de tipo E que se quieren anular contablemente.&#x20;

Te sugerimos consultar la documentación de [Notas de crédito / Notas de débit](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito)o para conocer como el bloque que debes enviar.

{% hint style="info" %}
Datos a tener en cuenta:

* El servicio de AFIP/ARCA no permite emitir notas de crédito E por período.
* Solo deberán ser enviados los comprobantes asociados, cuando el campo exportacion\_tipo sea igual a "1" .
  {% endhint %}

#### Ejemplo de Notas de crédito E

{% content-ref url="/pages/lC5ybVMBz3EaMowCdPqU" %}
[Nota de crédito E](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-e)
{% endcontent-ref %}

#### Ejemplo de Notas de débito E

{% content-ref url="/pages/KhtXAHNergg2WSPnikZZ" %}
[Nota de débito E](/web-services-afip-api-arca/nota-de-debito-e)
{% endcontent-ref %}

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Comprobantes MiPyme: Factura de Crédito Electrónica FCE

Emití con la API de TusFacturas.app, facturas, notas de débito y notas de crédito A,B y C de los comprobantes tipo Factura de crédito electrónica Mi Pyme.

TusFacturasAPP es un proveedor SaaS líder de servicios de facturación electrónica en Argentina, que permite a empresas de todos los tamaños emitir comprobantes fiscales válidos de manera rápida, segura y cumpliendo con todas las regulaciones de la AFIP.

### ¿Qué podes hacer con la API para facturación AFIP?

Integra fácilmente la facturación electrónica en tu software con la API de TusFacturasAPP. Emite comprobantes fiscales válidos desde tu sistema y obtén respuestas inmediatas de la AFIP.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2Fh8yMvgTc9yqk2nOCc9n9%2F157.webp?alt=media&amp;token=8d60a861-2c34-4bf0-a58e-a0d6817ee5ed" alt="SDK AFIP. TusFacturasAPP API Factura Electronica AFIP. AFIP WS"><figcaption></figcaption></figure>

### ¿Cómo empiezo?

Te sugerimos revisar la guia de [¿Cómo empiezo?](/como-empiezo) . Una vez configurada tu cuenta y creado tu CUIT+Punto de venta (PDV) en [TusFacturasAPP](https://www.tusfacturas.app), podrás comenzar a emitir facturas electrónicas AFIP Argentina válidas.&#x20;

Comenza ya a cumplir con las regulaciones fiscales y brinda una experiencia de facturación digital eficiente a tus clientes. [Solicita acceso](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html) a nuestra API de facturación electrónica.A continuación te mostramos la estructura de los datos que se requieren para generar un comprobante de tipo exportación, ya sea NC, ND o FACTURA.

### ¿Qué son los Comprobantes MiPyme AFIP?

Los Comprobantes MiPyme AFIP son una modalidad de facturación electrónica simplificada, diseñada específicamente para **micro, pequeñas y medianas empresas (MiPyMEs)**.

### **¿Qué diferencia las MiPyme de las facturas electrónicas comunes?**

**Beneficios fiscales:** Las MiPyMEs que emiten Comprobantes MiPyme pueden acceder a ciertos beneficios fiscales, como la **reducción de alícuotas de IVA** y la **exención de retenciones de Ganancias**.

### **¿Quiénes pueden emitir Comprobantes MiPyme?**

Todas las MiPyMEs que se encuentran inscriptas en la AFIP y que cumplan con los requisitos establecidos por el organismo pueden emitir Comprobantes MiPyme.

### **¿Cómo empezar a emitir Comprobantes MiPyme?**

Para empezar a emitir Comprobantes MiPyme, las MiPyMEs deben:

* **Inscribirse en el servicio "Factura Electrónica MiPyme"** en la AFIP.
* **Contratar un proveedor de servicios tecnológicos homologado** por la AFIP, como lo es [TusFacturas.app](https://www.tusfacturas.app)

Ten en cuenta que éste tipo de comprobantes MiPyme,  requieren de un tratamiento adicional gestionado desde la web de AFIP para su autorización/aceptación/anulación. Consultá con tu contador/a el procedimiento indicado en la ley.

Para más información acerca de los comprobantes MiPyme, sugerimos leer la información provista por  AFIP, en el [micrositio de Facturas de crédito MiPyme](https://servicioscf.afip.gob.ar/facturadecreditoelectronica/)

### API AFIP/ARCA para Comprobantes MiPyme&#x20;

**En esta página encontrarás:**

* Los requerimientos específicos para cada tipo de solicitud.
* Los datos exactos que debes enviar para generar nuevos comprobantes de venta.
* Documentación completa y ejemplos de código para una integración rápida y eficiente.

Consultá la descripción completa del servicio [API Facturación AFIP](/api-factura-electronica-afip-facturacion-ventas).

### **Información importante sobre los Comprobantes MiPyme ARCA:**

* **Información adicional obligatoria:** Estos comprobantes requieren información adicional dentro del bloque "rg\_especiales".
* **Aplicabilidad:** Se utilizan solo para ciertos receptores a partir de un monto determinado, que varía según la operación.
* **Determina el tipo de comprobante:** Accede a [nuestra guía](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-or-como-se-si-emitir-una-factura-mipyme-o-una-comun) para saber si debes emitir una factura MiPyme o una factura común.

### ¿Qué debes agregar en el request API para generar un comprobante MiPyme?&#x20;

#### Estructura del bloque "rg\_especiales"

El bloque de "rg\_especiales" debe especificar el [regimen al que pertenece](/parametros/tablas-de-referencia#regimenes-posibles-para-el-bloque-rg_especiales) éste comprobante y enviar información asociada a éste regimen, dentro del bloque "datos".

{% code title="Ejemplo del JSON" %}

```
comprobante: {
   .... 
   "rg_especiales":   
  {   "regimen" : "RG 4004-E",
      "datos"  : 
            [
               {
                   "id"      :    2101,
                   "valor"  :    "12313123132133"
                },
                {
                  "id"      :    27,
                 "valor"  :    "SCA"
                 }
           ]
   } 
 }
```

{% endcode %}

#### Estructura del array "datos"

Cada item del array debe estar compuesto por los siguientes campos:

<table data-header-hidden><thead><tr><th width="214"></th><th width="151.66666666666669">REQUERIDO</th><th></th></tr></thead><tbody><tr><td><code>id</code></td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo númerico, segun se detalla a continuación. </td></tr><tr><td><code>valor</code></td><td><mark style="color:purple;">REQUERIDO</mark></td><td>Campo alfanumérico.</td></tr></tbody></table>

Las opciones posibles de "Id" para enviar dentro del array de "datos" son las siguientes:

<table><thead><tr><th>Descripcion del campo</th><th width="112">Id a enviar</th><th width="145">¿Requerido?</th><th>Detalle</th></tr></thead><tbody><tr><td>CBU emisor</td><td>2101</td><td><mark style="color:purple;"><strong>REQUERIDO</strong></mark> <em>(EXCEPTO NC Y ND)</em></td><td>CBU numérico de 22 caracteres (salvo que envies el ALIAS del CBU)</td></tr><tr><td>Referencia Comercial</td><td>23</td><td>OPCIONAL</td><td>Texto. puede identificar una o varias Referencias Comerciales según corresponda - no repetir el valor.</td></tr><tr><td>CBU Alias del emisor</td><td>2102</td><td>OPCIONAL</td><td>El valor correcto es un ALIAS alfanumerico Longitud de 6 a 20 caracteres, letras de la 'a' a la 'Z', numeros del '0' al '9', caracteres especiales: punto ( . ) o guion medio ( - )</td></tr><tr><td>Anulación</td><td>22</td><td><mark style="color:purple;"><strong>REQUERIDO (SOLO PARA NC Y ND)</strong></mark></td><td>Solo debe ser enviado para las Notas de crédito/debito y el valor esperado es : S o N. Indica si el comprobante fue rechazado por el receptor.</td></tr><tr><td>Referencia de transferencia</td><td>27</td><td><mark style="color:purple;"><strong>REQUERIDO (solo para FACTURAS)</strong></mark></td><td>A partir del 1/4/2021 se deberá enviar éste campo con las siguiente siglas posibles: "SCA" o "ADC" . "SCA se usa para indicar: "TRANSFERENCIA AL SISTEMA DE CIRCULACION ABIERTA" y "ADC" para enviar "AGENTE DE DEPOSITO COLECTIVO"</td></tr><tr><td></td><td></td><td></td><td></td></tr></tbody></table>

{% hint style="info" %}
Datos a tener en cuenta:

* TusFacturasAPP no realiza validaciones sobre éstos campos. Todas las validaciones son realizadas por la propia AFIP en caso que corresponda.
* Si alguno de los items enviados posee un valor vacio, éste item no será procesado.

{% endhint %}

#### Ejemplo de factura de crédito electrónica  MiPyme (FCE)

{% content-ref url="/pages/K1FYM8ROHk86oPXWZH41" %}
[Factura MiPyme A](/web-services-afip-api-arca/api-factura-electronica-afip-factura-mypyme-a)
{% endcontent-ref %}

{% content-ref url="/pages/mvHAdhXI3Yu3vJP0dwGm" %}
[Factura MiPyme B](/web-services-afip-api-arca/api-factura-electronica-afip-factura-mypyme-b)
{% endcontent-ref %}

### Nota de crédito electrónica A MiPyme (FCE)

En caso que debas anular un comprobante, la operación correcta es emitir una Nota de crédito. Sugerimos revisar la documentación de las [Notas de crédito / Notas de débito](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-notas-credito-debito) para más información.

{% hint style="info" %}
**Datos a tener en cuenta:**&#x20;

* Para éstas NC y ND,  **AFIP no requiere el envio del CBU ni ALIAS**
* Debes enviar dentro del bloque de "[rg\_especiales](/api-factura-electronica-afip-facturacion-ventas#estructura-de-rg-especiales)", el dato id #22 con el valor S o N según corresponda. Consultá con tu estudio contable para que te asesoren al respecto.
* Los comprobantes que se asocien deben haberse emitido en la misma moneda en que se esta emitiendo la nota de crédito/débito.
* La fecha del comprobante que asocies debe ser menor o igual a la fecha del comprobante que estas queriendo emitir. Tené en cuenta que AFIP realiza validaciones en cuanto a la fecha de los comprobantes que asocies, ya que no se permiten notas de crédito a comprobantes con  +15 días.
* Ten en cuenta que TusFacturas.app no realiza validaciones con respecto a los datos enviados referente a la RG MiPyme. Las validaciones se realizan exclusivamente del lado de AFIP, previa generación del comprobante.
  {% endhint %}

#### Ejemplos de Notas de crédito MiPyme

{% content-ref url="/pages/pm9B1oVA121r4xTfSiNk" %}
[Nota de crédito MiPyme A](/web-services-afip-api-arca/api-factura-electronica-afip-nota-de-credito-mipyme-a)
{% endcontent-ref %}

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Bonificaciones

API ARCA para emitir comprobantes con bonificaciones. Ideal para pymes que necesitan aplicar descuentos. Ejemplos incluidos. Confiable desde 2015. ¡Los desarrolladores la aman!

En TusFacturasAPP existen **tres formas** de aplicar un descuento o bonificación a un comprobante:&#x20;

1\) A nivel producto, ingresando un porcentaje en el campo "bonificacion\_porcentaje" de cada concepto;&#x20;

2\) A nivel comprobante, ingresando un monto fijo en el campo "bonificacion" del bloque "comprobante";&#x20;

3\) O para casos que requieren mayor flexibilidad (como descuentos no atados a un producto puntual o valores que los campos de bonificación no permiten, por ejemplo importes negativos), enviando un concepto adicional en el bloque "detalle" con el campo "precio\_unitario\_sin\_iva" en negativo. A continuación se detalla cada una de estas opciones con ejemplos prácticos.

### ¿Cómo aplicar bonificaciones a nivel producto?

Para aplicar un descuento a un producto, simplemente ingresa el porcentaje deseado en el campo "bonificacion\_porcentaje" dentro de cada "producto" . Es importante tener en cuenta que las bonificaciones están sujetas al Impuesto al Valor Agregado (IVA).

**Ejemplo:**

Si un producto tiene un precio base de $100 y se aplica una bonificación del 20% con una alícuota de IVA del 21%, el cálculo sería el siguiente:

* Descuento: $100 \* 20% = $20
* Precio con descuento (sin IVA): $100 - $20 = $80
* Precio con descuento (con IVA): $100 - $20 = $80 \* 21%  = $96.80

### 1. Ejemplo de "Factura A" AFIP/ARCA con bonificación a nivel producto

{% content-ref url="/pages/JPK7gBMK7racS51Adll9" %}
[Factura A con bonificaciones](/web-services-afip-api-arca/api-factura-electronica-afip-arca-factura-a-con-bonificacion)
{% endcontent-ref %}

### 2. Ejemplo de "Factura A" AFIP/ARCA con bonificación monetaria a nivel comprobante

Para aplicar un descuento a un comprobante, simplemente ingresa el monto exacto que deseas descontar en el campo "bonificacion" del bloque "comprobante".&#x20;

Es importante tener en cuenta que el Impuesto al Valor Agregado (IVA) se calcula sobre el subtotal luego de aplicar el descuento.

**Ejemplo:**

Si un producto tiene un precio base de $100 y se aplica una bonificación de $20 con una alícuota de IVA del 21%, el cálculo sería el siguiente:

* Precio con descuento (sin IVA): $100 - $20 = $80
* Precio con descuento (con IVA): $100 - $20 = $80 \* 21%  = $96.80

{% content-ref url="/pages/JPK7gBMK7racS51Adll9" %}
[Factura A con bonificaciones](/web-services-afip-api-arca/api-factura-electronica-afip-arca-factura-a-con-bonificacion)
{% endcontent-ref %}

### 3. Ejemplo de concepto con importe unitario negativo

Además de las bonificaciones por producto o por comprobante, podés incluir un concepto adicional dentro del bloque `detalle` con el campo `precio_unitario_sin_iva` en negativo. Esto es útil cuando necesitás restar un importe puntual del total (por ejemplo, un ajuste, una devolución parcial o un descuento que no está asociado a ningún producto específico), ya que los campos `bonificacion` y `bonificacion_porcentaje` **no aceptan valores negativos**.

**Ejemplo:**

```json
// Some code
{
  ....
  "comprobante": {
    ..., 
    "detalle": [
      {
        "cantidad": "1",
        "afecta_stock": "N",
        "bonificacion_porcentaje": 0,
        "producto": {
          "descripcion": "Servicio de consultoría",
          "codigo": "SERV001",
          "lista_precios": "standard",
          "unidad_bulto": 1,
          "alicuota": 21,
          "precio_unitario_sin_iva": 1000
        }
      },
      {
        "cantidad": "1",
        "afecta_stock": "N",
        "bonificacion_porcentaje": 0,
        "producto": {
          "descripcion": "Ajuste / descuento comercial",
          "codigo": "AJUSTE001",
          "lista_precios": "standard",
          "unidad_bulto": 1,
          "alicuota": 21,
          "precio_unitario_sin_iva": -150
        }
      }
    ]
  }
}
```

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Facturas a consumidor final, sin especificar datos

TusFacturasAPP es un software de facturación y un software de gestión  diseñado para empresas que facturen en Argentina. Conoce más de TusFacturasAPP.

Si queres facturar un comprobante **a consumidor final, sin especificar su nombre y DNI**, debes enviar dentro del bloque "cliente" >  campo "tipo" y "número"  de documento, lo siguiente:

Nro de documento = "0"

Tipo de documento = "OTRO"

Podes consultar diariamente el limite establecido por AFIP hasta el cual podrás emitir éste tipo de comprobantes, usando nuestro servicio API:

{% content-ref url="/pages/TiFC9W7sQjsOrXy0R7fV" %}
[Consultar el Tope AFIP/ARCA para Ventas a Consumidor Final](/web-services-afip-api-arca/api-factura-electronica-afip-or-consulta-de-tope-para-ventas-a-consumidor-final)
{% endcontent-ref %}

Es responsabilidad del emisor verificar la concordancia entre el medio de pago y la factura, ya que la AFIP asume que las facturas electrónicas se emiten mediante medios de pago electrónicos. La condición de venta no se transmite a través de los webservices de la AFIP.

### Ejemplo:

{% content-ref url="/pages/DeSwCk9nrxtKNz29xkjI" %}
[Factura B sin especificar datos del comprador](/web-services-afip-api-arca/api-factura-electronica-afip-factura-b-sin-especificar-comprador)
{% endcontent-ref %}

{% hint style="info" %}
Datos a tener en cuenta:

* En nombre y dirección, indicá lo que tu contador/a te recomiende. Según la provincia que selecciones los contadores luego tienen que hacer la declaración de Ingresos Brutos. Desde el lado técnico de la plataforma se requiere un texto.
* Solo podrás facturar "sin indicar el documento del comprador" hasta ciertos montos, ya que AFIP/ARCA actualiza éste dato regularmente. TusFacturasAPP cuenta con un método que podes consultar 1 vez por día que te permite obtener el monto actualizado. [Consultá la documentación: los topes de venta a CF](https://developers.tusfacturas.app/api-factura-electronica-afip-or-consulta-de-tope-para-ventas-a-consumidor-final) &#x20;
  {% endhint %}

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# ¿Factura MiPyme o Factura común?

Conoce como determinas si tenes que emitir una factura MiPyme o una factura A común.

Si el monto de la factura que vas a emitir supera el tope impuesto por AFIP, es probable que debas emitir una factura de crédito electrónica MiPyme.

### Sugerencias para manejarlo desde tu plataforma:

### **1) Controlar el response de las facturas comúnes con error | "requiere\_fec" = "S"**

Si envías una factura A, B o C común y recibis error, verás que dentro del response existe un campo llamado: <mark style="color:purple;">**requiere\_fec**</mark>, si el contenido está en "SI", significa que debes emitirle a tu cliente una fc mipyme. En ese caso,  cambias el tipo de comprobante al mipyme que corresponda según la[ tabla de referencia](/parametros/tablas-de-referencia#tipos-de-comprobantes), y volves a enviar el request.[ Conocé más desde aquí](/api-factura-electronica-afip-facturacion-ventas#como-determinar-si-debo-emitir-un-comprobante-de-tipo-mipyme)<br>

### **2) Usar el servicio de consulta: "Éstoy obligado a emitir una FEC", antes de enviar a facturar**

Usando el método: "[Estoy obligado a emitir una FEC](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-obligado-a-recibir-factura-de-credito-electronica-mipyme)"  obtendrás la respuesta directa desde AFIP en base a la consulta que realices.

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Comprobantes MiPyme: ¿Debo emitirla?

¿Tu cliente debe recibir Factura de Crédito electrónica MiPyme? ¡Consulta fácil y rápido con la API TusFacturas.app!

### ¿Qué son las **facturas MiPyme?**

Las **facturas MiPyME** son un tipo de comprobante electrónico diseñado específicamente para las micro, pequeñas y medianas empresas (MiPyme) en Argentina. Estas facturas cumplen con los requisitos establecidos por la Administración Federal de Ingresos Públicos (AFIP/ARCA) y facilitan la emisión y gestión de comprobantes electrónicos para este sector.

### **¿Para qué sirven las** **facturas MiPyme?**

El objetivo principal es el impulso al financiamiento de las micro, pequeñas y medianas empresas. Su finalidad es desarrollar un mecanismo que mejore las condiciones de financiación de dichas empresas y les permita aumentar su productividad, mediante el cobro anticipado de los créditos y de los documentos por cobrar emitidos a sus clientes y/o deudores, con los que hubieran celebrado una venta de bienes, locación de cosas muebles u obras o prestación de servicios a plazo.

**Características principales:**

* **Obligatoriedad:** La obligatoriedad de emitir facturas MiPyme depende del tipo de operación, el monto y otros factores establecidos por  AFIP/ARCA.
* **Formato electrónico:** Se emiten y reciben de forma electrónica, a través de plataformas habilitadas por la AFIP/ARCA o por proveedores de servicios de facturación electrónica.
* **Información detallada:** Incluyen toda la información necesaria para identificar la operación, los intervinientes y los impuestos aplicables.

**En resumen,** las facturas MiPyme son una herramienta fundamental para las pequeñas y medianas empresas en Argentina, ya que les permiten cumplir con las obligaciones fiscales de manera más eficiente y sencilla.

{% hint style="info" %}
IMPORTANTE: Para poder realizar ésta consulta, deberás tener agregado en tu cuenta AFIP, el servicio de "**Webservice Registro de Facturas de Crédito Electrónica MiPyMEs "** . Te indicamos cómo hacerlo en el [instructivo de integración con AFIP : Paso 6](https://youtu.be/_YSRksd0_A0)
{% endhint %}

### :rocket: ¿Cómo consultar si debes emitir una MiPyme?

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

Ejemplo:

{% content-ref url="/pages/c55ERAkJg4qoQzbtv0sl" %}
[¿Debo emitir una MiPyme?](/web-services-afip-api-arca/debo-emitir-una-mipyme)
{% endcontent-ref %}

#### Parámetros

| Name      | Type   | Description                                                                    |
| --------- | ------ | ------------------------------------------------------------------------------ |
| fecha     | string | La fechad de emisión del comprobante en cuestión. Formato esperado: dd/mm/aaaa |
| cuit      | number | El CUIT de tu cliente. Campo numérico de 11 digitos                            |
| apikey    | number | Tus credenciales de acceso                                                     |
| usertoken | string | Tus credenciales de acceso                                                     |
| apitoken  | string | <p>Tus credenciales de acceso</p><p>\</p>                                      |

#### Ejemplo del JSON de respuesta:

```
En caso de éxito:

{
	"error": "N",
	"errores": [],
	"rta": "",
	"esta_obligado": "S",
	"importe_desde": 100000
}

En caso de detectar errores:

{
	"error": "S",
	"errores": ["El CUIT enviado INF es invalido."],
	"rta": "", 
}
```

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consulta simple de ventas

TusFacturasAPP: Consulta rápida y precisa de comprobantes AFIP. Integra nuestra API en tu sistema y optimiza tus procesos.

La **API ARCA/AFIP de TusFacturasAPP** ofrece dos métodos para consultar comprobantes fiscales emitidos desde tu sistema: el método de **consulta simple** y el de [**consulta avanzada**](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada). Ambos son fundamentales para verificar el estado y obtener los datos de las ventas realizadas.

### 🔸 Consulta simple de ventas

Este método te permite obtener una lista de comprobantes emitidos filtrando por CUIT, punto de venta, fecha, tipo de comprobante u otros parámetros básicos. Es ideal para visualizar un resumen general o hacer auditorías internas de tu facturación electrónica.

Esta función es muy útil para:

* **Verificar el estado de los comprobantes:** Saber si un comprobante fue emitido correctamente, si fue rechazado por la AFIP o si ya fue presentado ante el organismo recaudador.
* **Buscar comprobantes específicos:** Localizar una factura en particular utilizando diferentes criterios de búsqueda, como el número de comprobante, la fecha de emisión, el cliente, etc.
* **Generar reportes:** Obtener información resumida o detallada sobre un conjunto de comprobantes, lo que puede ser útil para tareas de contabilidad o análisis.
* **Integrar con otros sistemas:** Utilizar la información de los comprobantes para alimentar tu sistema o aplicacion, como un ERP o un CRM.

**En resumen,** la consulta de comprobantes es una herramienta esencial para gestionar tu facturación electrónica de manera eficiente y tener un control total sobre tus operaciones.

#### :rocket: Ejemplo de consulta simple

💡 El uso de éste método no contabiliza como un request en tu suscripción

{% content-ref url="/pages/jfNR52T4KyUiMat1vRlB" %}
[Consulta por tipo y número de comprobante](/web-services-afip-api-arca/consulta-simple-tipo-numero)
{% endcontent-ref %}

#### 🛠️ Estructura del request a enviar:

| Name        | Type   | Description                                                             |
| ----------- | ------ | ----------------------------------------------------------------------- |
| comprobante | object | <p>Un objeto según estructura que se detalla a continuación.</p><p></p> |
| apikey      | string | Tus credenciales de acceso.                                             |
| apitoken    | string | Tus Credenciales de acceso.                                             |
| usertoken   | string | Tus Credenciales de acceso.                                             |

#### Estructura a enviar dentro del bloque: "Comprobante"

| `tipo`        | <p>Campo numérico según tabla de referencia de <a href="https://www.tusfacturas.com.ar/api-factura-electronica-afip.html#tabla-comprobantes">Tipos de comprobantes(\*\*\*)</a>.<br><strong>Ejemplo: FACTURA B</strong></p> |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operacion`   | <p>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de venta (V) o de compra (C).<br>Valores Permitidos: <strong>V, C</strong><br><strong>Ejemplo: V</strong></p>                                      |
| `punto_venta` | <p>Campo numérico entero. Longitud máxima 4 digitos.<br><strong>Ejemplo: 3</strong></p>                                                                                                                                    |
| `numero`      | <p>Campo numérico entero. Longitud máxima 8 digitos. La numeración será validada internamente previa generación del comprobante.<br><strong>Ejemplo: 4567</strong></p>                                                     |

### Ejemplo del JSON de respuesta:

La información que obtenés se devuelve estructurada de la misma manera que la enviaste, con el agregado de ciertos campos que se detallan a continuación

```json
{
  "error": "N",
  "errores": [
    ""
  ],
  "rta": "OK",
  "cliente": {
    "documento_tipo": "DNI",
    "documento_nro": "1292963535 ",
    "razon_social": "Pirulo",
    "email": "test@test.com",
    "domicilio": "Av Sta Fe 123"
  },
  "comprobante": {
    "fecha": "28/07/2015",
    "tipo": "NOTA DE DEBITO B",
    "moneda": "PES",
    "idioma": 1,
    "cotizacion": 1,
    "operacion": "V",
    "punto_venta": 2,
    "numero": 6,
    "periodo_facturado_desde": "27/07/2015",
    "periodo_facturado_hasta": "30/07/2015",
    "rubro": "Servicios web",
    "rubro_grupo_contable": "servicios",
    "detalle": [
      {
        "cantidad": 1,
        "producto": {
          "descripcion": "Gomas de borrar",
          "precio_unitario": 100,
          "alicuota": 21,
          "bonificacion": 0,
          "impuestos_internos_alicuota": 0,
          "precio_total": 100
        },
        "bonificacion_porcentaje": 0,
        "leyenda": ""
      }
    ],
    "bonificacion": 10,
    "leyenda_gral": " ",
    "percepciones_iibb": 30,
    "percepciones_iva": 0,
    "tributos": [
      {
        "tipo": 7,
        "tipo_descripcion": "Percepcion de IIBB",
        "regimen": 5,
        "regimen_descripcion": "BUENOS AIRES",
        "base_imponible": 100,
        "alicuota": 10,
        "total": 10
      },
      {
        "tipo": 7,
        "tipo_descripcion": "Percepcion de IIBB",
        "regimen": 6,
        "regimen_descripcion": "CATAMARCA",
        "base_imponible": 100,
        "alicuota": 20,
        "total": 20
      }
    ],
    "exentos": 0,
    "nogravados": 0,
    "impuestos_internos": 0,
    "impuestos_internos_base": 0,
    "impuestos_internos_alicuota": 0,
    "total": 138.9,
    "cae": "65301278726386 ",
    "external_reference": "Lun141",
    "micrositios": {
      "cliente": "url-del-micrositio",
      "descarga": "url-del-micrositio"
    },
    "tags": [
      "etiqueta1",
      "etiqueta2"
    ],
    "ctacte_status": "PAGO PARCIAL",
    "status": "EMITIDO",
    "afip_codigo_barras": "12121212121006000300000000000000201811052 ",
    "afip_observaciones": "Observacion: El credito fiscal discriminado en el presente comprobante solo podra ser computado a efectos del Procedimiento permanente de transicion al Regimen General. [ codigo: 10217 ]. ",
    "afip_qr": "https://www.afip.gob.ar/fe/qr/?p=eyJ2ZXIiOjEsImZlY2hhIjoiMjadadasdasdaAyMS0wNi0wNSIsImN1aXQiOiIyNzI4NTA1MTQ2NiIsInB0b1Z0YSI6IjEwIiwidGlwb0NtcCI6MSwibnJvQ21wIjoiMDAwMDAwNzgiLCJpbXBvcnRlIjoiMDAwMDAwMDAwMzA4NS41MCIsIm1vbmVkYSI6IlBFUyIs ",
    "vencimiento_cae": "07/08/2015",
    "vencimiento_pago": "27/08/2015",
    "comprobante_pdf_url": "https://www.dominio.com/00000006.pdf",
    "comprobante_ticket_url": "https://www.dominio.com/url",
    "abono": "N",
    "comprobantes_asociados_periodos": {
      "fecha_hasta": "31/12/2025",
      "fecha_desde": "29/12/2025"
    }
  }
}
```

{% hint style="info" %}
Asegúrate de descargar y almacenar toda la información y el PDF en tu plataforma. Los enlaces expiran y solo podrás acceder a ellos mientras tu suscripción esté activa.
{% endhint %}

#### Campos devueltos que no forman parte del JSON que vos envias:

<table><thead><tr><th width="198">Nombre del campo</th><th>Info</th></tr></thead><tbody><tr><td>cae</td><td>Campo alfanumérico, con un espacio adicional, devuelto por AFIP, a modo e código de autorización electrónica de la transacción realizada. <mark style="color:$primary;">Solo disponible si tu CUIT se encuentra enlazado con ARCA</mark></td></tr><tr><td>afip_qr</td><td>Campo alfanumérico, conteniendo el texto necesario para formar el QR. <mark style="color:$primary;">Solo disponible si tu CUIT se encuentra enlazado con ARCA</mark></td></tr><tr><td>ctacte_status</td><td>Campo alfanumérico, conteniendo el estado del pago de ese comprobante dentro de la cuenta corriente. Los valores posibles son: PAGADA, IMPAGA , PAGO PARCIAL</td></tr><tr><td>status</td><td>Campo alfanumérico, conteniendo el estado de emisión de ese comprobante . Lo valores les son: "EMITIDO", "APROBADO Y EN COLA. SE EMITE EL dd/mm/aaaa", "EN COLA, ESPERANDO APROBACION", "ENVIADO A PROCESAR - CON ERROR"</td></tr><tr><td>afip_codigo_barras</td><td>Campo alfanumérico, conteniendo el texto necesario para formar el código de barras de AFIP (legacy)</td></tr><tr><td>vencimiento_cae</td><td>Fecha enviada por AFIP al momento de autorizar el comprobante. Formato: dd/mm/aaaa. <mark style="color:$primary;">Solo disponible si tu CUIT se encuentra enlazado con ARCA</mark></td></tr><tr><td>vencimiento_pago</td><td>Fecha que indica la fecha de vencimiento del pago. Éste dato enviado por el cliente, o auto-calculado en base a la condición de pago estipulada en el perfil del cliente. Formato: dd/mm/aaaa</td></tr><tr><td>comprobante_<em>pdf</em>_url</td><td>Campo alfanumérico  al pdf en hoja A4 del comprobante. <mark style="color:$primary;">Éste link es temporal y caduca, por lo que debes descargar el PDF a tu servidor una vez obtenido el archivo.</mark></td></tr><tr><td>micrositios</td><td><p>En este campo se te devolverá la URL del micrositio del cliente y la de url del micrositio de descarga, solo si tu cuenta tiene los micrositios habilitados. Para configurarlo, ingresá a nuestra plataforma web, menú > mi espacio de trabajo > mis micrositios. </p><p><mark style="color:$primary;">La URL del micrositio del cliente es temporal pero no expira.</mark> </p><p><mark style="color:$primary;">La URL del micrositio del cliente no cambia nunca para ese cliente.</mark>  </p></td></tr><tr><td>comprobante_ticket_url</td><td>La url al PDF con el comprobante en formato ticket para papel de 80mm. <mark style="color:$primary;">Éste link es temporal y caduca, por lo que debes descargar el PDF a tu servidor una vez obtenido el archivo.</mark></td></tr><tr><td>afip_observaciones</td><td>Campo alfanumerico con las observaciones que aplico AFIP/ARCA sobre ese comprobante. Es importente que las controles ya que muchas veces aprueban el comprobante pero te informan de ciertos errores en este campo para luego enviarte una comunicación.</td></tr></tbody></table>

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consulta avanzada

Mediante ésta consulta podrás obtener todos los comprobantes enviados, según determinadas condiciones de búsqueda.

La **API ARCA/AFIP de TusFacturasAPP** ofrece dos métodos para consultar comprobantes fiscales emitidos desde tu sistema: el método de [**consulta simple**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes) y el de **consulta avanzada**. Ambos son fundamentales para verificar el estado y obtener los datos de las ventas realizadas.

### 🔹 Consulta avanzada de ventas

Nuestra herramienta de Consulta Avanzada de Ventas está diseñada para ir más allá de una búsqueda simple, permitiéndote **explorar y recuperar información específica** de tus operaciones  de manera profunda.

Podrás aplicar diferentes **filtros** para refinar tus resultados, lo cual te permite obtener **reportes precisos y segmentados**, facilitando un análisis exhaustivo de tus ventas. &#x20;

{% hint style="info" %}
⚠️ **Consideraciones importantes:**

* La información obtenida se limita a los comprobantes del punto de venta desde el cual se realiza la solicitud.
* Los resultados se ordenan de forma descendente por fecha de emisión y orden de llegada (del más reciente al más antiguo).
* La consulta te devolverá los resultados paginados, con un límite máximo de ventas por página es de 1.000, dependiendo el método de consulta que utilices
* El uso de éste método **no contabiliza como un request** en tu suscripción
  {% endhint %}

#### Modalidades de búsqueda:

* Por [fecha de emisión](#consulta-por-fecha-de-emision)
* Por [rango numérico](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#consulta-avanzada-por-rango-de-numeros)
* Por [external Reference](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#consulta-avanzada-por-external_reference)

### 🛠️ Estructura del request a enviar:

La siguiente estructura es genérica para cualquiera de los métodos de búsqueda disponibles:

| Name           | Type   | Description                                                                                  |
| -------------- | ------ | -------------------------------------------------------------------------------------------- |
| busqueda\_tipo | string | <p>Campo alfanumérico. </p><p>Valores permitidos: "F", "EXT\_REF", "TN"</p>                  |
| comprobante    | object | Objeto atributos, según estructura que se detalla a continuación para cada tipo de búsqueda. |
| usertoken      | string | Tus credenciales de acceso                                                                   |
| apitoken       | string | Tus credenciales de acceso                                                                   |
| apikey         | string | Tus credenciales de acceso                                                                   |
| limite         | int    | Valor entero númerico.                                                                       |
| pagina         | int    | Valor entero númerico.                                                                       |

### Ejemplo del JSON de respuesta:

La respuesta contendrá un array de comprobantes (emitidos o pendientes de emisión).&#x20;

Cada comprobante devuelto en ese array, sigue la misma estructura que obtenes aca:

{% content-ref url="/pages/-LCQn\_uXm5AGLoC2GMMH" %}
[Consulta simple de ventas](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes)
{% endcontent-ref %}

<pre class="language-json"><code class="lang-json">{
   "rta":"OK",
   "error":"N",
   "total":3,
   "errores":[
      
   ],
   "comprobantes":[
      {<a data-footnote-ref href="#user-content-fn-1">comprobante_ver_json_respuesta_consulta_simple</a>} ,
      {comprobante_ver_json_respuesta_consulta_simple} ,
      {comprobante_ver_json_respuesta_consulta_simple}   
      ]
}
</code></pre>

#### Detalle de los campos de la respuesta

Los campos devueltos son genéricos para cualquiera de los métodos de búsqueda disponibles:&#x20;

| Nombre del campo | Info                                                                                                                                                                                                                         |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| error            | Campo alfanumerico. Valores posibles "S" o "N"                                                                                                                                                                               |
| errores          | Array conteniendo la lista de errores detectados                                                                                                                                                                             |
| total            | Campo numérico, que indica la cantidad de registros encontrados con los parámetros indicados, sin aplicarle la paginación ni limitación. (Dato disponible a partir del 01/04/2022)                                           |
| comprobantes     | Array conteniendo cada uno de los comprobantes encontrados, según estructura que se detalla en la [consulta simple.](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes) |

***

A continuación te mostramos las diferentes opciones de búsqueda avanzada de ventas:

### 🔎 Consulta por Fecha de Emisión&#x20;

Esta consulta retorna todos los comprobantes cuya fecha de emisión coincide exactamente con la fecha solicitada.

#### :rocket: Ejemplo del JSON a enviar:

{% content-ref url="/pages/Fc5UwNn3OEWfvKVVRNV4" %}
[Consulta por fecha de comprobante](/web-services-afip-api-arca/consulta-avanzada-por-fecha)
{% endcontent-ref %}

#### ¿Cómo armar el bloque "comprobante" para usar ésta búsqueda?

| `operacion` | <p>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de venta (V) o de compra (C).<br>Valores Permitidos: <strong>V, C</strong><br><strong>Ejemplo: V</strong></p> |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fecha`     | <p>Campo fecha en formato dd/mm/aaaa<br><strong>Ejemplo: 20/03/2022</strong></p>                                                                                                      |

#### Ejemplo del JSON de respuesta:

La respuesta contendrá un array de comprobantes (emitidos o pendientes de emisión). **Cada comprobante en este array sigue la misma estructura que la** [**consulta simple**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes#ejemplo-del-json-de-respuesta)**.**

```json
{
	"rta": "OK",
	"error": "N",
	"total": 4,
	"errores": [],
	"comprobantes": [
		{comprobante_ver_json_respuesta_consulta_simple},
		{comprobante_ver_json_respuesta_consulta_simple},
		{comprobante_ver_json_respuesta_consulta_simple},
		{comprobante_ver_json_respuesta_consulta_simple}
		]
}

```

#### :arrows\_clockwise: Ver JSON de "Consulta simple"

{% content-ref url="/pages/-LCQn\_uXm5AGLoC2GMMH" %}
[Consulta simple de ventas](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes)
{% endcontent-ref %}

***

### 🔍 Consulta avanzada por rango de números

Este método te permite recuperar todos los comprobantes asociados a un punto de venta dentro de un rango numérico determinado. Podrás obtener tanto comprobantes **ya emitidos** como aquellos que aún se encuentran **en cola de procesamiento**.

#### :rocket: Ejemplo del JSON a enviar:

{% content-ref url="/pages/OjbvjZ2X68mybM2LqlHK" %}
[Consulta por rango numérico de comprobantes](/web-services-afip-api-arca/consulta-avanzada-por-numero)
{% endcontent-ref %}

#### ¿Cómo armar el bloque "comprobante" para usar ésta búsqueda?

| `tipo`         | <p>Campo numérico según tabla de referencia de <a href="https://www.tusfacturas.com.ar/api-factura-electronica-afip.html#tabla-comprobantes">Tipos de comprobantes(\*\*\*)</a>.<br><strong>Ejemplo: FACTURA B</strong></p> |
| -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operacion`    | <p>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de venta (V) o de compra (C).<br>Valores Permitidos: <strong>V, C</strong><br><strong>Ejemplo: V</strong></p>                                      |
| `punto_venta`  | <p>Campo numérico entero. Longitud máxima 4 digitos.<br><strong>Ejemplo: 3</strong></p>                                                                                                                                    |
| `numero_desde` | <p>Campo numérico entero. Longitud máxima 8 dígitos. La numeración será validada internamente previa generación del comprobante.<br><strong>Ejemplo: 4567</strong></p>                                                     |
| `numero_hasta` | <p>Campo numérico entero. Longitud máxima 8 digitos. La numeración será validada internamente previa generación del comprobante.<br><strong>Ejemplo: 4567</strong></p>                                                     |

#### Ejemplo del JSON de respuesta:

La respuesta contendrá un array de comprobantes (emitidos o pendientes de emisión). **Cada comprobante en este array sigue la misma estructura que la** [**consulta simple**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes#ejemplo-del-json-de-respuesta)

```json
{
	"rta": "OK",
	"error": "N",
	"total": 4,
	"errores": [],
	"comprobantes": [
		{comprobante_ver_consulta_simple},
		{comprobante_ver_consulta_simple},
		{comprobante_ver_consulta_simple},
		{comprobante_ver_consulta_simple}
		]
}
```

#### :arrows\_clockwise: Ver JSON de "Consulta simple"

{% content-ref url="/pages/-LCQn\_uXm5AGLoC2GMMH" %}
[Consulta simple de ventas](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes)
{% endcontent-ref %}

***

### 🔎 Consulta avanzada por `external_reference`

Esta consulta permite obtener todos los comprobantes relacionados a un valor específico de `external_reference`, ya sea que estén **emitidos** o **en cola de facturación**.&#x20;

#### Ejemplo del JSON a enviar:

{% content-ref url="/pages/boLGZKBoeyqBKYbbfOFX" %}
[Consulta por external reference](/web-services-afip-api-arca/consulta-avanzada-por-external-reference)
{% endcontent-ref %}

La consulta por external refernce cuenta con 2 herramientas:

* Consulta individual de external reference
* Consulta BULK de external reference.

#### ¿Cómo armar el bloque "comprobante" para una búsqueda individual?

| `external_reference` | Campo alfanumérico. Longitud mínima: 1 carácter                                                                                                                                       |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operacion`          | <p>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de venta (V) o de compra (C).<br>Valores Permitidos: <strong>V, C</strong><br><strong>Ejemplo: V</strong></p> |

#### ¿Cómo armar el bloque "comprobante" para una búsqueda BULK?

Podes enviar hasta 100 external reference para consultar, sin embargo puede suceder que jsons muy extensos sean bloqueados a nivel firewall. En ese caso te sugerimos reducir la cantidad de ext. reference a consultar.

| `external_reference` | Array de datos alfanumérico. Ej: \["abc123", "hh33ss", "ssss333kk"]                                                                                                                   |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operacion`          | <p>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de venta (V) o de compra (C).<br>Valores Permitidos: <strong>V, C</strong><br><strong>Ejemplo: V</strong></p> |

#### Ejemplo del JSON de respuesta (ambas herramientas):

La respuesta contendrá un array de comprobantes (emitidos o pendientes de emisión). **Cada comprobante en este array sigue la misma estructura que la** [**consulta simple**](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes#ejemplo-del-json-de-respuesta)

```json
{
	"rta": "OK",
	"error": "N",
	"total": 4,
	"errores": [],
	"comprobantes": [
		{comprobante_ver_consulta_simple},
		{comprobante_ver_consulta_simple},
		{comprobante_ver_consulta_simple},
		{comprobante_ver_consulta_simple}
		]
}

```

#### :arrows\_clockwise: Ver JSON de "Consulta simple"

{% content-ref url="/pages/-LCQn\_uXm5AGLoC2GMMH" %}
[Consulta simple de ventas](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-consulta-de-comprobantes)
{% endcontent-ref %}

***

TusFacturasAPP es un [software de facturación](https://www.tusfacturas.app/software-de-facturacion-argentina.html) y un [software de gestión](https://www.tusfacturas.app/software-de-gestion-para-pymes.html)  diseñado para empresas que facturen en Argentina. Conoce más de [TusFacturasAPP](https://www.tusfacturas.app).

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).

[^1]:


# Guía de migración a facturación asincrónico (encolado)

Guía práctica para migrar a la API AFIP de facturación asincrónica . Acelera tus emisiones y optimiza tus procesos.

### ¿Que necesito hacer para migrar desde comprobantes instantáneos?

Si ya venias haciendo comprobantes instantáneos y queres migrar a la facturación asincrónica para acelerar los tiempos de procesamiento, estos son los puntos que deberías tener en cuenta:

1- Agrega un external\_reference a tu bloque de comprobantes y [asigná una dirección para el webhook, como se especificá aquí](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones).

2- Modificá tu llamada actual a nuestra API, cambiando la dirección del método a: "facturacion/lotes"  -> "facturacion/lotes\_encola" o&#x20;

"facturacion/nuevo" -> "facturacion/nuevo\_encola

3- Crea un script del lado de tu servidor, para que reciba el JSON con los eventos que enviaremos [via webhook](/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones) y nos devuelva la confirmación. Al recibir la información, éste script, debe [emitir una consulta avanzada de comprobantes](/api-factura-electronica-afip-facturacion-ventas/consulta-avanzada#como-realizar-una-consulta-avanzada-por-external-reference), para obtener la info asociada al hook recibido y realizar con la respuesta, lo que antes hacías mientras esperabas la respuesta instantánea.


# ¿Qué tipos de comprobante debo/puedo emitir?

Según tu condición frente al IVA y la de tu cliente, se determina en Argentina que tipos de comprobantes podes emitir.

### Conocé qué tipos de comprobante debes/podes emitir según tu condición impositiva y la de tu cliente.

TusFacturasAPP te permite emitir [factura electronica AFIP](https://www.tusfacturas.app/factura-electronica-afip.html), de tipo A, B, C, E, M y MiPyme. Consultá todos los tipos de comprobante disponibles [desde aquí](/parametros/tablas-de-referencia).

Para más información, te dejamos los siguientes link de referencia: <https://www.afip.gob.ar/facturacion/regimen-general/comprobantes.asp>

<https://www.tusfacturas.app/que-tipo-de-comprobante-debo-emitir-segun-mi-condicion-frente-al-iva.html>

### ¿Qué tipos de comprobantes debo emitir según mi condición impositiva?

<table><thead><tr><th width="183">Si mi condición frente al IVA es..</th><th width="150">Si la condición frente al IVA de mi cliente es..</th><th>Tipos de comprobante habilitados</th><th>IVA en productos o servicios</th></tr></thead><tbody><tr><td>Responsable Inscripto</td><td>Responsable Inscripto</td><td><p> "A" (Factura, Nota de débito, Nota de crédito y Facturas de crédito electrónica MiPyme "A")  </p><p></p></td><td>Éste tipo de comprobantes, desglosa el IVA y sus impuestos asociados en el PDF. Los productos o servicios que se facturen, cobrar el IVA, salvo que el concepto en si sea exento o no gravado.</td></tr><tr><td>Responsable Inscripto</td><td>Monotributo</td><td><p>Todos los "A" </p><p>(Factura, Nota de débito, Nota de crédito y Facturas de crédito electrónica MiPyme "A")  </p></td><td>Éste tipo de comprobantes, desglosa el IVA y sus impuestos asociados en el PDF. Los productos o servicios que se facturen, deben cobrar el IVA, salvo que el concepto en si sea exento o no gravado.</td></tr><tr><td>Responsable Inscripto</td><td>Exento / Consumidor final</td><td><p>Todos los "B" </p><p>(Factura, Nota de débito, Nota de crédito y Facturas de crédito electrónica MiPyme "B")  </p></td><td>Éste tipo de comprobantes, NO desglosa el IVA ni sus impuestos asociados en el PDF. Los productos o servicios que se facturen, deben cobrar el IVA, salvo que el concepto en si, sea exento o no gravado.</td></tr><tr><td>Monotributo</td><td>Cualquier condición frente al IVA</td><td><p>Todos los "C" </p><p>(Factura, Nota de débito, Nota de crédito y Facturas de crédito electrónica MiPyme "C")  </p></td><td>Éste tipo de comprobantes no desglosa el IVA en el PDF. Los productos o servicios que se facturen, no deben cobrar el IVA.</td></tr><tr><td>Exento</td><td>Cualquier condición frente al IVA</td><td><p>Todos los "C"</p><p> (Factura, Nota de débito, Nota de crédito y Facturas de crédito electrónica MiPyme "C")  </p></td><td>Éste tipo de comprobantes no  desglosa el IVA en el PDF. Los productos o servicios que se facturen, no deben cobrar el IVA.  E</td></tr></tbody></table>

### ¿Aún te quedan dudas? ¡Contactános!

En caso que requieras asistencia o tengas alguna duda relacionada con tu plan API DEV,  envíanos un mensaje a <api@tusfacturas.app> o [contactanos](https://www.tusfacturas.app/contacto.html) por el chat que tenemos disponible en la web [www.tusfacturas.app](https://www.tusfacturas.app/quiero-probar-api-factura-electronica.html).


# Consultas varias a servicios AFIP/ARCA

Conocé cómo usando el servicio de facturación electrónica de TusFacturasAPP podes obtener información de los servicios de consulta de AFIP.

## Servicios API de consulta AFIP/ARCA&#x20;

Aquí encontrarás diferentes servicios que puedes consultar, que son provistos por AFIP, como ser:

* [Consultar las cotizaciones del dólar y otras monedas extranjeras](/consultas-varias-a-servicios-afip-arca/cotizacion-monedas-afip).
* [Consultar datos de un CUIT, desde la constancia de inscripción](/consultas-varias-a-servicios-afip-arca/api-factura-electronica-afip-clientes-consultar-cuit-en-constancia-de-inscripcion)
* [Consultar base APOC de facturas apócrifas de ARCA](/consultas-varias-a-servicios-afip-arca/api-factura-apocrifa-base-apoc)


# Consultar las cotizaciones AFIP/ARCA

Consulta desde la API de facturación electrónica de TusFacturas.app, las diferentes cotizaciones de monedas brindadas por ARCA.

Accede a cotizaciones de monedas ARCA en tiempo real con la API de facturación electrónica de TusFacturas.app

Obtene información precisa y actualizada sobre el tipo de cambio oficial de ARCA para sus facturas electrónicas.

### Beneficios de utilizar la API de facturación electrónica de TusFacturas.app para consultar cotizaciones de monedas ARCA:

* Información en tiempo real: Accedes a las últimas cotizaciones de monedas AFIP/ARCA al momento de generar sus facturas electrónicas.&#x20;
* Precisión garantizada: Obtenes datos oficiales directamente de AFIP/ARCA, eliminando la necesidad de realizar cálculos manuales o utilizar fuentes no confiables.&#x20;
* Eficiencia optimizada: Automatizas la consulta de cotizaciones de monedas AFIP/ARCA, ahorrando tiempo y esfuerzo en su proceso de facturación electrónica.&#x20;
* Integración perfecta: Integra la consulta de cotizaciones de monedas AFIP/ARCA en tu sistema de gestión existente para una experiencia fluida y automatizada.&#x20;

TusFacturas.app es la solución ideal para empresas que buscan simplificar y optimizar su proceso de facturación electrónica, incluyendo la consulta precisa y automatizada de cotizaciones de monedas ARCA.

Comenza a utilizar la API de facturación electrónica de TusFacturas.app hoy mismo y experimenta la diferencia.

{% hint style="info" %}
Ten en cuenta que para la moneda "dólar": AFIP trabaja con la cotización oficial del Banco de la Nación Argentina, correspondiente al DOLAR DIVISAS y la cotización es actualizada a cada hora.
{% endhint %}

#### Request

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`tablas_referencia/cotizacion`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

Puedes obtener la cotización de las diferentes monedas que tenemos publicadas en nuestra

[**tabla de referencia de monedas**](/parametros/tablas-de-referencia#monedas)

#### Request Body

| Name      | Type   | Description                                                                                                                                                                                                                     |
| --------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| usertoken | string | Tus credenciales de acceso                                                                                                                                                                                                      |
| apitoken  | string | Tus credenciales de acceso                                                                                                                                                                                                      |
| apikey    | string | Tus credenciales de acceso                                                                                                                                                                                                      |
| moneda    | string | La moneda a consultar, según nuestra [tabla de referencia de monedas](/parametros/tablas-de-referencia#monedas). En caso que no envies éste dato, obtendrás la cotización del dolar.                                            |
| fecha     | string | <p>Si indicas la fecha en formato dd/mm/aaaa, te mostraremos la ultima cotización encontrada en AFIP para ese día, según los datos que hemos almacenado. Ten en cuenta que no podrás consultar mas de 2 meses atras.</p><p></p> |

### Estructura del JSON a enviar

{% code title="JSON" %}

```
{
   "usertoken" :  "xxxx",
   "apikey"    :  "xxxx",
   "apitoken"  :  "xxxx",
   "moneda"    :  "012",
   "fecha"     :  "02/03/2020"
 }
```

{% endcode %}

### Ejemplo de un JSON de respuesta exitosa

```
 {
        "error":     "N",
        "errores":
                    [
                        ""
                    ],
        "cotizacion": "15.10"
    }
```


# Consultar datos de un CUIT, desde la constancia de inscripción

Consulta la información básica de tu cliente, desde la constancia de inscripción de AFIP/ARCA, y obtené los datos en formato JSON.

{% hint style="info" %}
**IMPORTANTE**: Para utilizar esta consulta, tu CUIT debe estar **enlazado con ARCA**. Por lo tanto, esta funcionalidad **no está disponible** en el plan API DEV.
{% endhint %}

### Consultar datos de un CUIT en AFIP/ARCA

Mediante éste método podrás consultar la info que AFIP/ARCA tiene almacenada en su base de datos con relación a un CUIT. Ésta info es lo mismo que visualizas cuando haces una [consulta web a la constancia de inscripción](https://seti.afip.gob.ar/padron-puc-constancia-internet/ConsultaConstanciaAction.do).  Tene en cuenta que la información provista en éste método no tiene relación con la info de tus clientes que tengas almacenados en TusFacturasAPP.

#### ¿A donde enviar el request?

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`clientes/afip-info`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

{% hint style="info" %}
**¿Necesitas consultar muchos CUITs a la vez?**

Si en lugar de integrar este método por API preferís hacer consultas masivas sin programar, podes usar la herramienta **"**[**Consulta masiva desde Excel de datos ARCA, ARBA, AGIP y APOC**](https://www.tusfacturas.app/consultar-cuits-en-arca-arba-agip-apoc-masivamente.html)**"** disponible en la plataforma web (menú > ARCA y padrones). Con ella podes cargar un archivo CSV con varios CUITs y obtener un reporte consolidado, sin necesidad de consultarlos uno por uno.

👉 [Ver cómo usar la consulta masiva desde Excel](https://ayuda.tusfacturas.app/es/articles/16221224-consulta-masiva-desde-excel-de-datos-arca-arba-agip-y-apoc)

⚠️ Los créditos disponibles para este método de API (`clientes/afip-info`) son **compartidos** con los que se consumen en la herramienta de consulta masiva. No existen saldos independientes: cada consulta, ya sea por API o desde el Excel masivo, descuenta del mismo saldo de créditos de tu plan.
{% endhint %}

#### Request Body

| Name      | Type   | Description                 |
| --------- | ------ | --------------------------- |
| cliente   | string | Objeto de tipo cliente      |
| apikey    | string | Tus credenciales de acceso  |
| usertoken | string | Tus credenciales de acceso. |
| apitoken  | string | Tus credenciales de acceso. |

#### Ejemplo del JSON a enviar <a href="#estructura-del-json-a-enviar" id="estructura-del-json-a-enviar"></a>

{% code title="JSON" %}

```json
{
"usertoken" :  "xxxx",
"apikey"    :  "xxx",
"apitoken"  :  "xxxx",
"cliente":  {                      
    "documento_nro":    "30712293841",      
    "documento_tipo":   "CUIT"                   
    } 
 }
```

{% endcode %}

### Estructura del bloque "Cliente" <a href="#estructura-de-cliente" id="estructura-de-cliente"></a>

| `documento_tipo` | Valores Permitidos: **CUIT**                                    |
| ---------------- | --------------------------------------------------------------- |
| `documento_nro`  | Campo numérico, sin puntos ni guiones. **Ejemplo: 30111222334** |

#### Ejemplo del JSON de respuesta exitosa

**Consulta de CUIT en constancia de inscripción ARCA para un monotributista:**

```json
{
   "error":             "N",
   "razon_social":      "LA RAZON SOCIAL O NOMBRE",
   "condicion_impositiva": "MONOTRIBUTO",
   "direccion": "xxxxx",
   "localidad": "",
   "codigopostal": "xxx",
   "estado":"ACTIVO",
   "provincia": "CIUDAD AUTONOMA BUENOS AIRES",
   "actividad":[
		{
			"descripcion": "SERVICIOS DE CONTABILIDAD, AUDITORÃA Y ASESORÃA FISCAL",
			"id": 692000,
			"nomenclador": 883,
			"periodo": 201311
		},
		{
			"descripcion": "SERVICIOS DE ASESORAMIENTO, DIRECCIÃN Y GESTIÃN EMPRESARIAL REALIZADOS POR INTEGRANTES DE CUERPOS DE DIRECCIÃN EN SOCIEDADES EXCEPTO LAS ANÃNIMAS",
			"id": 702092,
			"nomenclador": 883,
			"periodo": 201812
		}
   ],
   "apoc_existe": "SI",
   "apoc_info": "CUIT en base APOC desde el 22/07/2019.  (base APOC actualizada al 26/08/2025 18:42) -  Sugerimos consultar con su estudio contable inmediatamente.",
   "errores":  [  "" ] ,
   "constancia_full_datos": {
		"datosGenerales": {
			"apellido": "XXXXX",
			"caracterizacion": {
				"descripcionCaracterizacion": "GANANCIAS SIMPLIFICADA LEY 27.779",
				"fechaSolicitud": 20260712,
				"idCaracterizacion": 639,
				"periodo": 20250101
			},
			"domicilioFiscal": {
				"codPostal": 0,
				"descripcionProvincia": "CIUDAD AUTONOMA BUENOS AIRES",
				"direccion": "XXXXX",
				"idProvincia": 0,
				"tipoDomicilio": "FISCAL"
			},
			"esSucesion": "NO",
			"estadoClave": "ACTIVO",
			"idPersona": 0,
			"mesCierre": 12,
			"nombre": "XXXXX",
			"tipoClave": "CUIT",
			"tipoPersona": "FISICA"
		},
		"datosMonotributo": {
			"actividad": [
				{
					"descripcionActividad": "SERVICIOS DE CONTABILIDAD, AUDITORÍA Y ASESORÍA FISCAL",
					"idActividad": 692000,
					"nomenclador": 883,
					"orden": 1,
					"periodo": 201311
				},
				{
					"descripcionActividad": "SERVICIOS DE ASESORAMIENTO, DIRECCIÓN Y GESTIÓN EMPRESARIAL REALIZADOS POR INTEGRANTES DE CUERPOS DE DIRECCIÓN EN SOCIEDADES EXCEPTO LAS ANÓNIMAS",
					"idActividad": 702092,
					"nomenclador": 883,
					"orden": 2,
					"periodo": 201812
				}
			],
			"actividadMonotributista": {
				"descripcionActividad": "SERVICIOS DE CONTABILIDAD, AUDITORÍA Y ASESORÍA FISCAL",
				"idActividad": 692000,
				"nomenclador": 883,
				"orden": 1,
				"periodo": 201311
			},
			"categoriaMonotributo": {
				"descripcionCategoria": "F LOCACIONES DE SERVICIOS",
				"idCategoria": 40,
				"idImpuesto": 20,
				"periodo": 202508
			},
			"impuesto": {
				"descripcionImpuesto": "MONOTRIBUTO",
				"estadoImpuesto": "AC",
				"idImpuesto": 20,
				"motivo": "INSCRIPCIÓN TRAMITADA EN AGENCIA",
				"periodo": 200704
			}
		},
		"datosRegimenGeneral": {
			"actividad": [
				{
					"descripcionActividad": "SERVICIOS DE CONTABILIDAD, AUDITORÍA Y ASESORÍA FISCAL",
					"idActividad": 692000,
					"nomenclador": 883,
					"orden": 1,
					"periodo": 201311
				},
				{
					"descripcionActividad": "SERVICIOS DE ASESORAMIENTO, DIRECCIÓN Y GESTIÓN EMPRESARIAL REALIZADOS POR INTEGRANTES DE CUERPOS DE DIRECCIÓN EN SOCIEDADES EXCEPTO LAS ANÓNIMAS",
					"idActividad": 702092,
					"nomenclador": 883,
					"orden": 2,
					"periodo": 201812
				}
			],
			"categoriaAutonomo": {
				"descripcionCategoria": "T1 CAT III INGRESOS HASTA $15.000",
				"idCategoria": 103,
				"idImpuesto": 308,
				"periodo": 201811
			},
			"impuesto": [
				{
					"descripcionImpuesto": "IVA EXENTO",
					"estadoImpuesto": "AC",
					"idImpuesto": 32,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 201812
				},
				{
					"descripcionImpuesto": "GANANCIAS PERSONAS FISICAS",
					"estadoImpuesto": "AC",
					"idImpuesto": 11,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 201811
				},
				{
					"descripcionImpuesto": "APORTES SEG.SOCIAL AUTONOMOS",
					"estadoImpuesto": "AC",
					"idImpuesto": 308,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 201811
				},
				{
					"descripcionImpuesto": "REG. SIMPLIFICADO IIBB AGIP",
					"estadoImpuesto": "NA",
					"idImpuesto": 5190,
					"motivo": "NO ALCANZADO EN TRÁMITE EN LA JURISDICCIÓN",
					"periodo": 202601
				},
				{
					"descripcionImpuesto": "CONTRIBUCION MUNICIPAL AGIP",
					"estadoImpuesto": "NA",
					"idImpuesto": 5191,
					"motivo": "JURISDICCIÓN NO ADHERIDA",
					"periodo": 202601
				}
			]
		},
		"metadata": {
			"fechaHora": "2026-07-23T06:02:58.172-03:00",
			"servidor": "linux11f"
		}
	},
}	
```

**Consulta de CUIT en constancia de inscripción ARCA para un responsable inscripto:**

```json
{
	"error": "N",
	"errores": [],
	"razon_social": "XXXX",
	"condicion_impositiva": "RESPONSABLE INSCRIPTO",
	"direccion": "XXXX",
	"localidad": "",
	"codigopostal": "XXX",
	"provincia": "CIUDAD AUTONOMA DE BUENOS AIRES",
	"estado": "ACTIVO",
	"actividad": [
		{
			"descripcion": "SERVICIOS DE CONSULTORES EN INFORMÃTICA Y SUMINISTROS DE PROGRAMAS DE INFORMÃTICA",
			"id": 620100,
			"nomenclador": 883,
			"periodo": 201812
		},
		{
			"descripcion": "SERVICIOS EMPRESARIALES N.C.P.",
			"id": 829900,
			"nomenclador": 883,
			"periodo": 201906
		}
	],
	"constancia_full_datos": {
		"datosGenerales": {
			"domicilioFiscal": {
				"codPostal": 0,
				"datoAdicional": "XXXX",
				"descripcionProvincia": "CIUDAD AUTONOMA BUENOS AIRES",
				"direccion": "XXXX",
				"idProvincia": 0,
				"tipoDatoAdicional": "XXXX",
				"tipoDomicilio": "FISCAL"
			},
			"esSucesion": "NO",
			"estadoClave": "ACTIVO",
			"fechaContratoSocial": "2018-11-01T12:00:00-03:00",
			"idPersona": 0,
			"mesCierre": 10,
			"razonSocial": "XXXX",
			"tipoClave": "CUIT",
			"tipoPersona": "JURIDICA"
		},
		"datosRegimenGeneral": {
			"actividad": [
				{
					"descripcionActividad": "SERVICIOS DE CONSULTORES EN INFORMÁTICA Y SUMINISTROS DE PROGRAMAS DE INFORMÁTICA",
					"idActividad": 620100,
					"nomenclador": 883,
					"orden": 1,
					"periodo": 201812
				},
				{
					"descripcionActividad": "SERVICIOS EMPRESARIALES N.C.P.",
					"idActividad": 829900,
					"nomenclador": 883,
					"orden": 2,
					"periodo": 201906
				}
			],
			"impuesto": [
				{
					"descripcionImpuesto": "REGIMENES DE INFORMACIÓN",
					"estadoImpuesto": "AC",
					"idImpuesto": 103,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 201812
				},
				{
					"descripcionImpuesto": "IVA",
					"estadoImpuesto": "AC",
					"idImpuesto": 30,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 201812
				},
				{
					"descripcionImpuesto": "GANANCIAS SOCIEDADES",
					"estadoImpuesto": "AC",
					"idImpuesto": 10,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 201812
				},
				{
					"descripcionImpuesto": "BP-ACCIONES O PARTICIPACIONES",
					"estadoImpuesto": "AC",
					"idImpuesto": 211,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 201812
				},
				{
					"descripcionImpuesto": "EMPLEADOR-APORTES SEG. SOCIAL",
					"estadoImpuesto": "AC",
					"idImpuesto": 301,
					"motivo": "INSCRIPCIÓN NO TRAMITADA EN AGENCIA",
					"periodo": 202604
				}
			],
			"regimen": [
				{
					"descripcionRegimen": "PARTICIPACIONES SOCIETARIAS",
					"idImpuesto": 103,
					"idRegimen": 68,
					"periodo": 20181201
				},
				{
					"descripcionRegimen": "PRESENTACION DE ESTADOS CONTABLES EN FORMATO PDF",
					"idImpuesto": 103,
					"idRegimen": 255,
					"periodo": 20181101
				}
			]
		},
		"metadata": {
			"fechaHora": "2026-07-23T06:30:20.970-03:00",
			"servidor": "linux11e"
		}
	},
	"apoc_existe": "NO",
	"apoc_info": ""
}
```

{% hint style="info" %}
El campo `constancia_full_datos` contiene la respuesta completa y sin modificar devuelta por ARCA, permitiendo el acceso a datos adicionales para integraciones secundarias.

> Nota: La estructura de este objeto está sujeta a modificaciones según los cambios que realice ARCA en sus servicios.
> {% endhint %}

#### Ejemplo de respuesta cuando ARCA  bloquea la constancia de inscripción:

```json
{
	"error": "S",
	"errores": [
		[
			"El servicio de consulta de CUIT en AFIP retorna el siguiente error:   - La CUIT registra pendiente la constitución del domicilio fiscal electrónico de acuerdo a lo normado en la RG 4280/18 AFIP.,La CUIT registra una o más actividades económicas que no pertenecen al nomenclador de actividades vigente F. 883 RG AFIP3587/13."
		]
	]
}
```

#### Ejemplo de respuesta, cuando el CUIT no tiene impuestos asociados en ARCA y no se puede determinar su condición fiscal

```json
{
	"error": "S",
	"errores": [
		"No se ha podido recuperar la condicion frente al IVA de este CUIT"
	],
	"razon_social": "CONSORCIO DE COPROPIETARIOS XXX",
	"condicion_impositiva": "CONSUMIDOR FINAL",
	"direccion": "XXXX 179",
	"localidad": "LOMAS DE ZAMORA",
	"codigopostal": "CP: 1832",
	"provincia": "BUENOS AIRES",
	"estado": "ACTIVO",
	"actividad": [
		{
			"descripcion": "SERVICIOS DE CONSORCIOS DE EDIFICIOS",
			"id": 949920,
			"nomenclador": 883,
			"periodo": 201311
		}
	],
	"apoc_existe": "NO",
	"apoc_info": ""
}
```

#### "condicion\_impositiva": Posibles valores de la respuesta obtenida desde ARCA.

El campo  `condicion_impositiva` puede retornar alguno de los siguientes valores:

* MONOTRIBUTO
* EXENTO
* RESPONSABLE INSCRIPTO

{% hint style="info" %}
Ten en cuenta que:

1. &#x20;Si el CUIT no se encuentra inscripto en ningún impuesto, nuestra plataforma te devolverá los datos que ésta encuentra en ARCA,  pero el campo "error"  en "S", ya que no podemos determinar que la condición frente al IVA.
2. Si el CUIT que estas consultando tiene requerimientos pendientes por responder o alguna otra inconsistencia en AFIP, el propio organismo bloquea el acceso a la información de su constancia y recibirás un error.
3. Generalmente para los responsables inscriptos ARCA no informa todos los datos catastrales. Podes corroborar la info que te devolvemos accediendo a la [consulta de inscripción de ARCA](https://seti.afip.gob.ar/padron-puc-constancia-internet/ConsultaConstanciaAction.do)
   {% endhint %}


# Consultar base APOC de facturas apócrifas de ARCA

Consulta la información básica de tu cliente, desde la constancia de inscripción de AFIP/ARCA, y obtené los datos en formato JSON.

### Consultar datos de un CUIT en base APOC

Este endpoint permite [consultar la base de datos APOC de ARCA](https://ayuda.tusfacturas.app/es/articles/12097418-que-son-las-facturas-apocrifas-y-como-verificarlas) para verificar si una factura está registrada como apócrifa o fraudulenta.

**Valida la autenticidad de facturas antes de procesarlas contablemente**, cumpliendo con las regulaciones fiscales argentinas y evitando la aceptación de comprobantes falsos que podrían generar observaciones de AFIP.

#### ¿A donde enviar el request?

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`padrones/apoc`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type     | Description                                 |
| --------- | -------- | ------------------------------------------- |
| cuit      | numerico | Numero de hasta 11 digitos. Ej: 30000000001 |
| apikey    | string   | Tus credenciales de acceso                  |
| usertoken | string   | Tus credenciales de acceso.                 |
| apitoken  | string   | Tus credenciales de acceso.                 |
|           |          |                                             |

#### Ejemplo del JSON a enviar <a href="#estructura-del-json-a-enviar" id="estructura-del-json-a-enviar"></a>

{% code title="JSON" %}

```
{
"usertoken" :  "xxxx",
"apikey"    :  "xxx",
"apitoken"  :  "xxxx",
"cuit"      :  30000000001
 }
```

{% endcode %}

#### Respuesta exitosa (200) con CUIT existente en base APOC

```
{
	"error": "N",
	"errores": [],
	"cuit": xxxxxx,
	"existe_padron": "S",
	"fecha_condicion_apocrifo": "04/12/2007",
	"fecha_publicacion": "04/12/2007",
	"base_actualizada_fecha": "26/08/2025 18:42"
}
```

#### Respuesta exitosa (200) con CUIT inexistente en base APOC

```
{
	"error": "N",
	"errores": [],
	"cuit": xxxxxx,
	"existe_padron": "N",
	"base_actualizada_fecha": "26/08/2025 18:42"
}
```

#### Respuesta con error (200) &#x20;

```
{
	"error": "S",
	"errores": [
		"El cuit enviado (0) es invalido."
	]
}
```


# Integraciones - Factura AFIP/ARCA No-Code

Automatiza tu facturación AFIP/ARCA con TusFacturasApp. Integraciones no-code via Zapier y API REST para conectar tu e-commerce o CRM.

TusFacturasApp ofrece integraciones seamless con herramientas no-code como [Zapier](/integraciones-factura-afip-arca-no-code/zapier-factura-electronica-afip-arca-no-code), permitiendo automatizar completamente el proceso de facturación electrónica AFIP/ARCA sin necesidad de conocimientos técnicos.&#x20;

A través de nuestro robusto servicio API y estas integraciones, podes conectar tu sistema de gestión, e-commerce o CRM directamente con TusFacturasApp, generando automáticamente facturas, notas de crédito y débito que cumplen con todas las normativas fiscales argentinas.&#x20;

Nuestro API REST facilita la creación de workflows inteligentes que se activen con cada venta, pedido o evento específico, eliminando la carga manual de facturación y garantizando el cumplimiento normativo en tiempo real. Esta solución combina la potencia de nuestro servicio API con la simplicidad del no-code, democratizando el acceso a la facturación electrónica profesional y permitiendo que empresas de cualquier tamaño optimicen sus procesos administrativos con solo unos clics, ya sea a través de Zapier o mediante integraciones directas con nuestro API.

> 🤝 Queremos que aproveches la posibilidad de usar éstas herramientas, pero <mark style="color:purple;">**es importante que sepas que desde TusFacturasApp no podemos ofrecer soporte ni solucionar inconvenientes relacionados con estas plataformas externas.**</mark>


# Zapier: Factura electrónica AFIP/ARCA No-Code

Automatiza tus facturas de AFIP/ARCA con Zapier y TusFacturasApp. Integración no-code para e-commerce y CRM.

### Cómo Generar Facturas Electrónicas AFIP/ARCA con Zapier&#x20;

La **automatización de la facturación con herramientas no-code** permite crear **factura electronica AFIP/ARCA desde zapier** sin escribir código. Aprende a integrar TusFacturas.app con Zapier para automatizar completamente tu facturación electrónica.

> 🤝 Queremos que aproveches la posibilidad de usar Zapier, pero <mark style="color:purple;">**es importante que sepas que desde TusFacturasApp no podemos ofrecer soporte ni solucionar inconvenientes relacionados con estas plataformas externas.**</mark>

### Beneficios de automatizar la facturación con la integración a Zapier

* Generar facturas en AFIP/ARCA automáticamente cuando recibas pagos
* Conectar múltiples plataformas (Stripe, QuickBooks, etc.)
* Emitir facturas electrónicas AFIP/ARCA sin intervención manual
* Ahorrar horas de trabajo administrativo

### ¿Cómo integrar Zapier con TusFacturasAPP?

**Configurar tu Cuenta en TusFacturas.app**

Para comenzar a automatizar la **facturación electronica AFIP/ARCA con herramientas no-code**, cómo lo es zapier, primero necesitas configurar tu cuenta en TusFacturasAPP:

1. Accede a [developers.tusfacturas.app](https://developers.tusfacturas.app/)
2. Sigue los pasos detallados en la sección **"**[**Cómo Empiezo**](/como-empiezo)**"** de la documentación
3. Guarda tus credenciales de acceso - las necesitarás para integrar en Zapier

**Crea tu Cuenta en Zapier**

1. Accede a [zapier.com](https://zapier.com/)&#x20;
2. Hace clic en "Sign Up" y crea tu cuenta gratuita
3. Verifica tu email y crea tu primer "Zap"

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2FIuiKBzz9UkMzj04htAMf%2Fimage.png?alt=media&amp;token=b03a397b-0102-4fd9-9722-1efb4e7aaa14" alt=""><figcaption></figcaption></figure>

**Entende los Conceptos Básicos de zapier**

* **Zap**: Tu automatización completa
* **Trigger**: Lo que inicia la automatización (ej: nuevo pago)
* **Action**: Lo que sucede después (ej: crear factura)

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2FdTJQRg2uq1kNEWLCUPFj%2Fimage.png?alt=media&amp;token=f2a4b624-c28f-4c4a-b300-f6c7761920a1" alt=""><figcaption></figcaption></figure>

### Automatizar la facturación AFIP/ARCA con un webhook desde otra plataforma externa hacia TusFacturasAPP

A continuación te presentamos ejemplos de cómo automatizar tu facturación AFIP/ARCA desde una plataforma externa, usando herramientas no-code como Zapier.&#x20;

> 🤝 Queremos que aproveches la posibilidad de usar Zapier, pero <mark style="color:purple;">**es importante que sepas que desde TusFacturasApp no podemos ofrecer soporte ni solucionar inconvenientes relacionados con estas plataformas externas.**</mark>

**Configura el Zap**:

1. **App**: "Webhooks by Zapier"
2. **Trigger**: "Catch Hook"
3. **Action**: Selecciona "Utilities" > "Webhooks"

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2FVu0LM4SI8yqBjJLRkptu%2Fimage.png?alt=media&amp;token=b79e6a48-444c-4510-8ffe-849f13fe1952" alt=""><figcaption></figcaption></figure>

**Configura el trigger**

1. Zapier te dará una URL única.  Copia esa URL y configúrala en tu plataforma externa
2. Envia un hook a esa URL que te dio Zapier, con el contenido del JSON esperado por TusFacturasAPP de acuerdo a los [ejemplos de factura ](/web-services-afip-api-arca)que te ofrecemos.

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2FIelRcZCm1as8SIMeykm7%2Fimage.png?alt=media&amp;token=da05d04d-8112-4bae-b6ea-4825ef5a3feb" alt=""><figcaption></figcaption></figure>

**Configura el Action**:

1. Ingresa la URL en la que TusfacturasAPP recibirá tu facturacion. En este caso usamos la [facturación instántanea individual.](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante)
2. Selecciona el tipo de payload: "JSON"
3. Ingresa todos los campos esperados del JSON dentro del campo "data", segun los [ejemplos proporcionados por TusFacturasAPP](/web-services-afip-api-arca)

<figure><img src="https://3289426737-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LCB9rRBemGwnJNermQn-887967055%2Fuploads%2F21lxfq2daAECKtBj4Iy9%2Fimage.png?alt=media&amp;token=55d46572-9e27-42c5-9f7c-4d4d4ab9014f" alt=""><figcaption></figcaption></figure>

Mapeo de datos desde tu plataforma.

&#x20;Para enviar datos desde otra plataforma, podes usar una solicitud a nuestra API que contenga la siguiente información:

```json
{
  "customer_name": "Juan Pérez",
  "customer_email": "juan@email.com",
  "customer_cuit": "20123456789",
  "amount": "1000.00",
  "description": "Servicio de consultoría",
  "invoice_date": "2025-01-15"
}
```

y mapearlos de acuerdo a lo requerido en TusFacturasApp

```json
{
  ...
  "cliente": {
    ...
    "documento_nro": "[Webhook: customer_cuit]",
    "razon_social": "[Webhook: customer_name]",
    "email": "[Webhook: customer_email]",
    
  },
  "comprobante": {
    ...
    "fecha": "[Webhook: invoice_date]",
    "observaciones": "Generado automáticamente desde plataforma externa en zapier"
  },
  "detalle": [
    ...
    {
      ...
      "producto": {
        ...
        "descripcion": "[Webhook: description]",
        "precio_unitario": "[Webhook: amount]",
      }
    }
  ]
}
```

**Probar y Activar tu Zap**

Luego de configurados los ejemplos, debes probar la Integración que realizaste:

1. Hace clic en **"Test & Continue"**
2. Zapier enviará una prueba a TusFacturas.app
3. Verifica que aparezca "Success" o status 200
4. Revisa en tu panel de  TusFacturas.app (Menú > Facturación > Mis ventas) que se haya creado la factura

**Revisar Respuesta de la API**

Una respuesta exitosa de TusFacturasAPP se ve así:

```json
{
	"error": "N",
	"errores": [],
	"error_cod": [],
	"error_details": [],
	"external_reference": "",
	"requiere_fec": "NO",
	"observaciones": "",
	"rta": "El comprobante FACTURA B 00010-00000032 (PRUEBA) se ha guardado correctamente ",
	"cae": "xxx ",
	"vencimiento_cae": "13/08/2025",
	"vencimiento_pago": "12/09/2025",
	"comprobante_nro": "00010-00000032",
	"comprobante_tipo": "FACTURA B",
	"afip_codigo_barras": " ",
	"afip_qr": "xxx",
	"micrositios": {
		"descarga": "xxx",
		"cliente": "xxx"
	},
	"envio_x_mail": "N" 
	"comprobante_pdf_url": "xxx",
	"comprobante_ticket_url": "xxx"
}
```

**Activa el Zap**

1. Dale un nombre a tu Zap, como por ejemplo: "Integracion a TusFacturasAPP - Facturación Automática"
2. Hace clic en **"Turn on Zap"**
3. ¡Tu automatización ya está funcionando en Zapier!

### Ejemplo de como automatizar la facturación AFIP/ARCA con Stripe y TusFacturasAPP

A continuación te presentamos ejemplos de cómo automatizar tu facturación AFIP/ARCA  dsde Stripe usando herramientas no-code como Zapier.&#x20;

Sugerimos revisar la documentación oficial de [Stripe](https://stripe.partners/directory/zapier) y [Zapier](https://zapier.com/apps/stripe/integrations) antes de comenzar.

> 🤝 Queremos que aproveches la posibilidad de usar Zapier, pero <mark style="color:purple;">**es importante que sepas que desde TusFacturasApp no podemos ofrecer soporte ni solucionar inconvenientes relacionados con estas plataformas externas.**</mark>

#### Paso 1: Configurar el Trigger - Nuevo Pago en Stripe

1. En Zapier, hace clic en **"Create Zap"**
2. Busca y selecciona **"Stripe"**
3. Selecciona el trigger **"New Payment"**
4. Hace clic en **"Continue"**
5. Conecta tu cuenta de Stripe:
   * Hace clic en "Sign in to Stripe"
   * Autoriza la conexión
   * Selecciona tu cuenta
6. Configura la manera de autenticarte

   Hace clic en "API Key"
7. **Configurar el trigger**:
   * En "Set up trigger", deja las opciones por defecto
   * Hace clic en **"Continue"**
8. **Probar el trigger**:
   * Zapier buscará pagos recientes
   * Selecciona un pago de ejemplo
   * Hace clic en **"Continue"**

#### Paso 2:  Configurar la Acción - Crear Factura en TusFacturas.app

1. Hace clic en **"Choose App & Event"**
2. Busca **"Webhooks by Zapier"**
3. Selecciona **"POST"**
4. Hace clic en **"Continue"**

#### Paso 3: Configurar la Llamada a la API

A continuación te mostramos como usar la [facturación instantánea e individual en ARCA](/api-factura-electronica-afip-facturacion-ventas/api-factura-electronica-afip-facturacion-nuevo-comprobante).

**URL**:

```
https://www.tusfacturas.app/app/api/v2/facturacion/nuevo
```

**Method**: POST

**Headers**:

```
Content-Type: application/json
```

#### Paso 4: Mapear los Datos del Body&#x20;

En el campo **"Data"**, configura estos campos según la [API de TusFacturas.app](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca#json-de-ejemplo-para-emitir-comprobantes-electronicos). &#x20;

Para automatizar la creación de facturas, puedes copiar un ejemplo de los modelos de  [factura B](/web-services-afip-api-arca/api-factura-electronica-afip-factura-b), [factura A](/web-services-afip-api-arca/api-factura-electronica-afip-factura-a) , [Factura C](/web-services-afip-api-arca/api-factura-electronica-afip-factura-c), y sustituir los siguientes campos con la información que obtengas de la API de Stripe. Para una lista completa de los datos disponibles, consulta la [documentación de Stripe](https://stripe.com/docs)

```json
{
  "cliente": {
     ...
    "documento_nro": "[Usar dato de Stripe: Tax ID]",
    "razon_social": "[Usar dato de Stripe: Customer Name]",
    "email": "[Usar dato de Stripe: Customer Email]",
    "domicilio": "[Usar dato de Stripe: Customer address]",
    
  },
  "comprobante": {
    ...
    "fecha": "[Usar dato de Stripe: Created Date - formato esperado: dd/mm/yyyy]",
    "observaciones": "Pago procesado via Stripe"
  },
  "detalle": [
    ...
    {
      "cantidad": "1",
      "producto": {
        ...
        "descripcion": "[Usar dato de Stripe: Description]",
        "precio_unitario": "[Usar dato de Stripe: Amount / 100]",
         
      }
    }
  ]
}
```

#### Paso 5: Configuración Visual en Zapier

**Para mapear los campos de Stripe:**

1. **Customer Name**: Busca en la lista desplegable "Stripe Customer Name" o "Billing Details Name"
2. **Customer Email**: Selecciona "Stripe Customer Email"
3. **Amount**: Selecciona "Stripe Amount" (se divide automáticamente por 100)
4. **Description**: Usa "Stripe Description" o "Metadata Description"
5. **Created Date**: Selecciona "Stripe Created" y aplica formato de fecha dd/mm/aaaa

### Automatizar la facturación AFIP/ARCA con QuickBooks y TusFacturasAPP

A continuación te presentamos ejemplos de cómo automatizar tu facturación AFIP/ARCA y Quickbooks, usando herramientas no-code como Zapier.&#x20;

Sugerimos revisar la documentación oficial de [QuickBooks](https://quickbooks.intuit.com/app/apps/appdetails/zapier/en-us/) y [Zapier](https://zapier.com/apps/quickbooks/integrations) antes de comenzar.

> 🤝 Queremos que aproveches la posibilidad de usar Zapier, pero <mark style="color:purple;">**es importante que sepas que desde TusFacturasApp no podemos ofrecer soporte ni solucionar inconvenientes relacionados con estas plataformas externas.**</mark>

**Crea un Trigger para una nueva Factura en QuickBooks**

1. **App**: QuickBooks Online
2. **Trigger**: "New Invoice"
3. **Configuración**: Conecta tu cuenta de QuickBooks

**Configura el Action: Crear Factura en TusFacturas.app**

Usa la misma configuración de Webhook pero con estos mapeos de acuerdo a la documentación de QuickBooks

```json
{
  ...
  "cliente": {
    ...
    "documento_nro": "[QuickBooks: Customer Tax ID]",
    "razon_social": "[QuickBooks: Customer Company Name]",
    "email": "[QuickBooks: Customer Email]",
    "domicilio": "[QuickBooks: Billing Address Line 1]",
  },
  "comprobante": {
    ...
    "fecha": "[QuickBooks: Invoice Date - formato dd/mm/aaaa]",
    "observaciones": "Sincronizado desde QuickBooks"
  },
  "detalle": [
    ...
    {
      ...
      "cantidad": "[QuickBooks: Line Item Quantity]",
      "producto": {
        ...
        "descripcion": "[QuickBooks: Line Item Description]",
        "precio_unitario": "[QuickBooks: Line Item Rate]",
        "codigo": "[QuickBooks: Line Item Product/Service]"
      }
    }
  ]
}
```

### Casos de Uso Adicionales

> 🤝 Queremos que aproveches la posibilidad de usar Zapier, pero <mark style="color:purple;">**es importante que sepas que desde TusFacturasApp no podemos ofrecer soporte ni solucionar inconvenientes relacionados con estas plataformas externas.**</mark>

#### Conectá tu e-commerce con WooCommerce a Zapier y emiti factura electrónica AFIP/ARCA desde TusFacturasAPP

Sugerimos revisar la documentación oficial de Woocomerce y [Zapier](https://zapier.com/apps/woocommerce/integrations) antes de comenzar.

* **Trigger**: WooCommerce "New Order"
* **Mapear**: Order total, customer data, line items

#### CRM con HubSpot

* **Trigger**: HubSpot "Deal Won"
* **Mapear**: Deal amount, company info, contact details

#### Plataformas de Cursos

* **Trigger**: Teachable "New Sale"
* **Mapear**: Course price, student info, enrollment date

### Control de errores

* Revisa logs de Zapier semanalmente. Los servicios de ARCA pueden arrojar diferentes errores, asi como observaciones y es importante que te mantengas al tanto.
* Proba la integración mensualmente ya que las plataformas pueden introducir cambios y tu integración puede dejar de funcionar.&#x20;

#### Seguridad

* Nunca compartas tus credenciales con nadie.
* Usa HTTPS siempre
* Revisa permisos de aplicaciones conectadas

Tu integración de **factura electronica AFIP/ARCA no-code** ya está listo para funcionar automáticamente.

### Recursos Adicionales

* [Documentación completa de la API](/api-factura-electronica-afip-facturacion-ventas/referencia-api-afip-arca)
* [Ejemplos de códigos AFIP](/web-services-afip-api-arca)&#x20;


# API Compras

Optimiza tu proceso de compras con la API Compras y nuestro sistema ERP gestiona las compras y agiliza tu flujo de trabajo sin esfuerzo.

Para crear una compra debes enviar un request como el que envías para las ventas, tal como se especifica aqui:  [Documentación API Facturación AFIP/ARCA](/api-factura-electronica-afip-facturacion-ventas), con las siguientes diferencias:&#x20;

### Datos del proveedor

En lugar de enviar el bloque "cliente" debes enviar el bloque "proveedor" con la misma información, como se ve a continuación:

```json
{    
"proveedor": {
        "documento_tipo": "CUIT",
        "razon_social": "Pepsico",
        "email": "vosorio@vousys.com",
        "domicilio": "CONSTITUCION 178",
        "documento_nro": "30537647716",
        "provincia": 2, 
        "condicion_pago": 0,
        "condicion_pago_otra": 0, 
        "condicion_iva": "RI"
    }
}
```

### Productos

Si necesitas que los productos comprados se incorporen como un producto mas en tus listas de precios de venta, debes indicar el campo <mark style="color:purple;">"incluir\_lista\_precios\_venta": "S"</mark>, dentro de cada producto en el bloque "detalle", como se ve a continuación:

```json
"comprobante": 
{
        "detalle": [
            {
                "cantidad": 10,
		"incluir_lista_precios_venta": "S",
                "afecta_stock": "S", 
                "producto": {
	            "lista_precios": "flores",
		    "codigo": "MembrilloJ3",
		    "descripcion": "Membrillo Japones 3",
		    "actualiza_precio": "N",
                    "unidad_bulto": 1,
                    "precio_unitario_sin_iva": 20000,
                    "impuestos_internos_alicuota": 10,
                    "alicuota": 21,
                    "unidad_medida": 7
                },
                "actualiza_precio": "N",
                "bonificacion_porcentaje": 0
            }
        ],

}
```

\
Ejemplo completo de un JSON para generar una compra:

```json
{
    "usertoken": "XXXXXXX",
    "apikey": 0000,
    "apitoken": "XXXXXX",
    "comprobante": {
        "external_reference": "A1",
        "tags": [
            "etiqueta1",
            "etiqueta2"
        ],
        "tipo": "FACTURA A",
        "operacion": "C",
        "punto_venta": "15",
        "fecha": "10/07/2024",
        "vencimiento": "16/07/2024",
        "idioma": 1,
        "numero": 24,
        "moneda": "PES",
        "cotizacion": 1,
        "periodo_facturado_desde": "",
        "periodo_facturado_hasta": "",
        "rubro": "Deudores Varios",
        "rubro_grupo_contable": "COMPRAS",
        "detalle": [
            {
                "cantidad": 10,
		"incluir_lista_precios_venta": "S",
                "afecta_stock": "S", 
                "producto": {
	                "lista_precios": "flores",
			"codigo": "MembrilloJ3",
			"descripcion": "Membrillo Japones 3",
			"actualiza_precio": "N",
                        "unidad_bulto": 1,
                        "precio_unitario_sin_iva": 20000,
                        "impuestos_internos_alicuota": 10,
                        "alicuota": 21,
                        "unidad_medida": 7
                },
                "actualiza_precio": "N",
                "bonificacion_porcentaje": 0
            }
        ],
        "abono": "N",
        "bonificacion": 0,
        "leyenda_gral": " ",
        "comentario": "", 
        "tributos": [
            {
                "tipo": 7,
                "regimen": 6,
                "base_imponible": 1000,
                "alicuota": 3,
                "total": 30
            }
        ],
        "impuestos_internos": "500",
        "impuestos_internos_base": "5000",
        "impuestos_internos_alicuota": "10",
        "total": 242530,
        "pagos": {
            "formas_pago": [
                {
                    "descripcion": "MercadoPago",
                    "importe": "1000"
                },
                {
                    "descripcion": "Efectivo",
                    "importe": "1000"
                }
            ],
            "total": 2000
        }
    },
    "proveedor": {
        "documento_tipo": "CUIT",
        "razon_social": "Pepsico",
        "email": "",
        "domicilio": "CONSTITUCION 178",
        "documento_nro": "30537647716",
        "provincia": 2, 
        "condicion_pago": 0,
        "condicion_pago_otra": 0 ,
        "condicion_iva": "RI"
    }
}
```


# Compras: Eliminación de comprobantes

Utilizá la API de facturación electrónica AFIP de TusFacturas.app, para eliminar tus comprobantes de compra.

Tené en cuenta que las compras que cargas en nuestra plataforma no impactan en AFIP y son sólo para tu gestión interna.

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`comprobante_eliminar`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

Ten en cuenta que solo podrás eliminar comprobantes de compra si no tienen pagos relacionados.&#x20;

#### Request Body

| Name        | Type   | Description                           |
| ----------- | ------ | ------------------------------------- |
| comprobante | object | Según estructura que se detalla abajo |
| apikey      | string | Tus credenciales de acceso            |
| apitoken    | string | Tus Credenciales de acceso            |
| usertoken   | string | Tus Credenciales de acceso            |

### Ejemplo de JSON a enviar para eliminar un comprobante:

```
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"comprobante":  {
                "tipo":                     "NOTA DE DEBITO B",
                "operacion":                "C",
                "punto_venta":              "2",
                "numero":                   "6"
        }
}
```

### Estructura de "comprobante"

| `tipo`        | <p>Campo numérico según tabla de referencia de <a href="https://www.tusfacturas.com.ar/api-factura-electronica-afip.html#tabla-comprobantes">Tipos de comprobantes(\*\*\*)</a>.<br><strong>Ejemplo: FACTURA B</strong></p> |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operacion`   | <p>Campo alfanumérico. Longitud 1 caracter. Indica si envia una factura de de compra (C).<br>Valores Permitidos: <strong>C</strong><br><strong>Ejemplo: C</strong></p>                                                     |
| `punto_venta` | <p>Campo numérico entero. Longitud máxima 4 digitos.<br><strong>Ejemplo: 3</strong></p>                                                                                                                                    |
| `numero`      | <p>Campo numérico entero. Longitud máxima 8 digitos. La numeración será validada internamente previa generación del comprobante.<br><strong>Ejemplo: 4567</strong></p>                                                     |

### Ejemplo del JSON de respuesta

```
{"error":"N",
"errores":[],
"rta":"El comprobante se ha eliminado."}
```


# Recibos de cobro y órdenes de pago

TusFacturasAPP: Crea recibos de cobro para tus cliente y órdenes de pago a tus proveedores personalizados. ¡Ahorra tiempo y dinero!

### **Recibos de cobro y órdenes de pago: ¿Cuál es la diferencia?**

* **Recibo de cobro:** Es un documento que certifica que una persona o empresa ha recibido una cantidad de dinero por un servicio o producto. Es como una "prueba" de que se ha realizado un pago.
* **Orden de pago:** Es una instrucción formal que se emite para realizar un pago. Puede ser una orden para pagar a un proveedor, un empleado o cualquier otra entidad. Es decir, es como una "solicitud" de pago.

Conoce más sobre como se realiza la [gestión fácil de recibos de cobro y órdenes de pago](https://www.tusfacturas.app/caracteristicas-de-tus-facturas-electronica-caja.html), dentro de nuestra plataforma web.

### Servicio API de TusFacturasAPP para generar recibos de cobro y órdenes de pago.

El servicio API de TusFacturasAPP, cuenta con endpoints suficientes para crear recibos de cobro parciales o totales, asi como crear órdenes de pago. Conocé en profundidad cada uno de ellos:&#x20;

* [Ingresar el pago (parcial o total) de un cliente](/recibos-de-cobro-y-ordenes-de-pago/api-factura-electronica-afip-or-ingresar-pago), a un comprobante emitido con anterioridad
* [Crear recibos de cobro](/recibos-de-cobro-y-ordenes-de-pago/api-factura-electronica-afip-or-ingresar-pago-1), a planes de cuentas que tengas definidos en la plataforma
* [Crear órdenes de pago](/recibos-de-cobro-y-ordenes-de-pago/api-factura-electronica-afip-or-ingresar-pago-2), a planes de cuentas que tengas definidos en la plataforma (con excepción de pago a proveedores)


# Ingresar pago a un comprobante emitido

TusFacturasAPP: ¡Más que facturas! Gestiona tus cobros, actualiza saldos y optimiza tu flujo de caja con nuestra API para generar recibos de cobro.

{% hint style="info" %}
Datos a tener en cuenta

* Los cobros que informes, se usan solo para la gestión interna de nuestra plataforma y tu cliente no lo verá reflejado en el PDF del comprobante que emitiste, ya que el único objetivo que tiene éste bloque es nutrir la cuenta corriente de tu cliente, con el pago realizado.
* **NO** podrás enviar los siguientes medios de pago: "cheques" y ni "retenciones".
* Se realizara una validación del total que se indique, contra la sumatoria de los medios de pago detallados
* El total de los pagos **NO** debe superar el importe total del comprobante, pero si puede ser inferior, para indicar que el comprobante recibió un pago parcial.
  {% endhint %}

### Ingresar pagos a un comprobante emitido

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/facturacion/`<mark style="color:purple;">`pagar`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name        | Type   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| apitoken    | String | Tus credenciales de acceso                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| apikey      | String | Tus credenciales de acceso                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| usertoken   | String | Tus credenciales de acceso                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| comprobante | object | <p>Un objeto compuesto de los siguientes atributos: </p><p><strong>tipo:</strong> Campo alfanumérico. Longitud máx: 50 caracteres, conteniendo el tipo de comprobante a consultar. Ej: FACTURA A </p><p><strong>operacion :</strong> Campo alfanumérico. Longitud máx: 1 carácter. Valores permitidos (V o C) ya sea para ventas o compras.</p><p><strong>punto\_venta</strong> Campo númerico para indicar el número del punto de venta.</p><p><strong>numero :</strong> Campo numérico. Longitud máx: 8. Indica el número del comprobante a consultar.</p><p><strong>pagos</strong>: Bloque según estructura que se detalla a continuación</p><p></p> |

### Ejemplo del JSON completo a enviar

```
{
	"apitoken": "xxxx",
	"apikey": xxxx,
	"usertoken": "xxxx",
	 
	"comprobante": 
	{
		"tipo": "FACTURA A",
		"operacion": "V",
		"punto_venta": "00010",
		"numero": "00000109", 
		"pagos" : 
		      {
			"formas_pago" : [ 
				{"descripcion" : "VISA", "importe" : 200},
				{"descripcion" : "MercadoPago", "importe" : 1000}				
					], 
			"total": 1200
			}
	}
}
 
```

### Estructura del objeto "comprobante

| Nombre del campo | Tipo de dato                                                                                                                                      |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| tipo             | <p>Campo numérico según tabla de referencia de Tipos de comprobantes(\*\*\*).</p><p>Ejemplo: FACTURA B</p>                                        |
| punto\_venta     | <p>Campo numérico entero.</p><p>Longitud máxima 5 dígitos.</p><p>Ejemplo: 3</p>                                                                   |
| numero           | <p>Campo numérico entero.</p><p>Longitud máxima 8 digitos.</p>                                                                                    |
| operacion        | <p>Campo alfanumérico.</p><p>Longitud 1 carácter.</p><p>Indica si envía una factura de venta (V) o de compra (C).</p><p>Valores Permitidos: V</p> |
| pagos            | Según estructura que se detalla a continuación                                                                                                    |

```
{
	  
	"comprobante": 
	{
		"tipo": "FACTURA A",
		"operacion": "V",
		"punto_venta": "00010",
		"numero": "00000109", 
		"pagos" : { .... }
	}
}
```

### Estructura del objeto pagos

| nombre del campo | Requerido | Detalle                                                                                                  |
| ---------------- | --------- | -------------------------------------------------------------------------------------------------------- |
| formas\_pago     | SI        | array con multiples items, según estructura que se detalla a continuación                                |
| total            | SI        | <p>Campo numérico con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></p> |

Información de los campos que componen el **array de pagos > formas\_pago**

| nombre del campo | Requerido | Detalle                                                                                                                                                                                              |
| ---------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| descripcion      | SI        | <p>El nombre del medio de pago elegido para cancelar el comprobante. 255 caracteres max.</p><p>En caso que el medio de pago, no exista en nuestra plataforma, será dado de alta automáticamente.</p> |
| importe          | SI        | <p>Campo numérico con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></p>                                                                                             |

Ejemplo del JSON a enviar.

{% code title="JSON" %}

```
comprobante: {
   .... 
   "pagos" : 
   {
	"formas_pago" : [ 
			{"descripcion" : "VISA DB", "importe" : 0.6},
			{"descripcion" : "MercadoPago", "importe" : 50}
			], 
	"total": 50.6
   }, 
 }
```

{% endcode %}

### Ejemplo del JSON completo a enviar

```
{
	"apitoken": "xxxx",
	"apikey": xxxx,
	"usertoken": "xxx",
	 
	"comprobante": 
	{
		"tipo": "FACTURA A",
		"operacion": "V",
		"punto_venta": "00010",
		"numero": "00000109", 
		"pagos" : 
		      {
			"formas_pago" : [ 
				{"descripcion" : "VISA", "importe" : 200},
				{"descripcion" : "MercadoPago", "importe" : 1000}				
					], 
			"total": 1200
			}
	}
}
 
```

### Respuesta JSON

```
{
	"error": "S",
	"errores":  ["Error 2"],
}
```

En caso de éxito:

```
{
	"error": "N",
	"errores": [],
}
```


# Generar un recibo de cobro

Mediante ésta función, podrás ingresar dinero asignado a diferentes planes de cuenta que existan en tu espacio de trabajo, e impacten en las diferentes cajas

{% hint style="info" %}
Los cobros que informes, se usan solo para la gestión interna de nuestra plataforma y no podrás generar dentro de éste método, cobros por comprobantes que emitiste a tus clientes, para eso debes usar el método de "[Ingresar pago a un comprobante emitido](#ingresar-pagos-a-un-comprobante-emitido)"
{% endhint %}

### Generar recibos de cobro

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/caja/`<mark style="color:purple;">`nuevo`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name               | Type   | Description                                                                                                                                                                                                             |
| ------------------ | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| apitoken           | String | Tus credenciales de acceso                                                                                                                                                                                              |
| apikey             | String | Tus credenciales de acceso                                                                                                                                                                                              |
| usertoken          | String | Tus credenciales de acceso                                                                                                                                                                                              |
| tipo               | string | Deberás enviar el valor "RC"                                                                                                                                                                                            |
| fecha              | string | Campo en formato fecha dd/mm/aaaa que indica la fecha en que llevará el recibo de cobro                                                                                                                                 |
| cuenta\_principal  | string | Campo alfanumérico de hasta 255 caracteres. El nombre de la cuenta principal a la que aplicarás éste recibo de cobro. La misma debe existir en los parámetros de tu espacio de trabajo.                                 |
| cuenta\_secundaria | string | Campo alfanumérico de hasta 255 caracteres. El nombre de la cuenta secundaria (relacionada con la principal) a la que aplicarás éste recibo de cobro. La misma debe existir en los parámetros de tu espacio de trabajo. |
| comentario         | string | OPCIONAL. Campo alfanumérico de hasta 255 caracteres, que quedará registrado como un comentario interno                                                                                                                 |
| leyenda            | string | OPCIONAL. Campo alfanumérico de hasta 255 caracteres, que quedará registrado como leyenda y saldrá impreso en el PDF del recibo, en caso que desees generarlo.                                                          |
| pagos              | string | Según estructura que se detalla a continuación                                                                                                                                                                          |

{% hint style="info" %}

## Datos a tener en cuenta

* **NO** podrás enviar los siguientes medios de pago: "cheques" y ni "retenciones".
* No podrás usar éste método para generar recibos de cobro por facturas emitidas. Para eso debes usar el método de "[Ingresar pago a un comprobante emitido](#ingresar-pagos-a-un-comprobante-emitido)"
* Se realizara una validación del total que se indique, contra la sumatoria de los medios de pago detallados
  {% endhint %}

### Ejemplo del JSON completo a enviar

```
{
	"apitoken": "xxxx",
	"apikey": xxxx,
	"usertoken": "xxxx", 
	"tipo": "RC",
	"fecha": "25/03/2022",
	"cuenta_principal": "Comisiones" ,
	"cuenta_secundaria": "Comisiones por ventas",
	"comentario": "",
	"leyenda": "",
	"pagos": { 			
				"formas_pago": [
					{"descripcion": "AMEX", "importe": "40"},
				  	{"descripcion": "VISA", "importe": "30"},
					{"descripcion": "efectivo", "importe": "5"},
					{"descripcion": "MasterCard", "importe": "30"}
					
					
				],
			 "total": 105
		} 
}
 
```

### Estructura del objeto pagos

| nombre del campo | Requerido | Detalle                                                                                                  |
| ---------------- | --------- | -------------------------------------------------------------------------------------------------------- |
| formas\_pago     | SI        | array con multiples items, según estructura que se detalla a continuación                                |
| total            | SI        | <p>Campo numérico con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></p> |

Información de los campos que componen el **array de pagos > formas\_pago**

| nombre del campo | Requerido | Detalle                                                                                                                                                                  |
| ---------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| descripcion      | SI        | <p>El nombre del medio de pago elegido . 255 caracteres max.</p><p>En caso que el medio de pago, no exista en nuestra plataforma, será dado de alta automáticamente.</p> |
| importe          | SI        | <p>Campo numérico con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></p>                                                                 |

### Respuesta JSON

```
{
	"error": "S",
	"errores":  ["Error 2"],
}
```

En caso de éxito:

```
{
	"error": "N",
	"errores": [],
}
```


# Generar una orden de pago

Mediante ésta función, podrás generar órdenes de pago, asignado a diferentes planes de cuenta que existan en tu espacio de trabajo, e impacten en las diferentes cajas.

{% hint style="info" %}
Las órdenes de pago que informes, se usan solo para la gestión interna de nuestra plataforma y no podrás generar dentro de éste método, órdenes de pago por comprobantes que tus proveedores te emitieron.
{% endhint %}

### Generar órdenes de pago&#x20;

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/caja/`<mark style="color:purple;">`nuevo`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name               | Type   | Description                                                                                                                                                                                                             |
| ------------------ | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| apitoken           | String | Tus credenciales de acceso                                                                                                                                                                                              |
| apikey             | String | Tus credenciales de acceso                                                                                                                                                                                              |
| usertoken          | String | Tus credenciales de acceso                                                                                                                                                                                              |
| tipo               | string | Deberás enviar el valor "OP"                                                                                                                                                                                            |
| fecha              | string | Campo en formato fecha dd/mm/aaaa que indica la fecha en que llevará el recibo de cobro                                                                                                                                 |
| cuenta\_principal  | string | Campo alfanumérico de hasta 255 caracteres. El nombre de la cuenta principal a la que aplicarás éste recibo de cobro. La misma debe existir en los parámetros de tu espacio de trabajo.                                 |
| cuenta\_secundaria | string | Campo alfanumérico de hasta 255 caracteres. El nombre de la cuenta secundaria (relacionada con la principal) a la que aplicarás éste recibo de cobro. La misma debe existir en los parámetros de tu espacio de trabajo. |
| comentario         | string | OPCIONAL. Campo alfanumérico de hasta 255 caracteres, que quedará registrado como un comentario interno                                                                                                                 |
| leyenda            | string | OPCIONAL. Campo alfanumérico de hasta 255 caracteres, que quedará registrado como leyenda y saldrá impreso en el PDF del recibo, en caso que desees generarlo.                                                          |
| pagos              | string | Según estructura que se detalla a continuación                                                                                                                                                                          |

{% hint style="info" %}

## Datos a tener en cuenta

* **NO** podrás enviar los siguientes medios de pago: "cheques" y ni "retenciones".
* Se realizara una validación del total que se indique, contra la sumatoria de los medios de pago detallados
  {% endhint %}

### Ejemplo del JSON completo a enviar

```
{
	"apitoken": "xxxx",
	"apikey": xxxx,
	"usertoken": "xxxx", 
	"tipo": "OP",
	"fecha": "25/03/2022",
	"cuenta_principal": "Gastos de oficina" ,
	"cuenta_secundaria": "Moviliario",
	"comentario": "",
	"leyenda": "",
	"pagos": { 			
				"formas_pago": [
					{"descripcion": "AMEX", "importe": "40"},
				  	{"descripcion": "VISA", "importe": "30"},
					{"descripcion": "efectivo", "importe": "5"},
					{"descripcion": "MasterCard", "importe": "30"}
					
					
				],
			 "total": 105
		} 
}
 
```

### Estructura del objeto pagos

| nombre del campo | Requerido | Detalle                                                                                                  |
| ---------------- | --------- | -------------------------------------------------------------------------------------------------------- |
| formas\_pago     | SI        | array con multiples items, según estructura que se detalla a continuación                                |
| total            | SI        | <p>Campo numérico con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></p> |

Información de los campos que componen el **array de pagos > formas\_pago**

| nombre del campo | Requerido | Detalle                                                                                                                                                                 |
| ---------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| descripcion      | SI        | <p>El nombre del medio de pago elegido. 255 caracteres max.</p><p>En caso que el medio de pago, no exista en nuestra plataforma, será dado de alta automáticamente.</p> |
| importe          | SI        | <p>Campo numérico con 2 decimales. separador de decimales: punto<br><strong>Ejemplo: 645.67</strong></p>                                                                |

### Ejemplo del JSON a enviar.

{% code title="JSON" %}

```
{
   .... 
   "pagos" : 
   {
	"formas_pago" : [ 
			{"descripcion" : "VISA DB", "importe" : 0.6},
			{"descripcion" : "MercadoPago", "importe" : 50}
			], 
	"total": 50.6
   }, 
 }
```

{% endcode %}

### Respuesta JSON

```
{
	"error": "S",
	"errores":  ["Error 2"],
}
```

En caso de éxito:

```
{
	"error": "N",
	"errores": [],
}
```


# Cuentas corrientes de clientes

Conoce el estado de cuenta de tus clientes en tiempo real con nuestra API TusFacturasAPP. ¡Simplifica tu gestión!

### **¿Qué es una cuenta corriente de cliente?**

Una **cuenta corriente de cliente** es un registro que una empresa lleva de las transacciones financieras que realiza con cada uno de sus clientes. En esta cuenta se detalla todo lo relacionado con las ventas a crédito, los pagos recibidos y el saldo pendiente que el cliente tiene con la empresa.

**En otras palabras,** es como un mini-estado de cuenta personalizado para cada cliente, donde se puede ver a simple vista cuánto debe, cuánto ha pagado y cuándo.

#### **¿Para qué sirve la cuenta corriente?**

* **Control de deudas:** Permite a la empresa tener un control preciso de las deudas de cada cliente, evitando pérdidas por pagos no realizados.
* **Facturas y pagos:** Se utiliza para emitir facturas y registrar los pagos recibidos, manteniendo un historial completo de las transacciones.
* **Análisis financiero:** Ayuda a la empresa a analizar la situación financiera de sus clientes y tomar decisiones más informadas, como por ejemplo, ofrecer condiciones de pago especiales.

**En resumen,** la cuenta corriente de cliente es una herramienta fundamental para gestionar las relaciones comerciales y asegurar la cobranza de las ventas a crédito. Conoce como TusFacturasAPP realiza una [gestión fácil de clientes](https://www.tusfacturas.app/caracteristicas-de-tus-facturas-electronica-clientes.html).

### Servicio API de consulta de cuenta corriente de clientes:

Utilizando el servicio de consulta de cuentas corrientes la API de TusFacturasAPP podrás obtener en tiempo real la información del estado de deuda de tu cliente.

* [Consultar la cuenta corriente de cada uno de tus clientes](/cuentas-corrientes-de-clientes/api-factura-electronica-afip-clientes-cuenta-corriente)


# Consulta de Cuentas Corrientes

Consulta desde la API de  TusFacturas.app, la cuenta corriente de tus clientes.

### Consulta de cuenta corriente

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`clientes/cuenta-corriente`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                                                                   |
| --------- | ------ | ----------------------------------------------------------------------------- |
| cliente   | object | <p><strong>documento\_tipo</strong></p><p><strong>documento\_nro</strong></p> |
| usertoken | string | Tus credenciales de acceso                                                    |
| apikey    | string | Tus credenciales de acceso                                                    |
| apitoken  | string | Tus credenciales de acceso                                                    |

### Ejemplo del JSON que debes enviar

```
{
    "usertoken" :  "xxxx",
    "apikey"    :  "xxxx",    
    "apitoken"  :  "xxxx",    
    "cliente":  {       
      "documento_nro":    "30712293841",
      "documento_tipo":   "CUIT"
      }
  }
```

### Estructura de "Cliente"

| `documento_tipo` | <p>Valores Permitidos: <strong>CUIT</strong><br><strong>Ejemplo: CUIT</strong></p>     |
| ---------------- | -------------------------------------------------------------------------------------- |
| `documento_nro`  | <p>Campo numérico, sin puntos ni guiones.<br><strong>Ejemplo: 30111222334</strong></p> |

### Estructura de los datos devueltos

Se devolverá una lista, conteniendo la siguiente estructura, con cada uno de los registros de la cuenta corriente de tu cliente.

```
    {
        "fecha":"11\/05\/2017",
        "concepto":"FACTURA A 0002-00000002 (CUIT DE PRUEBA)",
        "debe":112.1,
        "haber":0,
        "resta_abonar_de_este_comprobante":112.1,
        "saldo":224.2
    }
```


# Productos

Gestiona tus productos con facilidad y eficiencia con nuestra API de productos, incluida en nuestra API para facturación AFIP.

### **Nuestra API de productos le permite:**

* [Crear nuevos productos](/productos/administrar-productos) con rapidez y sencillez.
* [Modificar](/productos/administrar-productos) fácilmente la información de productos existentes.
* [Consultar ](/productos/consultar-productos)y obtener información detallada sobre cada producto.
* [Listar](/productos/listar-productos) todos los productos
* [Ingresar unidades](/productos/gestion-de-stock) al stock
* [Quitar unidades](/productos/gestion-de-stock) del stock

### **Beneficios de utilizar nuestra API de productos:**

* Ahorras tiempo y esfuerzo automatizando la gestión de productos.
* Mejoras la eficiencia de tu negocio con un acceso rápido y preciso a la información de productos.
* Integras la gestión de productos con tus sistemas existentes para una experiencia fluida.

**Nuestra API de productos es la solución ideal para empresas de todos los tamaños que buscan optimizar su gestión de productos.**

**Comenza a utilizar nuestra API de productos hoy mismo y experimenta la diferencia.**


# Administrar productos

Gestiona tus productos con facilidad y eficiencia con nuestra API de productos, incluida en nuestra API para facturación AFIP.

### Agregá o modificá productos

Éste método te permite enviar un lote de hasta 50 productos ya sea para darlos de alta o para modificarlos.&#x20;

{% hint style="info" %}

### ¿Qué debes tener en cuenta?

* El código de producto debe ser único dentro de la lista de precios
* Al modificar un producto, se utilizará como clave de búsqueda el campo "codigo" +  "lista de precios"
* Podes enviar hasta 50 productos por request.
* El JSON a enviar es el mismo tanto para el alta como para la modificación, solo se debe  cambiar el valor del campo "operacion".
* stock\_actual: Éste campo solo será utilizado en el alta del producto, cuando el campo  "afecta\_stock" = "S".  Luego de crear el producto se incorporarán al stock las unidades indicadas.
  {% endhint %}

### Endpoint

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`productos/administrar`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                                                                        |
| --------- | ------ | ---------------------------------------------------------------------------------- |
| productos | array  | **Una lista de objetos "**[**producto**](#estructura-de-cada-producto)**"**        |
| usertoken | string | Tus credenciales de acceso                                                         |
| apikey    | string | Tus credenciales de acceso                                                         |
| apitoken  | string | Tus credenciales de acceso                                                         |
| operacion | string | Valores posibles: "A" para agregar nuevos productos o "M" para modificar productos |

### Ejemplo del JSON que debes enviar

<pre><code>{
    "usertoken": "xxxx",
    "apikey": "xxxx",
    "apitoken": "xxxx",
    "operacion": "A",
<strong>    "productos": [
</strong>        {
            "descripcion": "Tren de carga P#1",
            "unidad_bulto": "1",
            "lista_precios": "Trenes",
            "codigo": "tren10384",
            "precio_unitario_sin_iva": 1000,
            "alicuota": 21,
            "impuestos_internos_alicuota": 0,
            "moneda": "DOL",
            "codbar": "123213213213",
            "rg5329": "S",
            "unidad_medida": "7",
            "afecta_stock": "N",
            "stock_actual": 0,
            "stock_minimo": 100
        },
        {
            "descripcion": "Camion de arena",
            "unidad_bulto": "1",
            "lista_precios": "Camiones",
            "codigo": "Cam01",
            "precio_unitario_sin_iva": 1000,
            "alicuota": 21,
            "moneda": "PES",
            "codbar": "",
            "impuestos_internos_alicuota": 45,
            "unidad_medida": "7",
            "afecta_stock": "S",
            "stock_actual": 154,
            "stock_minimo": 500
        }
    ]
}
</code></pre>

### Estructura de cada "producto"

<table data-header-hidden><thead><tr><th></th><th></th><th data-type="checkbox">¿Requerido?</th></tr></thead><tbody><tr><td><code>descripcion</code></td><td>Campo alfanumerico de hasta 255 caracteres.</td><td>true</td></tr><tr><td><code>codigo</code></td><td>Campo alfanumerico de hasta 50 caracteres.</td><td>true</td></tr><tr><td>lista_precios</td><td>Campo alfanumerico de hasta 255 caracteres.</td><td>true</td></tr><tr><td>unidad_bulto</td><td>Valor nlumerico entero.</td><td>true</td></tr><tr><td>precio_unitario_sin_iva</td><td>Valor numerico con hasta 3 decimales. Separador de decimales: punto</td><td>true</td></tr><tr><td>alicuota</td><td>Valor según tabla de referencia: "<a href="/parametros/tablas-de-referencia#alicuotas-de-iva">Alicuotas</a>" </td><td>true</td></tr><tr><td>moneda</td><td>Valores posibles: "PES" para indicar "Pesos argentinos" o "DOL" para indicar "Dolares"</td><td>true</td></tr><tr><td>codbar</td><td>Campo alfanumerico de hasta 255 caracteres.</td><td>false</td></tr><tr><td>impuestos_internos_alicuota</td><td>Valor numérico con hasta 2 decimales. Separador de decimales: punto</td><td>false</td></tr><tr><td>unidad_medida</td><td>Valor según tabla de referencia: "<a href="/parametros/consulta-de-unidades-de-medida-para-productos-afip">Unidades de medida"</a></td><td>false</td></tr><tr><td>afecta_stock</td><td>Valores posibles: "S" o "N" </td><td>true</td></tr><tr><td>stock_actual</td><td>Valor numérico entero. Éste campo se utiliza solo en el alta de productos</td><td>false</td></tr><tr><td>stock_minimo</td><td> Valor numérico entero.</td><td>false</td></tr></tbody></table>

### ¿Qué te retorna en cada llamada?

Se devolverá una lista, en el mismo orden en que se recibió, conteniendo la siguiente estructura:

```
    {
	"error": "N",
	"errores": [],
	"productos": [
		{
			"codigo": "tren10384",
			"lista_precios": "Trenes",
			"error": "N",
			"errores": []
		},
		{
			"codigo": "Cam01",
			"lista_precios": "Camiones",
			"error": "S",
			"errores": [
				"Ya existe un producto en esa lista de precios con el codigo: Cam01. No se agregara."
			]
		}
	]
}
```


# Consultar productos

Gestiona tus productos con facilidad y eficiencia con nuestra API de productos.

### Consultá productos

Éste método te permite enviar un lote de hasta 50 productos para consultar.

{% hint style="info" %}

### ¿Qué debes tener en cuenta?

* El código de producto debe ser único dentro de la lista de precios
* Podes enviar hasta 50 productos por request.

{% endhint %}

### Endpoint

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`productos/consultar`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                                                                 |
| --------- | ------ | --------------------------------------------------------------------------- |
| productos | array  | **Una lista de objetos "**[**producto**](#estructura-de-cada-producto)**"** |
| usertoken | string | Tus credenciales de acceso                                                  |
| apikey    | string | Tus credenciales de acceso                                                  |
| apitoken  | string | Tus credenciales de acceso                                                  |

### Ejemplo del JSON que debes enviar

```
{
    "usertoken": "xxxx",
    "apikey": "xxxx",
    "apitoken": "xxxx",
    "productos": [
        {
            "lista_precios": "Trenes",
            "codigo": "tren10384"
        },
        {
            "lista_precios": "Camiones",
            "codigo": "Cam01"
        }
    ]
}
```

### ¿Qué te retorna en cada llamada?

Se devolverá una lista, en el mismo orden en que se recibió, conteniendo la siguiente estructura:

```
    {
    "error": "N",
    "errores": [], 
    "productos": [
        {
            "error": "N",
            "errores": [],
            "descripcion": "Tren de carga P#1",
            "unidad_bulto": "1",
            "lista_precios": "Trenes",
            "codigo": "tren10384",
            "precio_unitario_sin_iva": 1000,
            "alicuota": 21,
            "impuestos_internos_alicuota": 0,
            "moneda": "DOL",
            "codbar": "123213213213",
            "rg5329": "S",
            "unidad_medida": "7",
            "afecta_stock": "N",
            "stock_actual": 0,
            "stock_minimo": 100
        },
        {
            "error": "N",
            "errores": [],
            "descripcion": "Camion de arena",
            "unidad_bulto": "1",
            "lista_precios": "Camiones",
            "codigo": "Cam01",
            "precio_unitario_sin_iva": 1000,
            "alicuota": 21,
            "moneda": "PES",
            "codbar": "",
            "impuestos_internos_alicuota": 0,
            "unidad_medida": "7",
            "afecta_stock": "S",
            "stock_actual": 154,
            "stock_minimo": 500
        }
    ]
}

```


# Listar productos

Gestiona tus productos con facilidad y eficiencia con nuestra API de productos.

### Lista tus productos

Éste método te permite consultar todos los productos/servicios registrados y mantener un sincronismo entre tu plataforma y TusFacturasAPP.

### Endpoint

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`productos/listar`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name            | Type     | Description                                                                       |
| --------------- | -------- | --------------------------------------------------------------------------------- |
| orden\_criterio | string   | Un solo valor a enviar. Valores permitidos:  fecha\_creacion, descripcion, codigo |
| orden           | string   | Valores permitidos: ASC, DESC                                                     |
| pagina          | numérico | Inicia en 0.                                                                      |
| limite          | numerico | Numerico. Máximo: 1000                                                            |
| usertoken       | string   | Tus credenciales de acceso                                                        |
| apikey          | string   | Tus credenciales de acceso                                                        |
| apitoken        | string   | Tus credenciales de acceso                                                        |

{% hint style="info" %}
**Datos a tener en cuenta:**

* La información se obtiene paginada. La pagina inicial es 0.
* El limite máximo de registros por consulta es 1000.
* El criterio de orden solo puede ser un valor&#x20;
  {% endhint %}

### Ejemplo del JSON que debes enviar

```
{
    "usertoken": "xxxx",
    "apikey": "xxxx",
    "apitoken": "xxxx",
    "orden_criterio": "fecha_creacion", 
     "orden": "DESC",
     "limite": 10,
     "pagina": 5
}
```

### ¿Qué te retorna en cada llamada?

| Nombre del campo | Info                                                                                                                                     |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| error            | Campo alfanumerico. Valores posibles "S" o "N"                                                                                           |
| errores          | Array conteniendo la lista de errores detectados                                                                                         |
| total            | Campo numérico, que indica la cantidad de registros encontrados con los parámetros indicados, sin aplicarle la paginación ni limitación. |
| productos        | Array conteniendo cada uno de los productos encontrados                                                                                  |
|                  |                                                                                                                                          |

Se devolverá una lista,  conteniendo la siguiente estructura:

```
    {
    "error": "N",
    "errores": [], 
    "total": 20133,
    "productos": [
        {
            "error": "N",
            "errores": [],
            "descripcion": "Tren de carga P#1",
            "unidad_bulto": "1",
            "lista_precios": "Trenes",
            "codigo": "tren10384",
            "precio_unitario_sin_iva": 1000,
            "alicuota": 21,
            "impuestos_internos_alicuota": 0,
            "moneda": "DOL",
            "codbar": "123213213213",
            "rg5329": "S",
            "unidad_medida": "7",
            "afecta_stock": "N",
            "stock_actual": 0,
            "stock_minimo": 100
        },
        {
            "error": "N",
            "errores": [],
            "descripcion": "Camion de arena",
            "unidad_bulto": "1",
            "lista_precios": "Camiones",
            "codigo": "Cam01",
            "precio_unitario_sin_iva": 1000,
            "alicuota": 21,
            "moneda": "PES",
            "codbar": "",
            "impuestos_internos_alicuota": 0,
            "unidad_medida": "7",
            "afecta_stock": "S",
            "stock_actual": 154,
            "stock_minimo": 500
        }
    ]
}

```


# Gestión de stock

Simplifica la gestión de negocio y gestiona el stock con nuestra API para productos incluida en nuestra API para facturación AFIP

### Administra el stock

Nuestra API ofrece endpoints para crear, leer y eliminar movimientos de stock. Integra nuestra solución a tu aplicación y accede a funcionalidades como consulta de stock en tiempo real, generación de reportes y gestión de alertas de bajo stock desde nuestra plataforma web. Conoce más sobre cómo se realizar la [gestión de stock](https://www.tusfacturas.app/caracteristicas-de-tus-facturas-electronica-stock.html).&#x20;

{% hint style="info" %}

### ¿Qué debes tener en cuenta?

* El código de producto debe ser único dentro de la lista de precios, sin embargo no realizamos ningúna válidación de nuestro lado con relación a ésto.
* El método es el mismo tanto para el alta de unidades al stock, como para la baja de unidades. Se utliza el campo "operacion" para distinguirlo.
* Podes enviar hasta 50 productos por request.

{% endhint %}

### Endpoint

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`productos/stock`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                                                                            |
| --------- | ------ | -------------------------------------------------------------------------------------- |
| productos | array  | **Una lista de objetos "**[**producto**](#estructura-de-cada-producto)**"**            |
| usertoken | string | Tus credenciales de acceso                                                             |
| apikey    | string | Tus credenciales de acceso                                                             |
| apitoken  | string | Tus credenciales de acceso                                                             |
| operacion | string | Valores posibles:  "A" = Alta de unidades al stock ó "B" = "Baja de unidades al stock" |

### Ejemplo del JSON que debes enviar

```
{
    "usertoken": "xxxx",
    "apikey": "xxxx",
    "apitoken": "xxxx",
    "operacion": "A",
    "productos": [
        {
            "lista_precios": "Trenes",
            "codigo": "tren10384",
            "cantidad": 140
        },
        {
            "lista_precios": "Camiones",
            "codigo": "Cam01",
            "cantidad": 30
        }
    ]
}
```

### ¿Qué te retorna en cada llamada?

Se devolverá una lista, en el mismo orden en que se recibió, conteniendo la siguiente estructura:

```
{
	"error": "N",
	"errores": [],
	"productos": [
		{
			"lista_precios": "Trenes",
			"codigo": "tren10384",
			"error": "S",
			"errores": [
				"No existen productos que afecten el stock con el codigo enviado:tren10384"
			]
		},
		{
			"codigo": "Cam01",
			"lista_precios": "Camiones",
			"stock_actual": 204,
			"stock_minimo": 500,
			"error": "N",
			"errores": []
		}
	]
}

```


# Consultas a padrones oficiales

Consulta desde la API de facturación electrónica de TusFacturas.app, los diferentes padrones con los que tenemos conexión

## API de consulta a padrones ARBA y AGIP

Consultá desde la API de facturación electrónica de TusFacturas.app, las diferentes alícuotas de tus clientes, dentro de los siguientes padrones:

* [Padrón sujetos de recaudación de ARBA](/consultas-a-padrones-oficiales/api-factura-electronica-afip-consulta-de-alicuotas-en-padron-arba-sujetos-recaudacion)
* [Padrón régimen general de AGIP](/consultas-a-padrones-oficiales/api-factura-electronica-afip-consulta-de-alicuotas-en-padron-agip.)


# Consultar las alícuotas, en el padrón ARBA sujetos recaudación

Consulta desde la API de facturación electrónica de TusFacturas.app, las alícuotas existentes en el padrón ARBA sujetos recaudación

### Consulta en padrón ARBA

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`clientes/arba-padron`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

El método te devolverá las alícuotas (en porcentajes) que le corresponden según ARBA **para el mes en curso.**

#### Request Body

| Name      | Type   | Description                                                                                                                                                                                                                                         |
| --------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| cliente   | object | <p>Un objeto conteniendo los siguientes datos:</p><p><strong>documento\_tipo</strong></p><p>Valores Permitidos: CUIT , DNI Ejemplo: DNI</p><p><strong>documento\_nro</strong></p><p>Campo numérico, sin puntos ni guiones. Ejemplo: 30111222334</p> |
| usertoken | string | Tus credenciales de acceso.                                                                                                                                                                                                                         |
| apitoken  | string | Tus credenciales de acceso.                                                                                                                                                                                                                         |
| apikey    | string | Tus credenciales de acceso                                                                                                                                                                                                                          |

{% hint style="info" %}
CUITS con alícuota cero:

En el supuesto caso que la consulta te retorne alícuota cero, deberás evaluar con tu contador/a si corresponde o no, aplicar el porcentaje máximo a retener/percibir
{% endhint %}

### Estructura del JSON a enviar

```
{
"usertoken" :  "xxxxx",
"apikey"    :  "xxx",
"apitoken"  :  "xxxxx",
"cliente":  {                
      "documento_nro":    "30712293841",
      "documento_tipo":   "CUIT"        
           }
 }
```

### Estructura de "Cliente"

| `documento_tipo` | <p>Valores Permitidos: <strong>CUIT , DNI</strong><br><strong>Ejemplo: DNI</strong></p> |
| ---------------- | --------------------------------------------------------------------------------------- |
| `documento_nro`  | <p>Campo numérico, sin puntos ni guiones.<br><strong>Ejemplo: 30111222334</strong></p>  |

### Ejemplo de respuesta: Cuando se encuentra información en el padrón

```
{
   "error":     "N",
   "existe_padron":     "S",
   "errores":  [  "" ],
   "rta":      "OK",
   "alicuota_percepcion": 3,
   "alicuota_retencion":  5,
}
```

### Ejemplo de respuesta: Cuando no existen datos en el padrón

```
{
   "error":     "N",
   "existe_padron":     "N",
   "errores":  [  "" ],
   "rta":      "OK",
   "alicuota_percepcion": 0,
   "alicuota_retencion":  0,
}
```

### Ejemplo de respuesta: Cuando el cliente no existe en tu base de clientes.

```
{
   "error":     "S",
   "existe_padron":     "-",
   "errores":  [  "El cliente no existe en tu cartera" ],
   "rta":      "OK",
   "alicuota_percepcion": 0,
   "alicuota_retencion":  0,
}
```


# Consultar las alícuotas en AGIP Padrón de Regímenes Generales

Consulta desde la API de facturación electrónica de TusFacturas.app, las alícuotas existentes en el padrón AGIP Padrón de Regímenes Generales (Cod. de Norma 029)

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`clientes/agip-padron`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

El método te devolverá las alícuotas (en porcentaj) que le corresponden según AGIP **para el mes en curso.**

#### Request Body

| Name      | Type   | Description                                                                                                                                                                                                                                                |
| --------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| cliente   | object | <p>Un objeto conteniendo los siguientes datos:</p><p><strong>documento\_tipo</strong></p><p>Valores Permitidos: CUIT , DNI Ejemplo: DNI</p><p><strong>documento\_nro</strong></p><p>Campo numérico, sin puntos ni guiones. Ejemplo: 30111222334</p><p></p> |
| usertoken | string | Tus credenciales de acceso.                                                                                                                                                                                                                                |
| apitoken  | string | Tus credenciales de acceso.                                                                                                                                                                                                                                |
| apikey    | string | Tus credenciales de acceso                                                                                                                                                                                                                                 |

{% hint style="info" %}
CUITS con alícuota cero:

En el supuesto caso que la consulta te retorne alícuota cero, deberás evaluar si corresponde o no, aplicar el porcentaje máximo a retener/percibir.

Previo al 01/01/2019, éste padrón podía ser descargado públicamente desde la web de AGIP, pero ahora se realiza únicamente una consulta individual accediendo con clave ciudad; motivo por el cual, nuestra plataforma no puede retornarte la información exacta.

Ten en cuenta que solo almacenamos la información descargada desde AGIP para el mes actual. No podrás consultar meses anteriores.
{% endhint %}

## Estructura del JSON a enviar

```
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxxx",
"cliente":  {                
      "documento_nro":    "30712293841",
      "documento_tipo":   "CUIT"        
           }
 }
```

## Estructura de "Cliente"

| `documento_tipo` | Valores Permitidos: **CUIT**                                    |
| ---------------- | --------------------------------------------------------------- |
| `documento_nro`  | Campo numérico, sin puntos ni guiones. **Ejemplo: 30111222334** |
|                  |                                                                 |

{% tabs %}
{% tab title="Respuesta" %}

```
Ejemplo de cuando existe en padron AGIP

{
   "error":     "N",
   "existe_padron":     "S",
   "errores":  [  "" ],
   "rta":      "OK",
   "alicuota_percepcion": 3,
   "alicuota_retencion":  5,
}



Ejemplo de cuando NO existe en padron AGIP

{
   "error":     "N",
   "existe_padron":     "N",
   "errores":  [  "" ],
   "rta":      "OK",
   "alicuota_percepcion": 0,
   "alicuota_retencion":  0,
}



Ejemplo de cuando NO existe en tu base de clientes

{
   "error":     "S",
   "existe_padron":     "-",
   "errores":  [  "El cliente no existe en tu cartera" ],
   "rta":      "OK",
   "alicuota_percepcion": 0,
   "alicuota_retencion":  0,
}




```

{% endtab %}
{% endtabs %}


# Mi cuenta

Integra la API AFIP y automatiza tus procesos de facturación. ¡Ahorra tiempo y optimiza tu negocio!

## Servicio API de consulta de "Mi Cuenta"

Utilizando el servicio de Mi cuenta, podrás consultar:

* El consumo actual de tu Punto de venta, en el ciclo de suscripción actual
* Crear o modificar tus Puntos de venta,&#x20;


# Agregar o modificar puntos de venta

Integra la API para ARCA de TusFacturasAPP a tu sistema y accede a información relacionada con tu cuenta, como agregar o  modificar un punto de venta.

## ¿Qué es un punto de venta?

Un punto de venta es cualquier espacio, ya sea físico (una tienda, un quiosco) o virtual (una tienda online), donde se lleva a cabo la venta de productos o servicios. En este lugar se registra la transacción, se emite el comprobante de pago y se realiza el cobro al cliente.

### Administrar tu CUIT + Punto de venta

Desde éste método podras dar de alta nuevos puntos de venta dentro de tu espacio de trabajo o modificar ciertos datos de tu punto de venta actual.

Datos a tener en cuenta:

{% hint style="info" %}
**Si estás modificando puntos de venta (PDV)**

* En el caso de la modificación del punto de venta, deberás realizar la solicitud con las keys del punto de venta que querés modificar.
* Una vez que un punto de venta tiene comprobantes creados, la plataforma bloquea automáticamente la edición del CUIT, la condición ante el IVA y el número de punto de venta.\
  Para modificar los datos bloqueados, primero debes eliminar todos los comprobantes asociados al punto de venta.

**Si estás dando de alta puntos de venta (PDV)**

* El CUIT que configures solo puede existir en un espacio de trabajo en toda la plataforma.&#x20;
* Si das de alta un punto de venta para un CUIT que ya operaba en TusfacturasAPP con factura electrónica ARCA, éste quedará habilitado automáticamente. No necesitaras cargar un nuevo certificado de seguridad en ARCA; el único paso requerido es dar de alta el nuevo punto de venta  desde el portal de ARCA, como se indica en [éste instructivo de ayuda](https://ayuda.tusfacturas.app/es/articles/10374245-afip-instructivo-paso-4)&#x20;

{% endhint %}

### Endpoint

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`puntos_venta/administrar`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

<table><thead><tr><th width="195.7421875">Name</th><th width="131.42578125">Type</th><th width="345.05859375">Description</th></tr></thead><tbody><tr><td>operacion</td><td>string / requerido</td><td><p>Valores esperados: A o M</p><p>A = Alta de nuevo punto de venta</p><p></p><p>M = Modifica el punto de venta, correspondiente a las apikey desde las cuales estoy enviando para hacer el request.</p></td></tr><tr><td>conceptos_tipo</td><td>string / requerido</td><td><p>Debe indicar el tipo de conceptos que factura, los cuales pueden ser:</p><p>P = Productos</p><p>PS = Productos y Servicios</p><p>S = Servicios</p></td></tr><tr><td>es_predeterminado</td><td>string / requerido</td><td>Indica si el CUIT + Punto de venta es el predeterminado. Valores esperados: S o N</td></tr><tr><td>esta_activo</td><td>string / requerido</td><td>Indica si el CUIT + Punto de venta se encuentra activo y disponible para generar comprobantes. Valores esperados: S o N</td></tr><tr><td>es_agente_retencion</td><td>string / requerido</td><td>Indica si el punto de venta es agente de retención. Valores esperados: S o N.</td></tr><tr><td>factura</td><td>object / requerido</td><td>Un objeto del tipo "factura" según se detalla abajo.</td></tr><tr><td>punto_venta</td><td>number / requerido</td><td><p>El número del punto de venta a crear.</p><p>Ej: 4</p></td></tr><tr><td>factura_afip</td><td>string / requerido</td><td><p>Indica si va a querer <a href="https://www.tusfacturas.app/como-empezamos-a-hacer-facturas-electronicas.html">emitir factura electrónica AFIP</a>. En el caso que la respuesta sea "S", se enviará ademas, via email (a la casilla del administrador), el instructivo para realizar el enlace con AFIP, junto con el certificado de seguridad requerido por AFIP.</p><p></p><p>Valores esperados: S o N.</p><p></p></td></tr><tr><td>fecha_inicio</td><td>string / requerido</td><td>Fecha de inicio de actividades. Formato: dd/mm/aaaa</td></tr><tr><td>iibb</td><td>string / requerido</td><td>El nro de ingresos brutos.</td></tr><tr><td>iva_emails</td><td>string / opcional</td><td>Las direcciones de email separadas por coma donde quieren recibir mensualmente el iva compras-ventas.</td></tr><tr><td>iva_condicion</td><td>string / requerido</td><td>La condición impositiva según tabla de referencia.</td></tr><tr><td>direccion</td><td>string / requerido</td><td>El domicilio fiscal. Dirección + número</td></tr><tr><td>cuit</td><td>number / requerido</td><td>Tu CUIT. Solo números.</td></tr><tr><td>razon_social</td><td>string / requerido</td><td>La razón social</td></tr><tr><td>apitoken</td><td>string / requerido</td><td>Tus credenciales actuales de acceso.</td></tr><tr><td>apikey</td><td>string / requerido</td><td>Tus credenciales actuales de acceso.</td></tr><tr><td>usertoken</td><td>string / requerido</td><td>Tus credenciales actuales de acceso.</td></tr><tr><td>webhook</td><td>string / OPCIONAL</td><td><p>Campo alfanumérico de hasta 255 caracteres. Formato esperado: https://www.dominio.com/script-nombre. El valor que envies aca será validado y debe responder con un codigo de http = 200. Caso contratario la información de tu punto de venta no se actualizará.  </p><p><a href="/api-factura-electronica-afip-facturacion-ventas/webhooks-notificaciones#direccion-del-webhook">Más información</a></p></td></tr><tr><td>reg_transparencia_provincial</td><td>object / requerido </td><td>Un objeto del tipo "reg_transparencia_provincial" según se detalla abajo.</td></tr><tr><td>actividad_enviar_arca</td><td>string / OPCIONAL</td><td><p>Luego de crear o actualizar tu punto de venta recuperamos desde ARCA las actividades asociadas a tu CUIT. Indica si queres enviar de manera automatica a ARCA, en todas las ventas, la actividad que tenes predeterminada.  Éste dato hoy es opcional para el envío a ARCA. Sugerimos consultar con el estudio contable.</p><p>Valores esperados: S o N</p></td></tr><tr><td></td><td></td><td></td></tr></tbody></table>

#### Objeto "factura"

{% hint style="info" %}
Conocé más sobre [cómo configurar el estilo del PDF](https://ayuda.tusfacturas.app/es/articles/10354317-como-cambio-el-estilo-de-las-facturas-en-pdf-que-emito), [cómo configurar el tipo de envío del PDF](https://ayuda.tusfacturas.app/es/articles/12355005-como-cambiar-la-configuracion-para-enviar-facturas-como-adjuntos-pdf).&#x20;
{% endhint %}

| Campo a enviar                   | Descripcion                                                                                                                                                                                                                                                                                                                                                                                                            |
| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| leyenda\_general\_predeterminada | OPCIONAL - Una leyenda predeterminada que saldrá impresa en todos los comprobantes que emitas.                                                                                                                                                                                                                                                                                                                         |
| titulo                           | REQUERIDO - El titulo que saldrá como encabezado de la factura. En gral se usa la razón social o el nombre de fantasía de la empresa. Máx de caracteres permitidos: 18                                                                                                                                                                                                                                                 |
| subtitulo                        | REQUERIDO - El subtitulo que saldrá en el encabezado de la factura, bajo el titulo principal. Máx de caracteres permitidos: 18                                                                                                                                                                                                                                                                                         |
| reply\_to\_email                 | REQUERIDO - La dirección de email para los reply-to en cada envío de comprobante.                                                                                                                                                                                                                                                                                                                                      |
| reply\_to                        | REQUERIDO - El nombre de quien envía los comprobantes.                                                                                                                                                                                                                                                                                                                                                                 |
| mensaje                          | REQUERIDO - El mensaje predeterminado que saldrá en el envío de cada comprobante.                                                                                                                                                                                                                                                                                                                                      |
| copias                           | REQUERIDO - La cantidad de copias que se generan dentro del PDF. Valores esperados: 2= para recibir original y duplicado, 3= para recibir original, duplicado y triplicado                                                                                                                                                                                                                                             |
| cbu                              | Opcional - El número del CBU. Campo numérico, maximo 30 dígitos.                                                                                                                                                                                                                                                                                                                                                       |
| defensa\_consumidor              | Según la normativa vigente, las facturas emitidas a consumidores finales deben incluir al pie del comprobante los datos de contacto del organismo de Defensa al Consumidor correspondiente a la jurisdicción donde opera el negocio. TusFacturasAPP incluye por defecto los datos de la Provincia de Buenos Aires y CABA, pero podes sobrescribir esa información si operas en otra provincia. Máximo: 170 caracteres. |
| imprimir\_sku                    | REQUERIDO - Su función es controlar si el **SKU o código de producto** se muestra o no en el PDF generado. Esto resulta especialmente útil en escenarios donde el código interno no es relevante para el consumidor final, o cuando se busca simplificar la presentación visual del comprobante.  Valores esperados:  S  o N                                                                                           |

### Objeto "reg\_transparencia\_provincial"

En el marco de la Ley N° 27.743 de Medidas Fiscales Paliativas y Relevantes, reglamentada por la Resolución General ARCA N° 5614/2024 (B.O. 13/12/2024), se estableció el Régimen de Transparencia Fiscal al Consumidor. Esta norma obliga a discriminar en las facturas el IVA y demás impuestos nacionales indirectos en operaciones con consumidores finales.

La misma ley invita a las provincias y a CABA a adherirse para que también se detallen en los comprobantes el Impuesto sobre los Ingresos Brutos (IIBB) y las tasas municipales. A medida que cada jurisdicción se adhiere y reglamenta, los contribuyentes inscriptos en IIBB quedan obligados a incluir una leyenda con la alícuota aplicable en las facturas emitidas a consumidor final.

Más info:  [Adecuación al Régimen de Transparencia Fiscal Provincial: configuración en TusFacturasAPP ](https://ayuda.tusfacturas.app/es/articles/15137188-adecuacion-al-regimen-de-transparencia-fiscal-provincial-configuracion-en-tusfacturasapp)

| Campo a enviar | Descripcion                                                                                                                                                 |
| -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| fecha\_inicio  | REQUERIDO - Una leyenda predeterminada que saldrá impresa en todos los comprobantes que emitas.                                                             |
| texto          | REQUERIDO - El texto que se imprimirá dentro del bloque de "Regimen de transparencia fiscal", indicando la adecuación de tu provincia. Máx: 100 caracteres. |

### JSON De ejemplo a enviar

{% code title="JSON" %}

```
{
   "usertoken":"xxxx",
    "apitoken":"xxx",
    "apikey":"xxxx",
    "operacion":"A",
    "punto_venta": "00023",
    "direccion":"AV. 68 N75A - 50, PISO 4, Buenos Aires, Argentina",
    "razon_social": "MI CUIT DE PRUEBA",
    "cuit": "11111123213",
    "iva_condicion": "M",
    "iva_emails": "tuemail@tudominio.com",
    "iibb":"12345",
    "fecha_inicio": "12/12/2017",
    "factura_afip": "S",
    "es_agente_retencion": "N",
    "esta_activo": "S",
    "es_predeterminado": "S",
    "conceptos_tipo": "PS",
    "actividad_enviar_arca": "N",
    "webhook": "https://www.dominio.com/script-name",
    "factura" : {
        "leyenda_general_predeterminada": "TEST",
        "titulo" : "PIRULO & CO",
        "subtitulo": "La mejor barberia",
        "reply_to_email": "info@tudominio.com.ar",
        "reply_to": "PIRULO",
        "mensaje": "Le enviamos la factura que se encuentra adjunta",
        "copias": "2",
        "imprimir_sku": "N",
         "defensa_consumidor": "",
    },
    "reg_transparencia_provincial": {
			"fecha_inicio": "01/09/2026",
		  "texto": "ALICUOTA ISIB CABA 3%"
	   }

}
```

{% endcode %}


# Solicitar certificado de enlace con AFIP

Integra la API para AFIP de TusFacturasAPP a tu sistema y solicita un nuevo certificado de enlace con AFIP para tu punto de venta.

{% hint style="info" %}
A través de esta herramienta, podrás solicitar tu certificado de enlace con ARCA y acceder al instructivo paso a paso. El sistema generará el certificado para el CUIT de la sesión activa y lo enviará al correo del usuario administrador.

Importante: Esta función solo está disponible para cuentas en producción (no aplica para el plan API DEV).
{% endhint %}

### ¿Cómo solicitar certificado de enlace?

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`puntos_venta/certificado`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                 |
| --------- | ------ | --------------------------- |
| apikey    | string | Tus credenciales de acceso  |
| apitoken  | string | Tus credenciales de acceso  |
| usertoken | string | Tus credenciales de acceso. |

### Ejemplo del JSON a enviar:

{% code title="JSON" %}

```
{
   "usertoken":"xxxx",
    "apitoken":"xxxx",
    "apikey":"xx" 
}
```

{% endcode %}


# Predeterminar punto de venta

Integra la API para AFIP de TusFacturasAPP a tu sistema y accede a información relacionada con tu cuenta, asi como predeterminar un punto de venta.

### ¿Cómo predeterminar un punto de venta para usarlo desde la plataforma web?

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`puntos_venta/predeterminar`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                              |
| --------- | ------ | ---------------------------------------- |
| apitoken  | string | Tus credenciales de acceso               |
| apikey    | string | Tus credenciales de acceso               |
| usertoken | string | <p>Tus credenciales de acceso</p><p></p> |

{% tabs %}
{% tab title="200 " %}

```
{
	"error": "N",
	"errores": [] 
}
```

{% endtab %}
{% endtabs %}

#### Ejemplo del JSON a enviar:

{% code title="JSON" %}

```
{
   "usertoken":"xxxx",
    "apitoken":"xxxx",
    "apikey":"xxxx" 
}
```

{% endcode %}


# Mi Cuenta - consumo

Integra la API para AFIP de TusFacturasAPP a tu sistema y accede a información relacionada con tu cuenta, como consultar tu consumo actual.

### **💡 ¿Cómo funciona el consumo de cupos en la API?**

Es fundamental entender que los límites de tu plan no funcionan como un pozo único, sino que se distribuyen de forma independiente según el tipo de operación. Consulta nuestro centro de ayuda para más detalles sobre [qué contabiliza como un request](https://ayuda.tusfacturas.app/es/articles/11679150-api-que-contabiliza-como-un-request-en-tusfacturasapp).

### Consulta el consumo de tu cuenta

Éste método te brindara que cantidad de comprobantes que tenes incluidos en tu suscripción actual,  cuantos tenes programados como abono, y cuantos te quedan disponibles para consumir..

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`micuenta/consumo`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                |
| --------- | ------ | -------------------------- |
| apikey    | string | Tus credenciales de acceso |
| apitoken  | string | Tus credenciales de acceso |
| usertoken | string | Tus Credenciales de acceso |

### Ejemplo del JSON a enviar:

{% code title="JSON" %}

```
{
   "usertoken":"xxxxx",
    "apitoken":"xxxx",
    "apikey":"xxxx" 
}
```

{% endcode %}

### Ejemplo del JSON de respuesta

```
{
"error":"N",
"errores":[],
"abonos_pendientes":21,
"comprobantes_generados":12,
"comprobantes_cupo":100,
"comprobantes_disponibles": 79
}
```


# Reportes

Utilizá la API de facturación electrónica de TusFacturasAPP, para solicitar algunos reportes desde tu plataforma.

## API de facturación electrónica: Reportes&#x20;

Utilizando el servicio API de facturación electrónica de TusFacturasAPP, podrás solicitar algunos reportes desde tu plataforma y recibirlos en tu casilla de email. Ellos son:&#x20;

* [IVA compras-ventas](/reportes/solicitar-reporte-iva-compras-ventas)
* [Reporte de ¿Quién me debe? - saldos](/reportes/reporte-quien-me-debe-saldos)
* [Reporte de ¿Quién me debe? - detalle](/reportes/reporte-quien-me-debe-detalle)


# Solicitar reporte IVA compras-ventas

Solicita fácilmente reportes de IVA compras-ventas. Adaptados a tus necesidades. API AFIP

Mediante éste método podrás solicitar el envío del reporte IVA compras-ventas a una casilla de e-mail determinada. Se permite 1 casilla de e-mail por solicitud.

### Endpoint

<mark style="color:green;">`POST`</mark> `https://www.tusfacturas.app/app/api/v2/`<mark style="color:purple;">`micuenta/iva_compras_ventas`</mark>

💡 Cada vez que utilices este método, se contará como un request en tu suscripción. Los requests se cuentan por cada método que uses.

#### Request Body

| Name      | Type   | Description                                          |
| --------- | ------ | ---------------------------------------------------- |
| anio      | number | El año del período que se consulta.                  |
| mes       | number | El mes del período que se consulta.                  |
| email     | string | La dirección de e-mail a donde se enviará el reporte |
| apikey    | string | Tus credenciales de acceso                           |
| apitoken  | string | Tus credenciales de acceso                           |
| usertoken | string | Tus credenciales de acceso                           |

#### Ejemplo del JSON a enviar:

{% code title="JSON" %}

```
{
"usertoken" :  "xxxx",
"apikey"    :  "xxxx",
"apitoken"  :  "xxxx",
"mes": 11,
"anio": 2018,
"email": "tumail@dominio.com"

}
```

{% endcode %}

#### Ejemplo del JSON de respuesta

```
{
"error":"N",
"errores":[]
}
```




---

[Next Page](/llms-full.txt/1)

