Home › Electronic invoicing › Hacienda E-Invoicing 4.4 in Odoo

Hacienda · version 4.4

Hacienda E-Invoicing 4.4 in Odoo

Version 4.4 wasn't a format change: it changed what information you need to have in order before you can invoice. That's where implementations get stuck.

We treat electronic invoicing for Hacienda (Costa Rica's tax authority) for what it is: a project with its own schedule, its own testing and its own critical path. Not a box you check in the last week.

The principle that prevents 80% of the problems

The electronic tax document must come from the same sale that moves inventory and generates the journal entry. When it lives in a separate tool, the company ends up with two versions of the truth and someone who reconciles them every month — and always finds differences.

The pieces a serious implementation has to cover

CABYS classification

CABYS is Costa Rica's goods-and-services catalog. Every line carries its code, and the tax treatment depends on it. It is the most time-consuming task and the one you have to start first.

Document types

Invoice, receipt (tiquete), credit and debit notes, purchases, exports and the electronic payment receipt. Each with its own numbering and its own effect.

Visible statuses

Issued, accepted, rejected, voided — on the sales document, not hidden in a technical log that only the consultant looks at.

Confirmation messages

The response to electronic tax documents received from suppliers, matched against the order and the receipt.

Contingency

What the company does when the service is down, and how it catches up afterward without breaking the numbering.

Numbering per branch

Each point of issue with its own fiscal document numbering, consistent with the accounting journal and the corresponding warehouse.

Where projects get stuck

  1. Starting CABYS classification late. It is work for the business and its accountant, and it takes weeks with large catalogs. It has to start on day one.
  2. Leaving credentials for the end. The cryptographic key and the taxpayer's access credentials involve paperwork, and paperwork takes time.
  3. Not testing rejections. Everyone tests that the invoice goes through. Almost nobody tests what happens when it fails — which is when the system really shows what it's worth.
  4. Ignoring received documents. The obligation to confirm what comes in from suppliers catches many companies by surprise after go-live.
  5. Poorly designed numbering. When there are several branches or terminals, the numbering has to be designed up front, not patched afterward.

Always verify the current resolution and its deadlines with the Ministerio de Hacienda or your tax advisor before planning. Requirements and format versions get updated, and no website — this one included — replaces the official source.

Why the details matter more than they seem to

A rejected invoice is not a technical problem: it is a sale you can't collect, a customer who calls and an entry that doesn't balance. That's why the part of the project that deserves the most attention isn't the happy-path issuance, but everything around it — the statuses, the retries, the contingency, the traceability of what was sent and what Hacienda responded.

That traceability is also what turns a three-day dispute into a three-minute lookup.

If you are evaluating the full project, start with Odoo in Costa Rica, and if you want an investment range with electronic invoicing included, use the calculator.

Frequently asked questions

What changed with version 4.4?

More than the number suggests. The electronic payment receipt was added to document collection on credit sales, CABYS catalog validations per line were tightened, and the level of detail required to break down taxes, exemptions and other charges changed. In practice, it forces you to have your product catalog and tax treatment in order before you issue documents, not after.

What is CABYS and why does it make things so complicated?

It is the official catalog of goods and services, and every line of every electronic tax document must carry its code. It complicates things because it forces you to classify your entire product catalog, and that classification determines the tax treatment. It is work for the business and its accountant, not for the systems consultant, and it is best to start it on day one of the project because it is usually the critical path.

What happens if Hacienda rejects an electronic tax document?

The system has to log the rejection with its reason, leave the document in a status the sales team can see, and allow you to correct and resend it without breaking the fiscal document numbering. An implementation that does not explicitly model rejections produces ghost documents and mismatches that surface at month-end close.

Do you have to respond to the electronic tax documents you receive?

Yes. Documents received from suppliers require a confirmation message — acceptance, partial acceptance or rejection — within the deadline. It is an obligation many companies discover late, and it is best automated against the purchase order and the receipt instead of being left as a manual accounting task.

What happens when Hacienda's service is down?

You need to be able to keep selling. The implementation must provide for contingency mode and for resending the backlog afterward, with consistent numbering. It is the scenario nobody tests until it happens on a Friday at month-end.

Keep reading

Let's start by understanding your operation

A 30-minute conversation is enough to know whether Odoo, automation or an integration solves your problem — and what it would cost to do it right.