API Reference

Solink tags video to restaurant transactions based on a unique place and time pairing. Time is absolute and must adhere to the convention defined here.

Required Object Fields

FieldTypeDescription
dataTypeStringMust be set to "restaurant" to specify which data type the current event is.
schemaVersionStringMust be set to "1" to specify which version of the schema is being used for this event (e.g. "1", "2", etc).
startTimeNumber | StringStart time of the transaction in either Unix time format milliseconds or ISO-8601 compliant format.
endTimeNumber | StringEnd time of the transaction in either Unix time format milliseconds or ISO-8601 compliant format.
locationIdStringUnique location identifier within the customer's set of locations.
dataSourceIdStringA unique identifier representing the source of the transaction data, such as a point-of-sale (POS) register, table-side device, or kiosk within the restaurant. This ID is used to identify the specific device or location where the transaction originated, which is useful for tracking orders and payments throughout the restaurant.
transactionIdStringUnique id which identifies the transaction in the originating POS software.
statusStringDescribes the type of transaction. For example: "SALE" or "VOID".
tableNumberStringIdentifies the table at which the order was taken.
guestCountNumberStates the number of guests served by this transaction.
itemsArrayThe list of items, actions or events processed in the transaction.

Optional Object Fields

FieldTypeDescription
employeeIdStringUnique employee id to identify the employee processing the transaction.
employeeNameStringThe name of the employee processing the transaction.
customerIdStringThe unique id to identify the customer being served.

Required Item Object Fields

FieldTypeDescription
timeNumber | StringStart time of the transaction in either Unix time format milliseconds or ISO-8601 compliant format.
quantityNumberQuantity of the item.
descriptionStringDescription of the item.
unitPriceNumberPer unit price of the item.
typeStringMay 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

Optional Item Object Fields

FieldTypeDescription
cardNumberLast4StringFor credit/debit/gift card payment/refund/void. Last four digits of the card number.
skuStringSKU or other unique item identifier.

JSON Example

{
  "dataType": "restaurant",
  "schemaVersion": "1",
  "startTime": 1557943653649,
  "endTime": 1557943678649,
  "locationId": "123",
  "registerId": "1",
  "transactionId": "93688",
  "employeeId": "27",
  "employeeName": "MICHELLE",
  "status": "SALE",
  "customerId": "",
  "tableNumber": "12",
  "guestCount": 1,

  "items": [
    {
      "type": "sale",
      "quantity": 1.0,
      "description": "Burger",
      "unitPrice": 22.0,
      "time": 1555898203000
    },
    {
      "type": "modifier",
      "quantity": 1.0,
      "description": "No onions",
      "unitPrice": 0,
      "time": 1555898203000
    },
    {
      "type": "tax",
      "quantity": 1.0,
      "description": "PST",
      "unitPrice": 2.0,
      "time": 1557943678649
    },
    {
      "type": "gratuity",
      "quantity": 1.0,
      "description": "Tip",
      "unitPrice": 5.0,
      "time": 1557943678649
    },
    {
      "type": "payment",
      "quantity": 1.0,
      "description": "Credit",
      "unitPrice": 20.0,
      "cardNumberLast4": "1234",
      "time": 1557943678649
    },
    {
      "type": "payment",
      "quantity": 1.0,
      "description": "Cash",
      "unitPrice": 10.0,
      "time": 1557943678649
    },
    {
      "type": "change due",
      "quantity": 1.0,
      "description": "Change",
      "unitPrice": 1.0,
      "time": 1557943678649
    }
  ]
}