Xero
Ramsys → Xero Integration
Ramsys integrates with Xero by exporting completed sales as invoices with associated payments. This results in fully settled invoices being created in Xero at the point of export.
Under this model:
- Ramsys is responsible for both invoice creation and payment allocation
- Xero is used as the financial ledger and reconciliation system
- The resulting invoice is immediately marked as PAID
What Ramsys Sends to Xero
For each completed sale (or grouped cash sale batch, depending on configuration), Ramsys will:
- Create an Accounts Receivable (ACCREC) invoice
- Populate all line items from the sales transaction
- Set invoice status to AUTHORISED
- Create one or more Payment records against the invoice via the Xero /Payments endpoint
- Allocate payments to the selected Xero bank account(s)
Payment Handling
Ramsys posts payments directly to Xero at the time of invoice creation.
- Payments are allocated to the default bank account configured in Xero integration settings
- The invoice is immediately updated to PAID
- Payment amount equals the invoice total (fully settled sale)
Split Payments (Advanced)
Ramsys supports splitting a single sale across multiple Xero bank accounts.
For example:
- Cash portion → Cash clearing account
- EFTPOS portion → Merchant clearing account
- Other tender types → mapped accounts
Each split is posted as a separate payment record linked to the same invoice.
What Happens in Xero
Once received:
- The invoice is created as an ACCREC document
- One or more payments are applied to the invoice
- The invoice status becomes PAID
- The transaction is immediately reflected in bank reconciliation workflows
Important Behaviour: Idempotency & Duplicate Prevention
Ramsys uses an idempotent transmission model when sending invoices and payments to Xero.
This means:
- Each sale is uniquely identified before export
- Reprocessing the same transaction will not create duplicate invoices or duplicate payments
- Xero will return existing references where applicable
⚠️ Critical Xero Behaviour Notes
- Payments must always reference an AUTHORISED invoice
- Once fully paid, an invoice cannot accept additional payments
- Attempting to reprocess an already settled transaction may result in validation errors if not correctly guarded by Ramsys
- Xero enforces strict accounting integrity to prevent duplicate financial entries
Operational Implications
- Ramsys controls both invoice creation and payment posting
- Xero acts as the financial system of record
- Sales are considered fully settled at time of export
- Bank reconciliation in Xero will typically match posted payments automatically
Summary
- Ramsys exports invoices and payments
- Xero records fully paid invoices on import
- Split payments are supported via multiple bank accounts
- Duplicate prevention is handled via idempotent transaction logic
- This ensures immediate financial consistency between POS and accounting system