Árvore de páginas

01. DATOS GENERALES


Producto

TOTVS Backoffice

Línea de producto: 

Línea Protheus

Segmento:

Backoffice

Módulo:SIGAFAT-FACTURACIÓN
Función:
RutinaNombre
M486XFUNPAR.PRWFunciones genéricas para Facturación Electrónica
M100IVA.PRXCalculo de IVA para documentos de entrada.
M100IVAI.prwCalculo de IVA para documentos de entrada.
M460IVA.PRXCalculo de IVA para documentos de salida.
M460IVAI.prwCalculo de IVA para documentos de salida.
FISA814.PRWCarga de Catálogos
M486PAGOS.PRWRegistro de pagos para las facturas.
M486PDFPAR.PRWPDF para factura electrónica de Paraguay
M486PDFPAR.PRWCreación y/o envió de reporte en formato PDF
LOCXFUNAPRXFunciones generales de documentos fiscales
LOCXNF.PRWDocumentos fiscales.
LocxNF2.PRWFunciones genéricas para documentos fiscales.
mata462an.prwFunciones para facturación.
MATA468N.PRXGeneración de Notas.
MATA486.PRWTransmisión Electrónica
MATA992.PRWControl de formularios
LOCXPAR.PRWFunciones generales de documentos fiscales Paraguay
LOCXARG.PRWFunciones genéricas para Notas Fiscales Argentina.

LOCXMEX.PRW

Funciones genéricas para Notas Fiscales México.
LOCXPER.PRWFunciones genéricas para Notas Fiscales Perú.

LOCXCOL.PRW

Funciones genéricas para Notas Fiscales Colombia.

LOCXBOL.PRW Funciones genéricas para Notas Fiscales Bolivia.
LOCXDOM.PRWFunciones genéricas para Notas Fiscales Republica Dominicana.
LOCXMEX.PRWFunciones de documentos fiscales - México.
LOCXEUA.PRWFunciones de documentos fiscales - Estados Unidos.
LOCXPER.PRWFunciones de documentos fiscales - Perú.
LOCXCHI.PRWFunciones de documentos fiscales - Chile.
LOCXEQU.PRWFunciones de documentos fiscales - Ecuador.
LOCXURU.PRWFunciones de documentos fiscales - Uruguay.
MATA521.PRXExclusión de documentos de salida.
MATA942.PRWEstado Vs. Ing. Brutos (CCO).
País:Paraguay
Ticket:16237597
Requisito/Story/Issue (informe el requisito vinculado):DMICNS-16301


02. SITUACIÓN/REQUISITO

Se solicita generar el XML del evento de cancelación.


03. SOLUCIÓN

Se agrega el tratamiento al ejecutable (SIFENWS) para imprimir el XML enviado al consumir el evento cancelación, y una vez impreso, la rutina M486XFUNPAR.PRW (funciones genéricas para facturación electrónica Paraguay) en la función M486FPAREN (transmisión de documentos) se encargue de gestionar el archivo XML enviando para consumir el evento cancelación, así como la gestión de la respuesta.


  • Realizar las configuraciones necesarias para la facturación electrónica de Paraguay, consultar el apartado 05. ASUNTOS RELACIONADOS.
  • Transmitir varios documentos y verificar su aprobación por parte de SIFEN.
  • Verificar que se encuentre creada la carpeta "canceladas" en la ruta "Protheus_data\system\cfd\facturas".
  • Tener actualizado el ejecutable "SIFENWS"  
  • Verificar que el ejecutable "SIFENWS" se encuentre en la ruta del smarclient.

Para la cancelación hay que ingresar en el programa Documentos Electrónicos (SIGAFAT > Actualizaciones | Facturación | Documentos Electrónicos), en el parámetro ¿Estatus? informar "5", con esto se puede visualizar la opción Anulación de documentos (Otras acciones | Anulación Fac. Electrónica).

  • Al ingresar se muestra la pantalla para informar los parámetros
    • ¿Tipo de Documento?          
    • ¿Serie?                      
    • ¿Estatus?    "5"                
    • ¿Fecha Inicial?              
    • ¿Fecha Final?    
  • Una vez dentro de la pantalla de "Transmisión Electrónica" con los documentos aprobados
  • Seleccionar el documento que se desea cancelar.
  • Al realizar la cancelación sin importar que sea aprobada o rechazada, se crea el XML con el cuál se consume el evento de cancelación donde:
    • El XML se guarda en la ruta "Protheus_data\system\cfd\facturas\canceladas". 
    • El nombre del XML para consumir el evento de cancelación se estructura de la siguiente forma:
      • Serie + Numero de Documento + Especie + ".xmlenvcan". Ejemplo: "a10010010010020nf.xmlenv" (Extensión XML)
    • La respuesta de aprobación o rechazo se guarda en la ruta:  "Protheus_data\system\cfd\facturas\canceladas". 
    • El nombre del XML de la respuesta es: Serie + Número de Documento + Especie + ".xml". Ejemplo:  "a10010010010020nf.xml" (Extensión .OUT)


04. INFORMACIÓN ADICIONAL

Nota

Considerar también que cuando se intenta cancelar inmediatamente un documento sale el mismo mensaje, que cuando se cumple el plazo permitido para la cancelación, esto puede causar confusión, pero el mensaje mostrado es retornado por SIFEN.

Nota

El proceso de cancelación solo realiza él envió del CDC(Código de Control del DTE) del documento previamente transmitido y aprobado; para complementar el proceso hasta que el documento quede anulado, se debe anular manualmente por ejemplo, para cancelar la NF debe ser desde la rutina de Facturación (MATA467N), y verificar siempre los documentos a anular.

Estructura
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
  <soap:Header />
  <soap:Body>
    <rEnviEventoDe xmlns="http://ekuatia.set.gov.py/sifen/xsd">
      <dId>Identificador de control de envio</dId>
      <dEvReg><!--Estructura del Evento a ser registrado-->
        <gGroupGesEve xsi:schemaLocation="http://ekuatia.set.gov.py/sifen/xsd siRecepEvento_v150.xsd" xmlns="http://ekuatia.set.gov.py/sifen/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><!--Raíz del grupo deeventos-->
          <rGesEve xsi:schemaLocation="http://ekuatia.set.gov.py/sifen/xsd siRecepEvento_v150.xsd" xmlns="http://ekuatia.set.gov.py/sifen/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><!--Raíz de Gestión de Eventos-->
            <rEve Id="Identificador de control de envio"> <!--Grupos de campos generales del evento-->
              <dFecFirma>Fecha y hora en el formato AAAA-MM-DDThh:mm:ss</dFecFirma><!--Fecha y Hora del firmado-->
              <dVerFor>150</dVerFor><!--Control de versiones-->
              <gGroupTiEvt><!--Grupo de campos del tipo de evento -->
                <rGeVeCan><!--Raíz Gestión de Eventos Cancelación-->
                  <Id>Identificador del DTE,se informa el código de control (CDC) con longitud de 44</Id>
                  <mOtEve>Motivo del Evento</mOtEve>
                </rGeVeCan><!--Raíz Gestión de Eventos Cancelación-->
              </gGroupTiEvt><!--Grupo de campos del tipo de evento -->
            </rEve><!--Fin Grupos de campos generales del evento-->
            <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> <!--Firma-->
            </Signature><!--Fin Firma-->
          </rGesEve><!--Fin Raíz de Gestión de Eventos-->
        </gGroupGesEve><!--Fin Raíz del grupo deeventos-->
      </dEvReg><!--Fin de estructura del Evento a ser registrado-->
    </rEnviEventoDe>
  </soap:Body>
</soap:Envelope>
Ejemplo
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
  <soap:Header />
  <soap:Body>
    <rEnviEventoDe xmlns="http://ekuatia.set.gov.py/sifen/xsd">
      <dId>437</dId>
      <dEvReg>
        <gGroupGesEve xsi:schemaLocation="http://ekuatia.set.gov.py/sifen/xsd siRecepEvento_v150.xsd" xmlns="http://ekuatia.set.gov.py/sifen/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
          <rGesEve xsi:schemaLocation="http://ekuatia.set.gov.py/sifen/xsd siRecepEvento_v150.xsd" xmlns="http://ekuatia.set.gov.py/sifen/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <rEve Id="437">
              <dFecFirma>2023-03-14T22:59:22</dFecFirma>
              <dVerFor>150</dVerFor>
              <gGroupTiEvt>
                <rGeVeCan>
                  <Id>01800148681001001001002012023012410018958341</Id>
                  <mOtEve>Cancelacion de CDC 01800148681001001001002012023012410018958341</mOtEve>
                </rGeVeCan>
              </gGroupTiEvt>
            </rEve>
            <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
              <SignedInfo>
                <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
                <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" />
                <Reference URI="#437">
                  <Transforms>
                    <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
                    <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
                  </Transforms>
                  <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
                  <DigestValue>9aasgK9yBlKUPDOJNiP9sDp0WlSVc+oAcENi29mN8FI=</DigestValue>
                </Reference>
              </SignedInfo>
              <SignatureValue>jWgtcHBEH76RUpIy87a2ZLU0uagpzXkcasEJ4/jC6QqcBJ/0oRsLNcpC7KXUyvBtftOHJHZELdfeE7K3WY+2YuUj3RlDs3IhSso8QqKiYwtxFKK3w3pX03AQOo/DC1kM15tJNpk6cWQWbSs2U+wwlZSb2Yf5rdkSQhdcCrLL7S5yT2Z7n6JYgqvw3nAn5nMMN0AC0Ztkl12+Db32a2EQ+zkaflgNYM81c1vKxgAuf04Dmm8A2TT+A1VU4gvPcD35hotgdNtm2SGnh7tL0wc8JMbzP5GoddBLTehddqiae6HucJWccKi1Mc2mwcyNYkPAXipmjvRCIrgEa4VHdKNwjg==</SignatureValue>
              <KeyInfo>
                <X509Data>
                  <X509Certificate>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</X509Certificate>
                </X509Data>
              </KeyInfo>
            </Signature>
          </rGesEve>
        </gGroupGesEve>
      </dEvReg>
    </rEnviEventoDe>
  </soap:Body>
</soap:Envelope>
Cancelación aceptada
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
  <env:Header />
  <env:Body>
    <ns2:rRetEnviEventoDe xmlns:ns2="http://ekuatia.set.gov.py/sifen/xsd">
      <ns2:dFecProc>2022-12-06T13:26:32-03:00</ns2:dFecProc>
      <ns2:gResProcEVe>
        <ns2:dEstRes>Aprobado</ns2:dEstRes>
        <ns2:dProtAut>842059</ns2:dProtAut>
        <ns2:id>321</ns2:id>
        <ns2:gResProc>
          <ns2:dCodRes>0600</ns2:dCodRes>
          <ns2:dMsgRes>Evento registrado correctamente</ns2:dMsgRes>
        </ns2:gResProc>
      </ns2:gResProcEVe>
    </ns2:rRetEnviEventoDe>
  </env:Body>
</env:Envelope>
Rechazo Cancelación
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
  <env:Header />
  <env:Body>
    <ns2:rRetEnviEventoDe xmlns:ns2="http://ekuatia.set.gov.py/sifen/xsd">
      <ns2:dFecProc>2023-03-15T01:59:25-03:00</ns2:dFecProc>
      <ns2:gResProcEVe>
        <ns2:dEstRes>Rechazado</ns2:dEstRes>
        <ns2:id>437</ns2:id>
        <ns2:gResProc>
          <ns2:dCodRes>4009</ns2:dCodRes>
          <ns2:dMsgRes>TEST - Plazo de solicitud de cancelación de una FE extemporáneo</ns2:dMsgRes>
        </ns2:gResProc>
      </ns2:gResProcEVe>
    </ns2:rRetEnviEventoDe>
  </env:Body>
</env:Envelope>


05. ASUNTOS RELACIONADOS