Versões comparadas

Chave

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

Este documento es un material de especificación de los requisitos de innovación. Se trata de un contenido sumamente técnico.      

                                                       

Información General

 

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). 

Objetivo

 

Crear la función M486NDCXML  que deberá generar el XML de la Nota de Débito que será trasmitido al TSS para su posterior envio a la SUNAT. Esto aplica para:

 

  • Nota de Débito

 

Definición de la Regla de Negocio

 

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 Nota de Débito según el esquema estándar UBL 2.0. No deberá tener interfaz gráfica de entrada ya que será llamada por la rutina MATA486.

 

Los parámetros que deberá recibir la función son los siguientes:

 

  • Filial: Sucursal que emitió el documento.
  • Serie: Número o Serie del Documento.
  • No. Doc: Número de documento
  • Cliente: Según sea el origen del documento deberá recibir el código del cliente.
  • Tienda: Código de la tienda
  • Especie: Especie del Documento

 

Seleccionar los registros en Encabezado de Fact. de Salida (SF2) Y Items de Venta de la Fact. (SD2) dónde F2_FILIAL=FILIAL PARÁMETROS, F2_DOC= No. Documento, F2_SERIE=Serie Parámetros, F2_CLIENTE=Cliente Parámetros, F2_LOJA= Código Tienda Paraémtros y generar XML.

 

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")+”XF”+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

F1_SERIE2+”-“+F1_DOC  en Formato: F###-NNNNNNNN

 

Ejemplo:

FX01-12

F001-1022

<cbc:IssueDate>

Fecha de Emisión

10

X

F1_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")+”XF”+F2_MOEDA,"X5_DESCSPA")

Referencias de la Nota de Débito

<cac:DiscrepancyResponse>

Motivo por el cual se emite la nota de débito

 

 

Deberá validar que la Nota de Débito generada, si está referenciada a una factura la serie de la nota de Débito debe comenzar con “F”, si está referenciada a una boleta de Venta la serie debe comenzar con B.

 

** Puede tener referencia a uno o más facturas. Revisar en Protheus cómo hacer esta funcionalidad.

 

Generar por cada D2_SERORI+D2_NFORI.

*** Revisar si se puede implementaralguna búsqueda en estos campos:  D2_SERORI+D2_NFORI.

<cbc:ReferenceID>

Identificación de la factura o boleta de venta modificada por la nota de débito.

Serie y número de documento afectado

 

 

 

D2_SERORI+D2_NFORI.

Ejemplo:

FX01-12

F001-1022

<cbc:ResponseCode>

Código de tipo de nota de débito - Catálogo No. 10)

 

 

 

F2_TIPREF

<cbc:Description>

Descripción detallada del servicio prestado, bien vendido o cedido en uso o descripción de acuerdo a lo dispuesto en el RCP para el tipo de comprobante de pago, según corresponda.

 

 

F2_MOTIVO

<cac:BillingReference>

Tipo de documento del documento que modifica.

 

 

 

<cac:InvoiceDocumentReference>

Asociación al documento modificado

 

 

 

<cbc:ID>

Documento que se modifica (serie-número)

 

 

 

D2_SERORI+D2_NFORI.

Ejemplo:

FX01-12

F001-1022

<cbc:DocumentTypeCode>

Código del tipo de documento modificado  conforme a Catálogo No. 01

 

 

Si es factura deberá indicarse ‘01’, Si es boleta de Venta ‘03’

Guía de Remisión

<cac:DespatchDocumentReference >

Guía de Remisión Asociada

 

 

Si la factura fue originada a partir de una guía de remisión debe figurar este elemento en el XML.

<cbc:ID>

Número de Guía

 

 

 

<cbc:DocumentTypeCode>

Código Tipo de documento Catálogo No. 01

 

 

Colocar Fijo para guia de Remisión el valor “09”

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

 

 

 

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")+”XD”+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")+”XF”+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")+”XF”+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:RequestedMonetaryTotal>

Totales a pagar de la Nota de Débito y Cargos

 

X

 

<cbc:AllowanceTotalAmount currencyID="XXX">

Importe total de cargos aplicados al total de la nota de débito

 

 

X

Donde XX = XX=POSICIONE("SX5",1,XFILIAL("SX5")+”XF”+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")+”XF”+F2_MOEDA,"X5_DESCSPA")

PayableAmount = F2_VALBRUT

Detalle de la Nota de Débito

<cac:DebitNoteLine>

Debe generarse por cada ítem

 

X

 

 

<cbc:ID>

Número de orden del Ítem

 

x

D2_ITEM,  sin ceros a la izquierda.

 

<cbc: DebitedQuantity 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")+”XF”+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")+”XF”+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

 

 

Código de tipo de precio - Catálogo No. 16)

 

<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")+”XF”+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")+”XF”+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")+”XF”+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 nota de débito. 

 

 

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

-

M486NDCXML - Generación XML nota de Débito Perú

Creación

 

-

 

Ejemplo de aplicación:

  • Al detonar la función M486NDCXML está retornará XML con de la siguiente forma:

<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<DebitNote xmlns="urn:oasis:names:specification:ubl:schema:xsd:DebitNote-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="PEN">5000.00</cbc:PayableAmount>

</sac:AdditionalMonetaryTotal>

<sac:AdditionalProperty>

<cbc:ID>1000</cbc:ID>

<cbc:Value>CINCO MIL NOVECIENTOS PESOS</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>FFA0-5</cbc:ID>

<cbc:IssueDate>2016-10-14</cbc:IssueDate>

<cbc:DocumentCurrencyCode>PEN</cbc:DocumentCurrencyCode>

<cac:DiscrepancyResponse>

<cbc:ReferenceID>FA01-6</cbc:ReferenceID>

<cbc:ResponseCode>01</cbc:ResponseCode>

<cbc:Description>XXX</cbc:Description>

</cac:DiscrepancyResponse>

<cac:BillingReference>

<cac:InvoiceDocumentReference>

<cbc:ID>FA01-6</cbc:ID>

<cbc:DocumentTypeCode>01</cbc:DocumentTypeCode>

</cac:InvoiceDocumentReference>

</cac:BillingReference>

<cac:Signature>

<cbc:ID>IDSignTOTVS</cbc:ID>

<cac:SignatoryParty>

<cac:PartyIdentification>

<cbc:ID>20451558383</cbc:ID>

</cac:PartyIdentification>

<cac:PartyName>

<cbc:Name>Grupo TOTVS 1</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</cbc:Name>

</cac:PartyName>

<cac:PostalAddress>

<cbc:ID>76116</cbc:ID>

<cbc:StreetName>AV. BRAZ LEME, 1631</cbc:StreetName>

<cbc:CityName>CU</cbc:CityName>

<cbc:District>CU</cbc:District>

<cac:Country>

<cbc:IdentificationCode>PE</cbc:IdentificationCode>

</cac:Country>

</cac:PostalAddress>

<cac:PartyLegalEntity>

<cbc:RegistrationName>Grupo TOTVS 1</cbc:RegistrationName>

</cac:PartyLegalEntity>

</cac:Party>

</cac:AccountingSupplierParty>

<cac:AccountingCustomerParty>

<cbc:CustomerAssignedAccountID>20100134455</cbc:CustomerAssignedAccountID>

<cbc:AdditionalAccountID>6</cbc:AdditionalAccountID>

<cac:Party>

<cac:PostalAddress>

<cbc:ID>129729</cbc:ID>

<cbc:StreetName>AV. CAMELINAS #1092</cbc:StreetName>

<cbc:CityName>BRENA</cbc:CityName>

<cbc:District>BRENA</cbc:District>

<cac:Country>

<cbc:IdentificationCode>PE</cbc:IdentificationCode>

</cac:Country>

</cac:PostalAddress>

<cac:PartyLegalEntity>

<cbc:RegistrationName>SERVICIOS DE LIMPIEZA EMPRESARIAL</cbc:RegistrationName>

</cac:PartyLegalEntity>

</cac:Party>

</cac:AccountingCustomerParty>

<cac:TaxTotal>

<cbc:TaxAmount currencyID="PEN">900.00</cbc:TaxAmount>

<cac:TaxSubtotal>

<cbc:TaxAmount currencyID="PEN">900.00</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:RequestedMonetaryTotal>

<cbc:AllowanceTotalAmount currencyID="PEN">0.00</cbc:AllowanceTotalAmount>

<cbc:PayableAmount currencyID="PEN">5900.00</cbc:PayableAmount>

</cac:RequestedMonetaryTotal>

<cac:DebitNoteLine>

<cbc:ID>1</cbc:ID>

<cbc:DebitedQuantity unitCode="ZZ">0.00</cbc:DebitedQuantity>

<cbc:LineExtensionAmount currencyID="PEN">5000.00</cbc:LineExtensionAmount>

<cac:PricingReference>

<cac:AlternativeConditionPrice>

<cbc:PriceAmount currencyID="PEN">5000.00</cbc:PriceAmount>

<cbc:PriceTypeCode>01</cbc:PriceTypeCode>

</cac:AlternativeConditionPrice>

</cac:PricingReference>

<cac:TaxTotal>

<cbc:TaxAmount currencyID="PEN">900.00</cbc:TaxAmount>

<cac:TaxSubtotal>

<cbc:TaxAmount currencyID="PEN">900.00</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>INTERES X MORA</cbc:Description>

<cac:SellersItemIdentification>

<cbc:ID>0000005</cbc:ID>

</cac:SellersItemIdentification>

</cac:Item>

<cac:Price>

<cbc:PriceAmount currencyID="PEN">0.00</cbc:PriceAmount>

</cac:Price>

</cac:DebitNoteLine>

</DebitNote>


Tablas Utilizadas

  • SF1 – Encabezado de Fact. de Entrada.
  • SF2 - Encabezado de Fact. de Salida.
  • SA1 – Clientes.
  • SYA - Paises.
  • SFB - Impuestos Variables.
  • SFC - Vinculo Tes vs. Impuestos.
  • SD1 - Items de las Fact. de Entrada.
  • SD2 - Items de Venta de la Fact.
  • SAH - Unidades de Medida.
  • SB1 - Descripcion Generica Producto.


Diccionario de Datos

 

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

@!

ContextoReal
PropiedadModificar
F3XR – Tipos Afectación del IGV
ValidaciónExistCpo("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

@!

ContextoReal
PropiedadModificar
F3XR – Tipos Afectación del IGV
ValidaciónExistCpo("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

 

ContextoReal
PropiedadModificar
ListaI=Impuesto;P=Percepcion;R=Retencion
ValidaciónPERTENCE("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

 

ContextoReal
PropiedadModificar
Lista 
ValidaciónExistCpo("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

 

ContextoReal
PropiedadModificar
Lista 
ValidaciónNaoVazio()

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

 

ContextoReal
PropiedadModificar
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

 

ContextoReal
PropiedadModificar
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

 @!

ContextoReal
PropiedadModificar
BrowseNo
OrdenF3

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

 @!

ContextoReal
PropiedadModificar
ValidaciónExistCpo("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

 

ContextoReal
PropiedadModificar
Lista0=No Enviado; 1=Enviado a TSS; 4=Esperando procesamiento; 5=Rechazado; 6=Autorizado
Inicializa Estd0
OrdenF9
BrowseNo

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

 

ContextoReal
PropiedadModificar
BrowseNo
OrdenF0

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

 @!

ContextoReal
PropiedadModificar
BrowseNo
OrdenF3

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

 

ContextoReal
PropiedadModificar
BrowseNo
ValidaciónExistCpo("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

 

ContextoReal
PropiedadModificar
BrowseNo
ValidaciónLxExSer2()

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

 

ContextoReal
PropiedadModificar
F3TB
ValidaciónExistCpo("SX5","TB"+M->A1_TIPDOC)

Parámetros

 

Se deberán crear los siguientes parámetros:

 

Nombre

MV_CFDDOCS

Tipo

Carácter

Descripción

Directorio donde se grabaran las facturas electrónicas.

Nombre

MV_TESEXE

Tipo

Carácter

Descripción

TES Gratuita. 

Tablas genéricas

 

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.