CFDI y facturación
Configura el perfil fiscal de tu organización y consulta sus registros de factura.
Configura los datos fiscales de tu organización y consulta los registros de factura disponibles. Esta superficie usa CFDI 4.0 y está en beta.
Endpoints
| Método | Ruta | Descripción |
|---|---|---|
POST |
/v1/billing/info |
Crear o actualizar el perfil fiscal |
GET |
/v1/billing/info |
Consultar el perfil fiscal |
GET |
/v1/billing/invoices |
Listar registros de factura |
GET |
/v1/billing/invoices/:id |
Consultar un registro de factura |
Configura el perfil fiscal
Parámetros del cuerpo
rfcstring
RFC válido de la organización.
stringrazonSocialstring
Razón social registrada ante el SAT.
stringregimenFiscalstring
Código del régimen fiscal.
stringusoCfdistring
Código de uso del CFDI, por ejemplo G03.
stringstreetstring
Calle del domicilio fiscal.
stringexteriorNumberstring
Número exterior.
stringinteriorNumber?string
Número interior, si aplica.
stringneighborhoodstring
Colonia.
stringcitystring
Ciudad o municipio.
stringstatestring
Estado.
stringpostalCodestring
Código postal fiscal.
stringbillingEmailstring
Correo de facturación.
stringbillingPhone?string
Teléfono de facturación.
stringrequireInvoice?boolean
Indica si la organización requiere factura.
booleancurl -X POST https://api.sendit.mx/v1/billing/info \
-H "X-API-Key: sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"rfc": "XAXX010101000",
"razonSocial": "Ejemplo Comercio SA de CV",
"regimenFiscal": "601",
"usoCfdi": "G03",
"street": "Avenida Reforma",
"exteriorNumber": "123",
"interiorNumber": "4B",
"neighborhood": "Juárez",
"city": "Ciudad de México",
"state": "CDMX",
"postalCode": "06600",
"billingEmail": "facturacion@example.com",
"billingPhone": "+525512345678",
"requireInvoice": true
}'
La respuesta usa el sobre normal y devuelve el perfil guardado. GET /v1/billing/info devuelve el mismo perfil. Si todavía no existe, devuelve 404 RESOURCE_NOT_FOUND.
Lista las facturas
curl "https://api.sendit.mx/v1/billing/invoices?page=1&limit=20" \
-H "X-API-Key: sk_live_..."
{
"success": true,
"data": [
{
"id": "inv_123",
"billingInfoId": "bi_123",
"uuid": null,
"folioNumber": null,
"series": null,
"invoiceType": "INGRESO",
"paymentMethod": "PUE",
"paymentForm": "03",
"subtotal": "1000.00",
"tax": "160.00",
"total": "1160.00",
"currency": "MXN",
"status": "PENDING",
"xmlUrl": null,
"pdfUrl": null,
"issuedAt": null,
"createdAt": "2026-04-20T12:00:00.000Z",
"updatedAt": "2026-04-20T12:00:00.000Z"
}
],
"meta": { "total": 1, "page": 1, "limit": 20 }
}
page inicia en 1. limit inicia en 20 y acepta hasta 100. Si no hay perfil fiscal, el listado devuelve 200 con data: [].
Consulta una factura
curl https://api.sendit.mx/v1/billing/invoices/inv_123 \
-H "X-API-Key: sk_live_..."
La respuesta devuelve un registro de factura de tu organización con la misma forma del listado.
Errores
| Código | Cuándo ocurre | Cómo resolverlo |
|---|---|---|
400 INVALID_INPUT |
El RFC, correo o algún campo no es válido | Corrige los datos fiscales |
403 FORBIDDEN |
El usuario no puede modificar el perfil | Usa un miembro ADMIN o superior |
404 RESOURCE_NOT_FOUND |
El perfil o la factura no existe | Configura el perfil o verifica el id |