API de Integración - Servicio de Addendas
Documentación de la API de Integración Servicio de addendas
Revisión | Fecha | Comentarios |
1 | 2018-02-26 | Documento inicial |
2 | 2021-10-13 | Se agrega formato de addenda y tipos de addenda |
Tabla de Contenido
- Introducción
Estructura de la respuesta de los métodos remotos
Métodos para procesamiento de información
Operación para procesar datos en formato texto plano
Argumentos
Respuesta del servicio
Atributos
Operación para procesar datos en formato texto plano y adjuntarlo en un XML
Argumentos
Respuesta del servicio
Atributos
Formato de Addenda
Tipos de Addendas que ofrece prodigia
Tabla 2: Códigos de respuestas comunes
Introducción
La API de servicio de addendas se ofrece a empresas y corporativos que requieren agregar una addenda soportada por el sistema a sus documentos CFDI.La ubicación del WSDL del WebService es:
http://timbrado.pade.mx/PadeServ/IntegracionAddendas?wsdl
Estructura de la respuesta de los métodos remotos
Los métodos del Web Service regresan una respuesta que dependiendo de la operación puede ser compleja. Esta respuesta es un String, y está estructurada en formato XML simple (sin esquemas). Los atributos y nodos del archivo XML varía dependiendo de la operación invocada, y se describen a detalle en cada operación.Este servicio no contiene modo prueba dado que las operaciones sobre éste no tienen valor fiscal, los comprobantes enviados no son almacenados ni firmados, únicamente son procesados y retornados al cliente.
Métodos para procesamiento de información
Operación para procesar datos en formato texto plano
Respuesta del Servicio
La respuesta del servicio tendrá la siguiente estructura:
<id></id>
<contrato></contrato>
<codigo></codigo>
<mensaje/>
<xmlBase64></xmlBase64>
</servicioAddendas>
Los atributos podrían variar dependiendo el resultado del proceso, la descripción de dichos atributos se define a continuación:
- id. Identificador de la transacción interna, en formato UUID. Este valor es de uso interno, no está relacionado con ninguna propiedad del XML
- contrato. Identificador único del contrato del cliente. Se regresa para fines informativos.
- codigo. El código es un valor cuya función principal es indicar el error que fue detectado, en caso de haberlo. Cuando la transacción fue exitosa el código se regresa con un valor de 0 (cero) y de otra forma se regresa con el código de error específico.
- mensaje. Este valor es un texto informativo. Es especialmente útil cuando ocurren errores en el procesamiento de la Addenda. Cuando la transacción fue exitosa, éste valor viene vacío.
- xmlBase64. String codificado en Base 64, que contiene el documento XML de la addenda procesada. Este valor se incluye solamente cuando la transacción es exitosa.
Operación para procesar datos en formato texto plano y adjuntarlo en un XML
String procesarAdjuntarAddenda(String contrato, String usuario, String passwd, String datos,String xmlcfdi)
El método acepta un paquete con información generada desde los sistemas del cliente. La particularidad de este método es que este paquete de datos debe estar expresado en formato de texto (un string plano). El string proporcionado puede consistir de varias líneas, siempre y cuando se mantenga el requisito de ser solamente texto y contener una addenda soportada por la plataforma. Este paquete de datos será procesado por la plataforma y se adjuntara al xml del parámetro xmlcfdi de la petición.
Los argumentos que acepta el método son:
- contrato: Identificador único del contrato de servicios.
- usuario: Nombre el usuario del servicio. Este usuario debe estar autorizado para utilizar la API de servicios.
- passwd. Contraseña del usuario de servicio.
- datos. Paquete de datos proporcionado al servicio para su procesamiento. Este paquete de datos usualmente es generado por los sistemas de la empresa (ERP) en circunstancias en donde es complicado generar directamente un archivo XML con la estructura de una Addenda. Este paquete de datos deberá consistir de una o varias líneas (múltiples líneas se separan mediante el carácter “\n” o “new line”) de texto.
- xmlcfdi: Documento XML de un cfdi con o sin firma (sello) al cual se le adjuntará el nodo cfdi:Addenda . Este documento no se almacena ni se firma, únicamente se usa para adjuntar la addenda y es devuelto al cliente.
Respuesta del Servicio
La respuesta del servicio tendrá la siguiente estructura:
<id></id>
<contrato></contrato>
<codigo></codigo>
<mensaje/>
<xmlBase64></xmlBase64>
</servicioAddendas>
Los atributos podrían variar dependiendo el resultado del proceso, la descripción de dichos atributos se define a continuación:
- id. Identificador de la transacción interna, en formato UUID. Este valor es de uso interno, no está relacionado con ninguna propiedad del XML
- contrato. Identificador único del contrato del cliente. Se regresa para fines informativos.
- codigo. El código es un valor cuya función principal es indicar el error que fue detectado, en caso de haberlo. Cuando la transacción fue exitosa el código se regresa con un valor de 0 (cero) y de otra forma se regresa con el código de error específico.
- mensaje. Este valor es un texto informativo. Es especialmente útil cuando ocurren errores en el procesamiento de la Addenda. Cuando la transacción fue exitosa, éste valor viene vacío.
- xmlBase64. String codificado en Base 64, que contiene el documento CFDI en formato xml que ha enviado en el parámetro xmlcfdi con el nodo cfdi:addenda conteniendo la addenda que se procesó. El documento no se firma en este método y los valores agregados por éste web service no tienen ningún valor fiscal.
Formato de addenda
Para descargar el archivo que contiene el formato CSV y las guías de llenado de las addendas que ofrece Prodigia: dar clic en el siguiente enlace:
Tipos de Addendas que ofrece Prodigia.
Casa Ley | Mabe |
Soriana | Lowes |
Soriana Extemporánea | HomeDepot |
AmericanStandard | Chedraui |
KBFoam | AcerosMx |
Liverpool/HEB | City Fresko (Comercial Mexicana) |
Koblenz | Pepsico |
Tabla 2: Códigos de respuestas comunes
Código | Descripción |
0 | La operación tuvo un resultado exitoso |
1 | El usuario del webservice no existe o proporcionó una contraseña incorrecta. |
2 | El usuario del webservice no existe o proporcionó una contraseña incorrecta. |
3 | Parámetro inválido. Uno de los parámetros de la operación del webservice es incorrecto o hace falta. |
5 | Off-line por mantenimiento. |
6 | Ocurrió un error en el procesamiento de su archivo. |