To help kick start PureClarity's AI learning it is recommended that you upload at least 6 months of historic order data prior to go-live.
To do this you can send a CSV file to your success manager who will arrange for the initial upload. As this exercise takes time, please ensure you submit this at least 2 days prior to your planned go live.
Note that PureClarity will ignore any orders older than 1 year.
If your site handles orders in another channel to the website, then these orders can be sent on a daily basis to PureClarity so that the customers experience on the website is correct.
These daily order files can be uploaded via the Admin area, or via the SFTP server.
CSV Format for Order Files
The header order of each column is not important - but the field names are.
The data required is:
|OrderID||Used to map order lines together|
|AccountId||Unique Identifier for an Account (See below)|
|UserId||Unique Id of the user (See below)|
|Email address of the user (See below)|
|DateTimeStamp||Date/Time the order was made. This needs to be an ISO 8601 formatted date (see below)|
|ProdCode||Variant Sku, or Product Sku if there are no variants|
|Quantity||Number of items of ProdCode in the order|
|UnitPrice||Price of a single ProdCode. Used to provide a basic order total in the admin for historical orders. (see below)|
|LinePrice||Price of the orderline (ProdCode * UnitPrice). Used to provide a basic order total in the admin for historical orders. (see below)|
Either "Unit Price" or "Line Price" must be specified but not both.
The date/time stamp the order was made needs to be an ISO 8601 formatted date. If there is no timezone information present, then the time is assumed to be in the timezone of your site. This time zone can be altered by your Success Manager.
Some examples of valid date/time formats:
|2016-12-25||Only the date passed in. Hourly data is not used by PureClarity for offline/historical orders - but they can be included to make importing your data easier.|
|2016-12-25 09:00:00||Order is taken as 9am on 25th December in the timezone of the site|
|2016-12-25T09:00:00||Order is taken as 9am on 25th December in the timezone of the site. (Optional 'T' to separate the time)|
|2016-12-25T09:00:00Z||Order is taken as 9am UTC on 25th December.|
Some examples of valid unit/line price formats:
|12||Only integer value passed in. No delimiters (to denote thousands, millions etc) should be used.|
|12.34||Decimal value passed in. Note that only . is accepted as a decimal separator. Using commas (,) and other separators will result in a validation error. No delimiters (to denote thousands, millions etc) should be used.|
At least one of Email, UserId or AccountId must be sent. This should match the identifier that would be used if the order had been placed on the website so that the data is tracked against the correct user/account.
- If AccountId is sent, then UserId will be ignored - the order will be stored against the account.
- If UserId is sent, then the order will be stored against the user.
- If neither AccountId or UserId is sent, then Email will be used as the unique identifier for the user. This should only be done if Email address is used to identify users in the tracking events (Order and Login).
- If AccountId or UserId is set - and Email is set as well - then the email address will just be stored against the user/account. It will be used if any Triggered Emails are sent.
- Best practice is to send the UserId (or AccountId if using accounts). This is because it will remain unique to that user - email addresses may well change over time.