Implementation
See the corresponding how-to article for API usage and step-by-step instructions:Implementation Requirements
1. Determine Expense Date (source date)
Use the expense transaction date provided in the Export Item as the source date:- Expense date =
dateof the Export Item
2. Determine posting date (date sent to the Accounting System)
The posting date is the date your integration will send to the Accounting System when creating the corresponding entry:- Posting date = the date you post with (often starts as
date)
3. Closed period handling (integration configuration)
The Export API does not provide a closed-period adjustment setting. If your integration needs to support posting expenses that fall into closed periods, you must implement this as an integration configuration. Behaviour:- Attempt to post using:
postingDate = exportItem.date - If the Accounting System rejects the posting because the period is closed, apply the configured strategy.
Recommended configuration options
-
If Closed period date adjustment is enabled in the integration:
- When the Accounting System rejects the posting date due to a closed period, apply the configured adjustment strategy. Common strategies include:
- Set
postingDate = exportDate(i.e., “today”) - Move
postingDateto the next open period (per Accounting System rules)
- Set
- When the Accounting System rejects the posting date due to a closed period, apply the configured adjustment strategy. Common strategies include:
-
If Closed period date adjustment is disabled:
- Attempt to post using the original Export Item transaction date (
postingDate = exportItem.date) - If the Accounting System rejects closed periods, mark the Export Item as failed with a clear error (e.g., “Closed accounting period”)
- Attempt to post using the original Export Item transaction date (
4. Assign accounting period (Accounting System responsibility)
The integration must:- map the posting date to the correct Accounting System period
- rely on Accounting System logic when periods are custom or fiscal-based
5. Custom accounting periods (non-calendar fiscal structures)
If the Accounting System uses non-calendar periods:- use Accounting System APIs and/or configuration to resolve the correct period for
postingDate - ensure exported entries align with the system’s fiscal structure (do not assume Jan–Dec)
6. Optional: Service period (for accrual/amortisation)
IfexportItem.servicePeriod is present, it indicates the time range the cost relates to (common for invoices). It can be used by the Accounting System to allocate costs across periods (accruals), but it does not change closed-period handling by itself.
Processing Order
Accounting period assignment occurs within the export workflow:Upstream Dependencies
- Export Job has been claimed (status = in_progress)
- Fetch Export Item Data (data layer)
- Bookkeeping method resolved
- Accounts Mapping – determines which GL accounts are debited and credited
- Data Mapping – ensures amounts, dates, dimensions, identifiers, and VAT/tax information are recorded correctly
- Attachment Handling – links receipts and supporting documentation
Downstream Dependencies
- Posting Behaviour – determines whether entries are created as drafts or finalised
- Export Item status update – updates outcome of Export Item (
successfulorfailed) - Export Job status update – updates outcome of Export Job (
completed,completed_with_errorsorfailed)