Solink tags video to retail transactions based on a unique place and time pairing. Time is absolute and must adhere to the convention defined here.
Metadata Fields (required)
dataType: String. Must be set to "retail" to specify which data type the current event is (ie. "retail", "restaurant", etc).
schemaVersion: String. Must be set to "1" to specify which version of the schema is being used for this event (ie. "1", "2", etc).
startTime: Number | String. Start time of the transaction in either Unix time format milliseconds or ISO-8601 compliant format
endTime: Number | String. End time of the transaction in either Unix time format milliseconds or ISO-8601 compliant format
storeId: String. Unique store identifier within the customer's set of stores(locations).
registerId: String. Unique id of the POS or register generating the transaction.
status: String. Describes the type of transaction. One of "SALE" or "VOID".
items: Array(ItemDetails). The list of items, actions or events processed in the transaction.
Metadata Fields (optional)
employeeId: String. Unique employee id to identify the employee processing the transaction.
employeeName: String. The name of the employee processing the transaction.
customerId: String. The unique id to identify the customer being served.
ItemDetails Fields (required)
time: Number | String. Start time of the transaction in either Unix time format milliseconds or ISO-8601 compliant format
quantity: Number. Quantity of the item.
description: String. Description of the item
unitPrice: Number. Per unit price of the item
type: String. May be one of the following allowed values:
"SALE": Item sold at list price.
"MODIFIER": Item modified with/without corresponding price modifications.
"SALE_OVERRIDE": Item sale price was overridden by the employee. Final override price is recorded in unitPrice
"OVERRIDE_MODIFIER": Override item modified with/without corresponding price modifications
"DISCOUNT": A discount was applied to the transaction.
"DISCOUNT_MODIFIER": The discount was modified with/without corresponding price modifications.
"RETURN": Item was returned.
"RETURN_MODIFIER": Returned item modified with/without corresponding price modifications.
"RETURN_DISCOUNT": Returned item discount.
"RETURN_DISCOUNT_MODIFIER": Returned item discount modifier.
"PAYMENT": Payment applied to the transaction
"REFUND": Refund payment previously applied to the transaction
"CHANGE_DUE": Change due to the customer for a cash payment tendered > transaction total
"TAX": Tax to be applied to the transaction
"REFUND_TAX ": Refund tax previously applied to the transaction
"OTHER_CHARGES": Other charges associated with the transaction
"REFUND_OTHER_CHARGES": Refund other charges previously applied to the transaction
"GRATUITY": Gratuity offered by the customer
"VOID": Item entry voided.
"VOID_MODIFIER": Item modifier entry voided/cancelled.
"VOID_DISCOUNT": Item discount entry voided/cancelled.
"VOID_RETURN": Item returned entry voided/cancelled
'VOID_PAYMENT": Payment entry voided/cancelled
"VOID_CHANGE_DUE": Change due entry voided/cancelled
"VOID_REFUND": Refund payment voided/cancelled
ItemDetails Fields (optional)
cardNumberLast4: String. For credit/debit/gift card payment/refund/void. Last four digits of the card number.
sku: String. SKU or other unique item identifier.
JSON Example
{
"dataType": "retail", // determines which object format is being used. future will support restaurant, accessControl
"schemaVersion": "1", // specifies which schema version is being used for this event, should be "1"
"startTime": 1557943653649, // start time in unix time format (milliseconds since jan 1 1970). also supports ISO time format (2023-10-21T14:00:12-0400)
"endTime": 1557943678649, // end time in unix time format (milliseconds since jan 1 1970). also supports ISO time format (2023-10-21T14:00:12-0400)
"storeId": "123", // ID of the store for this data, needs to be configured on the associated Solink system
"registerId": "1", // ID of the register for this data, needs to be configured on the associated Solink system (for camera associations)
"transactionId": "93688", // ID of the transaction
"employeeId": "27", // ID of the employee doing the transaction
"employeeName": "MICHELLE", // optional, name of the Employee doing the transaction
"status": "SALE", // Type of transaction. Supported options are SALE and VOID
"customerId": "", // optional, ID of the customer making the transaction
"items": [ // list of items included in the transaction (sale items, returns, voids, taxes, payments, etc)
{
"type": "sale", // type of item. supported options are sale, return, void, tax, payment and change due
"quantity": 1.0, // quantity of the current item, defaults to 1 if not specified
"description": "767062 - 1L COLA", // description of the item
"unitPrice": 2.29, // unit price of this item
"time": 1555898203000 // optional, used to specify item time, otherwise will default to start time
},
{
"type": "tax",
"description": "PST",
"unitPrice": 0.32,
"time": 1557943678649
},
{
"type": "payment",
"description": "Credit", // Credit
"unitPrice": 2.61,
"cardNumberLast4": "1234" // optional, last 4 of card number for card payments
},
{
"type": "change due",
"description": "Change",
"unitPrice": 0.0,
"time": 1557943678649
}
]
}