E-Commerce Integration
This topic provides information about how you can integrate your E-Commerce Solution with the Sage 50 Cloud API
Data Contracts
Address
Address data and details
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Unique identifier for the address |
| contactName | string | Contact name for this address | |
| address1 | string | Yes | Address details, line 1 |
| address2 | string | Address details, line 2 | |
| city | string | Yes | City of the address |
| country | string | Yes | Country of the address |
| state | string | State (if applies) of the address | |
| region | string | Region (if applies) of the address | |
| postCode | string | Yes | Postal code |
| telephone1 | string | Yes | Main telephone number |
| telephone2 | string | Additional telephone number | |
| timestamp | string | Yes | Timestamp of the last update of the address (UTC format) |
Customer
Customer basic data and details for eCommerce integration
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Unique identifier of the customer |
| idNumber | string | Yes | ID number or tax identification number |
| firstName | string | Yes | First name |
| lastName | string | Yes | Last name |
| string | Yes | eMail address | |
| addresses | address [...] | Yes | Address of the customer |
| type | string | Type of customer | |
| currency | string | Preferred ISO4217 currency code | |
| tax | number | Tax rate to be applied for the customer (e.g., for customers within or outside the EU) | |
| timestamp | string | Yes | Timestamp of the last update of the customer (UTC format) |
Order
Sale order details
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Order number, given by the third party. Should be unique |
| orderDate | string | Yes | Date of the order (UTC format) |
| eta | string | Estimated Time of Arrival (UTC format) | |
| orderStatus | string | Status of the order (pending, delivered, ...) | |
| deliveryAddress | address | Yes | Delivery address for the order |
| invoiceAddress | address | Yes | Invoice address for the order |
| customer | customer | Yes | |
| discount | number | Yes | Total ammount of the discount applied |
| currencyRate | number | Yes | Currency rate applied |
| paymentMethod | string | Yes | Payment method applied |
| totalShipping | number | Yes | Shipping costs, without taxes |
| taxRateForShippingCosts | number | Yes | Tax rate to be applied for the shipping costs |
| total | number | Yes | Total cost of the order (including shipping costs and taxes) |
| lines | orderline [...] | Yes | Order detail lines |
| comments | string | Additional comments | |
| timestamp | string | Yes | Timestamp of the last update of the order (UTC format) |
OrderLine
Detail for each sale order line
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Unique identifier for the order line |
| productId | string | Yes | Unique identifier of the product |
| reference | string | Reference of the product | |
| price | number | Yes | Price, taxes included |
| tax | number | Yes | Tax rate |
| discount | number | Discount rate | |
| quantity | number | Yes | Quantity of the product |
| orderToShow | number | Position where the line should be presented among the others | |
| variant1Type | string | First feature type or name (e.g. Size). If Variants are used, the product Id should be the same for all variants combination | |
| variant1Value | string | First feature value (e.g. XL). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Type | string | Second feature type or name (e.g. Color). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Value | string | Second feature value (e.g. Blue). If Variants are used, the product Id should be the same for all variants combination |
Order result
Result of the ingestion of a sale order
| Property | Type | Required | Description |
|---|---|---|---|
| originatorIdentifier | string | Yes | Third party order number |
| productIdentifier | string | Order number given by the Sage application, once the order has been accepted | |
| state | string | Yes | Ingestion status for the order |
| failureReason | [...] | List of human readable descriptions of the failure |
Product
Product name, description, price and other details
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Unique identifier of the product |
| reference | string | Reference | |
| name | string | Yes | Name of the product |
| shortDescription | string | Short description | |
| longDescription | string | Long description | |
| barCodeType | string | Type of barcode used for the product | |
| barCode | string | Barcode digits, according to the type specified | |
| netPrice | number | Yes | Net price, without taxes |
| tax | number | Yes | Tax rate |
| discount | number | Discount rate | |
| discountByUnit | boolean | Yes | True when the discount should be applied by unit. False when the discount should be applied to the total price |
| dateAdded | string | Date when the item was initially added to the catalog (UTC format) | |
| brand | string | Brand name of the product | |
| category | string | Could be a string with using any separator, like backslash | |
| available | boolean | Yes | True when the product is publicly available to be sold |
| relatedItems | string | List of ids of other products related with this (comma separated) | |
| variant1Type | string | First feature type or name (e.g. Size). If Variants are used, the product Id should be the same for all variants combination | |
| variant1Value | string | First feature value (e.g. XL). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Type | string | Second feature type or name (e.g. Color). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Value | string | Second feature value (e.g. Blue). If Variants are used, the product Id should be the same for all variants combination | |
| timestamp | string | Yes | Timestamp of the last update of the product (UTC format) |
ProductPicture
Picture information for each product
| Property | Type | Required | Description |
|---|---|---|---|
| productId | string | Yes | Identifier of the product |
| order | number | Order to follow to show the pictures | |
| description | string | Description of the product picture | |
| picture | string | Yes | Image content (base64 format) |
| variant1Type | string | First feature type or name (e.g. Size). If Variants are used, the product Id should be the same for all variants combination | |
| variant1Value | string | First feature value (e.g. XL). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Type | string | Second feature type or name (e.g. Color). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Value | string | Second feature value (e.g. Blue). If Variants are used, the product Id should be the same for all variants combination | |
| timestamp | string | Yes | Timestamp of the last update of the picture (UTC format) |
ProductSpecialPrice
Special price and condition for a product
| Property | Type | Required | Description |
|---|---|---|---|
| productId | string | Identifier of the product | |
| dateFrom | string | Starting date where the discount is applicable | |
| dateTo | string | End date where the discount is applicable | |
| discount | string | Yes | Discount to be applied |
| discountByUnit | boolean | Yes | True when the discount should be applied by unit. False when the discount should be applied to the total price |
| quantityFrom | number | Minimum quantity of the product to buy to get the discount | |
| quantityTo | number | Maximum quantity of the product to buy to get the discount | |
| totalSpentFrom | number | Minimum ammount of money spent to get the discount | |
| totalSpentTo | number | Maximum ammount of money spent to get the discount | |
| brand | string | Brand to apply the discount to all its items to | |
| category | string | Category to apply the discounts to all its items to | |
| customerId | string | Customer to apply the special price/discount to | |
| timestamp | string | Yes | Timestamp of the last update of the special discount/price (UTC format) |
ProductStock
Stock definition for a product
| Property | Type | Required | Description |
|---|---|---|---|
| productId | string | Yes | Product identifier |
| stock | number | Yes | Amount of units available |
| unitName | string | Name for the units specified for this product (boxes, liters, units, …) | |
| minimumToSell | number | Minimum number of units to sell | |
| variant1Type | string | First feature type or name (e.g. Size). If Variants are used, the product Id should be the same for all variants combination | |
| variant1Value | string | First feature value (e.g. XL). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Type | string | Second feature type or name (e.g. Color). If Variants are used, the product Id should be the same for all variants combination | |
| variant2Value | string | Second feature value (e.g. Blue). If Variants are used, the product Id should be the same for all variants combination | |
| timestamp | string | Yes | Timestamp of the last update of the product (UTC format) |
Supported Regions
- United Kingdom
- Spain