DLL Importar API
Para hacer uso de estos métodos en su proyecto solo tiene que agregar la libreria dll_cfdi.zip para saber como agregarla porfavor siga este enlace: Documentación DLL's .
A partir del 1 de enero de 2022, todas las solicitudes de cancelación deberán contener el motivo de cancelación del CFDI. En el caso de que el motivo de cancelación sea "01 - Comprobante emitido con errores con relación" se deberá especificar el UUID del comprobante que sustituye al comprobante a cancelar.
Con la finalidad de no cambiar el contrato de datos SOAP y evitar problemas de compatibilidad con los servicios implementados por nuestros clientes, en los servicios de cancelación de Solución Factible será posible incluir una cadena de cancelación en lugar del UUID, en la cual se incluya el UUID a cancelar, motivo de cancelación y el UUD relacionado que sustituye al comprobante a cancelar.
Para más detalles consulte el catálogo de Motivos de cancelación permitidos.
Derivado de los cambios en el proceso de cancelación de CFDI, el proceso para cancelar comprobantes mediante la DLL es a través del método importarCFDI, usando un archivo de conector.
ProgID | SF.CFDI |
Resumen de métodos
String |
enviarCFDI(String user, String pass, String disenoMail, String asunto, String mensajePersonalizado,
String zip, String xmlEnvios, int produccion) Envía a uno o varios destinatarios la representa impresa de un CFDI. |
String |
importarCFDI(String user, String pass, String pathToConector, int produccion) Recibe datos para importarlos a uno o varios comprobantes. |
String |
generarPDF(String user, String pass, String diseno, String uuid,
String folio, String serie, String dirDescargaPDF, int produccion) Regresa la representación impresa de un CFDI en formato PDF. |
String |
obtenerDatos(String user, String pass, String uuid, String folio, String serie, int produccion) Busca los datos de un CFDI por folio y serie o por folio fiscal (UUID) y los retorna. |
String |
importarCFDIBase64(String user, String pass, String contenidoBase64, int produccion) Recibe el contenido de un archivo conector codificado en Base64 |
Descripción detallada de los métodos
enviarCFDI
String enviarCFDI(String user, String pass, String disenoMail, String asunto, String mensajePersonalizado, String zip, String xmlEnvios, int produccion)
- Envía a uno o varios destinatarios la representa impresa de un CFDI y regresa un String con la respuesta del servidor en formato XML.
- Parámetros:
String user
- El nombre de usuario (usualmente un email) que se usa para autenticarse y conectarse a su implementación.String pass
- La contraseña de usuario.String disenoMail
- Identificador del diseño a utilizar para el formato del mensaje.String asunto
- Encabezado del mensaje.String mensajePersonalizado
- Contenido del mensaje.String zip
- Indica si los adjuntos del mensaje se comprimirán en zip. ("true" o "false")String xmlEnvios
- Datos correspondientes a los envíos y destinatarios. Este parametro tiene que ser proporcionado como un XML donde se cargará la siguiente información de la siguiente manera:
Ejemplo de xmlEnviosint produccion
- Solo se aceptan los valores: 1 y 0. Indica el servidor a donde se va a hacer la petición; 0=TESTING 1=PRODUCCION
- Regresa:
- Un String que contiene la respuesta del servidor en formato XML.
- Ejemplo de respuesta
importarCFDI
String importarCFDI(String user, String pass, String pathToConector, int produccion)
- Recibe datos para importarlos a uno o varios comprobantes y regresa la respuesta del servidor en formato XML.
- Parámetros:
String user
- El nombre de usuario (usualmente un correo electrónico) que se usa para autenticarse y conectarse a su implementación.String pass
- La contraseña de usuario.String pathToConector
- Ruta a el archivo conector que se va a enviar.int produccion
- Solo se aceptan los valores: 1 y 0. Indica el servidor a donde se va a hacer la petición; 0=TESTING 1=PRODUCCION
- Regresa:
- Un String que contiene la respuesta del servidor en formato XML.
Ejemplo de cancelación con archivo conector
Consulte los motivos de cancelación aquí
- Ejemplo de respuesta
generarPDF
String generarPDF(String user, String pass, String diseno, String uuid, String folio, String serie, String dirDescargaPDF, int produccion)
- Regresa la representación impresa de un CFDI en formato PDF y regresa un String con la respuesta del servidor en formato XML.
- Parámetros:
String user
- El nombre de usuario (usualmente un email) que se usa para autenticarse y conectarse a su implementación.String pass
- La contraseña de usuario.String uuid
- El UUID del comprobante que se quiere descargar (puede ser null si se envia el folio y la serie).String folio
- Numero de folio comercial del CFDI.String serie
- Nombre de serie comercial del CDFI.String dirDescargaPDF
- Ruta donde se guardara el PDF descargado.int produccion
- Solo se aceptan los valores: 1 y 0. Indica el servidor a donde se va a hacer la petición; 0=TESTING 1=PRODUCCION
- Regresa:
- Un String que contiene la respuesta del servidor en formato XML.
- Ejemplo de respuesta
obtenerDatos
String obtenerDatos(String user, String pass, String uuid, String folio, String serie, int produccion)
- Busca los datos de un CFDI por folio y serie o por folio fiscal (UUID) y los retorna.
- Parámetros:
String user
- El nombre de usuario (usualmente un email) que se usa para autenticarse y conectarse a su implementación.String pass
- La contraseña de usuario.String folio
- Numero de folio comercial del CFDI.String serie
- Nombre de serie comercial del CDFI.int produccion
- Solo se aceptan los valores: 1 y 0. Indica el servidor a donde se va a hacer la petición; 0=TESTING 1=PRODUCCION
- Regresa:
- Un String que contiene la respuesta del servidor en formato XML.
- Ejemplo de respuesta
importarCFDIBase64
String importarCFDI(String user, String pass, String contenidoBase64, int produccion)
- Recibe el contenido de un archivo conector codificadpo en base64 para importar uno o varios comprobantes, regresa la respuesta del servidor en formato XML.
- Parámetros:
String user
- El nombre de usuario (usualmente un email) que se usa para autenticarse y conectarse a su implementación.String pass
- La contraseña de usuario.String contenidoBase64
- Contenido codificado del archivo conector en Base64 que se va a enviar.int produccion
- Solo se aceptan los valores: 1 y 0. Indica el servidor a donde se va a hacer la petición; 0=TESTING 1=PRODUCCION
- Regresa:
- Un String que contiene la respuesta del servidor en formato XML.
- Ejemplo de respuesta
-
Códigos de respuesta generales de encabezado
Los códigos de respuesta generales de encabezado pueden contener descripciones más específicas en el mensaje.
- 200 — El proceso de creación se ha completado correctamente.
- 500 — Han ocurrido errores que no han permitido completar el proceso. Reintentar.
- 501 — Error de conexión a la base de datos. Reintentar.
- 502 — Han ocurrido errores al intentar recuperar datos o almacenarlos en la base de datos.
- 503 — Se ha alcanzado el límite de licencias de acceso concurrente a base de datos.
- 601 — Error de autenticación, verifique usuario y contraseña.
- 602 — La cuenta de usuario se encuentra bloqueada.
- 603 — La contraseña de la cuenta ha expirado.
- 604 — Ha excedido el número máximo permitido de intentos de autenticación fallidos, la cuenta se bloqueará.
- 610 — La acción solicitada no está soportada en la implementación porque no se ha configurado para tal fin o no es posible realizarla. En el método importar significa que la implementación no tiene un Conector de importación de comprobantes configurado.
- 611 — No se han especificado todos los parámetros necesarios para realizar la operación. En el caso del método importar significa que el Conector de importación asignado a esta implementación no puede ser utilizado a través de este en este Webservice debido a limitaciones propias del conector.
- 612 — Archivo malformado. El formato de archivo o secuencia binaria no corresponde a la esperada.
- 613 — La secuencia numérica ha llegado al final.
- 620 — No tiene permiso para realizar la acción.
- 621 — Argumento no válido.
- 622 — Operación no soportada para la implementación.
- 623 — Datos no encontrados.
- 624 — Violación de restricción de unicidad.
- 625 — La acción no se puede completar porque requiere que se ejecute una acción previa.
- 626 — Error de configuración de la implementación.
- 630 — El contrato de la implementación ha expirado.
- 631 — La fecha de pago del contrato de la implementación ha expirado.
- 632 — Se ha superado el límite de uso justo para la implementación.
- 633 — La implementación se encuentra inactiva.
-
Códigos de estatus de importación de CFDI
- 1 — El proceso de creación se ha completado correctamente.
- -1 — Han ocurrido errores que no han permitido completar el proceso de creación.
-
Códigos de operación para la importación de CFDI
- -1 — Parseo.
- 0 — Cancelación.
- 1 — Creación.
- 2 — No se puede modificar.