Odoo no incluye factura electrónica para Costa Rica. Este módulo la agrega donde ya trabajás (contabilidad, ventas, la caja y la tienda en línea) y emite ante Hacienda al validar la factura. El módulo es gratis; se paga lo que emitís.
El armado del XML, la firma, la numeración y el envío ocurren del lado del servicio. El módulo mapea los datos de Odoo, emite y refleja el veredicto en la factura.
Son cuatro módulos que se instalan juntos: el de contabilidad y tres puentes que se activan solos si tenés Ventas, Punto de Venta o la tienda en línea. En Contabilidad → Ajustes pegás tu API key y su secreto y pulsás «Probar conexión»: ahí mismo se confirma el ambiente (pruebas o producción) y los permisos de la llave.
Cada línea del comprobante necesita un CABYS de 13 dígitos, y clasificar 5 000 productos de a uno no es viable. El CABYS se pone en la CATEGORÍA y lo heredan todos sus productos, incluidos los que crees después: cuarenta categorías cubren un catálogo grande. También se asigna en lote desde la lista de productos, con un buscador que consulta el catálogo del BCCR en vivo.
Los impuestos al 0% se clasifican a mano a propósito: exento, no sujeto y tasa cero valen todos cero y significan cosas distintas ante Hacienda.
Al validar la factura se revisa localmente lo que Hacienda va a rechazar (un CABYS que falta, una cédula mal formada, un impuesto sin mapear) y se bloquea con la lista completa de problemas, no de uno en uno. Son datos que la persona puede arreglar en el momento; emitir sin ellos es rechazo seguro y consecutivo gastado.
En una venta de la tienda en línea la validación es blanda: el dinero ya entró, así que la factura se contabiliza igual y queda marcada con el motivo.
La emisión ocurre al validar el asiento, no en un proceso nocturno: la API responde al instante con la clave de 50 dígitos y el consecutivo, y aparecen en la pestaña «Factura Electrónica» de la factura. La Idempotency-Key se deriva del identificador de tu base y del asiento, así que un reintento devuelve el resultado original en vez de facturar dos veces.
// POST /v2/efactura/documentsIdempotency-Key: odoo-8f3c21ab-4471-1{ "clave": "506…0123199999999","consecutivo": "00100001010000000123","estado": "enviado","tipo": "01" }// Sin internet: la factura se postea igual,// queda en «error» y se reintenta con un botón.
El veredicto llega por webhook cuando tu Odoo tiene una URL pública en https; si no, un proceso automático lo consulta cada cinco minutos. Al ser aceptado se adjuntan a la factura el XML firmado, la respuesta de Hacienda y el PDF. Un rechazado no se corrige: se reemite con un botón, con consecutivo nuevo, porque Hacienda no tiene «deshacer».
Imprimir devuelve el PDF de la plataforma desde que el comprobante existe, no desde que Hacienda lo acepta: el reglamento obliga a entregarlo igual.
No hay una pantalla aparte «de facturación electrónica»: cada documento sale del lugar de Odoo donde la operación ocurre de verdad.
| Documento de Odoo | Comprobante de Hacienda | Tipo |
|---|---|---|
| Factura de cliente con cliente identificado | Factura Electrónica | 01 |
| Factura de cliente sin identificación | Tiquete Electrónico | 04 |
| Venta en el Punto de Venta | Tiquete (04) o factura (01) | 04 · 01 |
| Nota de crédito o devolución de caja | Nota de Crédito | 03 |
| Nota de débito (asistente de Odoo) | Nota de Débito | 02 |
| Cliente fuera de Costa Rica | Factura de Exportación | 09 |
| Proveedor marcado «Emitirle factura de compra» | Factura de Compra | 08 |
| Cobro de una factura con condición 08 o 10 | Recibo Electrónico de Pago | 10 |
| Respuesta a un comprobante recibido | Mensaje de Confirmación | 05 · 06 · 07 |
Una cotización no es un documento fiscal. El puente de Ventas te adelanta qué comprobante saldría y qué datos le faltan, y recién emite cuando la venta se factura.
Solo lo llevan las condiciones que difieren el IVA al cobro (08 y 10). En una venta a crédito normal el IVA ya se declaró al facturar, así que no se emite de más.
Lo que corresponde del lado del receptor es el Mensaje de Confirmación, y se manda desde la bandeja de gastos con un clic.
Instalamos, configuramos la compañía y dejamos la primera factura aceptada por Hacienda antes de soltarte.
Te acompañamos con el CABYS por categoría, que es la parte que de verdad toma tiempo, y queda resuelta para siempre.
Es software libre y lo mantenemos nosotros: las actualizaciones del conector llegan sin costo.
Le escribís a una persona que conoce tu instalación, no a un formulario.
Sin localización de factura electrónica, Odoo se cae de la mesa en cualquier empresa costarricense. Con una sola cuenta emitís por las cédulas de todos tus clientes, cada una con su certificado, y el módulo lo instalás vos.
HablemosN empresas de clientes, cada una con su certificado y sus consecutivos.
LGPL-3: lo instalás, lo revisás y lo desplegás vos.
Baja con el volumen agregado de toda tu cartera.
El CABYS del catálogo es lo que de verdad cuesta; lo hacemos con vos.
Nada: es software libre (LGPL-3) y se descarga. Lo que se paga es el consumo de la plataforma (los comprobantes que emitís) y, si hace falta, el acompañamiento para clasificar el catálogo.
No. El SaaS de Odoo no permite instalar módulos propios. El conector corre en Odoo on-premise o en tu propia nube (odoo.sh y hospedajes con acceso a addons incluidos).
Odoo 19. Si estás en una versión anterior, contanos: la migración del conector es acotada, pero hay que hacerla.
Es exactamente el modelo: una sola cuenta con la que emitís por las cédulas de todos tus clientes, cada uno con su certificado. Escribinos y lo armamos.
La factura queda marcada con el motivo. Un rechazado carece de validez, así que no se corrige: se reemite con un botón y sale con consecutivo nuevo.
Se responden desde la bandeja de gastos con el Mensaje de Confirmación (aceptado, aceptado parcial o rechazado), que es lo que Hacienda espera del receptor.
Odoo es una marca registrada de Odoo S.A. No estamos afiliados a Odoo S.A.; el nombre y el logo se usan únicamente para identificar la plataforma con la que funciona este conector.