What gets posted and when
| Event | What is posted | Notes |
|---|---|---|
| An order is invoiced | Sales invoice | One per order, or one per day — see invoicing strategies |
| An order edit increases what is owed | Supplementary invoice | Linked to the original; the first is not rewritten |
| An order edit reduces what is owed | Credit note | As above |
| A return or refund | Credit note | |
| Stock is sold and leaves | COGS journal | Account resolved later if configuration is missing |
| A delivery is received | Goods-receipt valuation journal | Inventory up, goods received not invoiced up. Held if it cannot be built |
| A supplier invoice is recorded | Supplier bill | Held if it cannot be built |
The two held kinds
The goods-receipt valuation journal and the supplier bill are the entries kept and replayed when a connection or ledger code is missing. Both come from real events that already happened in the warehouse, which is why losing them mattered enough to build the mechanism. See hold, don't drop.
Where the account comes from
| Entry | Account |
|---|---|
| Sales invoice | Your organisation's default revenue account |
| Goods-receipt valuation journal | Configured accounts for inventory and goods received not invoiced |
| Supplier bill | Configured expense accounts |
| COGS journal | Configured, resolved at the point the entry can be completed |
Sales revenue uses the organisation default. Per-variant accounting categories are not yet wired into sales posting, so a variant's category does not currently split its revenue to a different account. See accounting categories.
What is not posted from here
Intercompany settlement posts its own documents between trading organisations — see intercompany settlement.
Operator settlement periods never reach an accounting system at all.
Timing
Posting follows the event rather than a schedule. An entry is built when the event happens and queued immediately; how quickly it lands depends on the outbox and the provider, not on a nightly run.
The one thing that does run nightly is the sweep re-attempting held entries — the ones that could not be built. See post statuses.