Este documento es un material de especificación de los requisitos de innovación. Se trata de un contenido sumamente técnico. |
---|
Especificación | |||
Producto | Microsiga Protheus | Módulo | SIGAFAT |
Segmento ejecutor | Servicios | ||
Projeto1 | Proyecto de Desarrollo_MEX | IRM/EPIC1 |
|
Requisito/Story/Issue1 |
| Subtarea1 | SERINN001-1144 |
Chamado/Ticket2 |
| ||
País | ( ) Brasil ( ) Argentina ( ) México ( ) Chile ( ) Paraguay ( ) Ecuador ( ) EEUU ( ) Colombia ( X ) Otro Perú. | ||
Otros | <Si necesario, informe otras referencias que sean pertinentes a esta especificación. Ejemplo: enlaces de otros documentos o subtareas vinculadas>. |
Leyenda: 1 – Innovación 2 – Mantenimiento (Los demás campos se deben completar en ambos los procesos).
Crear la función M486NFXML que deberá generar el xml que será trasmitido al TSS para su posterior envío a la SUNAT, además se deberá crear fuente M486XFUN, en cual se crearan funciones necesarias para generación de XML y que servirán para la creación de XML de nota de crédito y nota de débito. Esto aplica para:
En Protheus la Boleta de Venta se genera de la misma manera que una Factura de Venta. La diferencia entre ambos documentos será el tipo de identificación del receptor de acuerdo al tipo de documento de identidad (A1_TIPDOC) y la Serie2 (F2_SERIE2) del documento. Para Boleta de Venta el documento deberá comenzar con la letra “B”, para Factura de Venta la Serie 2 deberá comenzar con “F”. El receptor de boleta de venta será identificado con A1_TIPDOC diferente a RUC (diferente de Valor 6).
Esta rutina deberá permitir generar una cadena de caracteres que define un XML en el cuál contendrá los datos correspondientes al documento electrónico solicitado según el esquema UBL2.0.
No deberá tener interfaz gráfica de entrada ya que será llamada por la rutina MATA486 desde el menú de módulo de facturación SIGAFAT->Actualizaciones->Facturación->Transmisión Electrónica.
Los parámetros que deberá recibir la función son los siguientes:
La estructura del XML generado deberá apegarse al estándar UBL 2.0. Una vez obtenidos los datos de la factura, generar el archivo XML en la carpeta
A continuación se detalla la estructura del XML así como su correspondencia en Protheus:
Elemento | TAG UBL | Descripción | Tam | Oblig | Valor |
Adicionales
| <UBLExtensions> | Contenedor de Componentes de extensión. Podrán incorporarse nuevas definiciones estructuradas cuando sean de interés conjunto para emisores y receptores, y no estén ya definidas en el esquema de la factura |
| x |
|
| <ext:UBLExtension> | Deberá generarse para Información Adicional sobre la factura por conceptos de otros tributos y operaciones |
|
|
|
| <ext:ExtensionContent> |
|
|
|
|
| <sac:AdditionalInformation> | Información Adicional |
|
|
|
| <sac:AdditionalMonetaryTotal> | Generar por cada Concepto contenido en Catálogo No. 14 |
|
| Generar al menos por los conceptos: 1001,1002,1003,1004,1005,1000
Ver Sección Submontos Adicionales |
| <cbc:ID> | Código Concepto Tributario |
|
|
|
| <cbc:PayableAmount currencyID="XXX"> | Monto del Concepto Tributario |
|
| Dónde XX=POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") Depende del tipo de Operación. |
| <ext:UBLExtension> |
|
|
| Generar sin contenido de la siguiente manera: <ext:UBLExtension> <ext:ExtensionContent> </ext:ExtensionContent> </ext:UBLExtension> |
Identificación del Documento | <cbc:UBLVersionID> | Versión UBL | 3 | X | Fijo “2.0” |
| <cbc:CustomizationID> | Versión de la estructura del Documento | 3 | X | Fijo “1.0” |
| <cbc:ID> | Numeración, conformada por serie y número correlativo | Max. 13 | X | F2_SERIE2+”-“+F2_DOC en Formato: F###-NNNNNNNN
Ejemplo: FX01-12 F001-1022 |
| <cbc:IssueDate> | Fecha de Emisión | 10 | X | F2_EMISSAO Formato YYYY-MM-DD |
| <cbc:DocumentCurrencyCode> | Tipo de moneda en la cual se emite la factura electrónica. Catálogo 02 | 3 | x | POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") |
Otros documentos Adicionales | <cac:AdditionalDocumentReference>
| Referencia a cualquier otro documento, distintos a los señalados en el numeral anterior, asociado a la factura. Podrán especificarse documentos como comprobantes de retención, percepción, código SCOP, etc. Puede existir documentos de distintos tipos asociados a una misma factura, por lo que el número de elementos de este tipo es ilimitado. |
|
| Generar si y solo si existe alguna referencia a estos documentos. |
<cbc:ID> | Número de Documento |
|
| Número de documento | |
<cbc:DocumentTypeCode>
| Se utilizará el Catálogo No. 12: “Códigos - Documentos Relacionados Tributarios”. |
|
| Este elemento es opcional. Colocar dependiendo del tipo de Documento. Catálogo No. 12 | |
Firma Electrónica | <cac:Signature> | Referencia a la Firma Digital |
|
|
|
<cbc:ID> | Identificador de la firma |
|
| Fijo “IDSignTOTVS” | |
<cac:SignatoryParty> <cac:PartyIdentification> <cbc:ID> | Identificación de la parte firmante | 13 |
| SM0->M0_CGC | |
<cac:SignatoryParty> <cac:PartyName> <cbc:Name> | Nombre de la parte firmante
|
|
| SM0->M0_NOME | |
<cac:DigitalSignatureAttachment> <cac:ExternalReference> <cbc:URI> | Asociación con la firma codificada
|
|
| Colocar fijo “#SignatureTOTVS” | |
Información del Emisor | <cac:AccountingSupplierParty> | Documentación Emisor |
| x |
|
<cbc:CustomerAssignedAccountID> | RUC del Emisor
| 11 | x | SM0->M0_CGC | |
<cbc:AdditionalAccountID> | Tipo de documento de identificación. Catálogo No. 6 | 1 | x | Fijo ‘6’ | |
<cac:Party> | Razón social y Domicilio fiscal del Emisor |
| x |
| |
<cac:PartyName> | Nombre de la Empresa |
| X |
| |
<cbc:Name> | Nombre commercial | Max 100 | x | M0_NOMECOM | |
<cac:PostalAddress> | Domicilio Fiscal |
| X |
| |
<cbc:ID> | Código Postal. Catálogo No. 13 | 6 | X | M0_CEP homologado con ubígeos | |
<cbc:StreetName> | Dirección Completa y detallada | Max 100 | X | M0_ENDENT | |
<cbc:CityName> | Provincia | Max 30 | X | M0_CIDENT | |
<cbc:District> | Distrito | Max 30 | X | M0_BAIRENT | |
<cac:Country> | Datos Pais |
| X |
| |
<cbc:IdentificationCode> | Código de Identificación del País. Catálogo No. 04 | 2 | X | Fijo “PE” | |
<cac:PartyLegalEntity> | Razón Social |
|
|
| |
<cbc:RegistrationName> | Apellidos y nombres, denominación o razón social | Max 100 | X | M0_NOME | |
Información del Receptor | <cac:AccountingCustomerParty> | Datos del Adquirente o Usuario
|
| x |
|
<cbc:CustomerAssignedAccountID> | RUC | 11 | X | A1_CGC | |
<cbc:AdditionalAccountID> | Tipo de documento de identificación. Catálogo No. 6 | 2 | X | POSICIONE("SX5",1,XFILIAL("SX5")+”XN”+A1_TIPDOC,"X5_DESCSPA") | |
<cac:Party> | Razón social y Domicilio fiscal del Receptor |
| X |
| |
<cac:PostalAddress> | Domicilio Fiscal |
| X |
| |
<cbc:ID> | Código Postal. Catálogo No. 13 | 6 | X | A1_CEP homologado con ubígeos | |
<cbc:StreetName> | Dirección Completa y detallada | Max 100 | X | A1_END | |
<cbc:CityName> | Provincia | Max 30 | X | A1_MUN | |
<cbc:District> | Distrito | Max 30 | X | A1_BAIRRO | |
<cac:Country> | Datos Pais |
| X |
| |
<cbc:IdentificationCode> | Código de Identificación del País. Catálogo No. 04 | 2 | X | Obtener de SYA->YA_CODERP por medio de A1_PAIS | |
<cac:PartyLegalEntity> | Razón Social |
|
|
| |
<cbc:RegistrationName> | Apellidos y nombres, denominación o razón social
| Max 100 | X | A1_NOME | |
Impuestos | <cac:TaxTotal> | Impuestos Globales |
| X | Genenrar por cada Tipo de Impuesto que contenga la Factura. |
<cbc:TaxAmount currencyID=”XX”> | Monto total del Impuesto |
| X | Dónde XX=POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") El valor de TaxAmount = Sumatoria del valor del Impuesto de la factura. | |
<cac:TaxSubtotal> | Subtotal Impuestos |
| X |
| |
<cbc:TaxAmount currencyID=”XX”> | Monto total del Impuesto |
| X | Dónde XX=POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") El valor de TaxAmount = Sumatoria del valor del Impuesto de la factura. | |
<cac:TaxCategory> | Categoría del Impuesto |
| X |
| |
<cac:TaxScheme> |
|
| X |
| |
<cbc:ID> | Código del Impuesto. Catálogo No. 05 | 4 | X | Obtener del impuesto el campo FB_CODIMP | |
<cbc:Name> | Nombre del Impuesto. Catálogo No. 05 | Max 5 | X | IGV,ISC,OTROS | |
<cbc:TaxTypeCode> | Código del Tipo de Tributo (UN/ECE 5153)
| 3 | X | Obtener del impuesto el campo FB_CODTAR | |
Total Factura | <cac:LegalMonetaryTotal> | Totales a pagar de la Factura y Cargos
|
| X |
|
<cbc:AllowanceTotalAmount currencyID="XXX"> | Importe total de cargos aplicados al total de la factura
|
| X | Donde XX = XX=POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") AllowanceTotalAmount = “0.00” | |
<cbc:PayableAmount currencyID="XXX"> | Moneda e Importe total a pagar
|
| X | Donde XXX =POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") PayableAmount = F2_VALBRUT | |
Detalle de la Factura | <cac:InvoiceLine> | Debe generarse por cada ítem |
| X |
|
| <cbc:ID> | Número de orden del Ítem
|
| x | D2_ITEM, sin ceros a la izquierda. |
| <cbc:InvoicedQuantity unitCode="XXX"> | Unidad de medida y cantidad por ítem |
|
| Donde XXX = Posicione("SAH",1,xFilial("SAH")+(cAliasXML)->B1_UM,"AH_COD_CO")
InvoiceQuantity = D2_QUANT |
| <cbc:LineExtensionAmount currencyID="XXX"> | Moneda e Importe monetario que es el total de la línea de detalle, incluyendo variaciones de precio (subvenciones, cargos o descuentos) pero sin impuestos.
|
|
| Donde XXX =POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA")
LineExtensionAmount =D2_PRCVEN + D2_DESCON/D2_QUANT) |
| <cac:PricingReference> | Nodo de Valores Unitarios |
|
|
|
| <cac:AlternativeConditionPrice> | Valor referencial unitario por ítem en operaciones no onerosas y código |
|
|
|
| <cbc:PriceAmount currencyID="XXX"> | Monto del valor unitario
|
|
| Donde XXX =POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA")
PriceAmount currencyID= (D2_TOTAL +D2_DESCON)/nQtdItem) + (nImp/nQtdItem) |
| <cbc:PriceTypeCode> | Código de Tipo de Precio. Catálogo No. 16 |
|
| 01 para Precion con IGV. 02 Para cuando el ítem tiene descuento. |
| <cac:AllowanceCharge> | Descuentos por Item |
|
|
|
| <cbc:ChargeIndicator> | Indicador de descuento |
|
| Colocar siempre false |
| <cbc:Amount currencyID="XXX"> | Monto del descuento del ítem .Se debe especificar la moneda en la que se emite el descuento, para ello se utiliza el atributo currencyID.
|
|
| Donde XXX =POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA")
:Amount = D2_DESCON |
| <cac:TaxTotal> | Impuestos por Item de la factura |
|
|
|
| <cbc:TaxAmount currencyID="XXX"> | Importe total de un tributo para este ítem
|
|
| Donde XXX =POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA")
D2_VALIMPn |
| <cac:TaxSubtotal> |
|
|
|
|
| <cbc:TaxAmount currencyID="XXX"> | Importe total de un tributo para este ítem
|
|
| Donde XXX =POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") D2_VALIMPn |
| <cac:TaxCategory> | Categoria del impuesto |
|
|
|
| <cbc:TaxExemptionReasonCode> | Tipo de Afectación según catálogo No. 07 |
|
| Generar solo si el impuesto es IGV |
| <cbc:TierRange > | Tipo de afectación de ISC |
|
| Generar solo para ISC |
| <cac:TaxScheme> | Tipo de Impuesto |
|
|
|
| <cbc:ID> | Tipo de Impuesto según catálogo No. 05 |
|
| FB_CODIMP |
| <cbc:Name> | Nombre del Impuesto |
|
| FB_CODIGO para IGV e ISC, para otrs impuestos colocar palabra “OTROS” |
| <cbc:TaxTypeCode> | Código del Tipo de Tributo (UN/ECE 5153) |
|
| FB_CODTAR |
| <cac:Item> | Descripcion del ítem |
|
|
|
| <cbc:Description> | Descripción detallada del bien vendido o cedido en uso, descripción o tipo de servicio prestado por ítem
|
|
| B1_DESC |
| <cac:SellersItemIdentification> | Identificaicón interna del producto |
|
|
|
| <cbc:ID> | Código del producto de acuerdo al tipo de codificación interna que se utilice. |
|
| B1_COD |
| <cac:Price> |
|
|
|
|
| <cbc:PriceAmount currencyID="xxx"> | Valores de venta unitarios por ítem (VU) no incluye impuestos
|
|
| Donde XXX =POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") D2_PRCVEN |
SUBMONTOS ADICIONALES
Según el Catálogo No. 14: Códigos - Otros conceptos tributarios deberán anexarse a cada submonto los concepto si estos existen en la factura o boleta de venta.
Estos deberán obtenerse de la siguiente manera:
Submonto 1001 Total Valor venta Operaciones Gravadas
Si el Tipo de Afectación del IGV del impuesto (FC_TIPOIGV) pertenece a los códigos 10,11,12,13,14,15,16 o 17 según el Catálogo No. 07: Códigos de Tipo de Afectación del IGV entonces el monto de los impuestos de los ítems que tienen estos códigos de afectación deberá reportarse en el subtotal 1001 de la siguiente manera:
<sac:AdditionalMonetaryTotal>
<cbc:ID>1003</cbc:ID>
<cbc:PayableAmount currencyID="XX">Monto operaciones gravadas </cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
Submonto 1002 Total valor de venta Operaciones Inafectadas
Si el Tipo de Afectación del IGV del impuesto (FC_TIPOIGV) pertenecen a los códigos 30,31,32,33,34,35,36 o 40 según el Catálogo No. 07: Códigos de Tipo de Afectación del IGV entonces el monto de los impuestos de los ítems que tienen estos códigos de afectación deberá reportarse en el subtotal 1002 de la siguiente manera:
<sac:AdditionalMonetaryTotal>
<cbc:ID>1003</cbc:ID>
<cbc:PayableAmount currencyID="XX">Monto operaciones Inafectas</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
NOTA: En el caso que todas las operaciones (ítems de la factura/boleta de venta) comprendidas en la factura electrónica sean gratuitas (TES se encuentre en parámetro MV_TESEXE), se deberá mostrar la leyenda "TRANSFERENCIA GRATUITA DE UN BIEN Y/O SERVICIO PRESTADO GRATUITAMENTE" de acuerdo a Catálogo No. 15: Códigos - Elementos adicionales en la Factura Electrónica y/o Boleta de Venta Electrónica respecto al código 1002.
Submonto 1003 Total valor venta Operaciones Exoneradas
Si el Tipo de Afectación del IGV del impuesto (FC_TIPOIGV) pertenecen a los códigos 20 o 21 según el Catálogo No. 07: Códigos de Tipo de Afectación del IGV entonces el monto de los impuestos de los ítems que tienen estos códigos de afectación deberá reportarse en el subtotal 1003 de la siguiente manera:
<sac:AdditionalMonetaryTotal>
<cbc:ID>1003</cbc:ID>
<cbc:PayableAmount currencyID="XX"> Monto operaciones Exoneradas</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
Submonto 1004 Total valor de venta Operaciones gratuitas
Si la factura cuenta con ítems cuya TES se encuentre en el parámetro MV_TESEXE, el monto deberá reportarse en el subtotal 1004 de la siguiente manera:
<sac:AdditionalMonetaryTotal>
<cbc:ID>1004</cbc:ID>
<cbc:PayableAmount currencyID="XXX"> Monto total por operaciones gratuitas</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
Submonto 1005 Sub total de venta
Deberá mostrar importe de valor de la mercaderia (SF2->F2_VALMERC) con dos decimales si espacios.
<sac:AdditionalMonetaryTotal>
<cbc:ID>1005</cbc:ID>
<cbc:PayableAmount currencyID="XXX"> SF2->F2_VALMERC </cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
Submonto 2001 Percepciones
Por cada ítem del documento, con el Tipo de salida (D2_TES)recorrer los impuestos variables (Tabla SFB) que pertenezcan a la TES y que la clase sea Percepción (FB_CLASSE = 'P'), y obtener el campo de Libro Fiscal (FB_CPOLVRO), mediante este campo buscar en el campo de Valor del Impuesto (F2_VALIMPx) correspondiente en el documento para obtener el valor de la percepción del documento. Generar elemento de la siguiente manera:
<sac:AdditionalMonetaryTotal>
<cbc:ID>1003</cbc:ID>
<cbc:PayableAmount currencyID="XXX">F2_VALIMPx</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
NOTA: Si el documento no tiene operaciones de percepciones, no deberá generar nodo.
Submonto 2002 Retenciones
Por cada ítem del documento, con el Tipo de salida (D2_TES) recorrer los impuestos variables (Tabla SFB) que pertenezcan a la TES y que la clase sea Retención (FB_CLASSE = 'R'), y obtener el campo de Libro Fiscal (FB_CPOLVRO), mediante este campo buscar en el campo Valor del Impuesto (F2_VALIMPx) correspondiente en el documento para obtener el valor de la retención del documento. Generar elemento de la siguiente manera:
<sac:AdditionalMonetaryTotal>
<cbc:ID>1003</cbc:ID>
<cbc:PayableAmount currencyID="XXX">F2_VALIMPx</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
NOTA: Si el documento no tiene operaciones de retenciones, no deberá generar nodo.
Submonto 2003 Detracciones
<sac:AdditionalMonetaryTotal>
<cbc:ID>2003</cbc:ID>
<cbc:PayableAmount currencyID="XXX"> Monto Detracciones </cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
NOTA: Si el documento no cuenta con detracciones, no generar nodo.
Submonto 2005 Total Descuentos
Si la factura/boleta de venta tiene valor en el campo Descuentos (F2_DESCONT), deberá generarse el nodo siguiente con el valor de este descuento:
<sac:AdditionalMonetaryTotal>
<cbc:ID>2005</cbc:ID>
<cbc:PayableAmount currencyID="XXX">F2_DESCONT</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
Submonto 1000 Valor Total en letra
Se deberá convertir el Valor Bruto de la Factura (F2_VALBRUT) a letra utilizando la función EXTENSO y deberá reportarse en el nodo 1000 de la siguiente manera:
<sac:AdditionalMonetaryTotal>
<cbc:ID>1000</cbc:ID>
<cbc:value> EXTENSO(F2_VALBRUT)</cbc:value>
</sac:AdditionalMonetaryTotal>
Dónde XXX= POSICIONE("SX5",1,XFILIAL("SX5")+”XQ”+F2_MOEDA,"X5_DESCSPA") Para obtener el código de moneda según ISO-3366-1
Rutina | Tipo de Operación | Opción de Menú | Reglas de Negocio |
MATA486 - Documentos Electrónicos | Involucrada | Actualizaciones|Facturación|Documentos Electronicos | - |
M486NFXML – XML de Factura para Transmisión Electrónica | Creación |
| - |
M486XFUN - Funciones geración XML NF, NDC y NCC | Creación |
Ejemplo de aplicación:
<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:sac="urn:sunat:names:specification:ubl:peru:schema:xsd:SunatAggregateComponents-1" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ext:UBLExtensions>
<ext:UBLExtension>
<ext:ExtensionContent>
<sac:AdditionalInformation>
<sac:AdditionalMonetaryTotal>
<cbc:ID>1001</cbc:ID>
<cbc:PayableAmount currencyID="USD">1144.28</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
<sac:AdditionalMonetaryTotal>
<cbc:ID>1002</cbc:ID>
<cbc:PayableAmount currencyID="USD">0.00</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
<sac:AdditionalMonetaryTotal>
<cbc:ID>1003</cbc:ID>
<cbc:PayableAmount currencyID="USD">0.00</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
<sac:AdditionalMonetaryTotal>
<cbc:ID>1004</cbc:ID>
<cbc:PayableAmount currencyID="USD">0.00</cbc:PayableAmount>
</sac:AdditionalMonetaryTotal>
<sac:AdditionalProperty>
<cbc:ID>1000</cbc:ID>
<cbc:Value>UN MIL CIENTO CUARENTA Y CUATRO DOLARES AMERICANOS Y VEINTIOCHO CENTAVOS</cbc:Value>
</sac:AdditionalProperty>
</sac:AdditionalInformation>
</ext:ExtensionContent>
</ext:UBLExtension>
<ext:UBLExtension>
<ext:ExtensionContent>
</ext:ExtensionContent>
</ext:UBLExtension>
</ext:UBLExtensions>
<cbc:UBLVersionID>2.0</cbc:UBLVersionID>
<cbc:CustomizationID>1.0</cbc:CustomizationID>
<cbc:ID>F001-71</cbc:ID>
<cbc:IssueDate>2017-03-21</cbc:IssueDate>
<cbc:InvoiceTypeCode>01</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>USD</cbc:DocumentCurrencyCode>
<cac:Signature>
<cbc:ID>IDSignTOTVS</cbc:ID>
<cac:SignatoryParty>
<cac:PartyIdentification>
<cbc:ID>20451558383</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName>
<cbc:Name>FITESA PERU</cbc:Name>
</cac:PartyName>
</cac:SignatoryParty>
<cac:DigitalSignatureAttachment>
<cac:ExternalReference>
<cbc:URI>#SignatureTOTVS</cbc:URI>
</cac:ExternalReference>
</cac:DigitalSignatureAttachment>
</cac:Signature>
<cac:AccountingSupplierParty>
<cbc:CustomerAssignedAccountID>20451558383</cbc:CustomerAssignedAccountID>
<cbc:AdditionalAccountID>6</cbc:AdditionalAccountID>
<cac:Party>
<cac:PartyName>
<cbc:Name>FITESA PERU S.A.C.</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:ID>123456</cbc:ID>
<cbc:StreetName>AV. PRINCIPAL, Nro. 71-PARC. CAJAMARQUILLA</cbc:StreetName>
<cbc:CityName>LIMA</cbc:CityName>
<cbc:District>LIMA</cbc:District>
<cac:Country>
<cbc:IdentificationCode>PE</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>FITESA PERU</cbc:RegistrationName>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:AccountingCustomerParty>
<cbc:CustomerAssignedAccountID>20100152941</cbc:CustomerAssignedAccountID>
<cbc:AdditionalAccountID>6</cbc:AdditionalAccountID>
<cac:Party>
<cac:PostalAddress>
<cbc:ID>11111111</cbc:ID>
<cbc:StreetName>AV. DEL PINAR NO.180 OF.505 -SURCO- LIMA</cbc:StreetName>
<cbc:CityName>SURCO</cbc:CityName>
<cbc:District>SURCO</cbc:District>
<cac:Country>
<cbc:IdentificationCode>PE</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>KIMBERLY-CLARK PERU S.R.L</cbc:RegistrationName>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingCustomerParty>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="USD">205.97</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxAmount currencyID="USD">205.97</cbc:TaxAmount>
<cac:TaxCategory>
<cac:TaxScheme>
<cbc:ID>1000</cbc:ID>
<cbc:Name>IGV</cbc:Name>
<cbc:TaxTypeCode>VAT</cbc:TaxTypeCode>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:LegalMonetaryTotal>
<cbc:AllowanceTotalAmount currencyID="USD">0.00</cbc:AllowanceTotalAmount>
<cbc:PayableAmount currencyID="USD">1144.28</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:InvoicedQuantity unitCode="MTK">39732.00</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="USD">1144.28</cbc:LineExtensionAmount>
<cac:PricingReference>
<cac:AlternativeConditionPrice>
<cbc:PriceAmount currencyID="USD">0.03</cbc:PriceAmount>
<cbc:PriceTypeCode>01</cbc:PriceTypeCode>
</cac:AlternativeConditionPrice>
</cac:PricingReference>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:Amount currencyID="USD">0.00</cbc:Amount>
</cac:AllowanceCharge>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="USD">205.97</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxAmount currencyID="USD">205.97</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:TaxExemptionReasonCode>10</cbc:TaxExemptionReasonCode>
<cac:TaxScheme>
<cbc:ID>1000</cbc:ID>
<cbc:Name>IGV</cbc:Name>
<cbc:TaxTypeCode>VAT</cbc:TaxTypeCode>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:Item>
<cbc:Description>FITESA BLOCK AZUL HIELO 15G/M2 172MM</cbc:Description>
<cac:SellersItemIdentification>
<cbc:ID />000001<cbc:ID />
</cac:SellersItemIdentification>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="USD">0.03</cbc:PriceAmount>
</cac:Price>
</cac:InvoiceLine>
</Invoice>
Tablas Utilizadas
Se deberán crear los siguientes campos:
SFC – Detalle Tipo Entrada/Salida (TES)
Campo | FC_TIPOIGV |
Tipo | C |
Tamaño | 2 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Tipo de Afectación IGV |
Título | Afectación IGV |
Picture | @! |
Contexto | Real |
Propiedad | Modificar |
F3 | XR – Tipos Afectación del IGV |
Validación | ExistCpo("SX5","XR"+M->FC_TIPOIGV) |
Help de Campo | Tipo de afectación del IGV según Catálogo No. 7 10 Gravado – Operación Onerosa 11 Gravado – Retiro por premio 12 Gravado – Retiro por donación 13 Gravado – Retiro 14 Gravado – Retiro por publicidad 15 Gravado – Bonificaciones 16 Gravado – Retiro por entrega a trabajadores 17 Gravado – IVAP 20 Exonerado – Operación Onerosa 21 Exonerado – Transferencia Gratuita 30 Inafecto – Operación Onerosa 31 Inafecto – Retiro por Bonificación 32 Inafecto – Retiro 33 Inafecto – Retiro por Muestras Médicas 34 Inafecto – Retiro por Convenio Colectivo 35 Inafecto – Retiro por premio 36 Inafecto – Retiro por publicidad 40 Exportación Informar solamente cuando el impuesto es IGV |
Campo | FC_TIPOISC |
Tipo | C |
Tamaño | 2 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Tipo de Afectación ISC |
Título | Afectación ISC |
Picture | @! |
Contexto | Real |
Propiedad | Modificar |
F3 | XR – Tipos Afectación del IGV |
Validación | ExistCpo("SX5","XT"+M->FC_TIPOISC) |
Help de Campo | Tipo de sistema de cálculo de ISC según catálogo No. 08 01 Sistema al valor (Apéndice IV, lit. A – T.U.O IGV e ISC) 02 Aplicación del Monto Fijo (Apéndice IV, lit. B – T.U.O IGV e ISC) 03 Sistema de Precios de Venta al Público (Apéndice IV, lit. C – T.U.O IGV e ISC) Informar solamente para ISC |
SFB- Impuestos Variables
Campo | FB_CLASSE |
Tipo | C |
Tamaño | 1 |
Uso | Usado |
Obligatorio | Sí ( X ) No ( ) |
Descripción | Clase de impuesto |
Título | Clase Imp. |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Lista | I=Impuesto;P=Percepcion;R=Retencion |
Validación | PERTENCE("IPR") |
Help de Campo | Indica clase del impuesto. |
Campo | FB_CODIMP |
Tipo | C |
Tamaño | 4 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Codigo de Impuesto |
Título | Cod. Impuesto |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Lista | |
Validación | ExistCpo("SX5","XS"+M->FB_CODIMP) |
Help de Campo | Código del impuesto según SUNAT Catálogo No. 5 Códigos de tipos de Tributo 1000 IGV IMPUESTO GENERAL A LAS VENTAS VAT 2000 ISC IMPUESTO SELECTIVO AL CONSUMO EXC 9999 OTROS CONCEPTOS DE PAGO OTH |
SFP – Control de formularios
Campo | FP_SERIE2 |
Tipo | C |
Tamaño | 4 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Serie 2 |
Título | Serie 2 |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Lista | |
Validación | NaoVazio() |
Help de Campo | Serie a 4 digitos que será informada al SUNAT. |
SF1 - Encabezado de Factura Entrada
Campo | F1_FECAUT |
Tipo | D |
Tamaño | 8 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Fecha de autorización |
Título | Fch Aut |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Lista | |
Validación | |
Help de Campo | Fecha de Autorización Digital |
Campo | F1_FLFTEX |
Tipo | C |
Tamaño | 1 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Estatus transmission Electrónica |
Título | Status Trans |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Lista | 0=No Enviado,1=Enviado a TSS,4=Esperando procesamiento,5=Rechazado,6=Autorizado. |
Inicializa Estd | 0 |
Help de Campo | Indica el estatus del documento una vez que ha sido enviado al TSS. |
Campo | F1_MOTIVO |
Tipo | C |
Tamaño | 30 |
Uso | Usado |
Obligatorio | Sí ( X ) No ( ) |
Descripción | Motivo |
Título | Motivo |
Picture | @! |
Contexto | Real |
Propiedad | Modificar |
Browse | No |
Orden | F3 |
Help de Campo | Motivo por el cuál se emite el documento. |
Campo | F1_TIPREF |
Tipo | C |
Tamaño | 1 |
Uso | Usado |
Obligatorio | Sí ( X ) No ( ) |
Descripción | Tipo de Nota de Crédito |
Título | Tipo Nota de C |
Picture | @! |
Contexto | Real |
Propiedad | Modificar |
Validación | ExistCpo("SX5","XO"+M->F1_TIPREF) |
Help de Campo | Tipo de Nota de Crédito Electrónica conforme a catálogo 10 de la SUNAT |
SF2 – Encabezado de Factura de Venta
Campo | F2_FLFTEX |
Tipo | C |
Tamaño | 1 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Estatus transmisión Elec |
Título | Status Trans |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Lista | 0=No Enviado; 1=Enviado a TSS; 4=Esperando procesamiento; 5=Rechazado; 6=Autorizado |
Inicializa Estd | 0 |
Orden | F9 |
Browse | No |
Help de Campo | Indica el estatus del documento una vez que ha sido enviado al TSS. |
Campo | F2_FECAUT |
Tipo | D |
Tamaño | 8 |
Uso | Usado |
Obligatorio | Sí ( ) No ( X ) |
Descripción | Fecha de autorización |
Título | Fch Aut |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Browse | No |
Orden | F0 |
Help de Campo | Fecha de Autorización Digital |
Campo | F2_MOTIVO |
Tipo | C |
Tamaño | 30 |
Uso | Usado |
Obligatorio | Sí ( X ) No ( ) |
Descripción | Motivo |
Título | Motivo |
Picture | @! |
Contexto | Real |
Propiedad | Modificar |
Browse | No |
Orden | F3 |
Help de Campo | Motivo por el cuál se emite el documento. |
Campo | F2_TIPREF |
Tipo | C |
Tamaño | 1 |
Uso | Usado |
Obligatorio | Sí ( X ) No ( ) |
Descripción | Tipo Nota de Débito |
Título | Tipo Nota D. |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Browse | No |
Validación | ExistCpo("SX5","XP"+M->F2_TIPREF) |
Help de Campo | Tipo de Nota de Debito Electrónica conforme a catálogo 10 de la SUNAT. |
Se deberán modificar los siguientes campos:
SF2 .- Encabezado Factura de Venta
Campo | F2_SERIE |
Tipo | C |
Tamaño | 3 |
Uso | Usado |
Obligatorio | Sí ( X ) No ( ) |
Descripción | Serie Del Documento |
Título | Serie Docto |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
Browse | No |
Validación | LxExSer2() |
Help de Campo | Serie de la factura. |
SA1.- Clientes
Campo | A1_TIPDOC |
Tipo | C |
Tamaño | 2 |
Uso | Usado |
Obligatorio | Sí ( X ) No ( ) |
Descripción | Tipo Documento Identidad |
Título | Tipo Doc. |
Picture |
|
Contexto | Real |
Propiedad | Modificar |
F3 | TB |
Validación | ExistCpo("SX5","TB"+M->A1_TIPDOC) |
Agregar las siguientes tablas genéricas:
XN – Tipo de Documento de Identidad (Catálogo No. 06)
Clave | Descripción |
01 | 1 |
02 | 0 |
03 | 0 |
04 | 4 |
05 | 5 |
06 | 6 |
07 | 7 |
08 | A |
00 | 0 |
XO - Tipos de Nota de Crédito (Catálogo No. 09)
Clave | Descripción |
01 | ANULACION DE LA OPERACIÓN |
02 | ANULACION POR ERROR EN EL RUC |
03 | CORRECCION POR ERROR EN LA DESCRIPCION |
04 | DESCUENTO GLOBAL |
05 | DESCUENTO POR ITEM |
06 | DEVOLUCION TOTAL |
07 | DEVOLUCION POR ITEM |
08 | BONIFICACIÓN |
09 | DISMINUSIÓN EN EL VALOR |
10 | OTROS CONCEPTOS |
XP – Tipos de Nota de Débito (Catálogo No. 10)
Clave | Descripción |
01 | INTERESES POR MORA |
02 | AUMENTO EN EL VALOR |
03 | PENALIDADES |
XQ – Monedas ISO-4217 (Catálogo No. 02)
Clave | Descripción |
1 | PEN |
2 | USD |
XR – Tipos Afectación del IGV (Catálogo No. 07)
Clave | Descripción |
10 | 10 Gravado - Operación Onerosa |
11 | Gravado – Retiro por premio |
12 | Gravado – Retiro por donación |
13 | Gravado – Retiro |
14 | Gravado – Retiro por publicidad |
15 | Gravado – Bonificaciones |
16 | Gravado – Retiro por entrega a trabajadores |
17 | Gravado – IVAP |
20 | Exonerado - Operación Onerosa |
21 | Exonerado – Transferencia Gratuita |
30 | Inafecto - Operación Onerosa |
31 | Inafecto – Retiro por Bonificación |
32 | Inafecto – Retiro |
33 | Inafecto – Retiro por Muestras Médicas |
34 | Inafecto - Retiro por Convenio Colectivo |
35 | Inafecto – Retiro por premio |
36 | Inafecto - Retiro por publicidad |
40 | Exportación |
XT – Tipos de Sistema de cálculo del ISC (Catálogo No. 08)
Clave | Descripción |
01 | Sistema al Valor |
02 | Aplicación del Monto fijo |
03 | Sistema de Precios de Venta al público |
XS – Códigos de Tipos de Tributos (Catálogo No. 05)
Clave | Descripción |
1000 | IGV|VAT |
2000 | ISC|EXC |
9999 | OTROS|OTH |
Este documento es un material de especificación de los requisitos de innovación. Se trata de un contenido sumamente técnico. |
---|