API DE INTEGRACIÓN - SERVICIO DE ADDENDAS

                          API de Integración - Servicio de Addendas

                          26 febrero, 2018

                          Documentación de la API de Integración Servicio de addendas

                          Revisión
                          Fecha
                          Comentarios
                          12018-­02-26
                          Documento inicial
                          22021-10-13Se 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


                          String procesarAddenda(String contrato, String usuario, String passwd, String datos)

                          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 lineas, 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 resultara en el nodo cfdi:Addenda para ser integrado en un XML de CFDI. 

                          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.
                          Respuesta del Servicio

                          La respuesta del servicio tendrá la siguiente estructura:

                           <servicioAddendas>

                              <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:

                           <servicioAddendas>

                              <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: 

                          Formato CSV – CFDI 3.3 

                           

                          Tipos de Addendas que ofrece Prodigia. 


                          Casa Ley Mabe 
                          Soriana Lowes
                          Soriana Extemporánea HomeDepot
                          AmericanStandardChedraui
                          KBFoamAcerosMx
                          Liverpool/HEBCity Fresko (Comercial Mexicana)
                          Koblenz


                          Tabla 2: Códigos de respuestas comunes

                          Código
                          Descripción
                          0La operación tuvo un resultado exitoso
                          1El usuario del webservice no existe o proporcionó una contraseña incorrecta.
                          2El usuario del webservice no existe o proporcionó una contraseña incorrecta.
                          3Parámetro inválido. Uno de los parámetros de la operación del webservice es incorrecto o hace falta.
                          5Off-line por mantenimiento. 
                          6Ocurrió un error en el procesamiento de su archivo.