Fiscal Flow es la solución de Napse para la emisión de documentos electrónicos y la gestión integral impositiva.
En el siguiente manual, se expone una descripción de los servicios REST destinados a la autorización de comprobantes electrónicos.
Este documento se encuentra enfocado exclusivamente en la integración con el punto de venta BRIDGE de Napse. El objetivo de la misma, es utilizar la funcionalidad de autónomo que la solución posee, para garantizar la operación de cada terminal, sin necesidad de conexión con servidor de tienda o solución central de emisión de comprobantes fiscales. En este contexto, el CAEA es gestionado por cada punto de venta en forma autónoma e informado a través del log de transacciones o TLOG. Adicionalmente, aquellas APIs relacionadas con información que ya posee la solución de punto de venta, no son informadas.
|
El siguiente diagrama es un flujo - muy sencillo - de operación del punto de venta y el sistema de emisión de comprobantes electrónicos Fiscal Flow.
Este método se utiliza para autorizar documentos electrónicos por CAE.
Adicionalmente, envía por correo electrónico al cliente una copia del mismo en caso de indicarlo.
Es un método REST cuyo contenido interno es JSON.
Un ejemplo de invocación es: http://[dirección-ip]:[puerto]/api/v1/invoice/authorize
Un ejemplo de una autorización simple por CAE
{ "requestCredential":{ "companyCode":"napse", "terminalCode":"10", "storeCode":"1", "invoiceType":1, "clientSecret": "axjdjjjjj@jddhsahsh" }, "customer":{ "billingEmail":"[email protected]", "businessName":"Alonso Diego", "city":"Santa Fe", "documentType":80, "fiscalAddress":"Facundo Zuviria 4677", "identificationNumber":"30561541619", "perceptionIIBB":true, "perceptionIVA":true, "personalEmail":"[email protected]", "postalCode":"3000", "sendVoucher":true }, "fiscalDocument":{ "conceptCode":1, "currency":"PES", "internalNumber":"169", "internalPerceptionAmount":"0", "internalTaxesAmount":"0", "invoiceDate":"2019-10-29T18:29:48.185-0300", "invoiceType":1, "items":[ { "discount":"0.00", "name":"Bombones Ferrero x3", "qty":"1", "sku":"111", "tax":"21.00", "taxed":true, "unitPrice":"70.00" }, { "discount":"0.00", "name":"Pack caramelos sugus", "qty":"1", "sku":"112", "tax":"21.00", "taxed":true, "unitPrice":"90.00" }, { "discount":"11.5368", "name":"Hamburguesa cn queso", "qty":"1", "sku":"113", "tax":"21.00", "taxed":true, "unitPrice":"190.00" }, { "discount":"0.00", "name":"Hamburguesa cn queso", "qty":"1", "sku":"113", "tax":"21.00", "taxed":true, "unitPrice":"190.00" }, { "discount":"11.5429", "name":"Fanta 600ml", "qty":"1", "sku":"326", "tax":"21.00", "taxed":true, "unitPrice":"70.00" } ], "nonTaxedAmount":"0.00", "amountOtherTaxes":"0.00", "amountIVA":"100.66", "exemptAmount":"0.00", "pointOfSale":"10", "relatedTaxes":[ { "amount":"100.66", "baseAmount":"479.34", "code":5 } ], "sendVoucher":true, "taxedAmount":"479.34", "totalAmount":"580.00" } } |
Los campos marcados con son requeridos
requestCredential | ||
---|---|---|
companyCode | Código de compañía, provisto para la empresa que contrata el servicio. | 992 |
terminalCode | Código de terminal / punto de venta. | 992 |
storeCode | Código de tienda | 992 |
invoiceType | Tipo de comprobante a autorizar (**1) | 992 |
clientSecret | Clave de acceso otorgada a la compañía | 992 |
customer | ||
businessName | Nombre de la persona / Empresa | 1001 |
city | Ciudad | |
documentType | Tipo de identificación (**2) | 1002 |
fiscalAddress | Dirección fiscal de la persona / empresa | 1003 |
identificationNumber | Número de identificación del cliente. No es necesario si este fuese consumidor final. | 1004 |
perceptionIIBB | Si es agente de retención de ARBA. Por default es FALSE. | |
perceptionIVA | Si es agente de retención de IVA. Por default es FALSE. | |
postalCode | Código postal | |
sendVoucher | Si desea marcar la factura para su posterior envío por correo electrónico. Por default es FALSE. | |
billingEmail | Dirección de correo electrónico del cliente adonde debe llegar la factura. | |
personalEmail | Dirección de correo electrónico del cliente | |
taxCategory | Situación impositiva (**3) | 1005 |
fiscalDocument | ||
conceptCode | Conceptos a facturar (**4) | 2001 |
currency | Monedas (PES) | |
internalNumber | Número de comprobante interno del punto de venta. | 2002 |
internalPerceptionAmount | Si existe un requerimiento de impuestos extras, debe incluirse en este campo. Default: 0 | |
internalTaxesAmount | Si existe un requerimiento de impuestos extras, debe incluirse en este campo. Default: 0 | |
invoiceDate | Fecha del documento | 2003 |
periodStartDate | Fecha de inicio de prestación del servicio facturado (solo para conceptos (**4) de tipo 2 o 3) | 2011 |
periodEndDate | Fecha de fin de prestación del servicio facturado (solo para conceptos (**4) de tipo 2 o 3) | 2012 |
paymentDueDate | Fecha de vencimiento del pago | |
invoiceType | Tipo de Comprobante (**5) | 2004 |
nonTaxedAmount | Importe conceptos no gravados. | 2005 |
amountOtherTaxes | Importe en conceptos de impuestos internos. | 2006 |
amountIVA | Importe en concepto de IVA | 2007 |
exemptAmount | Importe en concepto de valores excentos de impuestos. | 2008 |
sendVoucher | Si esa factura, se enviará por email al cliente. Este parámetro es de menor relevancia que el del cliente. | |
taxedAmount | Importe conceptos gravados. | 2009 |
totalAmount | Importe total del documento. | 2010 |
notes | Notas relacionadas con el comprobante | |
deliveryNoteNumber | Referencia a un remito. | |
Items | ||
discount | Porcentaje de descuento aplicado. Por default es 0 | |
name | Nombre del producto | 3001 |
qty | Cantidad del producto | 3002 |
tax | Porcentaje de IVA | 3003 |
taxed | Verdadero si se encuentra gravado. | 3004 |
unitPrice | Precio unitario del producto | 3005 |
unitsMtx | Unidades (solo en caso de invocar al servicio MTX) | |
codeMtx | Código (solo en caso de invocar al servicio MTX) | |
relatedTaxes | ||
code | Código del impuesto (**6) | 4001 |
baseAmount | Base imponible | 4002 |
amount | Importe liquidado según la alícuota de IVA | 4003 |
relatedOtherTaxes | ||
code | Código del impuesto (**7) | 5001 |
name | Descripción del impuesto | 5002 |
baseAmount | Base imponible | 5003 |
taxAmount | Importe del impuesto | 5004 |
aliquot | Alícuota | 5005 |
relatedInvoices (sólo cuando es una nota de crédito) | ||
invoiceInternalNumber | Número de la factura original (interna del punto de venta). | 6001 |
invoiceType | Tipo de comprobante original (**1). | 6002 |
storeCode | Número de tienda original. | 6003 |
terminalCode | Número de terminal original. | 6004 |
Se listan a continuación los valores posibles.
Algunos de ellos no son utilizados en la solución BRIDGE, se listan todos los existentes hasta el momento, a modo de referencia.
1:Factura A 7:Nota de Débito B 6:Factura B 8:Nota de Crédito B 10:Notas de Venta al contado B 63:Liquidacion A 9:Recibos B 40:Otros comprobantes B que cumplan con R.G.Nro. 1415 39:Otros comprobantes A que cumplan con R.G.Nro. 1415 35:Cbtes. B del Anexo I,Apartado A,inc. f),R.G. Nro. 1415 12:Nota de Débito C 13:Nota de Crédito C 11:Factura C 52:Nota de Débito M 53:Nota de Crédito M 51:Factura M 206:Factura de Crédito electrónica MiPyMEs (FCE) B 203:Nota de Crédito electrónica MiPyMEs (FCE) A 202:Nota de Débito electrónica MiPyMEs (FCE) A 213:Nota de Crédito electrónica MiPyMEs (FCE) C 211:Factura de Crédito electrónica MiPyMEs (FCE) C 212:Nota de Débito electrónica MiPyMEs (FCE) C 2:Nota de Débito A 4:Recibos A 64:Liquidacion B 60:Cta de Vta y Liquido prod. A 15:Recibo C 54:Recibo M 207:Nota de Débito electrónica MiPyMEs (FCE) B 3:Nota de Crédito A 5:Notas de Venta al contado A 34:Cbtes. A del Anexo I, Apartado A,inc.f),R.G.Nro. 1415 61:Cta de Vta y Liquido prod. B 49:Comprobante de Compra de Bienes Usados a Consumidor Final 201:Factura de Crédito electrónica MiPyMEs (FCE) A 208:Nota de Crédito electrónica MiPyMEs (FCE) B |
Se listan a continuación los valores posibles.
Algunos de ellos no son utilizados en la solución BRIDGE, se listan todos los existentes hasta el momento, a modo de referencia.
80:CUIT 87:CDI 89:LE 90:LC 86:CUIL 91:CI Extranjera 93:Acta Nacimiento 94:Pasaporte 92:en trámite 96:DNI 4:CI Corrientes 95:CI Bs. As. RNP 1:CI Buenos Aires 0:CI Policía Federal 3:CI Córdoba 6:CI Jujuy 2:CI Catamarca 8:CI La Rioja 11:CI San Luis 7:CI Mendoza 13:CI Santiago del Estero 17:CI Chubut 12:CI Santa Fe 19:CI Misiones 9:CI Salta 5:CI Entre Ríos 14:CI Tucumán 10:CI San Juan 20:CI Neuquén 22:CI Río Negro 18:CI Formosa 24:CI Tierra del Fuego 16:CI Chaco 99:Doc. (Otro) 23:CI Santa Cruz 21:CI La Pampa |
Se listan a continuación los valores posibles.
1: MONOTRIBUTISTA 2: RESPONSABLE INSCRIPTO 3: CONSUMIDOR FINAL 4: IVA EXENTO |
Se listan a continuación los valores posibles.
1:Producto 2:Servicios 3:Productos y Servicios |
Se listan a continuación los valores posibles.
Algunos de ellos no son utilizados en la solución BRIDGE, se listan todos los existentes hasta el momento, a modo de referencia.
1:Factura A 7:Nota de Débito B 6:Factura B 8:Nota de Crédito B 10:Notas de Venta al contado B 63:Liquidacion A 9:Recibos B 40:Otros comprobantes B que cumplan con R.G.Nro. 1415 39:Otros comprobantes A que cumplan con R.G.Nro. 1415 35:Cbtes. B del Anexo I,Apartado A,inc. f),R.G. Nro. 1415 12:Nota de Débito C 13:Nota de Crédito C 11:Factura C 52:Nota de Débito M 53:Nota de Crédito M 51:Factura M 206:Factura de Crédito electrónica MiPyMEs (FCE) B 203:Nota de Crédito electrónica MiPyMEs (FCE) A 202:Nota de Débito electrónica MiPyMEs (FCE) A 213:Nota de Crédito electrónica MiPyMEs (FCE) C 211:Factura de Crédito electrónica MiPyMEs (FCE) C 212:Nota de Débito electrónica MiPyMEs (FCE) C 2:Nota de Débito A 4:Recibos A 64:Liquidacion B 60:Cta de Vta y Liquido prod. A 15:Recibo C 54:Recibo M 207:Nota de Débito electrónica MiPyMEs (FCE) B 3:Nota de Crédito A 5:Notas de Venta al contado A 34:Cbtes. A del Anexo I, Apartado A,inc.f),R.G.Nro. 1415 61:Cta de Vta y Liquido prod. B 49:Comprobante de Compra de Bienes Usados a Consumidor Final 201:Factura de Crédito electrónica MiPyMEs (FCE) A 208:Nota de Crédito electrónica MiPyMEs (FCE) B |
Se listan a continuación los valores posibles.
3:0% 4:10.5% 6:27% 8:5% 5:21% 9:2.5% |
Se listan a continuación los valores posibles.
1:Impuestos nacionales 3:Impuestos municipales 99:Otro 2:Impuestos provinciales 4:Impuestos Internos 6:Percepción de IVA 5:IIBB 9:Otras Percepciones 8:Percepciones por Impuestos Municipales 13:Percepción de IVA a no Categorizado 7:Percepción de IIBB |
A continuación, se expone un ejemplo de la respuesta brindada por el servicio de autorización de comprobantes.
{
"authorizationDate":"2019-11-08T03:00:00.000Z",
"authorizationCode":"69447792300310",
"fiscalPointOfSale":10,
"ack":0
}
Campos en la respuesta | |
---|---|
authorizationDate | Fecha de vencimiento del CAE |
authorizationCode | CAE |
fiscalPointOfSale | Punto de venta AFIP |
detail | Detalle específico, en caso de corresponder, del error informado. |
ack | Código de respuesta:
999: error no identificado. |
Este método es invocado por el punto de venta BRIDGE para obtener el número de CAEA del período y orden necesario para emitir en contingencia.
Es un método REST cuyo contenido interno es JSON.
Un ejemplo de invocación es: http://[dirección-ip]:[puerto]/api/v1/invoice/getCAEA
{ "requestCredential":{ "companyCode":"napse", "terminalCode":"10", "storeCode":"1", "invoiceType":1, "clientSecret":"axjdjjjjj@jddhsahsh" }, "caea":{ "period":"201910", "order":2 } } |
requestCredential | ||
---|---|---|
companyCode | Código de compañía, provisto para la empresa que contrata el servicio. | 992 |
terminalCode | Código de terminal / punto de venta. | 992 |
storeCode | Código de tienda | 992 |
clientSecret | Clave de acceso otorgada a la compañía | 992 |
caea | ||
period | Período para el cual se solicita obtener el CAEA | 6001 |
order | Del 1 al 15 del mes, va 1, de lo contrario, 2. | 6002 |
A continuación, se expone un ejemplo de la respuesta brindada por el servicio de autorización de comprobantes.
{
"ack":0,
"caea":{
"caea": "12093094409",
"validSince": 2019-11-08T03:00:00.000Z
"validUntil": 2019-11-08T03:00:00.000Z
"limitDateToInformInvoices": 2019-11-08T03:00:00.000Z
"processDate": 2019-11-08T03:00:00.000Z
}
}
Campos en la respuesta | |
---|---|
caea | Número de CAEA |
order | Número de orden |
period | Número de periodo |
validSince | Fecha inicial de validez |
validUntil | Fecha final de validez |
limitDateToInformInvoices | Fecha límite para informar facturas |
processDate | Fecha de proceso |
ack | Código de respuesta: 0: operación exitosa. 999: error no identificado. |
Bridge utiliza un estandard basado en ARTS para documentar las transacciones.
Específicamente para el caso de BRIDGE, todas aquellas transacciones que no hayan sido autorizadas en línea, deberán informarse interpretando el log de cada transacción.
En el siguiente documento, se expone en forma genérica, la información de una transacción.
La información podría variar de acuerdo a la instalación de BRIDGE, formato, vertical. Se recomienda descargar el archivo (no visualizar en línea). |
Específicamente en los siguientes TAGS se podrá encontrar la información requerida.
<OfficialBill> <BillType>FC B</BillType> <SerieOfficialBill>B</SerieOfficialBill> <FiscalPOSNumber>00171</FiscalPOSNumber> <BillNumber>00000037</BillNumber> <AmountOfBill>116.58</AmountOfBill> <FiscalMode>CAEA</FiscalMode> <FiscalCAENumber></FiscalCAENumber> <FiscalCAEDate>2019-06-15T23:59:59</FiscalCAEDate> <FiscalCAEANumber>29219369520762</FiscalCAEANumber> </OfficialBill> |