Transaction API
This topic describes the transaction APIs for the Integration Framework.
API
Name | Description |
---|---|
IFRetailTransaction GetSaleTransaction(LogonInfo, RecordIdentifier, RecordIdentifier, RecordIdentifier) |
Get a retail transaction. Parameters:
|
List<IFRetailTransaction> GetSaleTransactionListForDatePeriod(LogonInfo, Date, Date, string) |
Get a list of retail transactions for a specific date period. Parameters:
|
List<IFRetailTransaction> GetSaleTransactionListForCustomerAndDatePeriodExcludingDefaultCustomers(LogonInfo, RecordIdentifier, Date, Date, string); |
Get a list of retail transactions for a specific customer, excluding default customers. Parameters:
|
List<IFRetailTransaction> GetSaleTransactionListForDefaultCustomersAndDatePeriod(LogonInfo, Date, Date, string) |
Get a list of retail transactions for a specific period and default customers. Parameters:
|
IFRetailTransaction GetSaleTransactionSumForDatePeriod(LogonInfo, Date, Date, string) |
Get a retail transaction which is the sum of a list of retail transactions for a specific period. Parameters:
|
IFRetailTransaction GetSaleTransactionSumForDateAndDefaultCustomers(LogonInfo, Date, Date, string) |
Get a retail transaction which is the sum of a list of retail transactions for a specific period and default customers. Parameters:
|
List<IFRetailTransaction> GetSaleTransactionsFromReplicationCount(LogonInfo, int) |
Get a list of retail transactions from a specific replication count. Parameters:
|
List<IFRetailTransaction> GetRemoveTenderTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type remove tender. Parameters:
|
List<IFRetailTransaction> GetFloatEntryTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type float entry. Parameters:
|
List<IFRetailTransaction> GetTenderDeclarationTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type tender declaration. Parameters:
|
List<IFRetailTransaction> GetOpenDrawerTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type open drawer. Parameters:
|
List<IFRetailTransaction> GetEndOfDayTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type end of day. Parameters:
|
List<IFRetailTransaction> GetEndOfShiftTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type end of shift. Parameters:
|
List<IFRetailTransaction> GetBankDropTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type bank drop. Parameters:
|
List<IFRetailTransaction> GetBankDropReversalTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type bank drop reversal. Parameters:
|
List<IFRetailTransaction> GetSafeDropTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type safe drop. Parameters:
|
List<IFRetailTransaction> GetSafeDropReversalTransactions(LogonInfo, Date, Date, string, string) |
Get a list of retail transactions of type safe drop reversal. Parameters:
|
Business objects
The following business objects are used by the transaction API.

Name | Description |
---|---|
BeginDateTime | The start date and time of the transaction. |
EndDateTime | The end date and time of the transaction. |
EntryStatus | The status of the transaction (e.g. normal, voided, concluded etc.) |
IncomeExpenseAmounts | The total amount of income and expense accounts in the transaction. |
MarkupItem | The markup information for the transaction. |
NetAmount | The total net amount(gross amount minus discounts) excluding tax. |
NetAmountWithTax | The total net amount(gross amount minus discounts) including tax. |
NoOfItems | Number of items in the transaction - the total quantity. |
Oiltax | The total calculated oil tax amount for the fuel items. |
Payment | The total payment including the vat. |
RoundingDifference | Rounding difference between summed up item lines and what the customer should be charged. |
RoundingSalePmtDiff | Rounding difference between payment and sales amount. Sales can be 9,99 but payment can be 10. |
SaleItems | The list of standard sale items lines in a transaction. See IFSaleLineItem. |
SalesInvoiceAmounts | The total amount of sales invoice payments in the transaction. |
SalesOrderAmounts | The total amount of sales orders payments in the transaction. |
StoreCurrencyCode | The currency code of the store. |
TenderLines | A list of tender lines (payments). See IFTenderLineItem. |
TotalDiscount | The total discount given in this transaction excluding the line discount(tax excluded). |
TransactionID | The id of the retail transaction. |
TypeOfTransaction | The type of the transaction(e.g. Sales, Payment, RemoveTender, FloatEntry etc.). |

Name | Description |
---|---|
ItemID | The ID of the item. |
DepartmentID | The ID of the department. |
ItemGroupID | The ID of the group to which the item belongs. |
TaxGroupID | The ID of the tax group to which the item belongs. |
Unit | The unit of measure used when the item is purchased. |
Currency | The currency of the sales price. |
Price | The sales price of the item. |
NetPrice | The net sales price of the item. |
Quantity | The quantity of the sold item. |
DiscountAmount | The discount amount applied. |
CostAmount | The cost amount of the sold item. |
NetAmount | Amount excluding tax. Amount = (price-discount)*quantity. |
DiscountAmountFromPrice | The discount amount from the price. |
TotalRoundedAmount | The total rounded amount of the sold item. |
CustomerDiscountAmount | The customer discount amount applied. |
InfocodeDiscountAmount | The discount amount associated with the infocode applied. |
CustomerInvoiceDiscountAmount | The discount amount from the customer invoice. |
UnitQuantity | The number of items within this item i.e if item is a box of items. |
TaxAmount | The tax amount applied to the sold item. |
TotalDiscountAmount | The total discount amount of the sold item. |
PeriodiclDiscountAmount | The total periodic discount given in this transaction (tax excluded). |
WholeDiscountAmountWithTax | The whole discount amount including tax. |
TotalDiscountAmountWithTax | The total discount amount including tax. |
LineDiscountAmountWithTax | The line discount amount including tax. |
PeriodicDiscountAmountWithTax | Total periodic discount given in this transaction including tax. |
ReturnQuantity | The returned quantity of the sold item. |
Oiltax | The total calculated oil tax amount applied for fuel items. |
PriceUnit | The price unit. |
NetAmountIncludingTax | The total amount including tax. amountWithTax = (priceWithTax-discountWithTax)*quantity. |

Name | Description |
---|---|
TenderType | The tender type of the item. |
Currency | The currency of the tender line item. |
AmountTendered | The tendered amount. |
AmountCurrency | The amount in a currency. |
Quantity | The quantity of the item. |
LoyaltyPoints | The points that were calculated for this specific line item. |
Examples
Getting transactions

Date is a DateTime wrapper that can be used directly in databases without causing problems with database smalldatetime variables. The Date class is defined in LSOne.Utilities.
List<IFRetailTransaction> transactions = wcfTransactionsService.GetTenderDeclarationTransactions(CreateLogonInfo(dataModel),
new Date(DateTime.Now.AddMonths(-1)), new Date(DateTime.Now));
foreach(IFRetailTransaction tr in transactions)
{
//Do something
}
In the above example we are getting all transactions of type tender declaration, from all stores, that were created from one month ago until now.
IFRetailTransaction transactionSum = wcfTransactionService.GetSaleTransactionSumForDatePeriod(CreateLogonInfo(dataModel),
new Date(DateTime.Now.AddMonths(-1)), new Date(DateTime.Now));
if (transactionSum != null)
{
//Do something
}
In the above example we are getting a transaction representing the sum of all transactions starting from one month ago until now.