Inicio Rápido
Esta guía lo preparará para usar FiscalAPI. Cubriremos todo el proceso de integración, desde los conceptos básicos hasta cómo timbrar su primera factura CFDI. También encontrará información clave para aprovechar al máximo nuestra poderosa API REST.
Antes de comenzar, es importante saber que todas las integraciones inician en el ambiente de pruebas. En este ambiente, los datos son ficticios, las facturas no tienen validez fiscal, las tarjetas para la suscripción y las compras son proporcionadas por FiscalAPI, y los pagos no se cargarán a su cuenta. Los timbres tampoco tienen valor financiero.
1. Crear una cuenta
Lo primero que debe hacer es crear una cuenta en FiscalAPI. Luego, confirme su dirección de correo electrónico mediante el enlace enviado a su correo en la etapa de registro.
2. Capturar sus datos fiscales (opcional pero recomendado)
Si desea que FiscalAPI emita la factura de las compras realizadas en la plataforma, debe capturar sus datos fiscales en su perfil. Si no lo hace, podrá seguir utilizando la cuenta, pero no será posible emitir facturas por sus compras ni probar esta funcionalidad.
3. Crear una suscripción
Para timbrar facturas, necesita una suscripción activa. Puede crearla en la sección Compras en línea » Suscripciones. En el ambiente de pruebas, utilice las tarjetas de prueba de FiscalAPI para simular una suscripción y realizar compras de timbres.
4. Seleccionar un método de pago en su perfil
Nuestra recomendación es seleccionar un método de pago predeterminado en su perfil para facilitar la compra de timbres. Si ya tiene una suscripción activa, utilice la tarjeta registrada en su perfil » Método de pago predeterminado. Si no tiene una suscripción activa, siga el paso anterior para crearla.
5. Comprar timbres
Con una suscripción activa y un método de pago registrado, puede comprar timbres en la sección Compras en línea » Tienda. Seleccione un paquete de timbres, complete el formulario de pago, y utilice sus tarjetas guardadas o una nueva tarjeta si lo prefiere.
6. Obtener sus credenciales
Una vez que tenga una suscripción activa y timbres disponibles, podrá obtener las credenciales necesarias para timbrar:
- API Key: Genere una desde el dashboard en Developers » API Keys. Copie y guarde esta clave en un lugar seguro.
- Tenant Key: Recupérela desde su perfil » TID. Copie y guarde esta clave de manera segura.
7. Crear una suscripción y timbres de prueba
En el ambiente de pruebas, FiscalAPI proporciona una suscripción y timbres de prueba sin costo.
Cree una suscripción en Compras en línea » Suscripciones y compre timbres en Compras en línea » Tienda. Use las tarjetas de prueba de FiscalAPI para completar estas acciones. Recuerde que este ambiente es completamente gratuito.
8. Creando su primera factura
Con una suscripción activa, timbres disponibles y sus credenciales (API Key y Tenant Key), ya puede timbrar su primera factura. El siguiente ejemplo muestra cómo enviar una solicitud POST al recurso /api/v4/invoices/income
.
El ejemplo destaca los elementos clave del objeto JSON:
- Factura (
invoice
): Representa el comprobante completo. - Emisor (
issuer
): Detalles del emisor. - Credenciales fiscales (
taxCredentials
): Sellos digitales del emisor. - Receptor (
recipient
): Detalles del receptor. - Conceptos (
items
): Lista de conceptos incluidos en la factura. - Impuestos de cada concepto (
itemTaxes
): Detalles de los impuestos aplicables a cada concepto.
FiscalAPI realiza todos los cálculos automáticamente, por lo que solo necesita proporcionar los valores base.
También puede utilizar Postman copiando el JSON del argumento --data-raw
en el cuerpo de la solicitud. Asegúrese de configurar los encabezados X-TENANT-KEY
y X-API-KEY
con sus credenciales. Para más detalles, consulte la sección de Autenticación.
Importante: Actualice la propiedad date
con la fecha actual en formato AAAA-MM-DDThh:mm:ss
. Por ejemplo: 2022-01-27T11:49:48
.
Crear factura de ingreso
curl --location 'https://test.fiscalapi.com/api/v4/invoices/income' \
--header 'X-TENANT-KEY: your_tenant_key_value...' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: sk_test_221c25d5...' \
--data-raw '{
"versionCode": "4.0",
"series": "F",
"date": "2024-10-25T11:22:42",
"paymentFormCode": "01",
"paymentConditions": "Contado",
"currencyCode": "MXN",
"typeCode": "I",
"expeditionZipCode": "01160",
"paymentMethodCode": "PUE",
"exchangeRate": 1,
"exportCode": "01",
"issuer": {
"tin": "FUNK671228PH6",
"legalName": "KARLA FUENTE NOLASCO",
"taxRegimeCode": "621",
"taxCredentials": [
{
"base64File": "MIIFgDCCA2igAwIBAgIUMzAwMDEwMDAwMDA1MDAwMDM0NDYwDQYJKoZIhvcNAQELBQAwggErMQ8wDQYDVQQDDAZBQyBVQVQxLjAsBgNVBAoMJVNFUlZJQ0lPIERFIEFETUlOSVNUUkFDSU9OIFRSSUJVVEFSSUExGjAYBgNVBAsMEVNBVC1JRVMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlvc2Nhci5tYXJ0aW5lekBzYXQuZ29iLm14MR0wGwYDVQQJDBQzcmEgY2VycmFkYSBkZSBjYWxpejEOMAwGA1UEEQwFMDYzNzAxCzAJBgNVBAYTAk1YMRkwFwYDVQQIDBBDSVVEQUQgREUgTUVYSUNPMREwDwYDVQQHDAhDT1lPQUNBTjERMA8GA1UELRMIMi41LjQuNDUxJTAjBgkqhkiG9w0BCQITFnJlc3BvbnNhYmxlOiBBQ0RNQS1TQVQwHhcNMjMwNTE4MTQzNTM3WhcNMjcwNTE4MTQzNTM3WjCBpzEdMBsGA1UEAxMUS0FSTEEgRlVFTlRFIE5PTEFTQ08xHTAbBgNVBCkTFEtBUkxBIEZVRU5URSBOT0xBU0NPMR0wGwYDVQQKExRLQVJMQSBGVUVOVEUgTk9MQVNDTzEWMBQGA1UELRMNRlVOSzY3MTIyOFBINjEbMBkGA1UEBRMSRlVOSzY3MTIyOE1DTE5MUjA1MRMwEQYDVQQLEwpTdWN1cnNhbCAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhNXbTSqGX6+/3Urpemyy5vVG2IdP2v7v001+c4BoMxEDFDQ32cOFdDiRxy0Fq9aR+Ojrofq8VeftvN586iyA1A6a0QnA68i7JnQKI4uJy+u0qiixuHu6u3b3BhSpoaVHcUtqFWLLlzr0yBxfVLOqVna/1/tHbQJg9hx57mp97P0JmXO1WeIqi+Zqob/mVZh2lsPGdJ8iqgjYFaFn9QVOQ1Pq74o1PTqwfzqgJSfV0zOOlESDPWggaDAYE4VNyTBisOUjlNd0x7ppcTxSi3yenrJHqkq/pqJsRLKf6VJ/s9p6bsd2bj07hSDpjlDC2lB25eEfkEkeMkXoE7ErXQ5QCwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAHwYpgbClHULXYhK4GNTgonvXh81oqfXwCSWAyDPiTYFDWVfWM9C4ApxMLyc0XvJte75Rla+bPC08oYN3OlhbbvP3twBL/w9SsfxvkbpFn2ZfGSTXZhyiq4vjmQHW1pnFvGelwgU4v3eeRE/MjoCnE7M/Q5thpuog6WGf7CbKERnWZn8QsUaJsZSEkg6Bv2jm69ye57ab5rrOUaeMlstTfdlaHAEkUgLX/NXq7RbGwv82hkHY5b2vYcXeh34tUMBL6os3OdRlooN9ZQGkVIISvxVZpSHkYC20DFNh1Bb0ovjfujlTcka81GnbUhFGZtRuoVQ1RVpMO8xtx3YKBLp4do3hPmnRCV5hCm43OIjYx9Ov2dqICV3AaNXSLV1dW39Bak/RBiIDGHzOIW2+VMPjvvypBjmPv/tmbqNHWPSAWOxTyMx6E1gFCZvi+5F+BgkdC3Lm7U0BU0NfvsXajZd8sXnIllvEMrikCLoI/yurvexNDcF1RW/FhMsoua0eerwczcNm66pGjHm05p9DR6lFeJZrtqeqZuojdxBWy4vH6ghyJaupergoX+nmdG3JYeRttCFF/ITI68TeCES5V3Y0C3psYAg1XxcGRLGd4chPo/4xwiLkijWtgt0/to5ljGBwfK7r62PHZfL1Dp+i7V3w7hmOlhbXzP+zhMZn1GCk7KY=",
"fileType": 0,
"password": "12345678a"
},
{
"base64File": "MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIAgEAAoIBAQACAggAMBQGCCqGSIb3DQMHBAgwggS9AgEAMASCBMh4EHl7aNSCaMDA1VlRoXCZ5UUmqErAbucRBAKNQXH8t8gVCl/ItHMI2hMJ76QOECOqEi1Y89cDpegDvh/INXyMsXbzi87tfFzgq1O+9ID6aPWGg+bNGADXyXxDVdy7Nq/SCdoXvo66MTYwq8jyJeUHDHEGMVBcmZpD44VJCvLBxDcvByuevP4Wo2NKqJCwK+ecAdZc/8Rvd947SjbMHuS8BppfQWARVUqA5BLOkTAHNv6tEk/hncC7O2YOGSShart8fM8dokgGSyewHVFe08POuQ+WDHeVpvApH/SP29rwktSoiHRoL6dK+F2YeEB5SuFW9LQgYCutjapmUP/9TC3Byro9Li6UrvQHxNmgMFGQJSYjFdqlGjLibfuguLp7pueutbROoZaSxU8HqlfYxLkpJUxUwNI1ja/1t3wcivtWknVXBd13R06iVfU1HGe8Kb4u5il4a4yP4p7VT4RE3b1SBLJeG+BxHiE8gFaaKcX/Cl6JV14RPTvk/6VnAtEQ66qHJex21KKuiJo2JoOmDXVHmvGQlWXNjYgoPx28Xd5WsofL+n7HDR2Ku8XgwJw6IXBJGuoday9qWN9v/k7DGlNGB6Sm4gdVUmycMP6EGhB1vFTiDfOGQO42ywmcpKoMETPVQ5InYKE0xAOckgcminDgxWjtUHjBDPEKifEjYudPwKmR6Cf4ZdGvUWwY/zq9pPAC9bu423KeBCnSL8AQ4r5SVsW6XG0njamwfNjpegwh/YG7sS7sDtZ8gi7r6tZYjsOqZlCYU0j7QTBpuQn81Yof2nQRCFxhRJCeydmIA8+z0nXrcElk7NDPk4kYQS0VitJ2qeQYNENzGBglROkCl2y6GlxAG80IBtReCUp/xOSdlwDR0eim+SNkdStvmQM5IcWBuDKwGZc1A4v/UoLl7niV9fpl4X6bUX8lZzY4gidJOafoJ30VoY/lYGkrkEuz3GpbbT5v8fF3iXVRlEqhlpe8JSGu7Rd2cPcJSkQ1Cuj/QRhHPhFMF2KhTEf95c9ZBKI8H7SvBi7eLXfSW2Y0ve6vXBZKyjK9whgCU9iVOsJjqRXpAccaWOKi420CjmS0+uwj/Xr2wLZhPEjBA/G6Od30+eG9mICmbp/5wAGhK/ZxCT17ZETyFmOMo49jl9pxdKocJNuzMrLpSz7/g5Jwp8+y8Ck5YP7AX0R/dVA0t37DO7nAbQT5XVSYpMVh/yvpYJ9WR+tb8Yg1h2lERLR2fbuhQRcwmisZR2W3Sr2b7hX9MCMkMQw8y2fDJrzLrqKqkHcjvnI/TdzZW2MzeQDoBBb3fmgvjYg07l4kThS73wGX992w2Y+a1A2iirSmrYEm9dSh16JmXa8boGQAONQzQkHh7vpw0IBs9cnvqO1QLB1GtbBztUBXonA4TxMKLYZkVrrd2RhrYWMsDp7MpC4M0p/DA3E/qscYwq1OpwriewNdx6XXqMZbdUNqMP2viBY2VSGmNdHtVfbN/rnaeJetFGX7XgTVYD7wDq8TW9yseCK944jcT+y/o0YiT9j3OLQ2Ts0LDTQskpJSxRmXEQGy3NBDOYFTvRkcGJEQJItuol8NivJN1H9LoLIUAlAHBZxfHpUYx66YnP4PdTdMIWH+nxyekKPFfAT7olQ=",
"fileType": 1,
"password": "12345678a"
}
]
},
"recipient": {
"tin": "EKU9003173C9",
"legalName": "ESCUELA KEMPER URGATE",
"zipCode": "42501",
"taxRegimeCode": "601",
"cfdiUseCode": "G01",
"email": "someone@somewhere.com"
},
"items": [
{
"itemCode": "01010101",
"quantity": 2.5,
"unitOfMeasurementCode": "E48",
"unitOfMeasurement": "Unidad de servicio",
"description": "Computer model acme",
"unitPrice": 1250.75,
"taxObjectCode": "02",
"itemSku": "7506022301699",
"itemTaxes": [
{
"taxCode": "002",
"taxTypeCode": "Tasa",
"taxRate": 0.160000,
"TaxFlagCode": "T"
},
{
"taxCode": "002",
"taxTypeCode": "Tasa",
"taxRate": 0.106666,
"TaxFlagCode": "R"
}
]
}
]
}'
¿Qué sigue?
¡Genial! Ahora que has completado tu proceso de onboarding y has generado tu primera factura con fiscalapi, estás listo para profundizar en otras funcionalidades. Aquí tienes algunos recursos que podrían ser útiles mientras exploras más sobre la API:
- Lea sobre el modelo de respuesta de FiscalAPI
- Conozca los códigos de error de FiscalAPI
- Explore los esquemas de autenticación
- Revise la documentación completa del recurso de facturas
Estos recursos te ayudarán a sacar el máximo provecho de la API y a resolver cualquier duda o problema que puedas encontrar durante tu integración.