SalesTransactionDescriptor Model

Custom transaction descriptor for linking uncommon data points to the transaction.
These records are typically not required by 3rd party integrations

Required
SalesTransactionDescriptorID : 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 MaxLength(255) Truncates
DataField1 : string

A generic data field relating to the type of descriptor being stored. The value of the field will depend on the Type of the descriptor.

Required MaxLength(255) Truncates
DataField2 : string

A generic data field relating to the type of descriptor being stored. The value of the field will depend on the Type of the descriptor.

Required MaxLength(255) Truncates
DataField3 : string

A generic data field relating to the type of descriptor being stored. The value of the field will depend on the Type of the descriptor.

Required MaxLength(255) Truncates
DataField4 : string

A generic data field relating to the type of descriptor being stored. The value of the field will depend on the Type of the descriptor.

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

Nullable
Type : number (int)

The type of descriptor this record represents. This is taken from the POSCorePublic.Enums.Sales.DescriptorTypes enum.
This should always be a non-zero valid entry from the DescriptorTypes enum.

Nullable
SubType : number (int)

The subtype of descriptor (where applicable) this record represents. This is taken from the POSCorePublic.Enums.Sales.DescriptorSubTypes enum.
This is typically zero (DescriptorSubTypes.None) and is only used for Descriptor Types that require a subtype. Check the DescriptorSubTypes enum to see if there are subtype options for the current DescriptorType being used.

Nullable
DateTime : string (ISO 8601 DateTime)

The outlet local date/time this descriptor record was created.

Nullable
ForeignKey1ID : string (GUID)

An optional reference to the unique ID of a record associated with the descriptor (if applicable). The expected reference will depend on the Type of the descriptor.
Exmaple: SalesTransactionItemID from a POS_SalesTransactionItem record if the descriptor relates to it.

Nullable
ForeignKey2ID : string (GUID)

An optional secondary reference to the unique ID of a record associated with the descriptor (if applicable). The expected reference will depend on the Type of the descriptor.
Exmaple: SalesTransactionPaymentID from a POS_SalesTransactionPayment record if the descriptor also relates to it.

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

Example
{
  "SalesTransactionDescriptorID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
  "Active_RevisionID": 321,
  "DataField1": "string value",
  "DataField2": "string value",
  "DataField3": "string value",
  "DataField4": "string value",
  "CreatedBy_UserName": "string value",
  "Type": 321,
  "SubType": 321,
  "DateTime": "2012-04-03T09:40:59.736Z",
  "ForeignKey1ID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
  "ForeignKey2ID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
  "CreatedBy_EmployeeID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
  "CreatedBy_UserID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512"
}