Dijit.app Dijit.app Documentation

Documentation/ ERP integrations/ ICG

Delivery notes and supplier invoices straight into ICG

Dijit.app posts delivery notes and purchase invoices straight into ICG: numbering by series, taxes, supplier discounts and the due date in the cash ledger, exactly as they would look if somebody keyed them by hand in the application itself. Where an invoice carries the supplier's delivery note numbers, it links them too, just as ICG does when a delivery note is invoiced from inside.

Several entities at once

One integration serves each entity's database, each with its own user and its own defaults.

It leaves no half-written documents

Before anything is written it checks that the items exist and that the supplier has a nominal account. If something is missing, the whole document is rejected.

Invoices linked to their delivery notes

If the invoice carries the supplier's delivery note numbers, each is found and marked as invoiced.

It does not guess

Taxes, descriptions and discounts are read from the ERP. The connector creates no suppliers, items or VAT rates.

What it does

What the connector does

Purchase document Delivery note or invoice Dijit.app Finds the supplier and its items in ICG Checks every item exists Works out the series' next number Applies the discount agreed with the supplier What it cannot settle, it stops with its reason ICG Delivery note or invoice created Taxes and due date in the cash ledger Linked to its delivery notes if it is an invoice in the right series and entity It is a running service, not a file importer: it works document by document and returns the number ICG has given each one. A document that fails does not drag the rest of the sending down with it.

Searching suppliers and items

Before sending anything, you can search by name, tax number, description or supplier reference to match the data against ICG's codes.

Items validated before anything is written

It checks in one pass that every item on the lines exists in the master. If any is missing, the whole document is rejected without touching the database.

Numbering consistent with ICG

The number is taken from the series' official counter or from the highest already in the table, whichever is greater: it does not collide with documents created by hand.

The supplier's discount wins

If the supplier has an agreed discount on their record, it takes precedence over whatever the document's line carries.

Taxes and cash ledger automatically

The breakdown by VAT rate and the payment due date are generated from the supplier's nominal account and payment method.

Invoices linked to their delivery notes

The supplier's delivery note numbers the invoice covers are found and marked as invoiced, exactly as when invoicing from inside ICG.

Several entities, each with its own credentials

Each entity connects with its own database user and with whatever permissions belong to it.

Sendings kept apart

A document that fails does not affect the others in the same sending: each gets its own result.

Several entities

Several entities at once

A group of companies usually has one ICG database per entity. The integration serves them all from a single point: each sending says which entity it should work on, and the right connection is resolved at that moment, with its own user and its own defaults for series, warehouse and expense account.

There is no shared state between sendings that could mix one entity's data with another's: the entity is declared on every request, and a sending with no entity is refused at once.

Adding a new entity is a configuration job, not another deployment to maintain.

How it connects

How it connects

The integration writes straight into ICG's database. The documents it creates are ordinary delivery notes and purchase invoices: they are seen, posted and reported exactly like the ones your team keys by hand.

Access and security

The document's journey

How each document is processed

A document is written in several steps and the order matters, because each depends on what the one before produced.

Purchase delivery note

Integrity rule. Items are validated before the header is recorded: it stops an unknown item on one line leaving a half-written delivery note in ICG for somebody to delete by hand.

Purchase invoice

It follows the same path as the delivery note, numbering, header, lines, taxes, with one particularity: it can include the supplier's delivery note numbers that it covers. Each is found among that supplier's delivery notes, marked as invoiced and given the reference to the invoice, just as when a delivery note is invoiced from within the application itself.

The search is always narrowed to the invoice's supplier, because a delivery note number is only unique within one supplier. If no match turns up, or more than one does, that delivery note is left alone and the reason recorded: linking the wrong delivery note is worse than not linking it. An invoice with no delivery notes is processed the same way, with no links.

If the invoice is recorded but some delivery note cannot be linked, the sending is treated as successful and says which delivery notes were left outstanding. Sending the invoice again would duplicate an accounting document; the link, by contrast, can be redone by hand.

Business rules

Business rules

These are the decisions the connector takes in translating a document into ICG's model. They explain differences between what was sent and what appears in the ERP.

RuleBehaviour
NumberingThe series' official counter or the highest existing in the table, whichever is greater, so as not to collide with documents created by hand.
The line's taxTaken from the ERP's item master, not from the incoming document.
The breakdown's taxIt finds the rate whose percentage matches the breakdown sent. Faced with several candidates, it takes the lowest, deterministically.
The line's descriptionOverwritten with the item's official description in ICG.
Line discountThe discount agreed with the supplier, where there is one, takes precedence over the document line's.
RoundingNet amounts and tax are rounded to two decimals, and each rate's total is recalculated already rounded.
Supplier or item with no referenceThe defaults set at go-live are used.
Cash ledgerThe due date is generated from the nominal account and payment method on the supplier's record. With no nominal account, the document is not treated as successful.

General principle. Where the incoming document and the ERP's master disagree on something ICG considers its own, taxes, descriptions, supplier discounts, the ERP wins. The connector does not alter masters.

Results

Results and errors

Every document sent produces its own result: how many went in, which did not and why. The ones that fail stay in the list with their reason, and the list refreshes either way.

What you seeWhyWhat to do
Supplier ID missing in ICG The supplier's record has no reference. Fill it in on the supplier master.
Every document from one supplier fails It is the same value missing from their record. Correct the record once and send them all again.
The ERP badge shows a dash on several lines Items are still to be assigned. Assign them from the assignment dialogue.
A whole line fails with "item has no purchase tax" The item has no VAT rate set in ICG. Fill it in on the ERP's item master.
An invoice does not link one of its delivery notes The number does not appear, or appears more than once, among that supplier's. The invoice is recorded anyway; check and link that delivery note by hand if needed.
The whole sending fails with a connection error A problem reaching the ICG database. Try once more; if it persists, go over the parameters with whoever administers the ERP.
A reference code already set has to be corrected The wrong item was assigned. Use that line's additional information dialogue.

Going live

Going live

Going live is a short list. Almost all of it is confirming what already exists in ICG, rather than building anything new.

Scope

What it does today and what it does not

What it covers

What it does not do

↑ Back to top

Last reviewed: 11 September 2026 · The Dijit.app team