This article explains the SKU Integration API which enables clients on our Professional and Enterprise plan to assign internal attributes from their ERP system to the relevant records for the same SKU in Atelier.
⚠️ Restricted Access API
Only Administrators and Buying Team Managers have permission to access this end-point. If you receive an error User Does not have permission to access this end-point this means that you need to ensure your integration user is either your admin user, or you can add your integration user to your buying team and promote them to be a manager.
⚠️ Retail Data Dependency
If you wish to deliver values for custom fields you have created in Retail Data, then you will receive error messages in your API response unless the data you are attempting to deliver corresponds to the data configuration in your Retail Data.
Retail Data allows you to upload all your required attributes such as SKU Category attributes, Merchandising Hierarchy attributes and your Foundational Data attributes. Configuration is the business logic that you set up specific to these fields in Retail Data Management.
In configuration, if you define a field as Dependent, it will allow you to update values for that fields only via SKU Integration once a SKU has been applied. This ensures that any system-critical fields can be amended only via Integration and not manually.
File Format:
Download CSV Format from this link here
📔 Notes:
- Name the Column Title in the file the same as you defined in Retail Data Configuration
- SKU Integration will fail if you include columns in the file which do not have corresponding fields in Retail Data Configuration
File Delivery
Import API calls require authentication and should be performed using a valid access token.
After you have authenticated using your integration user account then you are ready to deliver your payload to us:
End Point:
https://enterprise.atelier.technology/api/imports/sku
For example requests and to test this end-point here is the direct Swagger link: Import SKU
We accept the following file object types:
- File (postman)
- IFormFile (.net/.net core)
- FormData (javascript, typescript)
Step 1 : Export your Bill of Materials data including Atelier Code which is the unique key for any import into Atelier.
💡 How do you export your Bill of Materials?
Click here to learn how to export BoM data and the export format.
Step 2 : Now you have everything you need to prepare your CSV file to import data into Atelier
💡 Unique Key
Do not assume your SKU code will act as the unique key. The Atelier Code represents the unique key to communicate with our system.
📔 Notes: File rules:
- CSV type (comma separated)
- Less or equal to 25mb
- All columns must be in the sequence provided in the tables below ("Ref") even if the values are empty
Supported Field Index:
Column: ID1
Field / Parameter: AtelierCode
Explanation: Unique system identifier
Required: Yes
Post SKU behavior: Master only
Type: Specific Alphanumeric format Eg: AX123456
Limit: 2 letters 10 numbers
Values: Specified Eg: Where AX is a placeholder for two letters and 123456 is a placeholder for a sequence of numbers with a maximum length of 10 numbers
Column: ID2
Field / Parameter: MasterSKU
Explanation: SKU grouping
Required: No
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (inc special characters)
Limit: 37
Values: Any
Column: ID3
Field / Parameter: SKU
Explanation: SKU (formerly SubSKU)
Required: Yes
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (inc special characters)
Limit: 37
Values: Any
Column: ID4
Field / Parameter: SKUCategory
Explanation: Product retail life cycle stage Eg: Programme / Test / Sell-Down / Clearance
Required: No
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (inc special characters)
Limit: 20
Values: Any
Column: ID5
Field / Parameter: Description
Explanation: Short product description
Required: No
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (inc special characters)
Limit: 37
Values: Any
Column: ID6
Field / Parameter: Duty
Explanation: Import duty %
Required: No
Post SKU behavior: Master/ Dependent
Type: Numeric field
Limit: 2 decimal places
Values: 00.00 - 99.99
Column: ID7
Field / Parameter: MerchandisingHierarchy1
Explanation: Internal merchandising reference Eg "Department"
Required: No
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (no spaces no special characters)
Limit: 10
Values: N/A
Column: ID8
Field / Parameter: MerchandisingHierarchy2
Explanation: Internal merchandising reference Eg "Category"
Required: No
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (no spaces no special characters)
Limit: 10
Values: N/A
Column: ID9
Field / Parameter: MerchandisingHierarchy3
Explanation: Internal merchandising reference Eg "Class"
Required: No
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (no spaces no special characters)
Limit: 10
Values: N/A
Column: ID10
Field / Parameter: MerchandisingHierarchy4
Explanation: Internal merchandising reference Eg "Sub-Class"
Required: No
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (no spaces no special characters)
Limit: 10
Values: N/A
Column: ID11
Field / Parameter: RetailPrice (formerly RRP)
Explanation: Retail sale price in your Atelier home currency
Required: No
Post SKU behavior: Master/ Dependent
Type: Numeric
Limit: 2 decimal places
Values: N/A
Column: ID12
Field / Parameter: SalesTax
Explanation: Sales Tax (%)
Required: No
Post SKU behavior: Master/ Dependent
Type: Numeric
Limit: 2 decimal places
Values: N/A
Column: ID13
Field / Parameter: Discount1
Explanation: Secondary (optional) retail sale price in your Atelier home currency
Required: No
Post SKU behavior: Master/ Dependent
Type: Numeric
Limit: 2 decimal places
Values: N/A
Column: ID14
Field / Parameter: Discount2
Explanation: Tertiary (optional) retail sale price in your Atelier home currency
Required: No
Post SKU behavior: Master/ Dependent
Type: Numeric
Limit: 2 decimal places
Values: N/A
Column: ID15
Field / Parameter: Discount3
Explanation: Quarternary (optional) retail sale price in your Atelier home currency
Required: No
Post SKU behavior: Master/ Dependent
Type: Numeric
Limit: 2 decimal places
Values: N/A
Column: ID16
Field / Parameter: MaintainSalesPrice
Explanation: SKU level price protection mechanism to stop sales price change (margin adjusts instead of sales price if costs change)
Required: No
Post SKU behavior: Master/ Dependent
Type: Specific values
Limit: N/A
Values: On / Off
Column: ID17
Field / Parameter: PurchaseMethodStatus
Explanation: This field is not to be confused with PurchaseMethod (Asset or Memo), PurchaseMethodStatus simply confirms which of the two is currently active - they cannot both be active. You can sense check this by asking yourself a simple question: should the SKU purchase method in this row (Asset or Memo - depending on the row extracted by you from BoM export) be used on forward Purchase Orders for this SKU? if your answer is yes then set to Active. If your answer is no, then set to Inactive
Required: No
Post SKU behavior: Master/ Dependent
Type: Specific values
Limit: N/A
Values: Active / Inactive
Column: ID18
Field / Parameter: LaunchDate
Explanation: The date that the product was or will be first available for sale
Required: No
Post SKU behavior: Dependent
Type: YYYY-MM-DD
Limit: N/A
Values: N/A
Column: CID1-82
Field / Parameter: Retail Data Fields
Explanation: Custom Retail Data values you would like to apply for this SKU
Required: No
⚠️ Warning
If your company is using Retail Data and has any fields mapped as post-SKU behaviour = dependent, then you should consider these fields are required as leaving them blank will wipe previously held data for the SKUs you are sending us.
Post SKU behavior: Master/ Dependent
Type: Alphanumeric (inc special characters) OR Numeric
Limit: 999999.99 (if numeric)
Values: N/A
📔 Special Characters:
Special characters are defined as all non-alphanumeric characters. For avoidance of doubt, the following special characters are accepted if Type = "Alphanumeric inc special characters" above:
Get Import Information: (Reporting)
After the import was created you can get a report about Import status and failures which might occur during content validation or processing flow.
The URL to retrieve the status report will be returned in the original response to the file delivery request in the 'Link' object or you can compose the URL yourself by taking the Id from the same response and formatting into the following URL.
End Point:
https://enterprise.atelier.technology/api/imports/sku/report/{importId}
If validation fails, a file with the validation failures per line will be made available in the response to the above endpoint in the failuresReportUrl attribute.
For example requests and to test this end-point, here is the direct Swagger link: Get Report