Saltar al contenido
oden.tax docs
GET /v1/issuers
GET /v1/issuers/:id
POST /v1/issuers

Emisores

Un emisor es un RFC por el que factura tu cuenta. Aquí los lees y das de alta nuevos. No se editan ni se borran por la API; eso se hace en Configuración, en el panel.

Un emisor nuevo no puede timbrar hasta que subas su CSD. Antes de eso, facturar con él contesta issuer_not_ready.

Listar y consultar

GET /v1/issuers devuelve todos los emisores de la cuenta dentro de data, ordenados por id. No va paginado. GET /v1/issuers/:id devuelve uno solo, con la misma forma.

Antes de facturar revisa stampable. Si es false, missing dice qué campo falta, y si está vacío lo que falta es el CSD.

Dar de alta un emisor

Los campos van en la raíz del cuerpo JSON, sin envolverlos en issuer. Un campo que no está en esta lista se ignora. Ninguno es obligatorio para crearlo: un emisor sin RFC, régimen o código postal se crea con ready: false, y como la API no lo edita después, tendrás que completarlo en el panel. Manda los tres.

tax_id string · opcional
El RFC. Lo guardamos en mayúsculas y sin espacios ni guiones, y revisamos su forma y su dígito verificador. Si lo omites, lo tomamos del CSD cuando lo subas. No puede repetirse dentro de tu cuenta.
tax_regime string · opcional
Clave del catálogo c_RegimenFiscal, por ejemplo 601 o 612. Tiene que corresponder al tipo de persona del RFC: 601 es de personas morales y no se acepta con un RFC de persona física.
postal_code string · opcional
El código postal del domicilio fiscal, cinco dígitos. Es el lugar de expedición de sus comprobantes.
legal_name string · opcional
La razón social. Al subir el CSD la reemplazamos por la que trae el certificado, que es la que el SAT valida en cada comprobante.
name string · opcional
El nombre con el que lo ves en el panel. Si lo dejas vacío, al subir el CSD le ponemos la razón social del certificado.
country string · opcional
MX por omisión. Esta página describe un emisor mexicano. Un país que no manejamos se rechaza; los campos de otro país se ignoran en un emisor MX.

Respuesta

201 con el emisor al crearlo, 200 al leerlo. Es la misma forma en los tres casos.

id
entero
El identificador del emisor. Es el issuer_id que mandas al facturar.
country
string
MX.
name
string o null
El nombre en el panel.
tax_id
string o null
El RFC.
legal_name
string o null
La razón social.
tax_regime
string o null
Clave de c_RegimenFiscal.
postal_code
string o null
Código postal del domicilio fiscal.
ready
booleano
true cuando tiene RFC, régimen y código postal.
missing
arreglo
Los campos que le faltan para estar listo, en el orden en que conviene llenarlos: tax_id, tax_regime, postal_code. Vacío cuando ready es true.
stampable
booleano
true cuando está listo y además tiene un CSD vigente. Sólo entonces puede timbrar.
created_at
string
Fecha de alta en ISO 8601 con zona horaria.

Errores

Todos con la forma de siempre, descrita en errores.

unauthorized
401
Falta la llave o ya fue revocada.
payment_required
402
La cuenta tiene un pago pendiente.
not_found
404
En GET /v1/issuers/:id, ese emisor no es de tu cuenta o no existe. Contestamos igual a los dos.
validation_failed
422
Algún campo no pasó: un RFC mal formado o con dígito verificador incorrecto, un RFC que ya tienes, un régimen que no existe o que no corresponde al tipo de persona, un código postal que no es de cinco dígitos. details trae el campo y el motivo.
invalid_parameter
422
country no es un país que manejemos.