Back

Sage 50 Accounting API Essential Guide

Aug 11, 20246 minute read

What type of API does Sage 50 Accounting provide?

Sage 50 US (Quantum) does not have a built-in REST or web service-like API. The options for integrating with Sage 50 US are:

  1. Write your own layer of code
  2. Use third-party solutions that provide API access
  3. Use the Sage 50 SDK (Software Development Kit)

While not specifically for Sage 50, Sage does offer a RESTful API for their Sage Business Cloud Accounting product. Key points about this API include:

  • It is a RESTful API
  • It uses OAuth 2.0 for authentication
  • It provides access to various accounting functions like chart of accounts, contacts, transactions, etc.
  • It supports both JSON and XML data formats

Does the Sage 50 Accounting API have webhooks?

Based on the search results provided, I do not have enough information to definitively answer whether the official Sage 50 Accounting API has webhooks or what specific events can be subscribed to. The search results do not contain any information about Sage 50 Accounting's API capabilities.

However, I can provide some general information about Sage APIs and webhooks based on the search results:

Key points:

  1. Some Sage products do offer webhook functionality, but the specific capabilities vary by product.

  2. Sage People provides webhooks for employee-related events like when an employee is created, updated or deleted.

  3. Sage Banking Service offers notifications via webhooks for events like bank account creation.

  4. Sage Intacct has an API that supports webhooks, allowing real-time notifications of data changes.

Conclusion:

While some Sage products do offer webhook functionality, I don't have specific information about Sage 50 Accounting's API capabilities regarding webhooks. To get accurate information about Sage 50 Accounting API's webhook support and available events, you would need to consult the official Sage 50 Accounting API documentation or contact Sage support directly.

Rate Limits and other limitations

Here are the key points about the API rate limits for the Sage 50 Accounting API:

Rate Limits

  • Rate limit of 1,296,000 requests per app per day [1][2]
  • Maximum of 150 concurrent requests at any time (per app) [1][2]
  • Limit of 100 requests per minute per company [4]
  • Limit of 2,500 requests per day per company [4]

Exceeding Limits

  • If rate limits are exceeded, the API will return a HTTP 429 error response [1][2]
  • If the 100 requests/minute limit is exceeded, the IP address will be blocked for 1 hour [4]

Best Practices

  • It is advisable to make no more than one request per second to avoid hitting limits [4]
  • Implement wait and repeat functionality to handle 429 responses [1][2]
  • Queue requests to control rate limits [1]

Other Limitations

  • Maximum 100MB data transfer in any 60 minute period (per Sage Accounting business) [3]
  • Limit of 20 failed login attempts per hour through the API [4]

Fair Usage Limits

The API has fair usage limits per company for things like number of customers, suppliers, invoices, etc. [4]

Key Considerations

  • Rate limits are set per app, not per business [1]
  • Some API calls are "heavier" and should be used sparingly to avoid performance issues [4]
  • Accounts are temporarily blocked if limits are exceeded, but automatically unblocked within an hour [4]

The API is intended for complementary add-ons, not for large-scale billing or data storage. Sage reserves the right to revisit and change these limits [4].

Latest API Version

Based on the search results provided, here are the key points regarding the most recent version of the Sage Business Cloud Accounting API:

Current Version

The most recent version of the Sage Business Cloud Accounting API is v3.1 [2]. This applies to both Sage Business Cloud Accounting and Sage Business Cloud Start products.

Key Points

  • The Sage Business Cloud Accounting API (also referred to as just "Accounting API") provides access to data and functionality for Sage Business Cloud Accounting and Start products [2].

  • Version 3.1 is the latest supported and developed version of the API [2].

  • For UK and Ireland users, versions 1, 2, 3 and 3.1 are supported, but migration to v3.1 is recommended [2].

  • For US users, only versions 2, 3 and 3.1 are supported, with migration to v3.1 recommended [2].

API Status

  • V3 and V3.1 are fully supported and under active development [2].

  • V1 and V2 are still supported for some regions but are considered legacy versions [2].

Considerations

  • The API uses OAuth 2.0 for authentication [2].

  • Developers need to register to use the API, which is free to use [2].

  • Full API documentation and a Swagger file are available for exploring the endpoints [1].

It's important to note that this information is specifically about the Sage Business Cloud Accounting API, not the Sage 50 desktop software API. The search results do not provide information about a specific Sage 50 API version. If you're specifically looking for Sage 50 API information, you may need to consult Sage 50 documentation directly or contact Sage support for the most up-to-date information.

How to get a Sage 50 Accounting developer account and API Keys?

1. Create a Developer Account

  • Go to the Sage Developer Portal (https://developer.sage.com)
  • Click on the "Sign Up" button
  • You can sign up using your email address or your GitHub account
  • If using GitHub, you'll be redirected to confirm the signup on GitHub
  • After signing up, you'll be redirected to your Sage Accounting API developer account

2. Access API Documentation

  • You'll need to fill out a form on the Sage 50 website to request access to the complete documentation
  • Some basic documentation is provided with each SDK version
  • The Sage knowledgebase can also be a helpful source of information

3. Register Your App

  • Once you have a developer account, you can register your app in the Sage Developer Portal

What can you do with the Sage 50 Accounting API?

Based on the search results provided, here is a list of data models that can be interacted with using the Sage 50 Accounting API, along with what is possible for each:

Company Model

  • Create, read, update, and delete company records
  • Sync company data between systems

Contact Model

  • Create, read, update, and delete contact records
  • Sync contact information between systems

Credit Memo Applied Model

  • Create and manage credit memo applications
  • Sync credit memo data between systems

Custom Field Value Model

  • Create and manage custom field values
  • Sync custom field data between systems

Invoice Line Model

  • Create and manage individual invoice line items
  • Sync invoice line data between systems

Invoice Model

  • Create, read, update, and delete invoices
  • Sync invoice data between systems

Payment Applied Model

  • Create and manage payment applications to invoices
  • Sync payment application data between systems

Payment Model

  • Create, read, update, and delete payment records
  • Sync payment data between systems

Additional Data Models and Functionality

  • Customers: Manage customer records
  • Suppliers: Manage supplier records
  • Products: Manage product information
  • Pricelists: Handle pricing data
  • Sales Orders: Create and manage sales orders
  • Purchase Orders: Create and manage purchase orders
  • Projects: Manage project information
  • Project Cost Codes: Handle project cost coding
  • Transactions: Manage various financial transactions (receipts, payments, journals)
  • Audit Headers, Splits, and Usages: Access audit trail information
  • Nominals: Manage nominal ledger accounts
  • Tax Codes: Handle tax code information
  • Exchange Rates: Manage currency exchange rates
  • Departments: Handle departmental data

It's important to note that the Sage 50 API requires specific setup and authentication processes. The API allows for creating, reading, updating, and deleting records in Sage 50 Accounts in real-time, using standard API technologies (JSON and HTTPS). Additionally, developers should be aware that Sage 50 is an on-premise platform, which adds complexity to the integration process compared to cloud-based solutions.