API para generación y envío de XML de los comprobantes electrónicos de Paraguay


Nombre físico: local/pry/pry1200.p

Versión de integración: 001

Objetivo: 

Generar el XML para autorización de comprobantes electrónicos de Paraguay. 

Prerrequisitos: 

No se aplica.


Consideraciones generales


  • Se pasan parámetros de input y output para la API.
    • El Input se envía al rowid de la tabla internac-autoriz-nfe.
    • Output: temp-table de errores RowErrors.
  • Se generan diversas temp-tables para la generación del XML, que se muestran a continuación.

Tablas temporales para la generación del XML


Descripción de los campos 

TEMP-TABLE tt-enviar

Atributo

Descripción

Tipo

Formato

Valor inicial

arq-xml

Directorio y nombre del archivo XML

Character



Id

Código CDC

Character



dDVId

Dígito verificador CDC

Character



dFecFirma

Fecha autorización

Character



dSisFact 

Fijo 1

Character



iTipEmi

Tipo de emisión: Fijo 1

Integer



 dDesTipEmi   

Tipo de emisión: Normal

Character



 dCodSeg      

Código de seguridad

Character



 dInfoEmi     

Observación Factura

Character



 dInfoFisc 

Observación Remito o 

Datos de exportación

Character



 iTiDE      

Tipo de comprobante

Integer



 dDesTiDE  

Descripción del tipo de comprobante

Character



 dNumTim      

Número timbrado

Character

999999999


 dEst         

Sucursal fiscal

Character

999


 dPunExp   

Punto de expedición

Character



 dNumDoc      

Número de documento

Character



 dSerieNum    

Serie

Character



 dFeIniT      

Fecha inicio de timbrado

Character



 dFeFinT      

Fecha final de timbrado (no se envía)

Character



 dFeEmiDE 

Fecha de emisión de comprobante

Character



 iTipTra      

Tipo de transacción

Integer



 dDesTipTra   

Descripción de tipo de transacción

Character



 iTImp        

Tipo de impuesto

Integer



 dDesTImp     

Descripción de tipo de impuesto

Character



 cMoneOpe    

Sigla de moneda

Character



 dDesMoneOpe 

Descripción de moneda

Character



 dCondTiCam   

Tipo de cotización: Global

Integer



 dTiCam       

Cotización

Decimal



 iCondAnt   

Tipo de anticipo: Global

Integer



 dDesCondAnt  

Descripción de tipo de anticipo

Character



iIndPres

Indicador de presencia

Integer



dDesIndPres

Descripción de indicador de presencia

Character



dFecEmNR

Fecha (no enviado)

Character



iMotEmi    

Motivo de emisión (NC/ND)

Integer



dDesMotEmi 

Descripción de motivo

Character



iMotEmiNR     

Motivo de guía de remisión

Integer



dDesMotEmiNR  

Descripción de motivo de guía de remisión

Character



iRespEmiNR 

Responsable de emisión de guía de remisión

Integer



dDesRespEmiNR 

Descripción de responsable de emisión de guía de remisión

Character



dKmR          

Distancia (km)

Integer



dFecEm        

Fecha futura de emisión de la factura

Character



dSubExe    

Total exento

Decimal

999999999999999.99999999


dSubExo         

Total exonerado

Decimal

999999999999999.99999999


dSub5       

Total de ítems IVA 5%

Decimal

999999999999999.99999999


dSub10          

Total de ítems IVA 10%

Decimal

999999999999999.99999999


dTotOpe     

Total de operación 

Decimal

999999999999999.99999999


dTotDesc       

Total de descuento

Decimal

999999999999999.99999999


dTotDescGlotem 

Total de descuento global ítem

Decimal

999999999999999.99999999


dTotAntItem  

Total de anticipo de ítem

Decimal

999999999999999.99999999


dTotAnt        

Total de anticipo

Decimal

999999999999999.99999999


dPorcDescTotal  

Porcentaje de descuento total

Decimal

999.99999999


dDescTotal      

Descuento total

Decimal

999999999999999.99999999


dAnticipo       

Anticipo

Decimal

999999999999999.99999999


dRedon          

Redondeo

Decimal

999999999999999.99999999


dComi        

Comisión

Decimal

999999999999999.99999999


dTotGralOpe     

Total general de operación

Decimal

999999999999999.99999999


dIVA5           

Total IVA 5%

Decimal

999999999999999.99999999


dIVA10          

Total IVA 10%

Decimal

999999999999999.99999999


dLiqTotIVA5     

Total neto IVA 5%

Decimal

999999999999999.99999999


dLiqTotIVA10   

Total neto IVA 10%

Decimal

999999999999999.99999999


dIVAComi        

IVA Comisión

Decimal

999999999999999.99999999


dTotIVA   

Total IVA

Decimal

999999999999999.99999999


dBaseGrav5      

Base IVA 5%

Decimal

999999999999999.99999999


dBaseGrav10

Base IVA 10%

Decimal

999999999999999.99999999


dTBasGraIVA   

Total Base IVA Gravado

Decimal

999999999999999.99999999


dTotalGs  

Total general

Decimal

999999999999999.99999999


l-exporta       

Si es documento de exportación

Logical


EN EL

TEMP-TABLE tt-transp

Atributo

Descripción

Tipo

iTipTrans   

Motivo de transporte

Integer

dDesTipTrans

Descripción de motivo

Character

iModTrans   

Modalidad de transporte

Integer

dDesModTrans

Descripción de modalidad

Character

iRespFlete  

Responsable de emisión

Integer

cCondNeg  

Incoterm

Character

dNuManif    

Número de manifiesto

Character

dNuDespImp  

no enviado

Character

dIniTras    

Fecha de inicio de traslado

Character

dFinTras    

Fecha final de traslado

Character

cPaisDest   

Código de país destino

Character

dDesPaisDest

Nombre del país

Character

dDirLocSal 

Dirección de salida

Character

dNumCasSal 

Número de casa de salida

Integer

cDepSal    

Departamento de salida

Integer

dDesDepSal 

Descripción

Character

cDisSal    

Distrito (no enviado)

Integer

dDesDisSal 

no enviado

Character

cCiuSal    

Ciudad de salida

Integer

dDesCiuSal 

Descripción

Character

dTelSal    

Teléfono

Character

dDirLocEnt 

Dirección de entrega

Character

dNumCasEnt 

Número de casa de entrega

Integer

cDepEnt  

Departamento de entrega

Integer

dDesDepEnt 

Descripción

Character

cDisEnt    

Distrito (no enviado)

Integer

dDesDisEnt

no enviado

Character

cCiuEnt    

Ciudad de entrega

Integer

dDesCiuEnt 

Descripción

Character

dTelEnt    

Teléfono

Character

iNatTrans  

Tipo de contribuyente de transportadora

Integer

dNomTrans 

Nombre de transportadora

Character

dRucTrans    

RUC

Character

dDVTrans     

Dígito verificador RUC

Integer

iTipIDTrans  

Código fiscal Docto Identificación

Integer

dDTipIDTrans 

Descripción Docto Identificación

Character

dNumIDTrans  

Número Docto Identificación

Character

cNacTrans    

Código de país de transportadora

Character

dDesNacTrans 

Nombre del país

Character

dNumIDChof

Documento de identificación del conductor

Character

dNomChof     

Nombre del conductor

Character

dDomFisc     

Dirección de transportadora

Character

dDirChof     

Dirección del conductor

Character

TEMP-TABLE tt-veic

Atributo

Descripción

Tipo

dTiVehTras 

Descripción de modalidad de transporte

Character

dMarVeh    

Marca

Character

dTipIdenVeh

Tipo de identificación de vehículo

Integer

dNroIDVeh  

Número de identificación

Character

dNroMatVeh 

Número de matrícula

Character

dNroVuelo  

Número de vuelo 

Character

TEMP-TABLE tt-emissor

Atributo

Descripción

Tipo

dRucEm     

RUC del emisor

Character

dDVEmi     

Dígito verificador RUC

Integer

iTipCont   

Tipo de contribuyente

Integer

cTipReg 

Tipo de régimen (Serie)

Integer

dNomEmi  

Razón social

Character

dNomFanEmi 

Nombre fantasía

Character

dDirEmi    

Dirección

Character

dNumCas    

Número

Integer

cDepEmi    

Departamento (Estado)

Integer

dDesDepEmi 

Descripción de Estado

Character

cDisEmi    

no enviado

Integer

dDesDisEmi 

no enviado

Character

cCiuEmi    

Código de la ciudad

Integer

dDesCiuEmi 

Descripción de la ciudad

Character

dTelEmi    

Teléfono

Character

dEmailE    

Email

Character

dDenSuc    

no enviado

Character

TEMP-TABLE tt-acteco

Atributo

Descripción

Tipo

cActEco

Código ACTECO (origen de operación)

Character

dDesActEco     

Descripción ACTECO

Character

TEMP-TABLE tt-receptor

Atributo

Descripción

Tipo

iNatRec     

Origen de contribuyente

Integer

iTiOpe    

Tipo de operación (origen de operación)

Integer

cPaisRec  

Código del país receptor

Character

dDesPaisRe

Descripción del país

Character

iTiContRec

Tipo de contribuyente

Integer

dRucRec     

RUC Receptor

Character

dDVRec     

Dígito verificador RUC

Integer

iTipIDRec

Código fiscal Docto Identificación

Integer

dDTipIDRec 

Descripción de documento de identificación

Character

dNumIDRec

Número de documento de identificación

Character

dNomRec

Razón social

Character

dNomFanRec 

Nombre fantasía

Character

dDirRec    

Dirección

Character

dNumCasRec

Número

Integer

cDepRec

Departamento (Estado)

Integer

dDesDepRec

Descripción de Estado

Character

cDisRec

no enviado

Integer

dDesDisRec

no enviado

Character

cCiuRec

Código de la ciudad

Integer

dDesCiuRec

Descripción de la ciudad

Character

dTelRec

Teléfono

Character

dEmailRec 

Email

Character

dCodCliente  

Código de emitente

Character

TEMP-TABLE tt-itens

Atributo

Descripción

Tipo

Formato

secuencia      

Secuencia del ítem 

Integer


dCodInt        

Código del ítem

Character


dNCM    

Código NCM

Integer


dDesProSer  

Descripción del ítem

Character


cUniMed        

Código de la unidad de medida

Integer


dDesUniMed   

Descripción de la unidad medida

Character


dCantProSer 

Cantidad

Decimal

9999999999.9999

cRelMerc       

Tolerancia

Integer


dDesRelMerc    

Descripción de tolerancia

Character


dCanQuiMer 

Cantidad de tolerancia

Decimal

9999999999.9999

dPorQuiMer     

Porcentaje de tolerancia

Decimal

999.99999999

dPUniProSer    

Precio unitario con impuestos

Decimal

999999999999999.99999999

dTotBruOpeItem 

Total ítem

Decimal

999999999999999.99999999

dDescItem     

Descuento unitario ítem

Decimal

999999999999999.99999999

dPorcDesIt     

% Descuento total ítem

Decimal

999.99999999

dDescGloItem  

Descuento global ítem

Decimal

999999999999999.99999999

dTotOpeItem    

Total ítem sin gastos

Decimal

999999999999999.99999999

dTotOpeGs      

no enviado

Decimal

999999999999999.99999999

dAntPreUniIt   

no enviado

Decimal

999999999999999.99999999

dAntGloPreUniIt

Precio unitario del anticipo

Decimal

999999999999999.99999999

dInfItem       

no enviado, solamente Gasto cuando corresponda

Character


TEMP-TABLE tt-imposto

Atributo

Descripción

Tipo

Formato

secuencia      

Secuencia del ítem 

Integer


iAfecIVA    

Código del ítem

Integer


dDesAfecIVA 

Tipo de tributación IVA

Character


dPropIVA   

Proporción de gravamen IVA

Decimal

999.99999999

dTasaIVA    

% IVA

Integer


dBasGravIVA 

Base de cálculo

Decimal

999999999999999.99999999

dLiqIVAItem 

Valor IVA

Decimal

999999999999999.99999999

dBasExe     

Base exenta

Decimal

999999999999999.99999999

TEMP-TABLE tt-pagos

Atributo

Descripción

Tipo

Formato

iCondOpe  

Código de condición de operación

Integer


dDCondOpe 

Descripción de condición de operación

Character


iCondCred 

Código de condición de crédito

Integer


dDCondCred

Descripción de condición de crédito

Character


dPlazoCre 

Plazo de condición de crédito

Character


dCuotas   

Partidas

Integer


dMonEnt   

Valor de los anticipos con condición de crédito

Decimal

999999999999999.9999

TEMP-TABLE tt-monto-ini

Atributo

Descripción

Tipo

Formato

iTiPago  

Código de tipo de pago

Integer


dDesTiPag   

Descripción de tipo de pago

Character


dMonTiPag   

Valor de acuerdo con el tipo de pago

Decimal

999999999999999.9999

cMoneTiPag 

Moneda 

Character


dDMoneTiPag 

Descripción de moneda

Character


dTiCamTiPag 

Cotización

Decimal

99999.9999

TEMP-TABLE tt-parcelas

Atributo

Descripción

Tipo

Formato

cMoneCuo 

Moneda de partida

Character


dDMoneCuo

Descripción de moneda

Character


dMonCuota

Valor cuota

Decimal

999999999999999.9999

dVencCuo 

Vencimiento de partida

Character


TEMP-TABLE tt-compl-comercial

Atributo

Descripción

Tipo

 OrdCompra

Número de orden de compra

Character

dOrdVta  

Número de pedido de representante

Character

dAsiento 

no enviado

Character

TEMP-TABLE tt-doc-assoc

Atributo

Descripción

Tipo

iTipDocAso

Tipo de documento asociado

Integer

dDesTipDocAso

Descripción de tipo de documento asociado

Character

dCdCDERef

Código de autorización de documento asociado

Character


Ejecución


Sintaxe:

RUN local/pry/pry1200.p (INPUT ROWID(internac-autoriz-nfe),
                                     OUTPUT TABLE rowErrors).


En caso de error en las validaciones anteriores, el error se retornará por medio de la temp-table RowErrors.

Si se aceptan los datos, la API retornará un OK por medio del return-value.






Parámetros de salida


Si el retorno fuera NOK, todos los errores encontrados se retornarán en la tabla Temp-Table RowErrors:

La tt-erros es una tabla de retorno de datos referente a los errores encontrados en el manejo de los datos de las tablas de entrada. La tt-erros retorna datos por medio de un registro que contiene el código del error y su descripción.

Obs.: Después de haber hecho la llamada a la API es imprescindible tratar los errores retornados si existen.

TEMP-TABLE RowErrors

Atributo

Descripción

Tipo

ErrorSequence 

Número de secuencia

Integer

ErrorNumber 

Código de error

Integer

ErrorDescription

Descripción

Character

ErrorParameters 

Parámetros

Character

ErrorType       

Tipo

Character

Errorhelp  

Help

Character

Errorsubtype    

Subtipo

Character



Documento traducido