This record is used to store dynamic interface related information for integrations such as Credit Card, Remote Ordering etc.
Typically these record types are not used by 3rd party integrations
Required
SalesTransactionInterfaceItemID :
string (GUID)
The Unique identifier for this record
Required
Active_RevisionID :
number (int)
This represents the revision of the configuration data that was being used when this record was generated. This is primarily for use by the PowerEPOS software, however 3rd party integrators can set this too if they
are using our configuration data as a basis for sale information, otherwise just set this to 0.
Required
DateTimeCreated :
string (ISO 8601 DateTime)
The date and time the record was created in outlet local time.
Required
InterfaceType :
number (int)
The type of interface this record is associated with. This is taken from the POSCorePublic.Enums.Sales.InterfaceItemInterfaceTypes enum.
This should always be a non-zero valid entry from the InterfaceItemInterfaceTypes enum.
Required
ForeignKeyContextType :
number (int)
This defines the type of record that this interface item record relates to. This is from the POSCorePublic.Enums.Sales.InterfaceItemForeignKeyContextType enum.
Required
MaxLength(32)
Truncates
CreatedBy_UserName :
string
The name of the POS User / person who created the record.
3rd Party integrations should specify a user name (where applicable), or use the integration name as a fallback.
Example: John
Required
MaxLength(256)
Created_DeviceIdentifier :
string
This is an identifier for the device which created the record. PowerEPOS uses a combination of MAC Address, Hostname and OS.
3rd Party integrators can leave this blank, or set this to something meaningful if a need arises to track records created by a certain device.
Required
MaxLength(64)
Truncates
Created_TerminalCommonName :
string
The name of the terminal (typically the POS terminal) that created the record.
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
3rd Party integrations should specify a meaningful name (possibly the integration name) to group the source of the records, as Terminal is main filter that can be used by the Reporting system.
Example: "POS 1" or "Bar POS" or "Online Orders"
Required
MaxLength(64)
Truncates
Created_TerminalLocalizedName :
string
The localised name of the terminal (typically the POS terminal) that created the record.
Note: This should be in the outlets "Local Language", ie the language used by the POS system on site. This may or may not be the same as the common language.
3rd Party integrations should specify a meaningful name (possibly the integration name) to group the source of the records, as Terminal is main filter that can be used by the Reporting system.
Example: "POS 1" or "Bar POS" or "Online Orders"
Required
MaxLength(4)
Created_TerminalDisplayID :
string
A short ID for the terminal that created the record, typically matching the ID from the POS_Terminals (configuration) record.
3rd Party integrations can leave this blank or come up with their own short name for the terminal.
Example: P1 or TRM1 or INTG
Required
JSONDataType :
number (int)
The type of json data this record has stored. This is taken from the POSCorePublic.Enums.Sales.InterfaceItemJSONDataTypes enum.
This should always be a non-zero valid entry from the InterfaceItemJSONDataTypes enum.
Required
MaxLength(1048576)
JSONData :
string
A blob of raw json that this record holds as the interface item data.
Nullable
DateTimeExpires :
string (ISO 8601 DateTime)
An optional expiry for the record. Expired records may be deleted from the Power EPOS cloud servers once that have expired as part of an automated maintenance.
Set to NULL to retain the record indefinately, otherwise set the expiry to be an appropriate number of days after the date of creation.
Consideration should be made with regards to the size of the data stored in this record and how long it is retained for. It is recommended to set an expiry for any interface data that is not needed to be stored long term.
Nullable
ForeignKeyContextID :
string (GUID)
The unique ID of the record that this interface item relates to.
Example: If ForeignKeyContextType is InterfaceItemForeignKeyContextType.None, then ForeignKeyContextID would be NULL
Example: If ForeignKeyContextType is InterfaceItemForeignKeyContextType.SalesTransactionItem, then ForeignKeyContextID would be a reference to the SalesTransactionItemID field of the SalesTransactionItem record it relates to.
Example: If ForeignKeyContextType is InterfaceItemForeignKeyContextType.SalesTransactionPayment, then ForeignKeyContextID would be a reference to the SalesTransactionPaymentID field of the SalesTransactionPayment record it relates to.
Nullable
CreatedBy_EmployeeID :
string (GUID)
The unique employee record ID of the employee / staff member who created the record.
This may be NULL for 3rd party integrations or where no Employee (Time Clocking / HR) integration exists.
Nullable
CreatedBy_UserID :
string (GUID)
This unique UserID from the POS_Users (configuration) table representing the POS user that created the record.
This may be NULL for 3rd party integrations
Nullable
Created_TerminalID :
string (GUID)
This is the unique TerminalID of a record from the POS_Terminals (configuration) table representing the Terminal which created the record.
3rd Party integrations would normally set this to be NULL
Nullable
MaxLength(64)
LookupKey :
string
An optional lookup key relating to the data stored in this record
Nullable
SplitBillID :
number (int)
Indicates if the interface item is specific to a certain split bill.
3rd Party integrations should set this to 0.
Example
{
"SalesTransactionInterfaceItemID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"Active_RevisionID": 321,
"DateTimeCreated": "2012-04-03T09:40:59.736Z",
"InterfaceType": 321,
"ForeignKeyContextType": 321,
"CreatedBy_UserName": "string value",
"Created_DeviceIdentifier": "string value",
"Created_TerminalCommonName": "string value",
"Created_TerminalLocalizedName": "string value",
"Created_TerminalDisplayID": "string value",
"JSONDataType": 321,
"JSONData": "string value",
"DateTimeExpires": "2012-04-03T09:40:59.736Z",
"ForeignKeyContextID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"CreatedBy_EmployeeID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"CreatedBy_UserID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"Created_TerminalID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"LookupKey": "string value",
"SplitBillID": 321
}