API DE VENTANILLA ÚNICA V7

API de Ventanilla Única v7

07 marzo, 2017

Documentación de la API de Descarga de Ventanilla Única Pade

Revisión
Fecha
Comentarios
1 2014—12—12

2 2014—12—15
Se agrega al XML de respuesta el RFC del proveedor según.
3 2014—12—21
Se agrega URL del WSDL.
4 2014—12—22
Se agrega campo fecha timbrado a XML de respuesta.
5 2015—01—27
Se agrega método de getAllFacturas y getLastFacturas.
6 2015—03—18
Se separa serie y folio en el resultado de las peticiones.
7 2015—04—01
Se agrega método por rangos y status.

Introducción

La API de descarga de facturas es un servicio ofrecido por la Ventanilla Unica de PADE para que los clientes puedan descargar ciertos campos de una factura.

La ubicación del WSDL del servicio de Descarga de Facturas es la siguiente: https://recepcion.pade.mx/DescargaFactura/DescargaFactura?WSDL

Estructura de la respuesta de los metodos remotos

Los metodos 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ían dependiendo de la operación invocada, y se describen a detalle en cada operación.

Metodos para descarga de facturas

String  getNextFactura  ( String  userName,   String  password,  String  RFC )

El método regresará la proxima factura más antigua que no se haya obtenido por este medio.

El método recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

  • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
  • password. Contraseña del usuario del servicio.
  • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.

La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

Respuesta exitosa

  <facturas>
     <factura>
         </folio>
         </serie>
         </uuid>
         </etiqueta>
         </fechaTimbrado>
         </CodigoProveedor>
         </RfcProveedor>
         </importe>
         </factura>
     </recepcionOK>
</facturas>
 

Respuesta errónea

<facturas>
     </recepcionOK>
     </mensaje>
</facturas>

No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

  • recepcionOk. Indica si la operación se realizó correctamente.
  • mensaje. Solo aparecerá si la recepción fue errónea.
  • factura. Objeto de factura, puede haber varios a travez del XML, detallando los campos.
  • folio. Folio que aparece en el XML de la factura.
  • serie. Serie que aparece en el XML de la factura.
  • uuid. Se regresa el UUID que aparece en el XML de la factura.
  • etiqueta. Se regresa el valor de la etiqueta que se generó al momento de la validacion.
  • fechaTimbrado. Se regresa la fecha en la que se timbró el documento.
  • CodigoProveedor.  Codigo de proveedor asignado por la empresa al emisor de la factura.
  • RfcProveedor. El RFC del proveedor emisor de la factura.
  • importe. Importe total de la factura en el XML.

  String getLastFactura(String userName, String password, String RFC) 

El método regresara la ultima factura obtenida por el método getNextFactura() para caso de respaldo ante cualquier problema de transmision o error.

El método recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

  • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
  • password. Contraseña del usuario del servicio.
  • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.

La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

Respuesta exitosa

<facturas>
     <factura>
         </folio>
         </serie>
         </uuid>
         </etiqueta>
         </fechaTimbrado>
         </CodigoProveedor>
         </RfcProveedor>
         </importe>
     </factura>
     </recepcionOK>
</facturas>

Respuesta  errónea

<facturas>
    </recepcionOK>
    </mensaje>
</facturas>

No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

  • recepcionOk. Indica si la operación se realizo correctamente.
  • mensaje. Solo aparecera si la recepcion fue erronea.
  • factura. Objecto de factura, puede haber varios a travez del XML, detallando los campos.
  • folio. Folio + Serie que aparece en el XML de la factura.
  • uuid. Se regresa el UUID que aparece en el XML de la factura.
  • etiqueta. Se regresa el valor de la etiqueta que se generó al momento de la validacion.
  • fechaTimbrado. Se regresa la fecha en la que se timbró el documento.
  • CodigoProveedor. Codigo de proveedor asignado por la empresa al emisor de la factura.
  • RfcProveedor. El RFC del proveedor emisor de la factura.
  • importe. Importe total de la factura en el XML.

String getFacturaByTag(String userName, String password, String RFC, String Tag)  

El método regresara la ultima factura obtenida por el método getNextFactura() para caso de respaldo ante cualquier problema de transmision o error.

El método recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

  • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
  • password. Contraseña del usuario del servicio.
  • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.
  • Tag. Se ingresa la etiqueta que se generó al momento de la validacion.

La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

Respuesta exitosa

<facturas>
    <factura>
        </folio>
        </serie>
        </uuid>
        </etiqueta>
        </fechaTimbrado>
        </CodigoProveedor>
        </RfcProveedor>
        </importe>
    </factura>
    </recepcionOK>
</facturas>

Respuesta errónea

<facturas>
    </recepcionOK>
    </mensaje>
</facturas>

No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

  • recepcionOk. Indica si la operación se realizo correctamente.
  • Mensaje. Solo aparecera si la recepcion fue erronea.
  • Factura. Objecto de factura, puede haber varios a travez del XML, detallando los campos.
  • Folio. Folio + Serie que aparece en el XML de la factura.
  • UUID. Se regresa el UUID que aparece en el XML de la factura.
  • Etiqueta. Se regresa el valor de la etiqueta que se generó al momento de la validacion.
  • CodigoProveedor. Codigo de proveedor asignado por la empresa al emisor de la factura.
  • RfcProveedor. El RFC del proveedor emisor de la factura.
  • Importe. Importe total de la factura en el XML.

String getFacturaByUUID(String userName, String password, String RFC, String UUID) 

El metodo regresará la ultima factura obtenida por el metodo getNextFactura() para caso de respaldo ante cualquier problema de transmision o error.

El metodo recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

  • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
  • password. Contraseña del usuario del servicio.
  • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.
  • UUID. Se ingresa el UUID que aparece en la factura XML.

La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

Respuesta exitosa

<facturas> 
    <factura>
        </folio>
        </serie>
        </uuid>
        </etiqueta>
        </fechaTimbrado>
        </CodigoProveedor>
        </RfcProveedor>
        </importe>
    </factura>
    </recepcionOK>
</facturas>

Respuesta  errónea

<facturas>
    </recepcionOK>
    </mensaje>
</facturas>

No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

  • recepcionOk. Indica si la operación se realizó correctamente.
  • mensaje. Solo aparecera si la recepcion fue erronea.
  • factura. Objecto de factura, puede haber varios a travez del XML, detallando los campos.
  • folio. Folio + Serie que aparece en el XML de la factura.
  • serie. Serie que aparece en el XML de la factura.
  • uuid. Se regresa el UUID que aparece en el XML de la factura.
  • etiqueta. Se regresa el valor de la etiqueta que se generó al momento de la validacion.
  • fechaTimbrado. Se regresa la fecha en la que se timbró el documento.
  • CodigoProveedor. Codigo de proveedor asignado por la empresa al emisor de la factura.
  • RfcProveedor. El RFC del proveedor emisor de la factura.
  • importe. Importe total de la factura en el XML.

String getAllFacturas(String userName, String password, String RFC)

El método regresará todas las facturas asignadas al cliente que no hayan sido enviadas anteriormente.

El método recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

  • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
  • password. Contraseña del usuario del servicio.
  • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.

La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

Respuesta exitosa

<facturas> 
    <factura>
        </folio>
        </serie>
        </uuid>
        </etiqueta>
        </fechaTimbrado>
        </CodigoProveedor>
        </RfcProveedor>
        </importe>
    </factura>
    </recepcionOK>
</facturas>

Respuesta errónea

<facturas>
    </recepcionOK>
    </mensaje>
</facturas>

No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.  

  • recepcionOk. Indica si la operación se realizó correctamente.  
  • mensaje. Solo aparecera si la recepcion fue erronea.  
  • factura. Objecto de factura, puede haber varios a travez del XML, detallando los campos.  
  • folio. Folio + Serie que aparece en el XML de la factura.  
  • uuid. Se regresa el UUID que aparece en el XML de la factura.  
  • etiqueta. Se regresa el valor de la etiqueta que se generó al momento de la validacion.  
  • fechaTimbrado. Se regresa la fecha en la que se timbró el documento.  
  • CodigoProveedor. Codigo de proveedor asignado por la empresa al emisor de la factura.  
  • RfcProveedor. El RFC del proveedor emisor de la factura.  
  • importe. Importe total de la factura en el XML.

String getLastFacturas(String userName, String password, String RFC)

El método regresara todas las ultimas facturas enviadas por el método getAllFacturas() para caso de respaldo ante cualquier problema de transmision o error.

El método recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

  • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
  • password. Contraseña del usuario del servicio.
  • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas. La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

    Respuesta exitosa

    <facturas> 
        <factura>
            </folio>
            </serie>
            </uuid>
            </etiqueta>
            </fechaTimbrado>
            </CodigoProveedor>
            </RfcProveedor>
            </importe>
        </factura>
        </recepcionOK>

    </facturas>

    Respuesta errónea

    <facturas>
        </recepcionOK>
        </mensaje>
    </facturas>

    No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

    • recepcionOk. Indica si la operación se realizó correctamente.
    • Mensaje. Solo aparecera si la recepcion fue erronea.
    • Factura. Objecto de factura, puede haber varios a travez del XML, detallando los

    campos.

    • Folio. Folio + Serie que aparece en el XML de la factura.
    • UUID. Se regresa el UUID que aparece en el XML de la factura.
    • Etiqueta. Se regresa el valor de la etiqueta que se generó al momento de la validacion.
    • CodigoProveedor. Codigo de proveedor asignado por la empresa al emisor de la factura.
    • RfcProveedor. El RFC del proveedor emisor de la factura.
    • Importe. Importe total de la factura en el XML.

    String getLastFullFactura(String userName, String password, String RFC) 

    El método regresara la ultima factura obtenida por el método getNextFactura() para caso de respaldo ante cualquier problema de transmision o error.

    El método recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

    • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
    • password. Contraseña del usuario del servicio.
    • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.

    La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

    Respuesta exitosa

    <facturas>
        </xml>
        </recepcionOK>
    </facturas>

    Respuesta errónea

    <facturas>
        </recepcionOK>
        </mensaje>
    </facturas>

    No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

    • recepcionOk. Indica si la operación se realizó correctamente.
    • mensaje. Solo aparecera si la recepcion fue erronea.
    • xml. Se regresa el xml con terminación la respuesta en true en la recepción.

    String getFacturasByRangeAndStatus (String userName, String password, String RFC, String FECHAINICIAL, String FECHAFINAL, Boolean STATUSENVIADO)

    paldo ante cualquier problema de transmision o error.

    El metodo recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas:

    • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
    • password. Contraseña del usuario del servicio.
    • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.
    • La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:
    • FECHAINICIAL. Se solicita la fecha inicial de la busqueda, en formato yyyy—MM—dd, Si se deja en blanco el campo, la fecha de busqueda sera 1900—01—01.
    • FECHAFINAL. Se solicita el rango final de busqueda, en formato yyyy—MM—dd, si se deja en blanco el campo se utilizara la fecha actual.
    • STATUSENVIADO. Se solicita si las facturas que se buscan ya fueron enviadas anteriormente o no. True para facturas enviadas y False para facturas no enviadas, es un tipo de datos BOOLEAN.

    Comentarios: La búsqueda por rango de fechas no afectara el status de enviado en la base de datos. Si se obtiene una factura por este método, su estado no cambiara a enviado.

    Respuesta exitosa

    <facturas>
        <factura>
            </folio>
            </serie>
            </uuid>
            </etiqueta>
            </fechaTimbrado>
            </CodigoProveedor>
            </RfcProveedor>
            </importe>
        </factura>
        </recepcionOK>

    </facturas>

    Respuesta errónea

    <facturas>
        </recepcionOK>
        </mensaje>
    </facturas>

    No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

    • recepcionOk. Indica si la operación se realizo correctamente.
    • Mensaje. Solo aparecera si la recepcion fue erronea.
    • Factura. Objecto de factura, puede haber varios a travez del XML, detallando los campos.
    • Folio. Folio que aparece en el XML de la factura.
    • Serie. Serie que aparece en el XML de la factura.
    • UUID. Se regresa el UUID que aparece en el XML de la factura.
    • Etiqueta. Se regresa el valor de la etiqueta que se generó al momento de la validacion.
    • CodigoProveedor. Codigo de proveedor asignado por la empresa al emisor de la factura.
    • RfcProveedor. El RFC del proveedor emisor de la factura.
    • Importe. Importe total de la factura en el XML.

    String getFullFacturaByUUID(String userName, String password, String RFC, String UUID)

    El método regresara la factura correspondiente al UUID indicado.

    El método recibe nombre de usuario y contraseña, asi como el RFC del cliente del cual se desean descargar las facturas y el UUID del comprobante:

    • userName. Nombre de usuario que se utiliza en el login de Ventanilla Unica.
    • password. Contraseña del usuario del servicio.
    • RFC. Se ingresa el RFC de la compañía de la cual se desea descargar facturas.
    • UUID. Se ingresa el UUID que aparece en la factura XML.

    La respuesta del método es un archivo XML sin esquemas. La estructura básica del mismo se describe a continuación:

    Respuesta exitosa

    <facturas>
        </xml>
        </recepcionOK>
    </facturas>

    Respuesta errónea

    <facturas>
        </recepcionOK>
        </mensaje>
    </facturas>

    No todos los atributos estarán presentes siempre en la respuesta. La descripción de los mismos se define a continuación.

    • recepcionOk. Indica si la operación se realizó correctamente.
    • mensaje. Solo aparecera si la recepcion fue erronea.
    • xml. Se regresa el xml con terminación la respuesta en true en la recepción.

    Tabla 1: Mensajes.

    Mensaje
    Descripción
    “No se encontro al cliente o la contraseña es incorrecta.”
    Los datos de autenticacion RFC, User y Password no estan asignados a un usuario como combinacion o hay un error en alguno de los campos.
    “No se encontro una ultima factura enviada”
    Al usar el metodo getLastFactura, se hizo por primera vez y no se ha enviado una factura aun.
    “No hay facturas por enviar.”
    No hay facturas nuevas no enviadas.
    “No se encontro factura con el UUID: “
    No se encontro una factura con el UUID recibido.
    “No se encontro factura con la etiqueta: “
    No se encontro una factura con la etiqueta recibida.
    “Error indefinido. XXXXXX”
    Existe un error indefinido en la aplicación, seguido por el mensaje generado por el servidor. Si se da el caso por favor reportarlo.