Document types
Factura de Compra
Emití Facturas Electrónicas de Compra (tipo 08) para respaldar compras a proveedores del exterior o que no emiten comprobantes electrónicos.
This content is not available in your language yet.
La Factura Electrónica de Compra (document_type: "08", FEC) respalda una compra cuando el proveedor no te puede dar un comprobante electrónico de Hacienda. La emitís vos, el comprador, para que el gasto quede documentado.
Casos típicos:
- Proveedores del exterior: suscripciones de software, publicidad en línea, servicios en la nube, compras a empresas sin presencia en Costa Rica.
- Proveedores locales no inscritos: personas que no son contribuyentes y te venden un bien o un servicio ocasional.
Los roles se invierten
Sección titulada «Los roles se invierten»En una FEC, el emisor (issuer) es el proveedor que te vendió y el receptor (receiver) sos vos. Como el comprobante lo firma tu certificado, Hacienda exige que la identificación del receptor sea la tuya (error -60).
| Bloque | Quién es | Reglas |
|---|---|---|
issuer |
El proveedor | Acepta los tipos 05 (Extranjero No Domiciliado) y 06 (No Contribuyente), exclusivos de la FEC, con identificación de hasta 20 caracteres |
receiver |
Tu organización | Obligatorio, con tu cédula, activity_code, correo y dirección |
Aster verifica que receiver.id sea la cédula de la organización de tu llave; si no coincide, responde 422 organization_mismatch. Si enviás tu propia clave, las posiciones 10 a 21 deben ser tu cédula (el receptor), no la del proveedor; si no, la respuesta es 422 fec_clave_id_mismatch.
Qué la distingue
Sección titulada «Qué la distingue»| Campo | Regla en la FEC |
|---|---|
document.activity_code |
Opcional |
receiver.activity_code |
Obligatorio: tu actividad económica |
issuer.address |
Obligatorio para proveedores locales; no se exige para los tipos 05 y 06 |
issuer.foreign_address |
Obligatorio con issuer.type: "05" (Hacienda -505); solo existe en la FEC |
issuer.email |
Opcional |
reference |
Obligatorio: el documento del proveedor que respalda la compra |
items[].tax |
Al menos un impuesto por línea. Si la compra no está sujeta a IVA, usá rate_code: "11" con rate: 0 |
El bloque reference
Sección titulada «El bloque reference»La FEC referencia el documento que te dio el proveedor: su factura, recibo o contrato.
| Campo | Valor habitual |
|---|---|
document_type |
16 (comprobante de proveedor no domiciliado) para proveedores del exterior; 99 con type_other para otros respaldos |
number |
El número de factura del proveedor, hasta 50 caracteres |
date |
La fecha de la factura del proveedor |
code |
04 (referencia a otro documento) |
reason |
Una descripción breve |
El tipo de referencia 16 solo es válido en la FEC.
Ejemplo: suscripción a un software de Estados Unidos
Sección titulada «Ejemplo: suscripción a un software de Estados Unidos»La ferretería paga en dólares, con tarjeta, una suscripción mensual a un sistema de inventario en la nube para 5 usuarios.
{ "document": { "document_type": "08", "date": "2026-10-08T09:30:00-06:00", "situation": "1", "branch": "001", "terminal": "00001" }, "commercial_info": { "currency": "USD", "exchange_rate": 506.40, "sale_condition": "01", "payment_method": "02" }, "issuer": { "type": "05", "id": "0000981234567", "name": "Northwind Cloud Inc.", "email": "billing@northwindcloud.example", "foreign_address": "500 Howard Street, San Francisco, CA 94105, Estados Unidos" }, "receiver": { "type": "02", "id": "3101654321", "name": "Ferretería La Sabana S.A.", "email": "facturas@ferreterialasabana.cr", "phone": "22905511", "activity_code": "475201", "address": { "province": "1", "canton": "08", "district": "01", "details": "Del Más x Menos 200 m sur" } }, "items": [ { "line_number": 1, "cabys_code": "8315200000200", "quantity": 5, "unit": "Os", "description": "Suscripción mensual a software de inventario en la nube, octubre 2026", "price": 12.00, "tax": [ { "type": "01", "rate_code": "08", "rate": 13 } ] } ], "reference": { "document_type": "16", "number": "INV-2026-104477", "date": "2026-10-01T00:00:00-06:00", "code": "04", "reason": "Factura del proveedor no domiciliado" }}| Concepto | USD |
|---|---|
| 5 × 12,00 | 60,00 |
| IVA 13 % | 7,80 |
| Total | 67,80 |
Los montos van en la moneda del documento (USD); exchange_rate es el tipo de cambio a colones. Ver moneda extranjera.
curl https://aster.astranexo.com/api/v1/electronic-documents \ -H "Authorization: Bearer aster_test_8KfQ2mVx3TzL9pRw" \ -H "Content-Type: application/json" \ -H "X-Idempotency-Key: fec-northwind-104477" \ --data @factura-compra.json{ "success": true, "message": "Document submitted for processing.", "data": { "id": 340, "document_key": "50608102600310165432100100001080000000023171530248", "consecutive_number": "00100001080000000023", "document_type": "08", "document_type_name": "Factura Electrónica de Compra", "status": "processing", "environment": "staging", "queued_at": "2026-10-08T15:30:01Z" }}La clave lleva tu cédula (003101654321, posiciones 10 a 21), no la del proveedor.
Proveedor local no inscrito
Sección titulada «Proveedor local no inscrito»Para un proveedor costarricense que no es contribuyente, usá issuer.type: "06" con su número de identificación, y enviá su dirección en issuer.address si la tenés. El resto del cuerpo es igual.
{ "type": "06", "id": "206540321", "name": "Carlos Vargas Rojas", "address": { "province": "2", "canton": "01", "district": "01", "details": "Barrio San José, casa 14" }}Compras con fecha pasada
Sección titulada «Compras con fecha pasada»Podés emitir una FEC por una compra de días o meses atrás: enviá la fecha real en document.date. Hacienda la acepta con la observación -16 (extemporáneo), que no es un rechazo. Solo se rechazan las fechas futuras (-53).
Notas sobre una FEC
Sección titulada «Notas sobre una FEC»Para corregir una FEC, emití una nota de crédito con reference.document_type: "17" o una nota de débito con "18". Igual que en la FEC, el receptor de la nota sos vos. Ver nota de crédito.
Errores que Aster detecta antes de firmar
Sección titulada «Errores que Aster detecta antes de firmar»| Situación | Código de Hacienda |
|---|---|
receiver.id no es la cédula de tu organización |
-60 (Aster responde organization_mismatch) |
| Clave propia con la cédula del proveedor | -60 (Aster responde fec_clave_id_mismatch) |
Proveedor tipo 05 sin foreign_address |
-505 |
Falta reference |
— |
Falta receiver.activity_code |
— |
| Fecha de emisión en el futuro | -53 |
Ver errores.