Sage
Open-Source Sage Connector
Sage
The Sage connector enables easy and secure data synchronization between your application and your customers’ Sage accounts through unified data models.
Authorization
The Sage connector uses OAuth for secure authentication. When creating a connection, the required OAuth scopes are automatically configured based on your specific operations needs (e.g. genericContact::create
, genericUser::list
).
✓ Automatic token refresh handling
✓ Proactive insufficient permissions detection
View our step-by-step integration guide
Whitelabel
Supported
You can choose to provide your own set of clientId
and clientSecret
for this
connector from the Morph Cloud dashboard; allowing a fully whitelabled experience
for your end-customers.
import { Morph } from "@runmorph/cloud";
const morph = Morph({ publicKey: "pk_demo_xxxxxxxxxxxxxxx", secretKey: "sk_demo_xxxxxxxxxxxxxxx"});
// create a new connection
const connection = morph.connections({ connectorId: "sage", ownerId: "demo" });
await connection.create({ operations:[ "genericContact::list" ]});
// auhtorize the connection
const { auhtorizationUrl } = await connection.authorize();
// redirect the user to the auhtorizationUrl
Live Demo
Select a connector below to experience our seamless authentication flow and see
how easy it is to connect third-party services.
Models
Generic
The Sage connector seamlessly integrates with our unified genericContact
model, enabling you to manage Contacts with rich data including firstName
, lastName
, phoneNumber
, email
and other key details
API Reference
GET | /resources/genericContact | List and Search Sage Contacts |
GET | /resources/genericContact/:id | Retrieve a Sage Contact |
POST | /resources/genericContact | Create a Sage Contact |
PATCH | /resources/genericContact/:id | Update a Sage Contact |
DEL | /resources/genericContact/:id | Delete a Sage Contact |
Custom Fields
Supported
The Sage connector supports our Field Mapping
feature, enabling you or your customers to seamlessly map Sage Contact custom fields to the unified contact model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
The Sage connector seamlessly integrates with our unified genericCompany
model, enabling you to manage Companies with rich data including name
and other key details
API Reference
GET | /resources/genericCompany | List and Search Sage Companies |
GET | /resources/genericCompany/:id | Retrieve a Sage Company |
POST | /resources/genericCompany | Create a Sage Company |
PATCH | /resources/genericCompany/:id | Update a Sage Company |
DEL | /resources/genericCompany/:id | Delete a Sage Company |
Custom Fields
Supported
The Sage connector supports our Field Mapping
feature, enabling you or your customers to seamlessly map Sage Company custom fields to the unified company model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
The Sage connector seamlessly integrates with our unified genericUser
model, enabling you to manage Users with rich data including firstName
, lastName
, email
and other key details
API Reference
GET | /resources/genericUser | List and Search Sage Users |
GET | /resources/genericUser/:id | Retrieve a Sage User |
POST | /resources/genericUser | Create a Sage User |
PATCH | /resources/genericUser/:id | Update a Sage User |
DEL | /resources/genericUser/:id | Delete a Sage User |
Custom Fields
Supported
The Sage connector supports our Field Mapping
feature, enabling you or your customers to seamlessly map Sage User custom fields to the unified user model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
The Sage connector seamlessly integrates with our unified genericWorkspace
model, enabling you to manage Workspaces with rich data including name
and other key details
API Reference
GET | /resources/genericWorkspace | List and Search Sage Workspaces |
GET | /resources/genericWorkspace/:id | Retrieve a Sage Workspace |
POST | /resources/genericWorkspace | Create a Sage Workspace |
PATCH | /resources/genericWorkspace/:id | Update a Sage Workspace |
DEL | /resources/genericWorkspace/:id | Delete a Sage Workspace |
Custom Fields
Supported
The Sage connector supports our Field Mapping
feature, enabling you or your customers to seamlessly map Sage Workspace custom fields to the unified workspace model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
Accounting
The Sage connector seamlessly integrates with our unified accountingInvoice
model, enabling you to manage Invoices with rich data including number
, customer
, company
, issueDate
, dueDate
and other key details
API Reference
GET | /resources/accountingInvoice | List and Search Sage Invoices |
GET | /resources/accountingInvoice/:id | Retrieve a Sage Invoice |
POST | /resources/accountingInvoice | Create a Sage Invoice |
PATCH | /resources/accountingInvoice/:id | Update a Sage Invoice |
DEL | /resources/accountingInvoice/:id | Delete a Sage Invoice |
The Sage connector seamlessly integrates with our unified accountingInvoiceItem
model, enabling you to manage Invoice Items with rich data including description
, quantity
, unitPrice
, amount
, taxRate
and other key details
API Reference
GET | /resources/accountingInvoiceItem | List and Search Sage Invoice Items |
GET | /resources/accountingInvoiceItem/:id | Retrieve a Sage Invoice Item |
POST | /resources/accountingInvoiceItem | Create a Sage Invoice Item |
PATCH | /resources/accountingInvoiceItem/:id | Update a Sage Invoice Item |
DEL | /resources/accountingInvoiceItem/:id | Delete a Sage Invoice Item |
Custom
Supported
Can’t find the unified model you need? The Sage connector supports your own custom model.
Webhooks
The Sage connector supports real-time event subscriptions, allowing you to receive instant notifications when records are created, updated, or deleted. Below are the supported models and their corresponding triggers.
Models | Created | Updated | Deleted | API Reference |
---|---|---|---|---|
genericContact | ||||
genericCompany | ||||
genericUser | ||||
genericWorkspace | ||||
accountingInvoice | ||||
accountingInvoiceItem |
Proxy
Supported
The Sage connector supports our Proxy Request
feature, allowing you to directly
call any endpoints from Sage’s public API without needing to handle authentication.
Your customer’s token will be automatically set and refreshed as needed, enabling
quick implementation of custom connector behaviors. View API Reference.