Modifying XML Files for Mexico’s specific Functionality in Epicor

Hello everyone,

There’s a functionality specific to Mexico called “Complemento de pago.” It’s essentially an XML invoice sent to Mexico’s tax entity, SAT, and is digitally signed before being placed back into a designated folder.

I need to modify this specific XML to include the lot number from an invoice along with the import number. According to Epicor, there’s an initial unsigned XML located somewhere on the server. Once the invoice is posted, a new XML file is placed in the following path: /company/invchead.

I believe I need to retrieve the XML file before it gets sent for signing by the government entity. This process is becoming intricate, mainly because there’s no direct way to verify Epicor’s current behavior for this functionality. I’ve tried exploring the following Epicor classes but couldn’t find anything relevant:

  • Erp.Contracts.Proc.MXPaymentMethodSATUpdate.dll
  • Erp.Internal.AR.MXGeneratePayment.dll
  • Erp.Internal.CSF.Mexico.dll
  • Erp.Internal.EI.Export_MX_CartaPorte_Detail.dll
  • Erp.Internal.EI.Export_MX_DIOT.dll
  • Erp.Internal.EI.Export_MX_DIOT_TextFile.dll
  • Erp.Internal.EI.Export_MX_DIOT_TextFile_Calculator.dll
  • Erp.Internal.EI.StructuredOutput_MX_DIOT.dll
  • Erp.Internal.Lib.CSFStrings.MX.dll

Additionally, I’ve also looked into Epicor’s general classes:

  • Erp.Contracts.BO.InvcGrp.dll
  • Erp.Contracts.Proc.ARInvoicePost.dll

Recently, I considered creating a BPM to alert when a new file is created, but I’m still discerning which event this is, as ICE.LIB.FILESTORE.CREATE doesn’t seem to be it.

In this scenario, what would be your course of action? Have any of you encountered a similar situation and can offer some guidance or suggestions? I’d really appreciate any help you can provide!

Echale un ojo al documento: Kinetic_CountrySpecificFunctionalityGuide_Mexico_202X.X en la seccion :Develop the MXCustomPAC.dll, alli te dicen donde hay un projecto de Visual Studio para generar tu propio conector hacia el PAC, tambien puedes echarle un ojo al conector MXLoadComprobante por defecto que trabaja con Interfactura, este es el que genera todo el XML previo a ser timbrado:

Take a look at the document: Kinetic_CountrySpecificFunctionalityGuide_Mexico_202X.X in the section: Develop the MXCustomPAC.dll, there they tell you where there is a Visual Studio project to generate your own connector to the PAC, you can also take a look at the MXLoad connector Default proof that it works with Interfactura, this is the one that generates all the XML prior to being stamped:

3 Likes

Muchas gracias Victor, en estos dll viene todo lo que necesito!

Saludos.

1 Like

Perdon por revivir el tema, pero quizá están pasando por lo mismo. Dado que el día de hoy 18 Enero 2024 se puso en vigor el complemento de comercio exterior 2.0 estamos detenidos en la facturación de exportación porque Epicor no ha realizado los cambios.
Estos cambios son mínimos, claro. Pero el hecho de que sea un nuevo esquema xsd provoca que no se pueda timbrar ya y no logro encontrar donde modificar esas referencia.

En MXLoadComprobante puedo hacer que la version sea 2.0 y ahi mismo quitar los campos obsoletos, pero las referencias de los esquemas no se encuentran ahi.

¿Sabe alguien donde se puede modificar, si es posible esto?

El dia de hoy Epicor nos contactó para hacer el cambio a la nueva version. Tal vez tambien esté disponible para ti.

Gracias, nos toca para el lunes.

Con respecto al cambio en el Complemento de Comercio Exterior 2.0 ni siquiera hemos revicibo una notificacion de Epicor, la unica informacion al respecto es el comunicado en el portal EpicCare. Para este tipo de cambios regularmente Epicor provee un One-Off o un Update, pero no veo que este disponible aun.

Las referencias hacia los esquemas estan en el archivo MXGenCustomDigitalTaxReceipt.cs dentro de \Server\Erp\EI\MXGenCustomDigitalTaxReceipt\

1 Like

Gracias, sí, ahí fue donde intenté modificar el xml, pero lamentablemente no se pudo(sí logré cambiar parte del diseño del xml, pero no su totalidad). Tuvimos que esperar a el hotfix de Epicor, pero esto refleja que ciertamente no es posible hacer esto por fuera(tuvieron que adecuar otras dlls). Al menos no de manera simple.

Siempre existe la posibilidad de hacer todo un programa para que genere el xml y timbrar, claro. Pero uno supondría que la integración con Epicor debería ser modificable para los clientes en su totalidad.

En fin, esperemos que esto no se repita y Epicor si resuelva antes de que las misceláneas entren en vigor.

Gracias de nuevo.

1 Like