Una API para que tu tienda en línea, tu punto de venta o tu ERP arme Factura y Crédito Fiscal a nombre de tu empresa, y deje el F-07 y los libros listos para revisar. Quien declara y presenta ante Hacienda eres tú o tu contador. Plugin oficial para WooCommerce y servidor MCP para que Claude consulte tus datos; Shopify, próximamente.
En Qontador, Configuración → Conectores → «Generar clave de API». Empieza con qk_ y se muestra una sola vez; guárdala como secreto en tu servidor, nunca en el navegador.
Un POST a /api/v1/ventas con el receptor, los ítems y una referencia tuya (el número de pedido). Qontador arma la Factura o el Crédito Fiscal para que lo revises. La declaración y la presentación ante Hacienda las haces tú o tu contador.
Puedes descargar el PDF y el JSON. La venta queda en Ventas, en el libro de ventas y en el débito de IVA. El Excel del F-07 sigue siendo el anexo de compras. Quien lo presenta eres tú o tu contador.
El modo viene apagado. En Configuración → Conectores, un administrador activa «Registrar sin transmitir». Con eso, POST /api/v1/ventas anota la venta aunque el cliente —incluido el plugin de WooCommerce 1.0.0— no envíe ningún campo nuevo. Si el ajuste está activo, no se transmite aunque el cuerpo pida transmitir: true.
Un cliente propio puede pedir lo mismo con "transmitir": false aunque el ajuste esté apagado. Si el ajuste está apagado y no viene ese campo, la llamada sigue el camino de emisión: si faltan credenciales responde 409 y no registra nada.
No hay firma, no hay llamada a Hacienda y no hay sello. estado queda registrado, transmitido es false y selloRecibido es null. El número es interno (REG-…): no consume el correlativo de un DTE que sí se vaya a transmitir. codigoGeneracion es un identificador de Qontador. La venta entra a Ventas, al libro de ventas y al débito de IVA. El Excel del F-07 sigue siendo el anexo de compras (documentos recibidos); Qontador no lo presenta.
Instálalo en WordPress, pega tu clave y cada pedido pagado arma una Factura o un Crédito Fiscal para que lo revises. El cliente elige Factura o Crédito Fiscal en el checkout. Descárgalo desde Configuración → Conectores en tu cuenta de Qontador. Quien presenta ante Hacienda eres tú o tu contador.
Qontador tiene un servidor MCP en https://qontador.com/api/mcp. Se autentica con la misma clave de API (Authorization: Bearer qk_…) y expone las herramientas de consulta del Asistente, acotadas a tu empresa. Solo lectura: Claude no emite, no etiqueta y no borra nada desde fuera de la app.
claude mcp add --transport http qontador https://qontador.com/api/mcp \
--header "Authorization: Bearer qk_TU_CLAVE"{
"mcpServers": {
"qontador": {
"command": "npx",
"args": [
"-y", "mcp-remote", "https://qontador.com/api/mcp",
"--header", "Authorization: Bearer qk_TU_CLAVE"
]
}
}
}buscar_dtesBusca y filtra documentos: compras o ventas, proveedor, período, monto o texto dentro de los ítems.
resumen_proveedoresRanking de proveedores (compras) o clientes (ventas) por volumen en un período.
totales_por_contraparteTotales mes a mes de un proveedor o cliente concreto, más el total anual.
totales_mensualesCompras y ventas por mes con el IVA ya calculado como en el F-07.
estadisticas_generalesTotales separados de compras y ventas: documentos, montos, IVA y proveedores.
calculo_ivaCuánto IVA toca pagar o qué remanente queda, con las reglas del F-07.
Los montos se devuelven en dólares. Hasta 120 llamadas por minuto por empresa; una clave filtrada se revoca en Conectores y se genera otra.
Todas las rutas viven bajo https://qontador.com/api/v1 y llevan la cabecera Authorization: Bearer qk_…. Los montos van en dólares con dos decimales; el IVA es del 13 %.
GET /api/v1/empresaComprueba la clave y devuelve la empresa, el NIT, si Hacienda está configurada y si el registro sin transmisión está activo.
POST /api/v1/ventasArma una Factura (01) o un Crédito Fiscal (03). Con el ajuste de empresa o con transmitir: false solo la registra. Idempotente por referencia.
GET /api/v1/ventas?referencia=Busca una venta por tu referencia, o lista las últimas emitidas por API con ?limit=.
GET /api/v1/ventas/{id}Estado del documento armado, para que lo revises antes de presentarlo.
GET /api/v1/ventas/{id}/pdfRepresentación gráfica del documento en PDF, para revisarla.
GET /api/v1/ventas/{id}/jsonEl JSON del documento armado, para revisarlo antes de presentarlo.
curl -X POST https://qontador.com/api/v1/ventas \
-H "Authorization: Bearer qk_TU_CLAVE" \
-H "Content-Type: application/json" \
-d '{
"referencia": "pedido-1042",
"tipoDte": "01",
"receptor": { "nombre": "Ana Pérez", "tipoDocumento": "13", "numDocumento": "01234567-8", "correo": "ana@ejemplo.com" },
"items": [
{ "descripcion": "Camisa de lino", "cantidad": 2, "precioUni": 25.00 },
{ "descripcion": "Envío", "tipoItem": 2, "cantidad": 1, "precioUni": 3.50 }
],
"precios": "con_iva",
"formaPago": "03",
"transmitir": false
}'Qontador arma la Factura y el Crédito Fiscal y prepara el F-07 y los libros para que los revises. Quien declara y presenta ante Hacienda eres tú o tu contador.
{
"id": "cm3x…",
"referencia": "pedido-1042",
"estado": "registrado",
"transmitido": false,
"tipo": "Factura",
"ambiente": null,
"numeroControl": "REG-01-pedido-1042",
"codigoGeneracion": "6F0A…",
"selloRecibido": null,
"totalPagar": 53.5,
"totalIva": 6.15,
"enlaces": {
"pdf": "https://qontador.com/api/v1/ventas/cm3x…/pdf",
"json": "https://qontador.com/api/v1/ventas/cm3x…/json",
"consultaPublica": null
}
}referenciaObligatoria. Tu identificador (número de pedido). Única por empresa.
tipoDte"01" Factura (por defecto) o "03" Crédito Fiscal.
receptornombre obligatorio. tipoDocumento 36 NIT, 13 DUI, 37 otro, 03 pasaporte, 02 carnet de residente; numDocumento, nrc, codActividad, descActividad, direccion {departamento, municipio, distrito, complemento}, telefono, correo. El CCF exige NIT, NRC, actividad y dirección.
items[]descripcion y cantidad obligatorias; precioUni, montoDescu, codigo, tipoItem (1 bien, 2 servicio), tipoVenta (gravada, exenta, noSujeta).
precios"con_iva" o "sin_iva": cómo vienen tus precios. Por defecto la Factura los toma con IVA y el CCF sin IVA.
formaPagoCAT-017: 01 efectivo, 02 tarjeta de débito, 03 tarjeta de crédito, 04 cheque, 05 transferencia, 08 dinero electrónico, 99 otros. O detalla pagos[] con codigo y montoPago.
respaldoFacturatrue para armar Factura cuando al CCF le falten datos del receptor, en vez de fallar. La respuesta lo avisa en aviso.
observacionesTexto libre que se guarda con la venta (hasta 3000 caracteres).
transmitirfalse registra la venta sin transmitirla, aunque el ajuste de la empresa esté apagado. Si lo omites, manda el ajuste: activo registra; apagado sigue el camino de emisión.
401Clave ausente, inválida o revocada.
400Cuerpo inválido; detalles dice qué campo.
409Faltan credenciales de Hacienda y la venta iba a emitirse. No se convierte en un registro: para registrar sin transmitir activa el ajuste o envía transmitir: false.
422Faltan datos para el Crédito Fiscal, o los montos no cuadran. observaciones trae el detalle cuando lo hay.
429Más de 60 ventas por minuto; espera lo que diga Retry-After.
201Venta registrada (estado registrado, transmitido false, selloRecibido null) o, en el camino de emisión, documento en estado procesado. Repetir la referencia responde 200.
202El camino de emisión dejó el documento pendiente. Consulta el estado por id. Quien presenta ante Hacienda eres tú o tu contador.
Buenas prácticas: guarda el id que te devolvemos, reintenta con la misma referencia si se cortó la conexión y nunca pongas la clave en código del lado del cliente. Si una clave se filtra, revócala en Conectores y genera otra.
Crea tu cuenta y genera tu clave de API. Qontador arma los documentos y el F-07 para que tú o tu contador los revisen. Soporte en hola@qontador.com.