Sage 200
Keep Sage 200 in step with your orders, stock and finance, with the right person approving every posting.
30 ways to read, 13 ways to write, each write switched on by you.
Quality checks
Built and tested with example responses.
- Ready to connect: doneEvery listed action is built in.
- Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Connected, approved, proven.
The things teams do most with Sage 200, an example flow with a person in the loop, and what Nexra keeps as proof.
Top actions
- Create customerApproval by rule
- Create nominal codeApproval by rule
- List bank transactionsRead
Example flow
- Sage 200 · List bank transactionsDone
- Sage 200 · Create customerNeeds approval
- Nexra · Record the decision and result in the evidence chainProven
Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches Sage 200.
What gets logged
- Whether it ran on its own or who approved it, and under which rule
- A fingerprint of the exact request sent to Sage 200
- Sage 200's reply: what it created or changed
- One entry in the evidence chain, linked to the one before
Try this in the sandbox
Run the whole flow with test data in your sandbox, then connect your own account when you are ready to go live.
For developers
Technical detail
Read and write Sage 200 customers, suppliers, products, sales orders, quotes, purchase orders and nominal codes; read stock, ledger transactions and tax codes.
Sage API docs- Source actions
- 30
- Destination actions
- 13
- Data types
- 21
What you can map
Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.
Bank transactions1
- List bank transactionsSourceIncremental
Posted cash book entries (bank posted transactions): receipts, payments and transfers, with the statement date each was reconciled to. Ordered by id, optionally updated since a time.
Credit notes1
- List credit notesSourceIncremental
Posted customer credit notes (sales ledger transactions of type Credit Note). Ordered by id, optionally updated since a time.
Customer payments1
- List customer paymentsSourceIncremental
Posted sales receipts (sales ledger transactions of type Sales Receipt). Ordered by id, optionally updated since a time.
Customers4
- Create customerDestinationProvider duplicate protectionApproval before production
Creates a customer account with main address and contacts.
- Get customerSource
One customer by id.
- List customersSourceIncremental
Customers ordered by id, optionally updated since a time.
- Update customerDestinationProvider duplicate protectionApproval before production
Updates supplied customer fields with PUT.
Nominal codes4
- Create nominal codeDestinationProvider duplicate protectionApproval before production
Creates a nominal (GL) account for a cost centre and department.
- Get nominal codeSource
One nominal code by id.
- List nominal codesSourceIncremental
Nominal codes ordered by id, optionally updated since a time.
- Update nominal codeDestinationProvider duplicate protectionApproval before production
Updates the name, report category or manual journal setting of a nominal code.
Nominal transactions1
- List nominal ledger transactionsSource
Nominal ledger transactions ordered by id.
Products4
- Create productDestinationProvider duplicate protectionApproval before production
Creates a stock item in a product group.
- Get productSource
One product by id.
- List productsSourceIncremental
Products ordered by id, optionally updated since a time.
- Update productDestinationProvider duplicate protectionApproval before production
Updates supplied product fields with PUT.
Purchase invoices1
- List purchase invoicesSourceIncremental
Posted purchase invoices (purchase ledger transactions of type Invoice). Ordered by id, optionally updated since a time.
Purchase orders4
- Create purchase orderDestinationNot retried automaticallyApproval before production
Creates a purchase order with lines; authorisation rules in Sage 200 still apply.
- Get purchase orderSource
One purchase order by id.
- List purchase ordersSourceIncremental
Purchase orders ordered by id, optionally updated since a time.
- Update purchase orderDestinationProvider duplicate protectionApproval before production
Updates purchase order header fields with PUT. Lines are not changed.
Purchase transactions2
- Get posted purchase ledger transactionSource
One posted purchase ledger transaction by id.
- List posted purchase ledger transactionsSourceIncremental
Posted purchase ledger transactions ordered by id, optionally updated since a time.
Sales invoices1
- List sales invoicesSourceIncremental
Posted sales invoices (sales ledger transactions of type Invoice). Ordered by id, optionally updated since a time.
Sales orders4
- Create sales orderDestinationNot retried automaticallyApproval before production
Creates a sales order with standard, free-text, charge or comment lines.
- Get sales orderSource
One sales order by id.
- List sales ordersSourceIncremental
Sales orders ordered by id, optionally updated since a time.
- Update sales orderDestinationProvider duplicate protectionApproval before production
Updates sales order header fields with PUT. Lines are not changed.
Sales quotes3
- Create sales quoteDestinationNot retried automaticallyApproval before production
Creates a sales quote with lines.
- Get sales quoteSource
One sales quote by id.
- List sales quotesSourceIncremental
Sales quotes ordered by id, optionally updated since a time.
Sales transactions2
- Get posted sales ledger transactionSource
One posted sales ledger transaction by id.
- List posted sales ledger transactionsSourceIncremental
Posted sales ledger transactions ordered by id, optionally updated since a time.
Sites1
- List sites and companiesSource
Sites and companies the signed-in Sage ID can access, with the X-Site and X-Company values.
Stock levels1
- List stock levels (warehouse holdings)SourceIncremental
Stock levels (warehouse holdings) ordered by id, optionally updated since a time.
Suppliers4
- Create supplierDestinationProvider duplicate protectionApproval before production
Creates a supplier account with main address and contacts.
- Get supplierSource
One supplier by id.
- List suppliersSourceIncremental
Suppliers ordered by id, optionally updated since a time.
- Update supplierDestinationProvider duplicate protectionApproval before production
Updates supplied supplier fields with PUT.
Tax codes1
- List tax codesSource
Tax codes ordered by id.
Vendor credit notes1
- List vendor credit notesSourceIncremental
Posted supplier credit notes (purchase ledger transactions of type Credit Note). Ordered by id, optionally updated since a time.
Vendor payments1
- List vendor paymentsSourceIncremental
Posted purchase payments (purchase ledger transactions of type Purchase Payment). Ordered by id, optionally updated since a time.
Warehouses1
- List warehousesSource
Warehouses ordered by id.
Access and limits
- Authentication
- Sage ID OAuth 2.0 (authorization code with offline access)
- Plans and access
- Sage 200 Standard (cloud) or Sage 200 Professional with the API enabled. API credentials come from the Sage 200 API Developer Programme. The Sage ID that authorises Nexra must be mapped to a Sage 200 user; that user's company and feature access decide what the API returns.
- Test environment
- Use a test company on a Sage 200 site; Sage does not provide a public sandbox.
- Rate limits
- No published per-request limit. $top returns up to 500 records by default and up to 5,000 on releases after February 2019.
- Pagination
- $top and $skip with $orderby id (up to 500 per page here).
- Provider events
- The Sage 200 API does not document outbound webhooks. Flows run on demand, on a schedule, or when a scheduled check finds new or changed records.
Before you build a flow
- Sales and purchase invoices, credit notes, receipts, payments, allocations, bank entries and nominal journals post to the ledger immediately, so they are read only or excluded; Sage 200 offers no draft invoice endpoint.
- Deletes, order cancellation, despatch confirmation, stock allocation and stock transfers are not automated.
- Order updates change header fields only; line amendments are not exposed.
- Refresh tokens rotate and expire at the end of the refresh window (1 to 90 days from the first sign-in); the customer must sign in again after that.
- Reconciliation reads are filtered views of posted transactions, because Sage 200 has no read endpoint for invoices, credit notes, receipts or payments themselves: sales_invoices, credit_notes and customer_payments read the sales ledger, purchase_invoices, vendor_credit_notes and vendor_payments read the purchase ledger, and bank_transactions reads cash book entries. Posted transactions carry no currency code (amounts are in the customer's, supplier's or bank's currency; read it from the account), so currency is empty.
- Nominal (journal) transactions have no last-updated time in the Sage 200 API, so nominal_transactions filters by transaction date instead of offering a since-last-run read.
- Endpoint coverage follows the Sage 200 Professional reference; Sage 200 Standard exposes the same resources but some fields depend on enabled modules.
Developer reference
- Create the Sage credentials described above with the narrowest permissions your flows need.
- In Nexra, open Connect, then Connections, then New connection, choose Sage 200, enter its settings and credentials, and tick only the write actions you need. Connection guide
- Test the connection, then use its actions as flow sources and destinations. Flow guide
Machine-readable detail: GET /api/public/connect/connectors/sage-200 and the Connections API.