Saltar al contenido
FactuComercio Crear cuenta

API para tu tienda y tu sistema

Emite tus comprobantes desde tu tienda en línea o tu propio sistema. Factucomercio los calcula, los firma, los envía al SRI y te devuelve el resultado.

Antes de empezar

1

Tu código

Cada punto de emisión tiene uno de pruebas y otro de producción. Va en cada petición: Authorization: Bearer fc_…. Solo emite un punto marcado «Punto integrado (API)» (Configuración → Editar punto de emisión), y ese punto ya no emite desde la web ni la caja: usa uno nuevo solo para la integración.

2

Tu referencia

Cada comprobante lleva referencia: el ID de tu sistema. Si la reenvías con lo mismo, recibes el mismo comprobante (no se duplica); con otros datos, 409.

El secuencial

Cada punto integrado elige quién lo lleva. Factucomercio (de fábrica): no envíes secuencial, cada comprobante toma el que sigue. Tu sistema: envía secuencial (1 a 999999999) en cada comprobante; puede tener saltos, y si ese número ya lo tiene otro comprobante del punto recibes 409 secuencial_ocupado.

3

Códigos del SRI

Identificación, IVA y formas de pago van con los códigos del SRI. Cada ítem lleva su iva, aunque sea 0 %. Están en las tablas.

4

Respuesta al instante

Respondemos enseguida con número y clave de acceso (201); la firma y el envío al SRI siguen solos. Consulta el estado cuando quieras. Factucomercio recalcula los totales.

Arma tu petición

Elige qué comprobante envías y qué lleva: el ejemplo se arma solo, con cada campo explicado. Cópialo y pruébalo con tu código de pruebas.

1 · ¿Qué envías?
POST/api/v1/facturas
Authorization: Bearer fc_tu_codigo_de_pruebas
Content-Type: application/json

                        

Consulta tus comprobantes

Elige qué consultas: verás la petición, la respuesta correcta, una con error y qué es cada campo. Solo ves lo de la empresa y el ambiente de tu código.

¿Qué consultas?
GET

Tablas del SRI y de la API

Los códigos de la API (errores, estados, mensajes del SRI) y los del SRI que acepta, de los mismos catálogos que usa Factucomercio.

Interna. Toda respuesta con error trae «error.codigo», «error.mensaje», «error.detalles.campo» (cuando aplica) y «correlacion».

CódigoDescripción
401 sin_llaveFalta el código de API en «Authorization: Bearer fc_…».
401 llave_invalidaEl código no existe, está regenerado o el punto no emite en ese ambiente.
403 plan_sin_apiEl plan de la cuenta no incluye la API.
403 punto_no_integradoEl punto del código no está marcado «Punto integrado (API)». Se enciende en Editar punto de emisión; ese punto deja de emitir desde la web.
403 plan_vencidoEl plan venció: la cuenta está en solo lectura.
404 no_existeNo hay ese comprobante (o esa dirección) en este ambiente.
404 factura_no_existeLa factura que se modifica no está en este ambiente.
404 compra_no_existeLa compra que se retiene no está; con «compra.clave_acceso» se trae del SRI.
405 metodoMétodo HTTP equivocado para esa dirección.
409 conflictoLa referencia ya se usó con otros datos; no se emitió nada.
409 secuencial_ocupadoEl «secuencial» que enviaste ya lo tiene otro comprobante de ese punto (punto que lleva el secuencial de tu sistema).
415 no_jsonEl cuerpo no es JSON (Content-Type: application/json).
422 invalidoFalta un campo o tiene mal formato: mira «detalles.campo».
422 secuencial_no_permitidoEnviaste «secuencial» a un punto que numera Factucomercio.
422 total_no_cuadraEl «total» enviado no es el que calcula el sistema.
422 producto_no_existeEl producto no existe y faltan «tipo», «descripcion» o «iva» para crearlo.
422 bodega_no_validaLa bodega no es de venta en el local del punto.
422 sri_compraNo se pudo traer del SRI el comprobante del proveedor.
422 rechazadoUna regla del SRI o del sistema no lo permite; el mensaje dice cuál.
429 limite60 emisiones o 300 consultas por minuto por código; 10 códigos errados por minuto por IP. Espera lo que dice «Retry-After».
500 error_internoFalla nuestra: escríbenos con el número de «correlacion».

Prueba primero en el ambiente de pruebas

Tu cuenta nace con un punto de emisión en pruebas y su código listo para conectar.

Crear mi cuenta