Magento 2 → Sage Accounting. Hands-off.
Invoices, credit notes, customers, products, payments — synced from Magento into Sage Business Cloud Accounting within minutes. Multi-currency aware. Per-currency contact dedup. Cross-border tax routing. Full audit trail per sync run. We host the connector — you install a thin Magento module and forget about it.
Five Magento entity events flow into Sage automatically — with full idempotency, retry, and audit on every step.
Invoices + payments
Magento invoices land in Sage as outstanding AR the moment they're raised. invoice.paid attaches a contact_payment + allocation against the matching Sage invoice automatically. B2B net-terms flows leave invoices UNPAID for manual reconciliation.
Credit notes
Magento credit memos sync as Sage credit notes with original-invoice linkage. Offline-payment refunds (no parent invoice) handled. Same per-line discount + per-line tax invariants as invoices.
Multi-currency aware
Magento orders raised against EUR / USD / GBP storefronts post to Sage with the correct currency_id + exchange_rate. Per-currency contact dedup means one merchant gets one Sage contact per transaction currency. Cross-border invoices route to GB_ZERO.
See sync status without leaving the Magento admin you already live in.
Sage Status chip on grids
Sortable + filterable Sage Status column on Sales → Invoices and Sales → Credit Memos. Pending / Synced / Skipped / Failed chips with hover tooltips for the underlying Sage reference, skip-reason, or error code.
Detail-page info block
Every Invoice and Credit Memo detail page gets a Sage Accounting info block beside Order Information — chip, Sage entity reference, last sync timestamp, skip / error context.
Dead-letter banner
Failed deliveries surface as a banner on the admin config page — operator-visible without log diving. Per-row retry from the ledger dashboard re-enters the queue cleanly.
The Magento module is thin by design. The heavy lifting lives in the hosted ledger — so you never patch your connector.
No OAuth in PHP
Sage OAuth lives entirely in our hosted ledger SaaS. Magento never talks to api.accounting.sage.com directly — no client secret on disk, no token rotation logic on your server, no breaking-API patches to ship.
Pairing-code Connect
Generate a 30-min pairing code in your Magento admin, paste it into ledger.byte8.io, and the chassis handshakes back in. No callback URL wrangling, no app secret on disk.
Centrally-patched
Sage API breaks? We patch the chassis and every connected merchant gets the fix. Eight Sage v3.1 quirks already catalogued and worked around — your invoice flow stays green through API drift.
60 seconds to live sync.
composer require byte8/magento-sage-accounting · run setup:upgrade · pair with ledger.byte8.io.