FISCALISTO / API
Sucursales
Facture desde otros lugares además del domicilio fiscal del emisor: cada sucursal con su código postal, su dirección en el PDF y sus series.
Un emisor factura desde su domicilio fiscal (la Matriz) y, si tiene más lugares, desde sus sucursales. El CFDI solo lleva el código postal del lugar (LugarExpedicion), así que cada sucursal tiene el suyo, y de él dependen también la hora de la Fecha (Cancún, Tijuana y Hermosillo no tienen la de la Ciudad de México) y el IVA 8 % de la franja fronteriza. Su dirección va en el PDF y, si se las da, sus facturas llevan sus propias series. Son las mismas de Ajustes › Sucursales en la app.
Crear una sucursal
curl https://api.fiscalisto.com/v1/branches \
-H "Authorization: Bearer $FISCALISTO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sucursal Monterrey",
"zip": "64000",
"address": { "street": "Av. Constitución", "exterior": "1500", "neighborhood": "Centro", "city": "Monterrey" },
"phone": "81 1234 5678",
"series": { "invoice": "MTY" }
}'Contesta la sucursal (brn_…), con state tomado de su código postal si no lo manda. Cada código postal es de una sola sucursal (otro igual contesta branch_exists, y dice cuál) y el del domicilio fiscal del emisor no es sucursal: es la Matriz. Hasta 200 por emisor.
series tiene una serie por tipo de CFDI: invoice (facturas, tipo I), credit_note (notas de crédito, tipo E), payment (complementos de pago, tipo P) y transfer (traslados, tipo T). La que no da usa la del emisor.
Facturar desde ella
Mande branch en la factura:
curl https://api.fiscalisto.com/v1/invoices \
-H "Authorization: Bearer $FISCALISTO_API_KEY" \
-H "Idempotency-Key: pedido-1042" \
-H "Content-Type: application/json" \
-d '{
"branch": "brn_OufpKqnrvx9p3",
"customer": { "tax_id": "URE180429TM6", "legal_name": "UNIVERSIDAD ROBOTICA ESPAÑOLA", "tax_system": "601", "zip": "86991" },
"payment_form": "03",
"items": [{ "description": "Consultoría", "product_key": "80101500", "unit_price": 1000 }]
}'La factura sale con LugarExpedicion="64000", la serie MTY y la dirección de la sucursal en el PDF, y su objeto dice branch: "brn_OufpKqnrvx9p3". Sin branch, sale de la Matriz (branch: null). Sus complementos de pago y notas de crédito siguen solos a la sucursal de la factura: no hace falta mandarla otra vez. branch también va en cada factura de un lote y en las facturas recurrentes.
La Fecha es la hora de la sucursal: una factura de su sucursal de Cancún a las 11:30 pm del 31 en la Ciudad de México ya es del día 1 a las 12:30 am.
Cambiarla, archivarla o borrarla
POST /v1/branches/{id} cambia solo lo que manda; una serie en null vuelve a la del emisor. Una sucursal que ya facturó no cambia de código postal (sus facturas se reconocen por él): si se mudó, archívela y cree otra.
curl https://api.fiscalisto.com/v1/branches/brn_OufpKqnrvx9p3 \
-H "Authorization: Bearer $FISCALISTO_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "archived": true }'Archivada, ya no se factura desde ella (una factura con su branch se rechaza) y sus facturas la siguen nombrando; "archived": false la restaura. DELETE /v1/branches/{id} borra solo una que nunca facturó; con facturas contesta branch_has_invoices.
GET /v1/branches las lista, las más recientes primero, sin las archivadas salvo con include_archived=true; zip=64000 deja la de ese código postal.