Timbra ya desde cualquier lenguaje de programación con la API de Fiscus CFDI. Creemos que la consulta, generación y entrega de información contable, fiscal y financiera puede ser fácil y para todos.
Para consumir la API sigue los siguientes pasos:
Paso 1. Regístrate en Fiscus CFDI (y recibe 10 fólios gratis) en la siguiente url: https://fiscuscfdi.com/index.php/Registro.
Paso 2. Obtén las credenciales para poder consumir la API en: https://fiscuscfdi.com/index.php/CuentaApi.
Paso 3. Listo, ya puedes consumir la API.
Puede ver un ejemplo de la implementación y uso de esta API en el siguiente repositorio de GitHub.
Código | Mensaje |
---|---|
1000 | Faltan usuario y/o password |
1001 | No existe registro con ése usuario/password |
2000 | Faltan información requerida: token, rfc, razón_social, etc. |
2001 | Token inválido. |
2002 | No existe ningún registro con ése email. |
4000 | Faltan datos: token/email/rfc/serie/etc. |
4001 | Token inválido. |
4002 | No existe registro con los datos proporcionados. |
5000 | RFC no tiene un formato de persona física o moral valido. |
5001 | El RFC ya está siendo usado por otro cliente. |
6000 | Los certificados o la contraseña no son validos. |
6001 | El campo curp no tiene un formato valido. |
6002 | El campo codigo_postal no tiene un formato valido. |
6003 | Los campos logotipo_contenido y logotipo_formato dependen el uno de otro. |
6004 | No se pudo dar de alta el RFC. Intente más tarde. |
7000 | La empresa con el RFC que intenta timbrar no le pertenece. |
7001 | No cuenta con suficientes folios para realizar la operación. |
7002 | El JSON del CFDI tiene algunos errores. Atiende al resultado de la validación. |
7003 | Ocurrió un error al intentar timbrar el CFDI. |
7004 | Error al generar PDF |
7005 | Ocurrio un error al obtener información de su json CFDI. |
7006 | No se enccontró la serie solicitada. Haga una petición a https://fiscuscfdi.com/index.php/Api?peticion=api_obtener_numeros_series para que see le asigne uno. |
7007 | A ocurrido un error al intentar crear el ticket. Intentelo más tarde. |
7008 | El ticket no genera una factura valida. |
8000 | El formato del UUID no es valido. |
8001 | No se encontro factura relacionada con el cliente. Revise que el UUID sea correcto |
8002 | Fallo al cancelar el CFDI. Verifique que no haya sido cancelado ya. |
9000 | Faltan información requerida: serie, ticket, token, etc. |
9001 | No tiene permiso para consultar la información de serie del RFC. |
9002 | No existe registro de cuenta consumo API para éste token. |
9003 | El parámetro ticket debe ser un array. |
9004 | No existe registro para éste ticket. |
10000 | Falta información requerida. |
10001 | Token inválido. |
10002 | No existe una factura con este folio fiscal. |
10003 | La empresa con el RFC que intenta timbrar no le pertenece. |
10004 | Se espera que el o los correos ingresados sean un array. |
10005 | Solo se permite un maximo de 10 correos receptores por petición. |
10006 | No fue posible enviar el correo con la factura compartida. |
11000 | Falta información requerida. |
11001 | Token inválido. |
11002 | El RFC no tiene un formato valido. |
11003 | No existe este RFC para esta serie |
12001 | La serie no fue encontrada o no es valida |
Código | Mensaje |
---|---|
101 | Cancelado. |
102 | Previamente Cancelado. |
103 | En Proceso. |
104 | Rechazado al no ser cancelable. |
105 | Rechazado. |
106 | WS No Responde. |
202 | Solicitud de Cancelación ciclada en SAT |
203 | UUID no corresponde a Emisor. |
204 | UUID no aplica para cancelación. |
205 | UUID no existe. |
301 | XML mal formado |
302 | Sello mal formado o inválido |
303 | Sello no corresponde al emisor |
304 | Certificado revocado o caduco |
305 | Certificado inválido |
310 | Uso de certificado e-firma |
Para poder llamar a los demás métodos de la API (api_agregar_rfc, api_timbrar_cfdi, api_cancelar_cfdi, etc.) es necesario tener un token válido. El método 'api_obtener_token' recibe como parámetros obligatorios las credenciales de consumo de API: el usuario y el password. Si aún no tienes tus credenciales dirigete a: https://fiscuscfdi.com/index.php/CuentaApi
Obtener token para usar API
usuario required | string Cliente previamente registrado. |
password required | string Password del usuario ya registrado. |
Operación exitosa
No se pudo obtener token.
Ruta base donde se accede al API.
Antes de mandar a timbrar un CFDI, es necesario dar de alta el RFC tanto para personas físicas o morales. El método recibe como parámetros obligatorios: el ambiente 'env' (sandbox|production), el 'token' válido, el RFC (fisica/moral), la razón social, el contenido del archivo .key correspondiente al certificado de sello digital (NO CONFUNDIR CON FIRMA ELECTRÓNICA) codificado en base64, el contenido del archivo .cer correspondiente al certificado de sello digital (NO CONFUNDIR CON FIRMA ELECTRÓNICA) codificado en base64 y el password del certificado de sello digital.
Agregar RFC
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
rfc required | string RFC válido, sin caracteres especiales ni espacios. |
razon_social required | string Razón social del RFC a agregar. |
certificado_key required | string Certificado .key codificado en base 64. |
certificado_cer required | string Certificado .cer codificado en base 64. |
certificado_password required | string Contraseña de los certificados. |
curp | string Default: "" Curp válido y sin espacios. |
registro_patronal | string Default: "" Registro patronal correspondiente al RFC. |
logotipo_contenido | string Default: "" Imagen de su empresa codificada en base 64. |
logotipo_formato | string Default: "" MimeType de 'logotipo_contenido'. Es requerido si existe la propiedad 'logotipo_contenido'. |
nombre_comercial | string Default: "" Nombre con el que se reconocerá su empresa. |
codigo_postal | string Default: "" Código postal del domicilio de su empresa. |
zona_horaria | string Default: "" Zona horaria donde se encuentra. |
cuenta_propietario | string Default: "" Correo de la cuenta a la que se le asignara rfc, si se agrega este campo esta cuenta pasara a ser la dueña de esa empresa y se compartirá a la cuenta que emite la petición, si no se agrega la cuenta que emite la petición se asignara como la dueña de esa empresa |
Operación exitosa
Error al dar de alta RFC
Ruta base donde se accede al API.
Desde una cuanta con acceso a la API se pueden dar de alta otras cuentas en Fiscus CFDI. Recibe como parámetros obligatorios: el ambiente 'env' (sandbox|production), el 'token' válido y un 'correo' unico.
Cancelar CFDI
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
correo required | string Un correo que cumpla con el formato valido. |
password required | string Contraseña segura requerida para entrar a la plataforma. |
nombre | string Nombre(s) del/la propietario/a de la cuenta. |
apellido_paterno | string Primer apellido del/la propietario/a de la cuenta. |
apellido_materno | string Segundo apellido del/la propietario/a de la cuenta. |
Operación exitosa
Error al dar de alta RFC
Ruta base donde se accede al API.
Recibe como parámetros obligatorios: el ambiente 'env' (sandbox|production), el 'token' válido y el 'cfdi' como string en formato JSON.
Timbrar CFDI
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
cfdi required | string String en formato JSON del CFDI a timbrar. |
El CFDI timbró correctamente
No se pudo timbrar el CFDI
Ruta base donde se accede al API.
Recibe como parámetros obligatorios: el ambiente 'env' (sandbox|production), el 'token' válido y el 'uuid' (folio fiscal) que se quiere cancelar.
Cancelar CFDI
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
uuid required | string Folio fiscal de la factura a cancelar. |
El CFDI fue cancelado correctamente.
No se pudo cancelar el CFDI
Ruta base donde se accede al API.
Obtiene el estatus de uno o más tickets asociados a una serie para saber si ya fueron Facturados
Descripcion de la peticion
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
serie required | string Serie asociada al RFC |
ticket required | array Array con los tickets a consultar. Puede ser un solo elemento o N |
Operación exitosa
Error al obtener series
Ruta base donde se accede al API.
Busca los números de serie asociados a un RFC o, en caso de no contar con uno, lo crea y lo asocia.
Obtener las series de un RFC
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
rfc required | string RFC válido, sin caracteres especiales ni espacios. |
Operación exitosa
Error al obtener series
Ruta base donde se accede al API.
Guarda un JSON representativo del CFDI al que solo se le omitirían los datos del receptor. Este JSON será validado y guardado para su futura validación
Guardar ticket para su posible timbrado en el futuro.
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
cfdi required | string String en formato JSON del CFDI a timbrar. |
serie required | string Clave de la serie perteneciente a la empresa. |
ticket required | string Clave del ticket. Esta clave es la identificación que el cliente le da a su ticket así que su formato es arbitrario. |
importe required | double Importe final del ticket. |
Operación exitosa
Error al obtener series
Ruta base donde se accede al API.
Envia una factura ya generada, especificada por su folio fiscal (uuid), al correo ingresado.
Envia por correo una factura ya generada.
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
uuid required | string Folio fiscal de la factura |
correo required | array Un array de correos que cumplan con el formato valido. |
Operación exitosa
Error al obtener series
Ruta base donde se accede al API.
Obtiene el siguiente numero de folio para aplicar a la factura que corresponda al rfc emisor y a la serie proporcioandas.
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
rfc required | string Rfc del emisor de la factura. |
serie required | string Serie del emisor de la factura. |
Operación exitosa
Error al obtener folio
Ruta base donde se accede al API.
Obtiene la factura con el folio fiscal (uuid) proporcionado
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
uuid required | string Folio fiscal válido, conjuntos de combinaciones de caracteres separados por guiones (-) |
logotipo | string Si se desea que el PDF tenga un logo, si el rfc o la serie no tiene uno asignado, o cambiar el asignado, se envía la imagen codificada en base64 |
Operación exitosa
Error al obtener folio
Ruta base donde se accede al API.
Obtiene los rfcs del usuario autenticado
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
Operación exitosa
Error al obtener folio
Ruta base donde se accede al API.
Valida si una clave de producto es valida
env required | string Enum: "sandbox" "production" Parámetro que define el estado del desarrollo usando la API. Lo que se haga en 'sandbox' no afectara a 'production'. |
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
clave required | string Clave de producto o servicio |
Operación exitosa
Error al obtener folio
Ruta base donde se accede al API.
Obtener una previsualización de una factura (aún no timbrada) - se debe enviar un JSON y retorna un HTML o PDF (dependiendo si se le pasa la variable 'pdf')
token required | string Clave con la que se obtiene acceso a todas las funcionalidades de la API. |
json_cfdi required | string CFDI en formato JSON |
rfc_emisor required | string RFC válido, sin caracteres especiales ni espacios. |
pdf required | boolean Si se pasa esta variable el resultado será en PDF en caso contrario en HTML. |
Operación exitosa
Error al obtener folio
Ruta base donde se accede al API.