Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


Image Added


Painel
bgColor#f6f5f6
titleColor#ffffff
borderWidth0
titleBGColor#704581
titleDocumentación

Page Tree
rootAR Agente - Servicios Facturación electrónica




Image Modified




AR Agente - Servicios Facturación electrónica




Este set de servicios permite la emisión y almacenamiento de comprobantes electrónicos respetando el régimen de factura electrónica según la resolución dispuesta por AFIP. 

Fiscal Flow solicitará y obtendrá el CAE de los comprobantes generados con su correspondiente fecha de vencimiento, gracias a un enlace directo de webservices con los servidores de AFIP.

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:

                                                                                           image2020-11-24_23-27-11.pngImage Modified


Servicio: Autorizar documento electrónico (authorize)

Este método se utiliza para autorizar documentos electrónicos.

Expandir

Revisiones

Fecha

Versión

Descripción

Autor

20/10/20231.0

Se modifican los nombres de los siguientes atributos:

  • fiscalDocument.subTotalAmount
  • fiscalDocument.items
  • fiscalDocument.items.promotions
    fiscalDocument.items.itemInfo



El agente intenta autorizar por CAE, en caso de encontrar un inconveniente, autoriza en forma offline (CAEA).

Para el uso del servicio es necesario informar un token que se obtiene a través del servicio "Authenticate".

Es importante tener en consideración que se deberán aplicar mecanismos de redondeos de importes, ya que es una reglamentación de AFIP y en caso de no cumplirse con lo especificado, se rechazaran

los comprobantes al intentar autorizarse en AFIP.

Reglas de redondeo

Error relativo porcentual deberá ser <= 0.01% o el error absoluto <=0.01 * cantidad

Por ejemplo en el caso del redonde el importe de iva:

Supongamos que tienes una factura electrónica con tres alícuotas de IVA involucradas, y el valor correcto del IVA total para esa factura es de $100:

  1. Ejemplo de Error Relativo Porcentual:

    • Valor Calculado del IVA Total: $100.50
    • Error Relativo Porcentual: [(Valor Calculado - Valor Correcto) / Valor Correcto] * 100 = [($100.50 - $100) / $100] * 100 = 0.50%

    En este caso, el error relativo porcentual es del 0.50%, lo cual excede el límite permitido del 0.01%. Esto significa que el cálculo del IVA en la factura tiene un error demasiado alto según el estándar establecido.

  2. Ejemplo de Error Absoluto:

    • Valor Calculado del IVA Total: $99.80
    • Error Absoluto: |Valor Calculado - Valor Correcto| = |$99.80 - $100| = $0.20

    Si tienes tres alícuotas de IVA en la factura y el error absoluto permitido es de 0.01 multiplicado por la cantidad de alícuotas (0.01 * 3 = 0.03), el error absoluto en este caso ($0.20) excede el límite permitido de $0.03. Esto indica que el cálculo del IVA tiene un error mayor al permitido.

Es un método REST basado en el formato JSON. Ejemplo:

[post] http://[dirección-ip]:[puerto]/api/v1/invoice/authorize

POST - REQUEST

header

ElementoValor
x-access-token
Token obtenido a través del servicio "Authenticate"

Ejemplo:

x-access-token:  eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJOYXBzZSIsImRhdGEiOnsiX2lkIjoiNjA1ZGQyNTZjZGE0YzhhNzZkODhhNDFiIn0sImlhdCI6MTYyMTQzMTU5OCwiZXhwIjoxNjIxNTE3OTk4fQ.4gxltyla4zKODtM9w0a4-y2_EMtrkIULB9446RSVpKE

BODY

ElementoDescripciónTipo
RequeridoValidaciónElemento AFIP
requestCredentialDetalle de la identificación de la terminal que solicita la autorizaciónObjeto

companyCodeCódigo de compañía, provisto para la empresa que contrata el servicioStringSi

992


terminalCodeCódigo de terminal / punto de ventaStringSi
992
storeCodeCódigo de tiendaString
Si
992
customerDetalle del clienteObjeto

documentType

Tipo de documento de identificación del cliente.

Para comprobantes no nominados (consumidores finales con monto menor o igual a lo establecido por la RG 4444/2019), se debe enviar 99 (".

Integer (2)Si.
Ver: FF - Datos maestros: Tipos de documentos DocTipo
identificationNumber

Número de identificación del cliente.

Para comprobantes no nominados (consumidores finales con monto menor o igual a lo establecido por la RG 4444/2019), se debe enviar 0.

Number

Si



DocNro
taxCategorySituación impositiva del cliente frente al IVA

Integer (1)

SiVer: FF - Datos maestros: Situación impositiva del cliente
IBCategorySituación impositiva del cliente frente a Ingresos Brutos

String

No

IBIdentificationNumberNúmero de inscripción en Ingresos BrutosNumberNo

sendVoucherSi desea marcar la factura para su posterior envío por correo electrónico. Por default es FALSE.String
No

billingEmail

Dirección de correo electrónico del cliente adonde debe llegar la factura. Corresponde al mail de facturación.

Es requerido para enviar factura por correo electrónico.

StringNo

personalEmail

Dirección de correo electrónico del cliente.

Es un dato de contacto, no es al que se enviará la factura.

StringNo

codeCódigo del clienteStringNo

businessName

Nombre de la persona / Empresa cliente (Receptor del comprobante)

No es requerido si se trata de un comprobante distinto de tipo A y se trata de Consumidor Final

StringNo


civilStatus

Estado civil del cliente.

No es necesario si es empresa.

StringNo

fiscalAddressDirección fiscal de la persona / empresaStringNo

cityNombre de la ciudadStringNo

stateNombre de la provinciaStringNo

postalCode

Código postal

String

No

fiscalDocument Información completa del comprobanteObjeto

internalId

Número de comprobante interno del punto de venta.

Debe ser un identificador único de la transacción para la tienda y terminal.

Alfanumérico(40)Si

conceptCodeConceptos a facturarInteger (2)SiVer: FF - Datos maestros: Conceptos a facturarConcepto
invoiceTypeTipo de Comprobante Integer (3)SiVer: FF - Datos maestros:  Tipos de ComprobantesCbteTipo
saleConditionCondición de ventaStringSi

currencyCódigo de moneda StringSiVer: FF - Datos maestros:  Monedas MonId
currencyChangeCotización de la moneda informadaNumber (10,6)Si
MonCotiz
invoiceDate

Fecha del documento

Formato: yyyy-mm-dd hh:mm:ss

Date

Si
CbteFch
paymentDueDate

Fecha de vencimiento del pago del documento.

Formato: yyyy-mm-dd

DateNo
FchVtoPago
periodStartDate

Fecha de inicio del servicio facturado (Formato: yyyy-mm-dd)

Requerido si el tipo de concepto a facturar es un Servicio (conceptCode=2,3).

DateNo
FchServDesde
periodEndDate

Fecha de fin del servicio facturado (Formato: yyyy-mm-dd)

Requerido si el tipo de concepto a facturar es un Servicio (conceptCode=2,3).

DateNo
FchServHasta

businessDate

Fecha contable del documento (Formato: yyyy-mm-dd)

Si no viene el valor por defecto es fecha del día formato yyyy-mm-dd

DateNo

zNumber

Numero de cierre Z

Si no viene el valor por defecto es fecha del día formato yyyymmdd

Number

No




subTotalAmount

Importe total neto de descuentos e impuestos (IVA y otros impuestos: percepción, impuestos municipales, impuestos internos)

(Comprobantes tipo A: importe sin IVA. Comprobantes tipos B: importe con IVA incluido)

Number (10,2)Si

ticketDiscount

Descuento global sobre la venta (ticket).

Importe sumatorio de todos los descuentos con scope: T (transaction)

(Comprobantes tipo A: descuento neto sin IVA. Comprobantes tipos B: descuento con IVA incluido)

Number (10,2)Si

discountAmount

Importe sumatorio de todos los descuentos de venta (a nivel ítems + a nivel factura o ticket) con scope: I (item) + T (transaction)

(Comprobantes tipo A: total de descuentos neto sin IVA. Comprobantes tipos B: descuentos con IVA incluido)

Number (10,2)Si

nonTaxedAmountImporte conceptos no gravadosNumber (10,2)Si
ImpTotConc
taxedAmount

Importe neto gravado del documento

Suma de relatedTaxes.baseAmount

Number (10,2)Si
ImpNeto
amountIVA

Importe en concepto de IVA

Suma de relatedTaxes.amount

Number (10,2)Si
ImpIVA
amountOtherTaxes

Importe en concepto de Otros Tributos

Suma de relatedOtherTaxes.amount

Number (10,2)Si
ImpTrib
exemptAmountImporte en concepto de valores exentos de impuestosNumber (10,2)Si
ImpOpEx
totalAmountImporte total del documentoNumber (10,2)Si
ImpTotal
orderNumberNúmero de pedidoNumberNo

operatorCódigo del operador o vendedorStringNo

fiscalDocument.relatedTaxes
Detalle de ivas, en caso de no ser exento o no gravado.ARRAYNo
AlicIva
amount

Importe liquidado según la alícuota de IVA

Informar en 0 (cero) en caso de tratarse de IVA 0%.

Number (10,2)

Si


Importe
baseAmountBase imponible para la determinación de la alícuotaNumber (10,2)

Si


BaseImp
codeCódigo del Tipo de IVAInteger (2)

Si

Ver: FF - Datos maestros:  Tipos de IVAId
nameDescripción del impuestoString

Si



fiscalDocument.relatedOtherTaxes
Detalle de otros impuestos - percepciones de IVA, percepciones de Ingresos Brutos, Impuestos Internos, retenciones nacionales, municipales, etc.-ARRAYNo
Tributos
amountImporte del impuestoNumber (10,2)

Importe
baseAmountBase imponible para la determinación del tributoNumber (10,2)
BaseImp
codeCódigo del Tipo de ImpuestoInteger (2)Ver: FF - Datos maestros:  Códigos de ImpuestoId
nameDescripción de impuestoStringNo
Desc
aliquotAlícuotaNumber (3,2)No
Alic
fiscalDocument.optionals

Solo si se encuentra dentro del conjunto de emisores habilitados a informar opcionales.

IMPORTANTE: si se trata de operaciones que no dan lugar al cómputo del crédito fiscal - F. 8001

ARRAYNo
Opcionales
codeCódigo identificador del Opcional de AFIPStringNo

Ver: FF - Datos maestros: Opcionales

Id
nameValor del Parámetro opcional a informarStringNo
Valor






fiscalDocument.relatedInvoices

Comprobantes asociados a las nota de crédito o nota de débito.

Obligatorio si no se informa periodo asociado (relatedInvoicesPeriod)

ARRAYNo
CbtesAsoc
invoiceTypeTipo de Comprobante asociadoInteger (3)
Ver: FF - Datos maestros:  Tipos de ComprobantesTipo
pointOfSalePunto de venta AFIP del comprobante asociadoString (5)



PtoVta
invoiceNumber
Número del punto de venta del comprobante asociado
String (8)
Nro
invoiceDateFecha del comprobante asociado (Formato: yyyy-mm-dd)
Date
CbteFch
fiscalDocument.relatedInvoicesPeriod

Período de emisión del comprobante original, cuando es una nota de crédito o nota de débito.

Obligatorio si no se informan comprobantes asociados (relatedInvoices))

ObjetoNo
PeriodoAsoc
startDateFecha correspondiente al inicio del periodo del comprobante que se quiere identificar (Formato: yyyy-mm-dd)Date
FchHasta
endDateFecha correspondiente al fin del periodo del comprobante que se quiere identificar (Formato: yyyy-mm-dd)Date


FchDesde
fiscalDocument.items Listado de artículosARRAYSi

action

Concepto del ítem. S: Sale | R: Return

S: cuando se trata de un producto que suma a la transacción, por ejemplo, un item que se vende.

R: cuando se trata de un producto que resta a la transacción, por ejemplo, un item que se devuelve, o un envase de bebida.

char (1)Si

skuCódigo del producto

String

Si

name

Nombre del productoStringSi

qty

Cantidad del producto

NumberSi

um

Unidad de medida del producto.

Valor por defecto: UN

String(20)No

tax

Porcentaje de IVA asociado al ítem.

Se deberá enviar en 0 (cero) si es exento o no gravado.

Number (4,2)Si




taxAmount

Importe de IVA asociado al ítem

Number (10,2)Si

internalTax

Importe de impuestos internos aplicados al ítem (unitario)

Number (10,2)Si

discount

Suma de descuentos aplicados.

Suma de items.promotions.amount

(Comprobantes tipo A: descuento neto sin IVA. Comprobantes tipos B: descuento con IVA incluido)

Number (10,2)

unitPrice

Precio unitario del producto.

(Comprobantes tipo A: precio neto sin IVA. Comprobantes tipos B: precio IVA incluido)

Number (10,2)Si

totalPrice

Precio unitario del producto x cantidad (qty)

(Comprobantes tipo A: precio neto sin IVA. Comprobantes tipos B: precio IVA incluido)

Number (10,2)Si

code

Código secundario del producto.

Se utiliza como codigoMtx: Deberán corresponder a la estructura provista por la ASOCIACION ARGENTINA DE CODIFICACION DE PRODUCTOS COMERCIALES —CODIGO—, códigos GTIN 13, GTIN 12 y GTIN 8, correspondientes a la unidad de consumo minorista o presentación al consumidor final

String(40)No

serialNumberNúmero de serie del producto en caso de requerirStringNo

lotNumberNúmero de lote o partida del producto en caso de requerirStringNo

barCodeCódigo de barras del productoStringNo

fiscalDocument.items.promotions Detalle de promociones aplicadas a cada item
ARRAYNo

codeCódigo del descuento o PromociónStringNo

scope

Concepto de la promoción. I: Ítem | T: Transacción

I: Cuando se trata de un descuento propio del ítem o producto/servicio

T: Cuando se trata de un descuento a nivel transacción. Se informa de manera prorrateada

Char (1)Si

nameNombre / descripción del descuentoStringNo

amount

Importe aplicado como descuento

(Comprobantes tipo A: descuento neto sin IVA. Comprobantes tipos B: descuento con IVA incluido)

Number (10,2)No


taxAmount

Importe de IVA asociado a la promoción

Number (10,2)No

internalTaxImporte de impuestos internos asociado a la promociónNumber (10,2)No

percentPorcentaje de descuento aplicado. SI no se informa poner 0.0Number (4,2)No


fiscalDocument.items.itemInfo

Colección clave / valor libre para información específica del producto o del negocio.

ARRAYNo

key

Clave

String

valueValorString

fiscalDocument.benefitsDetalle de beneficios aplicadosARRAYNo

codeCódigo del beneficioStringNo


nameNombre / descripción del beneficioStringNo


benefitTypeNombre / descripción del tipo de beneficioStringNo


amount

Valor numérico, que representa importe, cantidad de cupones, o puntos

Number (10,2)No


couponCodeCódigo del CUPÓNStringNo


cardTypeCódigo del TIPO DE TARJETAStringNo


cardCodeCódigo de la TARJETA de beneficioStringNo


cardCurrentAmountMonto del beneficio de la TARJETANumber (10,2)No


fiscalDocument.paymentMethodsMétodos de pagoARRAYNo

codeCódigo del medio de pagoStringSi

nameNombre del medio de pagoStringSi

amountImporteNumber (10,2)Si

surchargeAlícuota de recargoNumber (3,2)No

fiscalDocument.paymentMethods.paymentMethodsInfoColección clave / valor de objetos que representan información adicional del pagoARRAYNo

keyClave para identificar el método de pagoString

valueValor del método de pagoString

fiscalDocument.documentInfo

Colección clave / valor de objetos que representan información adicional del documento.

ARRAYNo

key

Clave para identificar el dato

String

valueValor del dato adicionalString

Ejemplos:

Acceso a JSON de ejemplo por tipos de comprobante: FF - Ejemplos JSON comprobantes

RESPONSE OK

ElementoTipoDetalle
urlString

Contiene la URL para poder ver el comprobante online (para casos en donde el canal de venta imprime un ticket).

qrStringContiene la url a ser incluída en forma de QR en el comprobante, requerido por la AFIP.
authorizationDateDateFecha de vencimiento del CAE | CAEA
authorizationTypeStringCAE | CAEA
authorizationCodeStringCódigo de Autorización Electrónico (CAE) / Código de Autorización Electrónico Anticipado (CAEA)
pointOfSaleStringPunto de venta AFIP (5 dígitos)
invoiceNumberStringNumero de comprobante enviado a la AFIP, se asocia con el centro emisor AFIP utilizado para facturar.
invoiceTypeStringTipo de comprobante autorizado
ackNumber

Valor "0"

messageString

Cuando se envía una operación previamente autorizada por CAE o CAEA con el mismo número de identificador único de la transacción (internalId), el sistema da como respuesta el mismo mensaje de la transacción original e incluye en este elemento la leyenda "Operacion previamente autorizada para el internalId informado."


Ejemplo:

{
    "url""https://mifactura.napse.global/mf/ff20230/dGVzdHFhXzEwMDFfOTk5OTlfMV9OQy0wMDAwMDAwMTIy",
    "qr""https://www.afip.gob.ar/fe/qr/?p=eyJ2ZXIiOjEsImZlY2hhIjoiMjAyMS0wNS0xOCIsImN1aXQiOjIwMjQzMTQ1Mzc3LCJwdG9WdGEiOjE3LCJ0aXBvQ21wIjoxLCJucm9DbXAiOjUwLCJpbXBvcnRlIjozMjM0Ljg4LCJtb25lZGEiOiJQRVMiLCJjdHoiOjEsInRpcG9Eb2NSZWMiOm51bGwsIm5yb0RvY1JlYyI6bnVsbCwidGlwb0NvZEF1dCI6IkEiLCJjb2RBdXQiOjMxMTkzNTkzODY1MDU2fQ==",
    "authorizationDate""2021-05-31T03:00:00.000Z",
    "afipAuthorizationType""CAEA",
    "authorizationCode""31193593865056",
    "pointOfSale""00017",
    "invoiceNumber""00000050",
    "invoiceType"1,
    "ack"0,
    "message"""
}

RESPONSE ERROR

ElementoTipoDetalle
ackNumber

Código de error. Siendo los valores posibles:

  • Requirement
    freetextLink
    typeLINK
    keyFF-2000
    : Falta enviar header de la Autorización
  • Requirement
    freetextLink
    typeLINK
    keyFF-2001
    : Formato de credenciales inválidos
  • Requirement
    freetextLink
    typeLINK
    keyFF-2002
    : Usuario no encontrado
  • Requirement
    freetextLink
    typeLINK
    keyFF-2003
    : Contraseña invalida
  • Requirement
    freetextLink
    typeLINK
    keyFF-2004
    : Falta token de acceso
  • Requirement
    freetextLink
    typeLINK
    keyFF-2005
    : Token de acceso no existe
  • Requirement
    freetextLink
    typeLINK
    keyFF-2006
    : Token de acceso caducado
  • Requirement
    freetextLink
    typeLINK
    keyFF-2007
    : Faltan las credenciales de solicitud
  • Requirement
    freetextLink
    typeLINK
    keyFF-2008
    : La compañía no existe
  • Requirement
    freetextLink
    typeLINK
    keyFF-2009
    : Falta enviar Fiscal serial
  • Requirement
    freetextLink
    typeLINK
    keyFF-2010
    : No se encuentra configurado el CAE para la terminal
  • Requirement
    freetextLink
    typeLINK
    keyFF-2011
    : CAEA no existente para el periodo y orden
  • Requirement
    freetextLink
    typeLINK
    keyFF-2012
    : El header de la autorización debe ser de tipo string
  • Requirement
    freetextLink
    typeLINK
    keyFF-2013
    : La propiedad printerInfo debe ser de tipo object
  • Requirement
    freetextLink
    typeLINK
    keyFF-2014
    : La propiedad requestCredential debe ser de tipo object
  • Requirement
    freetextLink
    typeLINK
    keyFF-2015
    : Error de tipo de atributos en las credenciales
  • Requirement
    freetextLink
    typeLINK
    keyFF-2016
    : Falta el documento fiscal
  • Requirement
    freetextLink
    typeLINK
    keyFF-2017
    : La propiedad fiscalDocument debe ser de tipo object
  • Requirement
    freetextLink
    typeLINK
    keyFF-2018
    : La terminal no existe
  • Requirement
    freetextLink
    typeLINK
    keyFF-2019
    : Falta la propiedad fiscalDocument.items
  • Requirement
    freetextLink
    typeLINK
    keyFF-2020
    : Falta la propiedad Customer
  • Requirement
    freetextLink
    typeLINK
    keyFF-2021
    : Falta la propiedad customer.businessName
  • Requirement
    freetextLink
    typeLINK
    keyFF-2022
    : Falta la propiedad customer.documentType
  • Requirement
    freetextLink
    typeLINK
    keyFF-2023
    : Falta la propiedad customer.fiscalAddress
  • Requirement
    freetextLink
    typeLINK
    keyFF-2024
    : Falta la propiedad customer.identificationNumber
  • Requirement
    freetextLink
    typeLINK
    keyFF-2025
    : Falta la propiedad fiscalDocument.relatedInvoices
  • Requirement
    freetextLink
    typeLINK
    keyFF-2026
    : Falta la propiedad fiscalDocument.conceptCode
  • Requirement
    freetextLink
    typeLINK
    keyFF-2027
    : Falta la propiedad fiscalDocument.internalNumber
  • Requirement
    freetextLink
    typeLINK
    keyFF-2028
    : Falta la propiedad fiscalDocument.invoiceDate
  • Requirement
    freetextLink
    typeLINK
    keyFF-2029
    : Falta la propiedad fiscalDocument.invoiceType
  • Requirement
    freetextLink
    typeLINK
    keyFF-2030
    : Falta la propiedad fiscalDocument.nonTaxedAmount
  • Requirement
    freetextLink
    typeLINK
    keyFF-2031
    : Falta la propiedad fiscalDocument.totalAmount
  • Requirement
    freetextLink
    typeLINK
    keyFF-2032
    : Falta la propiedad fiscalDocument.relatedOtherTaxes
  • Requirement
    freetextLink
    typeLINK
    keyFF-2033
    : La propiedad fiscalDocument.optional tiene valores incorrectos
  • Requirement
    freetextLink
    typeLINK
    keyFF-2034
    : La propiedad fiscalDocument ya existe
  • Requirement
    freetextLink
    typeLINK
    keyFF-2035
    : Falta la propiedad fiscalDocument.relatedInvoicesPeriod
  • Requirement
    freetextLink
    typeLINK
    keyFF-2040
    : Falta la propiedad fiscalDocument.invoiceNumber
  • Requirement
    freetextLink
    typeLINK
    keyFF-2041
    : Falta la propiedad fiscalDocument.pointOfSale
  • Requirement
    freetextLink
    typeLINK
    keyFF-2042
    : La terminal esta configurada oara operar en modo 2G. Por favor cambie la configuración, comuniquese mediante el servicio clientStatus e intente nuevamente.
  • Requirement
    freetextLink
    typeLINK
    keyFF-2043
    : La terminal esta configurada oara operar en modo Factura electronica. Por favor cambie la configuración, comuniquese mediante el servicio clientStatus e intente nuevamente.
  • Requirement
    freetextLink
    typeLINK
    keyFF-2044
    : La terminal esta configurada oara operar en modo Impresora de 1G. Por favor cambie la configuración, comuniquese mediante el servicio clientStatus e intente nuevamente.
  • Requirement
    freetextLink
    typeLINK
    keyFF-2045
    : Falta la propiedad fiscalDocument.zNumber
  • Requirement
    freetextLink
    typeLINK
    keyFF-2046
    : Falta la propiedad printerInfo
  • Requirement
    freetextLink
    typeLINK
    keyFF-2047
    : Falta la propiedad printerInfo.fiscalSerial
  • Requirement
    freetextLink
    typeLINK
    keyFF-2048
    : Falta la propiedad printerInfo.pointOfSale
  • Requirement
    freetextLink
    typeLINK
    keyFF-2900
    : Las credenciales son invalidas
  • Requirement
    freetextLink
    typeLINK
    keyFF-2997
    : Timeout
  • Requirement
    freetextLink
    typeLINK
    keyFF-2998
    : AFIP rechazo la solicitud de autorización
  • Requirement
    freetextLink
    typeLINK
    keyFF-2999
    : Error interno del servidor3006: Falta el token de acceso
  • Requirement
    freetextLink
    typeLINK
    keyFF-3018
    : Esta deshabilitado la modalidad CAEA cuando AFIP esta fuera de linea
  • Requirement
    freetextLink
    typeLINK
    keyFF-3019
    : Esta deshabilitado la modalidad CAEA cuando la tienda esta fuera de linea
  • Requirement
    freetextLink
    typeLINK
    keyFF-3020
    : La terminal no existe, registrarse a través del método clientStatus
  • Requirement
    freetextLink
    typeLINK
    keyFF-3021
    : No hay CAEA para la empresa
  • Requirement
    freetextLink
    typeLINK
    keyFF-3022
    : No puede ser autorizado por CAEA porque la tienda excedió el porcentaje de autorización configurado
  • Requirement
    freetextLink
    typeLINK
    keyFF-3023
    : Terminal no registrado para operar en modo 2g. Por favor llame a clientStatus para registrarse
  • Requirement
    freetextLink
    typeLINK
    keyFF-3024
    : Credenciales no válidas o número interno faltante en el documento fiscal
  • Requirement
    freetextLink
    typeLINK
    keyFF-3025
    : Error de agente interno. El agente no tiene información para el periodo actual para calcular el porcentaje de CAEA para autorizar
  • Requirement
    freetextLink
    typeLINK
    keyFF-4000
    Error de AFIP (según la especificación del manual del desarrollador, se informa en el campo message). https://www.afip.gob.ar/facturadecreditoelectronica/documentos/manual_desarrollador_COMPG_v2_18-beta1.pdf
  • Requirement
    freetextLink
    typeLINK
    keyFF-4999
    : Fuera de servicio WebService de AFIP
messageStringDetalle del tipo del error.

Ejemplo:

{
    "ack"2002,
    "message""User not found"
}


Servicio: Consultar documento fiscal (fiscalDocuments)

Expandir

Este servicio permite consultar un documento fiscal de acuerdo a determinados filtros:

  • companyCode (string)
  • storeCode (string)
  • terminalCode (string)
  • invoiceType (number)
  • internalId (string)

Para el uso del servicio es necesario informar un token que se obtiene a través del servicio "Authenticate".

Es un método REST basado en el formato JSON. Ejemplo:

[get] http://[dirección-ip]:[puerto]/api/v1/fiscalDocuments?invoiceType=1&internalId=640

GET - REQUEST

HEADER

x-access-token
Token obtenido a través del servicio "Authenticate"
internalId

Número de comprobante interno del punto de venta.

Ejemplo:

  "x-access-token": token

BODY

ElementoDescripciónTipo de datoRequeridoValidación
requestCredential
companyCodeCódigo de compañía, provisto para la empresa que contrata el servicioString Si992
storeCodeCódigo de tiendaStringSi992
terminalCodeCódigo de terminal / punto de ventaStringSi992

Ejemplo:

Bloco de código
languageyml
{ 
   "requestCredential":{ 
      "companyCode":"napse",
      "storeCode":"1001",
      "terminalCode":"1001"
   }
}

RESPONSE

Ejemplo:

Bloco de código
{
	 "authorizeInfo": [
		{
    		"code": 10017,
        	"message": "Factura individual, DocTipo: 80, DocNro 30470827047 no se encuentra registrado en los padrones de AFIP o se encuentra inactivo.",
    	    "date": "2020-10-26 23:22:40"       
		}   
	],   
	"attempts": 0,   
	"processed": true,
	"_id": "5f975a4074f8103e0f082ab5",  
	"internalId": "7922124961",
	"orderNumber": 1,   
	"operator": "ALE",
	"conceptCode": 1,
	"invoiceType": 1,
	"saleCondition": "1",
	"currency": "PES",
	"currencyChange": 1,
	"invoiceDate": "2020-10-26T00:00:00.000Z",
	"paymentDueDate": "2020-10-26T00:00:00.000Z",
	"periodStartDate": "2020-10-26T00:00:00.000Z",
	"periodEndDate": "2020-10-26T00:00:00.000Z",
	"businessDate": "2020-10-26T00:00:00.000Z",
	"zNumber": 16768153,
	"items": [      
		{
			"um": "7",
			"_id": "5f975a4074f8103e0f082ab6",
			"action": "S",
			"sku": "53094",
			"code": "1",
			"imageUrl": "",
			"name": "Televisor Sony",
			"qty": 1,
			"serialNumber": "49938801",
			"lotNumber": "12281",
			"barCode": "779893164411834",
			"tax": 21,
			"taxAmount": 100.66,
			"internalTax": 0,
			"discount": 10.2,
			"unitPrice": 587,
			"totalPrice": 587,
       		"promotions": [
                {
                    "_id": "5f975a4074f8103e0f082ab7",
                    "code": "PRS",
                    "scope": "I",
                    "name": "Dto 2x1",
                    "amount": 10.2,
                    "taxAmount": 0,
                    "internalTax": 0,
                    "percent": 0
                }           
			],
			"itemInfo": [
        	        {
                    "_id": "5f975a4074f8103e0f082ab8",
                    "key": "Peso",
                    "value": "15kg"
                },
                {
                    "_id": "5f975a4074f8103e0f082ab9",
                    "key": "ModalidadEnvio",
                    "value": "Envío a Domicilio"
                },
                {
                    "_id": "5f975a4074f8103e0f082aba",
                    "key": "ContactoEntrega",
                    "value": "Preguntar por Francisco Perez"
                }           
			]
		}
	],
	"relatedTaxes": [
			{
				"_id": "5f975a4074f8103e0f082abb",
				"amount": 100.66,
				"baseAmount": 479.34,
				"code": "5",
				"name": "IVA 21%"
			}   
	],
	"relatedOtherTaxes": [],
	"optionals": [],
	"paymentMethods": [
		{
			"_id": "5f975a4074f8103e0f082abc",
			"code": "VISACR",
			"name": "Tarjeta VISA Credito",
			"amount": 11.8,
			"surcharge": 2,
			"paymentMethodsInfo": [
  		  	{
				  "_id": "5f975a4074f8103e0f082abd",
    		  	  "key": "DatosTC",
    		  	  "value": "2345 01 123456 0044"
   			},
   		 	{
    			  "_id": "5f975a4074f8103e0f082abe",
    		   	  "key": "Tasas",
    		      "value": "TNA: 0.00% TEA: 0.00% TEM: 0.00% CFT: 0.00%"
       		}        
			]
  		}
	],
	"documentInfo": [
    	{
	   		"_id": "5f975a4074f8103e0f082abf",
       		"key": "footer",    
	   		"value": "Telefono gratuito CABA, area de defensa y proteccion al consumidor 0810-123-0000"
   		}
	], 
	"benefits": [],
	"subTotalAmount": 10,
	"ticketDiscount": 8.6,
	"discountAmount": 18.8,
	"nonTaxedAmount": 0,
	"taxedAmount": 479.34,  
	"amountIVA": 100.66,
	"amountOtherTaxes": 0,
	"exemptAmount": 0,
	"totalAmount": 580,
	"companyCode": "napse",
	"storeCode": "1001",
	"terminalCode": "1002",
	"testMode": true,
	"documentType": "80",
	"identificationNumber": "30470827047",
	"hasCustomer": true,
	"relatedInvoices": [],
	"authorizationCode": "70437875745658",
	"authorizationType": "CAE",
	"authorizationCodeDueDate": "2020-11-05T00:00:00.000Z",
	"invoiceNumber": 2604,
	"pointOfSale": 14,
	"status": "ok",
	"invoiceHour": 0,
	"createdAt": "2020-10-26T23:22:40.643Z",
	"updatedAt": "2020-10-26T23:23:00.095Z",
    "__v": 0
}