Defines the model for submitting non-sale based activities to the EPOS system
Required
NonSaleActivitiesID :
string (GUID)
The globally unique identifier for the overall Non Sale Activity
Required
Active_RevisionID :
number (int)
This represents the revision of the configuration data that was being used when this non sale activity 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
ActionType :
number (int)
The type of non sale activity this record represents. This must be a valid value from from the from POSCorePublic.Enums.Sales.NonSaleActivityActionTypes enum.
Required
OutletID :
string (GUID)
The unique OutletID for the outlet the non sale activity belongs to based on the POS_Outlets (configuration) table.
3rd party integrations can use an existing configuration based outlet ID, or can allocate their own outlet ID for these records if the non sale activity does not belong to a standard POS outlet.
Required
MaxLength(64)
Truncates
OutletGroupCommonName :
string
The name of the Outlet group (at the time it was created) that this non sale activity belongs to.
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
Example: Australian Outlets
Required
MaxLength(64)
Truncates
OutletGroupLocalizedName :
string
The localised name of the Outlet Group (at the time it was created) that this non sale activity belongs to.
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.
Example: Australian Outlets
Required
MaxLength(64)
Truncates
OutletCommonName :
string
The name of the Outlet that this non sale activity belongs to.
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
Example: Little Johns Pizza
Required
MaxLength(64)
Truncates
OutletLocalizedName :
string
The localised name of the Outlet that this non sale activity belongs to.
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.
Example: Little Johns Pizza
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
MaxLength(32)
Truncates
Cashier_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
DBGen :
number (int)
This represents an identifier for a unique database operation that last updated/created this entity. The value is not unique as it can be shared across multiple entities if they were all inserted/updated
from within a single operation. These values are always incrementing so all entities with DBGen > X can be assumed that they were edited/inserted since the operation X occured.
Expect a 64 bit integer.
This is a readonly property. Setting it will have no effect. It will be assigned internally and made visible when querying for this model
IsTraining : bool
Is this a training record (ie not part of official figures)
Nullable
decimal(18, 2)
Amount :
number (decimal)
This is the total value of the non sale activity (if applicable). This field will only have a value for activities such as Paid In/Paid Outs that affect balances.
Nullable
DateTime :
string (ISO 8601 DateTime)
The date and time that the non sale activity occured in outlet local time
Nullable
TradingDate :
string (ISO 8601 DateTime)
This is the Trading Date of the Z Report that this non sales activity's figures have been included in. This should be set for any non-sale activity where Z integration is occuring.
When populated, this should be just the trading date itself, with no time component. eg 2020-01-01 00:00:00
Related Fields: ZReportID, ZReportCounter
Nullable
ZReportID :
string (GUID)
This is the unique ID of the Z Report that this non sales activity's sales figures have been included in. This should be set for any non-sale activity where Z integration is occuring.
Related Fields: ZReportCounter, TradingDate
Nullable
ZReportCounter :
number (int)
This is the Z Counter from the Z Report that this transaction's sales figures have been included in. This should be set for any non-sale activity where Z integration is occuring.
Related Fields: ZReportID, TradingDate
AffectsCID : bool
Does this Non Sale Activity affect the CID (cash in draw). This is only ever potentially true for non sale activity types that deal with payments (eg Paid In/Paid Out)
Nullable
MaxLength(64)
ReceiptID :
string
An optional receipt identifier for this action if there was an audit receipt printed. If not used, set this to blank.
Nullable
ActionContextID :
string (GUID)
The unique ID of the configuration record matching the Action Type this record was populated from (if applicable).
Example: For Paid In/Paid Out based ActionType's, this would be the PaidInOutID from the POS_PaidInOuts table
This may be NULL for 3rd party integrations or where no configuration based item type was used
Nullable
MaxLength(32)
Truncates
NonSaleActivityCommonName :
string
The name of the non sale activity record, this must always be set and should not be blank.
3rd Party integrations can make up their own names, or they can base them on the existing configuration records if available.
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
Example: "No Sale" for a No Sale operation (ie opening the draw without a payment)
Example: "Window Cleaner" for a Paid Out operation to remove cash from the draw to pay the window cleaner
Nullable
MaxLength(32)
Truncates
NonSaleActivityLocalizedName :
string
The localised name of the non sale activity record, this must always be set and should not be blank.
3rd Party integrations can make up their own names, or they can base them on the existing MainGroup configuration if available.
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.
Example: "No Sale" for a No Sale operation (ie opening the draw without a payment)
Example: "Window Cleaner" for a Paid Out operation to remove cash from the draw to pay the window cleaner
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(128)
ClientName :
string
The name of the software application that has created the non sale activity.
3rd Party integrations should enter their application or integration name here.
Example: "My POS App" or "My Website App"
Nullable
MaxLength(128)
ClientVersion :
string
The version of the software application that has created the non sale activity.
3rd Party integrations should enter their application version name here.
Example: "1.0.0.0" or "1" or "2.5a" etc
Nullable
Cashier_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
Cashier_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
Manager_EmployeeID :
string (GUID)
The unique employee record ID of the employee / manager who approved the action that created this record (if applicable).
Typically this value will be NULL as manager authorisation is usually only required occasionally.
This will typically be NULL for 3rd party integrations or where no Employee (Time Clocking / HR) integration exists.
Nullable
Manager_UserID :
string (GUID)
This unique UserID from the POS_Users (configuration) table representing the POS User who approved the action that created this record (if applicable).
Typically this value will be NULL as manager authorisation is usually only required occasionally.
This will typically be NULL for 3rd party integrations
Nullable
MaxLength(32)
Truncates
Manager_UserName :
string
The name of the POS User / person who approved the action that created this record (if applicable).
Typically this value will be NULL as manager authorisation is usually only required occasionally.
This will typically be NULL for 3rd party integrations
Example: Mary
Nullable
PaymentTypeID :
string (GUID)
This unique PaymentTypeID from the POS_PaymentTypes (configuration) table representing the Payment Type this record was created from (if applicable).
This will typically be NULL for 3rd party integrations or for Non Sale Activity that do not involve payments.
Nullable
MaxLength(32)
Truncates
PaymentTypeCommonName :
string
The name of the Payment Type that was used to create this non sale activity (if applicable).
3rd Party integrations can make up their own names, or they can base them on the existing PaymentType configuration if available.
This will be blank for Non Sale Activity types that do not involve payments.
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
Example: CASH or Visa or Mastercard
Nullable
MaxLength(32)
Truncates
PaymentTypeLocalizedName :
string
The localised name of the Payment Type that was used to create this non sale activity (if applicable).
3rd Party integrations can make up their own names, or they can base them on the existing PaymentType configuration if available.
This will be blank for Non Sale Activity types that do not involve payments.
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.
Example: CASH or Visa or Mastercard
Nullable
MaxLength(40)
Truncates
CreditCardMerchantID :
string
The MerchantID being used by the Credit Card integration that processed this payment (if applicable)
Null values will be converted to an empty string internally
Nullable
MaxLength(40)
Truncates
CreditCardTerminalID :
string
The TerminalID being used by the Credit Card integration that processed this payment (if applicable).
This is the Terminal ID of the physical credit card machine.
Null values will be converted to an empty string internally
Nullable
MaxLength(4)
CurrencyCode :
string
An ISO 4217 currency code indicating the currency that all values in this non sale activity represent (if applicable). This MUST be a valid currency code.
This will be blank for Non Sale Activity types that do not involve payments.
Example: "GBP" or "AUD" or "USD" or "EUR"
Nullable
MaxLength(8)
CurrencySymbol :
string
The currency symbol displayed for values in this currency
This will be blank for Non Sale Activity types that do not involve payments.
Example: "$" or "£" or "€"
Nullable
MaxLength(64)
Truncates
CurrencyCommonName :
string
The name of the currency that all values in this non sale activity represent (if applicable)
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
This will be blank for Non Sale Activity types that do not involve payments.
Example: "Euro" or "Pound Stirling" or "Australian Dollar" or "US Dollar"
Nullable
MaxLength(64)
Truncates
CurrencyLocalizedName :
string
The localised name of the currency that all values in this non sale activity represent (if applicable)
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.
This will be blank for Non Sale Activity types that do not involve payments.
Example: "Euro" or "Pound Stirling" or "Australian Dollar" or "US Dollar"
Nullable
RemarkGroupID :
string (GUID)
The unique ID of the POS_RemarkGroups (configuration) record matching the Remark Group the remark was added from (if applicable)
This may be NULL for 3rd party integrations or where no remark was applied.
Nullable
MaxLength(64)
Truncates
RemarkGroupCommonName :
string
The name of the Remark Group the remark (if applicable) belongs to. Leave blank (empty string) if no remark is associated with this non sale activity.
3rd Party integrations can make up their own names, or they can base them on the existing Remark Group configuration if available. Typically this value is blank (empty string).
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
Example: "Payment Remarks"
Nullable
MaxLength(64)
Truncates
RemarkGroupLocalizedName :
string
The localised name of the Remark Group the remark (if applicable) belongs to. Leave blank (empty string) if no remark is associated with this non sale activity.
3rd Party integrations can make up their own names, or they can base them on the existing Remark Group configuration if available. Typically this value is blank (empty string).
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.
Example: "Payment Remarks"
Nullable
RemarkID :
string (GUID)
The unique ID of the POS_Remarks (configuration) record matching the Remark configuration record that the remark was added from (if applicable)
This may be NULL for 3rd party integrations or where no remark was applied.
Nullable
MaxLength(256)
Truncates
RemarkCommonName :
string
The name of the Remark (if applicable) that was applied. Leave blank (empty string) if no remark is associated with this non sale activity.
3rd Party integrations can make up their own names, or they can base them on the existing Remark configuration if available.
Note: This should be in the organisations "Common Language", ie their overall default neutral language (typically English).
Example: "Personal Cheque"
Nullable
MaxLength(256)
Truncates
RemarkLocalizedName :
string
The localised name of the Remark (if applicable) that was applied. Leave blank (empty string) if no remark is associated with this non sale activity.
3rd Party integrations can make up their own names, or they can base them on the existing Remark configuration if available.
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.
Example: "Personal Cheque"
Nullable
StatusFlags :
number (int)
The status flags applicable to this non sale activity as per the POSCorePublic.Enums.Sales.NonSaleActivityStatusFlags enum.
Example
{
"NonSaleActivitiesID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"Active_RevisionID": 321,
"ActionType": 321,
"OutletID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"OutletGroupCommonName": "string value",
"OutletGroupLocalizedName": "string value",
"OutletCommonName": "string value",
"OutletLocalizedName": "string value",
"Created_DeviceIdentifier": "string value",
"Created_TerminalCommonName": "string value",
"Created_TerminalLocalizedName": "string value",
"Created_TerminalDisplayID": "string value",
"Cashier_UserName": "string value",
"DBGen": 321,
"IsTraining": true,
"Amount": 1.23,
"DateTime": "2012-04-03T09:40:59.736Z",
"TradingDate": "2012-04-03T09:40:59.736Z",
"ZReportID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"ZReportCounter": 321,
"AffectsCID": true,
"ReceiptID": "string value",
"ActionContextID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"NonSaleActivityCommonName": "string value",
"NonSaleActivityLocalizedName": "string value",
"Created_TerminalID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"ClientName": "string value",
"ClientVersion": "string value",
"Cashier_EmployeeID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"Cashier_UserID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"Manager_EmployeeID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"Manager_UserID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"Manager_UserName": "string value",
"PaymentTypeID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"PaymentTypeCommonName": "string value",
"PaymentTypeLocalizedName": "string value",
"CreditCardMerchantID": "string value",
"CreditCardTerminalID": "string value",
"CurrencyCode": "string value",
"CurrencySymbol": "string value",
"CurrencyCommonName": "string value",
"CurrencyLocalizedName": "string value",
"RemarkGroupID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"RemarkGroupCommonName": "string value",
"RemarkGroupLocalizedName": "string value",
"RemarkID": "3f49efe7-ea42-4f21-8718-7e6ce9a33512",
"RemarkCommonName": "string value",
"RemarkLocalizedName": "string value",
"StatusFlags": 321
}