This article provides an overview of the APIs that are available across various roles, and that can be used by various clients. The focus is on customer-facing application clients and e-commerce clients.
- Commerce Scale Unit business data and operations are available to any connected device through the OData Web API, across both employee (point of sale) scenarios and customer (online store) scenarios.
 - The embedded commerce runtime (CRT) enables a unified omni-channel platform.
 - The application programming interfaces (APIs) are stateless and can process requests from many channels.
 - The APIs have a linear scale-out model (“brick” scale-out).
 - You use a composition pattern for plug-and-play customizations.
 - The APIs are built on the .NET stack by using C#.
 
Roles
Every request to Commerce Scale Unit (via commerce proxy) operates under these main roles:
- CommerceRole.Employee
 - CommerceRole.Anonymous
 - CommerceRole.Customer
 - CommerceRole.Application
 - CommerceRole.BusinessPartnerEmployee
 
The Anonymous and Customer roles apply to e-commerce (customer/consumer) scenarios. The Anonymous role is used for requests that represent an e-commerce customer who hasn't signed in. The Customer role is used for requests that represent an e-commerce customer who has been authenticated and has signed in. A role filter is applied to every API that is exposed in Commerce Scale Unit (CSU). For e-commerce scenarios, you can use only APIs that have either the CommerceRole.Anonymous or CommerceRole.Customer roles associated with them. The BusinessPartnerEmployee role is used for requests that represent a contractor that works for a seller channel in a business to business to business (B2B2B) scenario.
Note
By default, Anonymous access is not enabled. To enable Anonymous access for your environment, contact Support.
Customer controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetOrderShipmentsHistory | string accountNumber, QueryResultSettings queryResultSettings | PageResult<OrderShipments> | Employee, Customer, Application | Gets order shipments history for the customers | 
| CreateEntity | Customer | Customer | Employee, Anonymous, Application | Creates customer. | 
| UpdateEntity | string key, Customer update | Customer | Employee, Customer, Application | Updates customer. | 
| GetOrderHistory | string accountNumber, QueryResultSettings queryResultSettings | PageResult<SalesOrder> | Employee, Customer, Application | Returns the collection of sales orders. | 
| Search | CustomerSearchCriteria customerSearchCriteria, QueryResultSettings queryResultSettings | PageResult<GlobalCustomer> | Employee, Application | Searches for the customers | 
| GetPurchaseHistory | string accountNumber, QueryResultSettings queryResultSettings | PageResult<PurchaseHistory> | Employee, Customer, Application | Gets purchase history for the customers | 
| GetByAccountNumbers | IEnumerable<string> accountNumbers, int searchLocationValue, QueryResultSettings queryResultSettings | IEnumerable<Customer> | Employee, Customer, Application | Gets customers list from the list of customer account numbers | 
| GetCustomerSearchFields | queryResultSettings | IEnumerable<CustomerSearchField> | Employee, Customer, Application | Gets the customer search fields for the store set in headquarters | 
| SearchByFields | Customer entity | PageResult<GlobalCustomer> | Employee, Customer, Application | Searches for customers by specified fields | 
| PostNonTransactionalActivityLoyaltyPoints | string loyaltyCardNumber, long channelId, long affiliationId, string activityTypeId | void | Employee, Customer, Application | Post non-transactional activity loyalty points | 
Sales order controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetReceipts | string id, ReceiptRetrievalCriteria receiptRetrievalCriteria, QueryResultSettings queryResultSettings | PageResult<Receipt> | Employee | Gets a set of receipts based on the formTypes for Printing. | 
| GetGiftReceipts | string id, IEnumerable<decimal> salesLineNumbers, ReceiptRetrievalCriteria receiptRetrievalCriteria, QueryResultSettings queryResultSettings | PageResult<Receipt> | Employee | Gets the gift receipts | 
| GetByReceiptId | string receiptId, string orderStoreNumber, string orderTerminalId, QueryResultSettings queryResultSettings | PageResult<SalesOrder> | Employee | Gets sales orders by the receipt identifier | 
| SearchSalesTransactionsBy- ReceiptId | string receiptId, QueryResultSettings queryResultSettings | PageResult<SalesOrder> | Employee | Search sales transaction by the receipt identifier | 
| Search | SalesOrderSearchCriteria salesOrderSearchCriteria, QueryResultSettings queryResultSettings | PageResult<SalesOrder> | Employee, Customer | Searches for any orders matching the given search criteria | 
| SearchOrders | OrderSearchCriteria orderSearchCriteria, QueryResultSettings queryResultSettings | PageResult<SalesOrder> | Employee, Customer | Searches for orders matching the given search criteria. | 
| GetInvoicesBySalesId | string salesId, QueryResultSettings queryResultSettings | PageResult<SalesInvoice> | Employee | Gets the sales invoice associated with the passed sales identifier | 
| GetOrderInvoices | string customerAccount, QueryResultSettings queryResultSettings | PageResult<OrderInvoice> | Employee | Gets the open order invoices associated with the customer associated with the given customer identifier | 
| GetInvoices | InvoiceSearchCriteria invoiceSearchCriteria, QueryResultSettings queryResultSettings | PageResult<OrderInvoice> | Employee | Gets the open invoices associated with the search criteria | 
| GetInvoicedSalesLinesBy- SalesIds | IEnumerable<string> salesIds, QueryResultSettings queryResultSettings | PageResult<SalesLine> | Employee | Gets the list of invoiced sales lines by sales order identifiers | 
| CreatePickingList [Obsolete("Use CreatePickingListForItems instead.")] | string salesId | void | Employee | Creates a picking list for a sales order | 
| CreatePickingListForItems | string salesId, IEnumerable- <PickAndPackSalesLineParameter> pickAndPackSalesLineParameters | string | Employee | Creates a picking list for selected lines on sales order. | 
| GetPickingLists | string salesId, QueryResultSettings queryResultSettings | PageResult<PickingList> | Employee | Gets the picking lists for an order from Headquarters. | 
| CreatePackingSlip | void | Employee | Creates a packing slip | |
| GetSalesOrderDetailsBy- TransactionId | string transactionId, int searchLocationValue | SalesOrder | Employee, Customer | Gets the sales order details by transaction id. | 
| GetSalesOrderDetailsBy- SalesId | string salesId | SalesOrder | Employee, Customer | Gets the sales order details by sales id. | 
| GetSalesOrderDetailsBy- QuotationId | string quotationId | SalesOrder | Employee, Customer | Gets the sales order details by Quotation id. | 
| GetEntityByKey | string transactionId | SalesOrder | Employee | Gets the sales order matching the transaction identifier. | 
| CreateEntity | SalesOrder entity | SalesOrder | Employee, Application | Uploads a booked sales order with tender lines. | 
| CheckInForOrderPickup | long channelId, string packingSlipId, string channelReferenceId, IEnumerable<CommerceProperty> extensionProperties | CheckInForOrderPickupConfirmation | Anonymous, Customer | The check-in operation for the order pickup. | 
| GetInvoiceDetails | InvoiceDetailsSearchCriteria invoiceDetailsSearchCriteria | SalesInvoice | Employee, Customer, Application | Gets the invoice details (lines, charges, taxes) by invoice search criteria. | 
| SearchSalesTransactionsByReceiptId | string receiptId, QueryResultSettings settings | PagedResult<SalesOrder> | Employee | Searches sales transactions by receipt identifier. | 
| SendReceipt | SearchReceiptCriteria searchReceiptCriteria, IEnumerable<ElectronicAddress> recipientAddresses | NullResponse | Employee | Sends transaction receipt satisfying the specified criteria to up to three specified electronic addresses. | 
| GetOrderByChannelReferenceLookupCriteria | ChannelReferenceLookupCriteria channelReferenceLookupCriteria | SalesOrder | Employee, Customer, Application, Anonymous | Gets a sales order for given channel reference id and additional lookup criteria. | 
Cart controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Checkout | string id, string receiptEmail, TokenizedPaymentCard tokenizedPaymentCard, string receiptNumberSequence, IEnumerable<CartTenderLine> cartTenderLines, long? cartVersion | SalesOrder | Employee, Customer, Anonymous, Application | Checkout the cart. | 
| AddCartLines | string id, System.Collections.Generic.- IEnumerable<CartLine> cartLines, long? cartVersion | Cart | Employee, Customer, Anonymous, Application | Adds the cart lines into Cart. | 
| VoidCartLines | string id, System.Collections.Generic.- IEnumerable<CartLine> cartLines | Cart | Employee | Voids the cart lines in the cart. | 
| UpdateCartLines | string id, System.Collections.Generic.- IEnumerable<CartLine> cartLines | Cart | Employee, Customer, Anonymous, Application | Updates the cart lines in the cart. | 
| RefillGiftCard | string id, string giftCardId, decimal amount, string currencyCode, string lineDescription) | Cart | Employee | Adds balance to gift card | 
| IssueGiftCard | string id, string giftCardId, decimal amount, string currencyCode, string lineDescription, string tenderTypeId | Cart | Employee | Issues gift card. | 
| CashOutGiftCard | string id, string giftCardId, decimal amount, string currencyCode, string lineDescription | Cart | Employee | Cash out a gift card. | 
| AddTenderLine | string id, CartTenderLine cartTenderLine, long? cartVersion | Cart | Employee | Adds the cart tender line. | 
| AddPreprocessed- TenderLine | string id, TenderLine preprocessedTenderLine, long? cartVersion | Cart | Employee | Adds the pre-processed tender line. | 
| ValidateTender- LineForAdd | string id, TenderLine tenderLine | void | Employee | Validates the tender line. | 
| UpdateTenderLine- Signature | string id, string tenderLineId, string signatureData | Cart | Employee | Updates the cart tender line signature. | 
| VoidTenderLine | string id, string tenderLineId, System.Collections.Generic.- IEnumerable<ReasonCodeLine> reasonCodeLines, bool? isPreprocessed = false, bool? forceVoid = false | Cart | Employee. | Voids the cart tender line. | 
| SuspendWithJournal | string id, string journalCartId, string receiptNumberSequence | Cart | Employee | Suspends a cart and makes journal entry. | 
| Resume | string id | Cart | Employee | Resumes a suspended cart. | 
| ResumeFromReceiptId | string receiptId | Cart | Employee | Resumes a suspended cart based on receipt id. | 
| RecallOrder | string transactionId, string salesId | Cart | Employee | Recalls a customer order. | 
| AddInvoicedSales- LinesToCart | string transactionId, IEnumerable<long> invoicedLineIds | Cart | Employee. | Add invoiced sales lines to cart. | 
| RecallQuote | string transactionId, string quoteId | Cart | Employee | Recalls a quote. | 
| RecallSalesInvoice | string transactionId, string invoiceId | Cart | Employee | Gets the cart that represents the invoice associated with the passed invoice identifier. | 
| AddOrderInvoice | string id, string invoiceId, string lineDescription | Cart | Employee | Adds the invoice associated with the passed invoice identifier to the cart. | 
| AddInvoices | string key, IEnumerable<string> invoiceIds | Cart | Employee | Add invoices to cart. | 
| RecalculateOrder | string id | Cart | Employee | Recalculates a customer order. | 
| UpdateCommission- SalesGroup | string transactionId, string cartLineId, string commissionSalesGroup, bool isUserInitiated | Cart | Employee | Updates a commission sales group on a line or transaction. | 
| CartDeliveryPreferences | string id | CartDeliveryPreferences | Customer, Anonymous, Application | Gets the applicable delivery preference types based on the items in the cart. | 
| GetLineDeliveryOptions | string id, IEnumerable- <LineShippingAddress> lineShippingAddresses, QueryResultSettings queryResultSettings | PageResult- <SalesLineDeliveryOption> | Employee, Customer, Anonymous, Application | Gets the delivery line option of the cart. | 
| GetLineDeliveryOptionsBy- ChannelId | string id, IEnumerable- <LineShippingAddress> lineShippingAddresses, long channelId, QueryResultSettings queryResultSettings | PageResult- <SalesLineDeliveryOption> | Employee, Customer, Anonymous, Application | Gets the delivery line option of the cart by the channel identifier. | 
| GetPaymentsHistory | string id, QueryResultSettings queryResultSettings | PageResult<TenderLine> | Employee | Gets the payments history given the cart identifier. | 
| GetDeliveryOptions | string id, Address shippingAddress, QueryResultSettings queryResultSettings | PageResult- <DeliveryOption> | Employee, Customer, Anonymous, Application | Gets the delivery options for the cart. | 
| UpdateLineDelivery- Specifications | string id, System.Collections.Generic.- IEnumerable- <LineDeliverySpecification> lineDeliverySpecifications | Cart | Customer, Anonymous, Application | Updates the delivery specifications per cart line. | 
| AddCharge | string cartId, int moduleTypeValue, string chargeCode, decimal calculatedAmount | Cart | Employee, Application | Add a charge to the cart. | 
| OverrideCharge | string cartId, string chargeLineId, decimal amount, IEnumerable<ReasonCodeLine> reasonCodeLines | Cart | Employee, Application | Override the amount of a charge in the cart. | 
| AddCartLineCharge | string cartId, string cartLineId, int moduleTypeValue, string chargeCode, decimal calculatedAmount | Cart | Employee, Application | Add a charge to the cart line. | 
| OverrideCartLineCharge | string cartId, string cartLineId, string chargeLineId, decimal amount, IEnumerable<ReasonCodeLine> reasonCodeLines | Cart | Employee, Application | Override the amount of a cart line charge. | 
| UpdateDelivery- Specification | string id, DeliverySpecification deliverySpecification | Cart | Customer, Anonymous, Application | Updates the delivery specification for cart header. | 
| OverrideCartLinePrice | string id, string cartLineId, decimal price | Cart | Employee | Processes the barcode workflow by sending the cart identifier and barcode scanned information. | 
| GetPromotions | string id | CartPromotions | Customer, Anonymous, Application | Gets the promotions for cart. | 
| AddDiscountCode | string id, string discountCode | Cart | Employee, Customer, Anonymous, Application | Add discount code to cart. | 
| RemoveDiscountCodes | string id, IEnumerable<string> discountCodes | Cart | Customer, Anonymous, Application | Remove discount code from cart. | 
| RemoveCartLines | string id, System.Collections.Generic.- IEnumerable<string> cartLineIds | Cart | Customer, Anonymous, Application | Deletes the cart lines. | 
| Search | CartSearchCriteria cartSearchCriteria, QueryResultSettings queryResultSettings | PageResult<Cart> | Customer | Gets the carts by customer. | 
| GetCardPayment- AcceptPoint | string id, CardPaymentAcceptSettings cardPaymentAcceptSettings | CardPaymentAcceptPoint | Employee, Customer, Anonymous, Application | Gets the accepting point of card payment, e.g. a web page. | 
| RetrieveCardPayment- AcceptResult | string resultAccessCode | CardPayment- AcceptResult | Employee, Customer, Anonymous, Application | Retrieves the accepting result of card payment, e.g. payment authorization, card token. | 
| AddCoupons | string id, IEnumerable<string> couponCodes, bool? isLegacyDiscountCode = false | Cart | Employee, Customer, Anonymous, Application | Add coupons to the cart. | 
| RemoveCoupons | string id, IEnumerable<string> couponCodes | Cart | Employee, Customer, Anonymous, Application | Remove coupon codes from the cart. | 
| GetChargeCodes | QueryResultSettings settings | PageResult<ChargeCode> | Employee, Application | Gets all the charge codes. | 
| GetMaxLoyaltyPointsTo- RedeemFor- TransactionBalance | string cartId, string loyaltyCardNumber, string redeemCurrency | LoyaltyPoint- RedemptionEstimate | Employee, Customer | Get a LoyaltyPoint- RedemptionEstimate object, which contains the max currency amount a loyalty card can apply to a transaction's balance, and the reward point quantities used to generate that max currency amount. | 
| GetDeclinedOrVoided- CardReceipts | string cartId, TenderLine preprocessedTenderLine, ReceiptRetrievalCriteria criteria, QueryResultSettings queryResultSettings | PageResult<Receipt> | Employee | Gets a collection of gift receipts for a declined or terminated card tender line. | 
| ResetAllCharges | string id | Cart | Employee, Application | Recalculates charges (including deleting all manually added and overridden charges) for the cart. | 
Address controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetAddressPurposes | QueryResultSettings queryResultSettings | PageResult<AddressPurpose> | Employee, Customer, Anonymous, Application | Gets the address purposes | 
Barcode controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetBarcodeById | string barcodeId | Barcode | Employee | Gets barcode by identifier. | 
Cash declaration controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCashDeclarations | QueryResultSettings queryResultSettings | PageResult<CashDeclaration> | Employee | Gets barcode by identifier. | 
Cities controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCities | string countryRegionId, string stateProvinceId, string countyId, QueryResultSettings queryResultSettings | PageResult<CityInfo> | Employee | Get all the cities filtered by Country/Region, State Province and County. | 
Counties controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCounties | string countryRegionId, string stateProvinceId, QueryResultSettings queryResultSettings | PageResult<CountyInfo> | Employee | Get all the counties filtered by country/region and state province. | 
Country region controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCountryRegionsFor- Shipping | QueryResultSettings queryResultSettings PageResult<CountryRegionInfo> | Employee, Customer, Anonymous, Application | Gets the translated countries/regions with delivery modes configured for the current channel. | |
| GetCountryRegionsBy- LanguageId | string languageId, QueryResultSettings queryResultSettings | PageResult<CountryRegionInfo> | Employee, Customer, Anonymous, Application | Get all the countries/regions filter by Language Id. | 
| GetCountryRegions | QueryResultSettings queryResultSettings | PageResult<CountryRegionInfo> | Employee | Get all the countries/regions. | 
Credit memo controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCreditMemoById | string creditMemoId | CreditMemo | Employee | Get credit memo by identifier. | 
Delivery options controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetDeliveryOptions | string id, Address shippingAddress, QueryResultSettings queryResultSettings | PageResult<DeliveryOption> | Employee, Customer, Anonymous, Application | Get the delivery options for the channel. | 
Customer group controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCustomerGroups | QueryResultSettings queryResultSettings | PageResult<CustomerGroup> | Employee, Customer, Anonymous, Application | Gets collection of customer group. | 
Currency controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCurrenciesAmount | string currencyCode, decimal amount, QueryResultSettings queryResultSettings | PageResult<CurrencyAmount> | Employee | Gets the currencies amount. | 
| CalculateTotalCurrencyAmount | System.Collections.Generic.IEnumerable <CurrencyRequest> currenciesAmount | CurrencyAmount | Employee | Calculates the total currency amount. | 
Customer balance controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCustomerBalance | string accountNumber, string invoiceAccountNumber | CustomerBalances | Employee | Gets the customer balance. | 
Device configuration controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetDeviceConfiguration | DeviceConfiguration | Employee | Gets a single device configuration. | 
District controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetDistricts | string countryRegionId, string stateProvinceId, string countyId, string cityName, QueryResultSettings queryResultSettings | PageResult<DistrictInfo> | Employee | Get all the district info filtered by country/region, state province, county, city. | 
State province controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetStateProvinces | string countryRegionId, QueryResultSettings queryResultSettings | PageResult<StateProvinceInfo> | Employee, Customer, Anonymous, Application | Get all the states or provinces filtered by country/region. | 
Pricing controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| CalculateSalesDocument | Cart salesDocument | Cart | Employee, Customer, Anonymous, Application | Calculates prices and discounts for products at given quantities if they are bought together in an order. | 
Zipcodes controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetZipCodes | string countryRegionId, string stateProvinceId, string countyId, string cityName, string district, QueryResultSettings queryResultSettings | PageResult<ZipCodeInfo> | Employee | Get all the zip codes filtered by country/region, state province, county, city and district. | 
| GetAddressFromZipCode | string countryRegionId, string zipPostalCode, QueryResultSettings queryResultSettings | PageResult<ZipCodeInfo> | Employee, Customer, Anonymous, Application | Get details of addresses associated with zip code filtered by country/region. | 
Suspended cart controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetAllSuspendedCarts | QueryResultSettings queryResultSettings | PageResult<SuspendedCart> | Employee | Gets all suspended carts. | 
Tender types controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetTenderTypes | QueryResultSettings queryResultSettings | PageResult<TenderType> | Employee, Customer, Anonymous, Application | Gets tender types. | 
| RoundAmountByTenderType | decimal amount, string tenderTypeId | decimal | Employee | Round amount by tender type. | 
Publishing controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| SetOnlineChannelPublishStatus | int publishingStatus, string publishingStatusMessage | void | Application | Updates Online Channel publishing status. | 
Language controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetLanguages | QueryResultSettings queryResultSettings | PageResult<SupportedLanguage> | Employee | Gets collection of supported languages. | 
Localized string controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetLocalizedStrings | string languageId, int? textId, QueryResultSettings queryResultSettings | PageResult<LocalizedString> | Employee | Gets all localized strings filtered by language identifier, text identifier. | 
Notification controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetNotifications | IEnumerable<int> subscribedOperations, QueryResultSettings queryResultSettings | ICollection<NotificationItem> | Employee | Gets the notifications. | 
| AcknowledgeNotifications | DateTimeOffset lastPullDateTime | void | Employee | Acknowledge notifications. | 
Number sequence controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetLatestNumberSequence | QueryResultSettings queryResultSettings | PageResult<LocalizedString> | Employee | Gets the next number sequence for the current terminal. | 
ReasonCodes controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetReasonCodes | QueryResultSettings queryResultSettings | PageResult<ReasonCode> | Employee | Gets the reason codes. | 
| GetReturnOrderReasonCodes | QueryResultSettings queryResultSettings | PageResult<ReasonCode> | Employee | Gets return order reason codes. | 
| GetReasonCodesById | string reasonCodeGroupId, QueryResultSettings queryResultSettings | PageResult<ReasonCode> | Employee | Gets the reason codes by group or single identifier. | 
Receipt controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetReceiptMasks | int? receiptTransactionType, QueryResultSettings queryResultSettings | PageResult<ReceiptMask> | Employee | Gets the receipts masks. | 
| ValidatePrintReceiptCopyAllowed | SalesOrder salesOrderToPrint | void | Employee | Performs validation, whether receipt copy printing operation is allowed or not. | 
Report datasets controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| SearchReportDataSet | int? receiptTransactionType, QueryResultSettings queryResultSettings | ReportDataSet | Employee | Searches all the report dataset filtered by Report Identifier, Parameters and Locale. | 
| GetReportDataSetById | SalesOrder salesOrderToPrint | ReportDataSet | Employee | Gets report data set by id. | 
| GetSrsReportDataSet | ReportDataSet | Employee | Gets SSRS report data set. | 
Search controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetSearchSuggestions | SearchSuggestionCriteria suggestionCriteria, QueryResultSettings settings | PageResult<SearchSuggestion> | Employee, Customer, Anonymous, Application | Gets Search suggestions. | 
| GetSearchConfiguration | SearchConfiguration | Employee, Customer, Anonymous, Application | Gets Channel Search Configuration from Azure Search | 
Tax controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetTaxOverrides | SearchSuggestionCriteria suggestionCriteria, QueryResultSettings settings | PageResult<TaxOverride> | Employee | Searches for any tax overrides matching the given search criteria. | 
| GetSalesTaxGroups | PageResult<SalesTaxGroup> | Employee | Gets the sales tax groups. | 
Tender drop and declare operation controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| CreateDropAndDeclareTransaction | DropAndDeclareTransaction dropAndDeclareTransaction | DropAndDeclareTransaction | Employee | Performs saving tender drop and declare store operations. | 
Unit of measure controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetUnitsOfMeasure | QueryResultSettings queryResultSettings | PageResult<UnitOfMeasure> | Employee | Get all the units of measure supported by the store. | 
Income expense accounts controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetIncomeExpenseAccounts | int incomeExpenseAccountType, QueryResultSettings queryResultSettings | PageResult<IncomeExpenseAccount> | Employee | Gets the income or expense accounts. | 
Products controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Search | ProductSearchCriteria productSearchCriteria, QueryResultSettings queryResultSettings | IEnumerable<Product> | Employee, Customer, Anonymous, Application | Searches for the product using OData query. | 
| GetById | long recordId, long channelId | SimpleProduct | Employee, Customer, Anonymous, Application | Gets a SimpleProduct by its record identifier. | 
| Get | PageResult<Product> | Employee, Customer, Storefront | Searches for the product. | |
| GetByIds | long channelId, IEnumerable<long> productIds, QueryResultSettings queryResultSettings | PageResult<SimpleProduct> | Employee, Customer, Anonymous, Application | Gets a collection of products based on channel identifier and record identifier. | 
| GetRecommendedProducts | IEnumerable<long> productIds, string customerAccountNumber, QueryResultSettings queryResultSettings | PageResult- <ProductSearchResult> | Employee, Customer, Anonymous, Application | Retrieves a collection of SimpleProduct recommendations given a collection of product identifiers. | 
| Compare | long channelId, long catalogId, IEnumerable<long> productIds, QueryResultSettings queryResultSettings | PageResult- <ProductComparisonLine> | Employee, Customer, Anonymous, Application | Compares products. | 
| SearchByCategory | long channelId, long catalogId, long categoryId, QueryResultSettings queryResultSettings | PageResult- <ProductSearchResult> | Employee, Customer, Anonymous, Application | Searches for products that belong to a category directly or via its child categories. | 
| SearchByText | long channelId, long catalogId, string searchText, QueryResultSettings queryResultSettings | PageResult- <ProductSearchResult> | Employee, Customer, Anonymous, Application | Searches for products that are associated to the given search text. | 
| GetSearchSuggestions | long channelId, long catalogId, string searchText, string hitPrefix, string hitSuffix, QueryResultSettings queryResultSettings | PageResult- <SearchSuggestion> | Employee, Customer, Anonymous, Application | Gets recommended search phrases based on a (partial) search text. | 
| GetRefinersByCategory | long catalogId, long categoryId, QueryResultSettings queryResultSettings | PageResult- <ProductRefiner> | Employee, Customer, Anonymous, Application | Gets the product refiner(s) available for the given category product(s). | 
| GetRefinersByText | long catalogId, string searchText, QueryResultSettings queryResultSettings | PageResult- <ProductRefiner> | Employee, Customer, Anonymous, Application | Gets the product refiner(s) available for product(s) resulting from searching the given text. | 
| GetProductSearchRefiners | ProductSearchCriteria searchCriteria, QueryResultSettings queryResultSettings | PageResult- <ProductRefiner> | Employee, Customer, Anonymous, Application | Gets the product refiner(s) available for product(s) resulting from the combination of refiners and search text/ category ids being used. | 
| GetRefinerValuesByCategory | long catalogId, long categoryId, long refinerId, int refinerSourceValue, QueryResultSettings queryResultSettings | PageResult- <ProductRefinerValue> | Employee, Customer, Anonymous, Application | Gets the product refiner value(s) available for the given category product(s). | 
| GetRefinerValuesByText | long catalogId, string searchText, long refinerId, int refinerSourceValue, QueryResultSettings queryResultSettings | PageResult- <ProductRefinerValue> | Employee, Customer, Anonymous, Application | Gets the product refiner value(s) available for product(s) resulting from searching the given text. | 
| RefineSearchByCategory | long channelId, long catalogId, long categoryId, IEnumerable- <ProductRefinerValue> refinementCriteria, QueryResultSettings queryResultSettings | PageResult- <ProductSearchResult> | Employee, Customer, Anonymous, Application | Refines searches performed on products that belong to a category directly or via its child categories. | 
| RefineSearchByText | long channelId, long catalogId, string searchText, IEnumerable- <ProductRefinerValue> refinementCriteria, QueryResultSettings queryResultSettings | PageResult- <ProductSearchResult> | Employee, Customer, Anonymous, Application | Refines searches performed on products that are associated to the given search text. | 
| GetDimensionValues | long recordId, long channelId, int dimension, IEnumerable<ProductDimension> matchingDimensionValues, QueryResultSettings queryResultSettings | PageResult- <ProductDimensionValue> | Employee, Customer, Anonymous, Application | Gets the dimension values for a product based on the specified requirements. | 
| GetVariantsBy- DimensionValues | long recordId, long channelId, IEnumerable<ProductDimension> matchingDimensionValues, QueryResultSettings queryResultSettings | PageResult<SimpleProduct> | Employee, Customer, Anonymous, Application | Gets the variations of a product based on the specified requirements. | 
| GetVariantsBy- ComponentsInSlots | long recordId, long channelId, IEnumerable- <ComponentInSlotRelation> matchingSlotTo- ComponentRelationship, QueryResultSettings queryResultSettings | PageResult<SimpleProduct> | Employee, Customer, Anonymous, Application | Gets the variations of a product based on the component in slot combination specified. | 
| GetDefaultComponents | long recordId, long channelId, QueryResultSettings queryResultSettings | PageResult- <ProductComponent> | Employee, Customer, Anonymous, Application | Gets the default individual parts that constitute the specified product. | 
| GetComponentByProduct- SlotRelation | long channelId, ComponentInSlotRelation componentRelation | ProductComponent | Employee, Customer, Anonymous, Application | Gets a specific product component based on the provided ComponentIn- SlotRelation. | 
| GetSlotComponents | long recordId, long channelId, long slotId, QueryResultSettings queryResultSettings | PageResult- <ProductComponent> | Employee, Customer, Anonymous, Application | Gets the default individual parts that can fit into a slot of a product to complete its constitution. | 
| GetFiltered- SlotComponents | long recordId, long channelId, long slotId, IEnumerable- <ComponentInSlotRelation> selectedComponents, QueryResultSettings queryResultSettings | PageResult- <ProductComponent> | Employee, Customer, Anonymous, Application | Gets the Product components that may be selected given a set of previously selected components. | 
| GetAttributeValues | long recordId, long channelId, long catalogId, QueryResultSettings queryResultSettings | PageResult<AttributeValue> | Employee, Customer, Anonymous, Application | Gets the attribute values of the specified product. | 
| GetRelationTypes | long recordId, long channelId, long catalogId, QueryResultSettings queryResultSettings | PageResult- <ProductRelationType> | Employee, Customer, Anonymous, Application | Gets the types of relationships the specified product has with other products. | 
| GetRelatedProducts | long recordId, long channelId, long catalogId, long relationTypeId, QueryResultSettings queryResultSettings | PageResult- <ProductSearchResult> | Employee, Customer, Anonymous, Application | Searches for products that are associated to the specified product by the specified relationship. | 
| GetRefiners | ProductSearchCriteria productSearchCriteria, QueryResultSettings queryResultSettings | PageResult<ProductRefiner> | Employee, Customer, Anonymous, Application | Searches for product refiners using OData query. | 
| Changes | ChangedProductsSearchCriteria productSearchCriteria, QueryResultSettings queryResultSettings | IEnumerable<Product> | Employee, Storefront | Searches and retrieves changed products given the specified query criteria. | 
| ReadChangedProducts | ChangedProductsSearchCriteria productSearchCriteria, QueryResultSettings queryResultSettings | PageResult<Product> | Application | Searches and retrieves changed products given the specified query criteria. | 
| GetDeletedListings | long catalogId, long skip, long top | DeletedListingsResult | Application | Searches and retrieves changed products given the specified query criteria. | 
| GetDeletedCatalogs | QueryResultSettings queryResultSettings | IEnumerable<long> | Application | Gets deleted catalogs. | 
| GetDeletedLanguages | QueryResultSettings queryResultSettings | IEnumerable<string> | Application | Gets deleted languages. | 
| DeleteListingsBy- Catalogs | IEnumerable<long> catalogIds | void | Application | Deletes listings by catalogs. | 
| DeleteListingsBy- Languages | IEnumerable<string> languages | void | Application | Deletes listings by languages. | 
| BeginRead- ChangedProducts | ChangedProductsSearchCriteria changedProductSearchCriteria | ReadChanged- ProductsSession | Application | Begins session to read changed products. | 
| EndReadChangedProducts | ReadChangedProductsSession session | void | Application | Ends session to read changed products. | 
| UpdateListing- PublishingStatus | IEnumerable<ListingPublishStatus> publishingStatuses | void | Application | Searches and retrieves changed products given the specified query criteria. | 
| GetProductAvailabilities | IEnumerable<long> itemIds, long channelId, QueryResultSettings queryResultSettings | PageResult- <ProductAvailableQuantity> | Employee, Customer, Anonymous, Application | Get available inventory for given list of items for given channel and customer. | 
| GetPrices | string itemId, string inventoryDimensionId, string barcode, string customerAccountNumber, string unitOfMeasureSymbol, decimal quantity, QueryResultSettings queryResultSettings | PageResult<ProductPrice> | Employee | Gets the price of an item in context of the current customer. | 
| GetPrice | long recordId, string customerAccountNumber, string unitOfMeasureSymbol | ProductPrice | Employee, Customer, Anonymous, Application | Gets the price of a product in context of the current customer. | 
| CalculateProductPrice | long recordId, string customerAccountNumber, string unitOfMeasureSymbol, string loyaltyCardId, IEnumerable<AffiliationLoyaltyTier> affiliationLoyaltyTiers | ProductPrice | Employee, Customer, Anonymous, Application | Gets the price. | 
| GetActivePrices | ProjectionDomain projectDomain, IEnumerable<long> productIds, DateTimeOffset activeDate, string customerId, IEnumerable<AffiliationLoyaltyTier> affiliationLoyaltyTiers, bool? includeSimpleDiscountsIn- ContextualPrice, QueryResultSettings queryResultSettings | PageResult<ProductPrice> | Employee, Customer, Anonymous, Application | Gets the price. | 
| GetMediaLocations | long recordId, long channelId, long catalogId, QueryResultSettings queryResultSettings | PageResult<MediaLocation> | Employee, Customer, Anonymous, Application | Gets the media locations for the specified product. | 
| GetMediaBlobs | long recordId, long channelId, long catalogId, QueryResultSettings queryResultSettings | PageResult<MediaBlob> | Employee, Customer, Anonymous, Application | Gets the media blobs for the specified product. | 
| GetUnitsOfMeasure | long recordId, QueryResultSettings queryResultSettings | PageResult<UnitOfMeasure> | Employee, Customer, Anonymous, Application | Gets the unit(s) of measure for the specified product. | 
| GetChannel- ProductAttributes | QueryResultSettings queryResultSettings | PageResult<AttributeProduct> | Employee, Customer, Anonymous, Application | Gets the channel product attributes. | 
| GetProductRatings | IEnumerable<long> productIds, QueryResultSettings settings | PageResult<ProductRating> | Employee, Customer, Anonymous, Application | Gets a collection of product ratings based on product identifiers. | 
| GetEstimatedAvailability | InventoryAvailabilitySearchCriteria searchCriteria | ProductWarehouseInventoryInformation | Employee, Customer, Anonymous, Application | Get estimated product availability based on search criteria. | 
| GetEstimatedProductWarehouseAvailability | InventoryAvailabilitySearchCriteria searchCriteria | IEnumerable<ProductWarehouse> | Employee, Customer, Anonymous, Application | Get estimated product availability for specific product warehouse pairs. | 
| UpdateProductWarehouseAvailability | IEnumerable<ProductWarehouseQuantity> quantities | UpdateProductWarehouseAvailabilityResult | BusinessPartnerEmployee, Application | Update inventory for products or product variants in specific warehouses. | 
Product lists controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Search | ProductListSearchCriteria productListSearchCriteria, QueryResultSettings queryResultSettings | PagedResult<ProductList> | Employee, Customer, Anonymous | Gets the product lists filtered by search criteria. | 
| AddProductListLines | string productListId, IEnumerable<ProductListLine> productListLines | PagedResult<ProductListLine> | Employee, Customer, Anonymous | Creates the product list lines for product list. | 
| UpdateProductListLines | string productListId, IEnumerable<ProductListLine> productListLines | PageResult<ProductListLine> | Employee, Customer, Anonymous | Updates the product list lines. | 
| GetProductListLines | string productListId, string searchText, QueryResultSettings queryResultSettings | PagedResult<ProductListLine> | Employee, Customer, Anonymous | Gets the product list lines. | 
| RemoveProductListLines | string productListId, IEnumerable<ProductListLine> lines | NullResponse | Employee, Customer, Anonymous | Removes lines from the product list. | 
| CopyCartToProductList | string cartId, string destinationProductListId, bool isRewrite, bool isQuantityAggregate | ProductList | Employee, Customer | Copies the cart content to product list lines. | 
| GetEntityByKey | string productListId | ProductList | Employee, Customer | Gets a single product list by id. | 
| CreateEntity | ProductList productList | ProductList | Employee, Customer | Creates the product list. | 
| PatchEntity | ProductList productList | ProductList | Employee, Customer | Updates the product list properties. Used for partial updates. | 
| UpdateEntity | ProductList productList | ProductList | Employee, Customer | Updates the product list properties. Used for partial updates. | 
| DeleteEntity | string productListId | NullResponse | Employee, Customer | Deletes the product list. | 
Sales orders fulfillment controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| ShipFulfillmentLines | IEnumerable<ShipFulfillmentLine> fulfillmentLines | void | Employee | Ship the fulfillment lines. Invoices in AX. | 
| AcceptFulfillmentLines | IEnumerable<FulfillmentLineParameter> fulfillmentLines | void | Employee | Updates the status of the fulfillment lines to Accepted. | 
| PickFulfillmentLines | IEnumerable<FulfillmentLineParameter> fulfillmentLines, IEnumerable<FulfillmentLineParameter> fulfillmentLines | void | Employee | Updates the status of the fulfillment lines to Picking. | 
| MarkAsPicked | IEnumerable<FulfillmentLineParameter> fulfillmentLines | void | Employee | Updates the status of the fulfillment lines to Picked. | 
| PackFulfillmentLines | IEnumerable<FulfillmentLineParameter> fulfillmentLines | void | Employee | Updates the status of the fulfillment lines to Packed or Partially Packed. | 
| MarkFulfillmentLinesAsPacked | IEnumerable<FulfillmentLineParameter> fulfillmentLines | String | Employee | Updates the status of the fulfillment lines to Packed or Partially Packed. | 
| GetFulfillmentLines | FulfillmentLineSearchCriteria criteria, QueryResultSettings settings | IEnumerable<FulfillmentLine> | Employee | Gets the fulfillment lines. | 
| GetFulfillmentPackingSlips | IEnumerable<Receipt> | Employee | Gets the packing slips. | |
| GetFulfillmentPackingSlipsById | string salesId, string packingSlipId, string hardwareProfileId | IEnumerable<Receipt> | Employee | Gets the packing slips by packing slip Id and sales Id. | 
| GetFulfillmentPickingLists | IEnumerable<FulfillmentLineParameter> pickingListFulfillmentLines, string hardwareProfileId, QueryResultSettings queryResultSettings | IEnumerable<Receipt> | Employee | Gets the picking lists. | 
| RejectFulfillmentLines | IEnumerable<RejectFulfillmentLine> fulfillmentLines | void | Employee | Updates the status of the fulfillment lines to Rejected. | 
| GetPackingSlipsData | string salesId | IEnumerable<PackingSlipData> | Employee | Gets the list of packing slip data given a sales identifier. | 
Hardware profiles controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetHardwareProfileById | string hardwareProfileId | HardwareProfile | Employee | Gets hardware profile by id. | 
| GetHardwareStationProfiles | QueryResultSettings queryResultSettings | PageResult<HardwareStationProfile> | Employee | Gets collection of hardware station profiles. | 
Income expense account controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetIncomeExpenseAccounts | int incomeExpenseAccountType, QueryResultSettings queryResultSettings | PageResult<IncomeExpenseAccount> | Employee | Gets the income or expense accounts. | 
Kits controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| DisassembleKitTransactions | KitTransaction | KitTransaction | Employee | Performs kit (disassembly) transaction operations. | 
Gift card controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetGiftCardInquiry | string giftCardId | GiftCard | Employee, Customer, Anonymous, Application | Get gift card with additional information by identifier. | 
Image controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetImageBlob | long imageId | MediaBlob | Employee, Customer, Anonymous, Application | Gets image blob by image identifier. | 
Store safe controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetStoreSafes | QueryResultSettings settings | PageResult<StoreSafe> | Employee, | Get store safe list. | 
Warehouse controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetWarehouseById | string inventLocation | PageResult<StoreSafe> | Employee, Customer | Gets a Warehouse by its record identifier. | 
| SearchWarehouses | string searchText, QueryResultSettings queryResultSettings | PageResult<Warehouse> | Application, Employee, Customer | Retrieves a list of warehouses that matches the given search text. | 
| GetLocations | string inventLocation, QueryResultSettings queryResultSettings | PageResult<WarehouseLocation> | Application, Employee, Customer | Gets the warehouse locations of the specified Warehouse. | 
| SearchLocations | string inventLocation, string searchText, QueryResultSettings queryResultSettings | PageResult<WarehouseLocation> | Application, Employee, Customer | Retrieves a list of warehouse locations for the given warehouse that matches the given search text. | 
Recommendation controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Get | PageResult<Recommendation> | Application, Employee, Customer, Anonymous | Gets the list of recommendations. | |
| GetElements | string listId, RecommendationCriteria criteria, QueryResultSettings queryResultSettings | PagedResult<RecommendedElement> | Application, Employee, Customer, Anonymous | Gets the collection of recommended elements given the (optional) contextual information as criteria. | 
Transfer order controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Get | QueryResultSettings queryResultSettings | PageResult<TransferOrder> | Employee | Gets open transfer orders for the store. | 
| Commit | string orderId | Void | Employee | Commits a transfer order. | 
| GetTransferOrderJournals | string orderId, QueryResultSettings queryResultSettings | PageResult<TransferOrderJournal> | Employee | Gets the transfer order journals of the specified transfer order. | 
| GetTransferOrderLines | string orderId, QueryResultSettings queryResultSettings | PageResult<TransferOrderLine> | Employee | Gets the transfer order lines. | 
| CreateTransferOrderLines | string orderId, IEnumerable<TransferOrderLine> transferOrderLines, QueryResultSettings queryResultSettings | PageResult<TransferOrderLine> | Employee | Creates the transfer order lines. | 
| UpdateTransferOrderLines | string orderId, IEnumerable<TransferOrderLine> transferOrderLines, QueryResultSettings queryResultSettings | PageResult<TransferOrderLine> | Employee | Updates the transfer order lines. | 
| DeleteTransferOrderLines | string orderId, IEnumerable<TransferOrderLine> transferOrderLines, QueryResultSettings queryResultSettings | PageResult<TransferOrderLine> | Employee | Deletes the transfer order lines. | 
| GetTransferOrderComments | string orderId, QueryResultSettings queryResultSettings | PageResult<Comment> | Employee | Gets the comments of the specified transfer order. | 
| AddTransferOrderComment | string orderId, string commentedBy, string comment | Comment | Employee | Gets the comments of the specified transfer order. | 
| GetTransferPackingSlip | string orderId, string voucherId, ReceiptRetrievalCriteria criteria, QueryResultSettings queryResultSettings | PageResult<Receipt> | Employee | Gets the packing slip for the specified transfer order journal. | 
| PatchEntity | TransferOrder entity | TransferOrder | Employee | Saves a transfer order to the local database. | 
| GetEntityByKey | string orderId | TransferOrder | Employee | Gets a transfer order by order identifier. | 
| DeleteEntity | TransferOrder entity | void | Employee | Deletes the specified transfer order. | 
| CreateEntity | TransferOrder entity | TransferOrder | Employee | Creates transfer order. | 
Purchase order controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Get | QueryResultSettings queryResultSettings | PageResult<PurchaseOrder> | Employee | Gets open purchase orders for the store. | 
| Commit | string orderId | Void | Employee | Commits a purchase order. | 
| PatchEntity | PurchaseOrder entity | PurchaseOrder | Employee | Saves a purchase order to the local database. | 
| GetEntityByKey | string orderId | PurchaseOrder | Employee | Get a purchase order by order identifier. | 
Org units controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Get | QueryResultSettings queryResultSettings | PageResult<OrgUnit> | Application, Employee, Customer, Anonymous | Gets all organization as IQueryable. | 
| GetOrgUnitLocationsByArea | SearchArea searchArea, QueryResultSettings queryResultSettings | PageResult<OrgUnitLocation> | Application, Employee, Customer, Anonymous | Finds stores in a defined area. | 
| SearchOrgUnitLocations | OrgUnitLocationSearchCriteria orgUnitLocationSearchCriteria, QueryResultSettings queryResultSettings | PageResult<OrgUnitLocation> | Application, Employee, Customer, Anonymous | Search stores with specified filter criteria within current fulfillment group. | 
| GetAvailableInventory | string itemId, string variantId, string barcode, QueryResultSettings queryResultSettings | PageResult<OrgUnitAvailability> | Application, Employee, Customer, Anonymous | Get available inventory across all stores for an item identifier or barcode. | 
| GetProductAvailability | long productId, QueryResultSettings queryResultSettings | PageResult<OrgUnitAvailability> | Application, Employee, Customer, Anonymous | Get available inventory across all stores for a product. | 
| SearchProductAvailability | long productId, OrgUnitAvailabilitySearchCriteria orgUnitAvailabilitySearchCriteria, QueryResultSettings queryResultSettings | PageResult<OrgUnitAvailability> | Application, Employee, Customer, Anonymous | Search available inventory across all stores for a product. | 
| GetAvailableInventoryNearby | IEnumerable<ItemUnit> itemIds, SearchArea searchArea, QueryResultSettings queryResultSettings | PageResult<OrgUnitAvailability> | Application, Employee, Customer, Anonymous | Get available inventory of nearby stores for given list of items in defined search area. | 
| GetTillLayout | int? height, int? width | TillLayout | Application, Employee, Customer, Anonymous | Gets a single till layout. | 
| GetOrgUnitConfiguration | ChannelConfiguration | Application, Employee, Customer, Anonymous | Gets the configuration for the current organization unit. | |
| Search | SearchStoreCriteria storeSearchCriteria, QueryResultSettings queryResultSettings | PageResult<OrgUnit> | Application, Employee, Customer, Anonymous | Searches for organization unit by the given search query. | 
| GetTerminalInfo | string orgUnitNumber, int deviceType, QueryResultSettings queryResultSettings | PageResult<TerminalInfo> | Employee, | Retrieves terminal and device association information data of the store. | 
| GetProductAvailabilityByDimensions | IEnumerable<string> inventLocationIds, long productId, IEnumerable<ProductDimensionCombination> productDimensionCombinations, QueryResultSettings queryResultSettings | PageResult<OrgUnitAvailability> | Application, Employee, Customer, Anonymous | Gets orgUnit availabilities at each specified inventory location based on the given product dimensions. | 
| GetStoreHours | string storeNumber | StoreHours | Application, Employee, Customer, Anonymous | Retrieve the store hours for a given store number. | 
| GetEntityByKey | string orgUnitNumber | OrgUnit | Application, Employee, Customer, Anonymous | Gets organization entity by key. | 
Catalogs controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCatalogs | long channelId, bool activeOnly, QueryResultSettings queryResultSettings | PageResult<ProductCatalog> | Application, Employee, Customer, Anonymous | Gets catalogs by OData query. | 
Categories controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCategories | long channelId, QueryResultSettings queryResultSettings | PageResult<Category> | Application, Employee, Customer, Anonymous | Gets categories by OData query. | 
| GetChildren | long channelId, long categoryId, QueryResultSettings queryResultSettings | PageResult<Category> | Application, Employee, Anonymous | Gets subcategories by given Channel Id and Category Id. | 
| GetAttributes | long categoryId, QueryResultSettings queryResultSettings | PageResult<AttributeCategory> | Application | Gets categories' attributes by OData query. | 
| Get | QueryResultSettings queryResultSettings | PageResult<Category> | Application, Employee, Anonymous | Gets full list of categories as IQueryable. | 
AppInfo controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| UpdateApplicationVersion | string appVersion | void | Employee | Updates the POS device's current application version. | 
Attribute controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetAttributeDefinitions | AttributeDefinitionCriteria attributeDefinitionCriteria, QueryResultSettings queryResultSettings | PageResult<AttributeDefinition> | Employee | Gets the attribute definitions by an attribute group identifier. | 
Attribute group controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetAttributeGroupDefinitions | AttributeGroupDefinitionCriteria attributeGroupDefinitionCriteria, QueryResultSettings queryResultSettings | PageResult<AttributeGroupDefinition> | Employee | Gets the attribute group definitions by collection of attribute group identifiers. | 
Audit event controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| RegisterAuditEvent | AuditEvent auditEvent | void | Employee | Performs the audit event saving operation. | 
| RegisterAndGetAuditEvent | AuditEvent auditEvent | AuditEvent | Anonymous, Customer, Device, Employee, Application | Performs the audit event saving operation. | 
Shifts controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetShift | long shiftId, string terminalId | Shift | Employee | Gets the shift by shift id and terminal id. | 
| GetByStatus | int statusValue, QueryResultSettings queryResultSettings | PageResult<Shift> | Employee | Gets the shifts by status. | 
| GetByStatusFilterByUserRole | int statusValue, bool filterByUserRole, QueryResultSettings queryResultSettings | PageResult<Shift> | Employee | Gets the shifts by status. | 
| GetByRetrievalCriteria | ShiftRetrievalCriteria shiftRetrievalCriteria, QueryResultSettings queryResultSettings | PageResult<Shift> | Employee | Gets the shifts by retrieval criteria. | 
| UpsertAndValidateShifts | long? shiftId, string terminalId, IEnumerable<Shift> shifts | bool | Employee | Inserts or update given shifts and validate them. | 
| DeleteShifts | bool | Employee | Delete shifts is not supported in the online context. | |
| Open | Shift | Employee | Opens a new shift. | |
| Close | long shiftId, string terminalId, string transactionId, bool forceClose | Shift | Employee | Closes the shift for the given terminal. | 
| BlindClose | long shiftId, string terminalId, string transactionId, bool forceClose | Shift | Employee | Blind closes a shift. | 
| ForceDelete | long shiftId, string terminalId, string transactionId | void | Employee | Forcefully deletes a shift. Used to delete invalid shifts. | 
| Resume | long shiftId, string terminalId, string cashDrawer | Shift | Employee | Resumes a shift. | 
| Use | long shiftId, string terminalId | Shift | Employee | Uses an existing shift. | 
| Suspend | long shiftId, string terminalId, string transactionId | Shift | Employee | Suspends a shift. | 
| PostShift | Shift shift | HttpResponseMessage | Employee | Handles POST requests that create new shift | 
| PatchShift | long shiftId, string terminalId, Delta<Shift> delta | Shift | Employee | Handles Patch request that update existing shift. | 
| GetXReport | long shiftId, string terminalId, string transactionId, string hardwareProfileId | Receipt | Employee | Gets receipt for X report. | 
| GetZReport | string transactionId, string hardwareProfileId | Receipt | Employee | Gets receipt for Z report. | 
| ValidateCashDrawerLimit | string shiftTerminalId, long shiftId | void | Employee | Gets all suspended carts for given shift. | 
| GetSuspendedCartsByShift | string shiftTerminalId, long shiftId, QueryResultSettings queryResultSettings | PageResult<SuspendedCart> | Employee | Voids the suspended transactions for given shift. | 
| VoidSuspendedCarts | long shiftId, string shiftTerminalId | void | Employee | Voids the suspended transactions for given shift. | 
Async service controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetDownloadInterval | string dataStoreName | string | Device | Gets download interval. | 
| GetUploadInterval | GetUploadInterval | string | Device | Gets upload interval. | 
| GetTerminalDataStoreName | string terminalId | string | Device | Gets data store name. | 
| GetDownloadLink | string dataStoreName, long downloadSessionId | string | Device | Gets download link. | 
| GetDownloadSessions | string dataStoreName, QueryResultSettings queryResultSettings | PageResult<DownloadSession> | Device | Gets the download sessions. | 
| GetInitialDownloadSessions | string dataStoreName, QueryResultSettings queryResultSettings | PageResult<DownloadSession> | Device | Gets initial download sessions. | 
| GetUploadJobDefinitions | string dataStoreName, QueryResultSettings queryResultSettings | IEnumerable<string> | Device | Gets the download sessions. | 
| UpdateDownloadSession | DownloadSession downloadSession | bool | Device | Update download session status. | 
| PostOfflineTransactions | IEnumerable<string> offlineTransactionForMPOS | bool | Device | Posts offline transactions. | 
Card type controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCardTypes | QueryResultSettings queryResultSettings | PageResult<CardTypeInfo> | Application, Employee, Customer, Anonymous | Returns the list of card types. | 
| GetSupportedPaymentCardTypes | QueryResultSettings queryResultSettings | PageResult<string> | Application, Customer, Anonymous | Returns the list of payment cards supported by the payment connector. | 
Commission sales group controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetCommissionSalesGroups | QueryResultSettings queryResultSettings | PageResult<CommissionSalesGroup> | Employee | Gets collection of commission sales groups for the channel. | 
| SearchCommissionSalesGroups | string searchText, QueryResultSettings queryResultSettings | PageResult<CommissionSalesGroup> | Employee | Searches for the commission sales groups for the channel for a given search text. | 
Environment configuration controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetEnvironmentConfiguration | EnvironmentConfiguration | Anonymous, Employee, Application | Gets a single environment configuration. | |
| GetExtensionProfile | ExtensionProfile | Anonymous, Employee, Application | Gets the extension profile which can be used to download extension package and communicate with micro-services. | 
Extension package definition controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetExtensionPackageDefinitions | QueryResultSettings queryResultSettings | IEnumerable<ExtensionPackageDefinition> | Device, Employee, Application | Gets the configured extension package definitions. | 
Extensible enumeration package definition controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetExtensibleEnumerations | QueryResultSettings queryResultSettings | IEnumerable<ExtensibleEnumerationContainer> | Device, Employee, Application, Anonymous, Customer, Storefront | Gets all extensible enumeration classes. | 
Loyalty card controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| IssueLoyaltyCard | LoyaltyCard loyaltyCard | LoyaltyCard | Employee, Customer | Issues a new loyalty card. | 
| GetLoyaltyCard | string cardNumber | LoyaltyCard | Employee, Customer | Gets a loyalty card. | 
| GetCustomerLoyaltyCards | string accountNumber, QueryResultSettings queryResultSettings | PageResult<LoyaltyCard> | Employee, Customer | Gets the customer loyalty cards. | 
| GetLoyaltyCardTransactions | string cardNumber, string rewardPointId, QueryResultSettings queryResultSettings | PageResult<LoyaltyCardTransaction> | Employee, Customer | Gets the loyalty card transactions. | 
| GetLoyaltyRewardPointActivityTimeline | string cardNumber, string rewardPointId, QueryResultSettings queryResultSettings | PageResult<LoyaltyRewardPointActivity> | Employee, Customer | Gets the timeline activity for the reward point of a loyalty card. | 
| GetLoyaltyRewardPointActivityTimelineForExpiredPoints | string cardNumber, string rewardPointId, QueryResultSettings queryResultSettings | PageResult<LoyaltyRewardPointActivity> | Employee, Customer | Gets the expired points timeline activity for the reward point of a loyalty card. | 
| GetLoyaltyRewardPointsExpiringSoon | string cardNumber, string rewardPointId, int daysToExpiry, QueryResultSettings queryResultSettings | PageResult<LoyaltyRewardPointActivity> | Employee, Customer | Gets the loyalty card reward points that are going to expire soon. | 
Non sales transaction tender operations controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetNonSalesTransactions | string shiftId, string shiftTerminalId, int nonSalesTenderTypeValue, QueryResultSettings queryResultSettings | PageResult<NonSalesTransaction> | Employee | Gets the aggregated amount for non sale tender operation. | 
| CreateNonSalesTransaction | NonSalesTransaction nonSalesTransaction | NonSalesTransaction | Employee | Performs saving drawer type of operations like declare start amount / tender removal / float entry. | 
| GetAffiliations | QueryResultSettings queryResultSettings | PageResult<Affiliation> | Employee | Gets affiliations. | 
Operations controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetOperationPermissionById | int operationId | OperationPermission | Employee | Gets Operation permission by using operation identifier. | 
| GetOperationPermissions | QueryResultSettings queryResultSettings | PageResult<OperationPermission> | Employee | Returns a collection of operation permissions. | 
| SearchJournalTransactions | TransactionSearchCriteria searchCriteria, QueryResultSettings queryResultSettings | PageResult<Transaction> | Employee | Returns a collection of transactions matching the specified search criteria. | 
| GetInventoryAvailableToPromise | long productId, string itemId, string inventoryLocationId, QueryResultSettings queryResultSettings | PageResult<InventoryAvailableToPromise> | Employee | Get available inventory across all stores for a product. | 
| VoidSuspendedTransactions | IEnumerable<string> suspendedCartIds | void | Employee | Void the suspended transactions specified by given cart ids. | 
Shift reconciliation lines controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetShiftReconciliationLines | ShiftReconciliationLineRetrievalCriteria shiftReconciliationLineRetrievalCriteria, QueryResultSettings queryResultSettings | PageResult<ShiftReconciliationLine> | Employee | Gets download interval. | 
| ReconcileLines | IEnumerable<ShiftReconciliationLine> lines, string description | void | Employee | Reconciles the lines. | 
| UndoReconciliation | IEnumerable<ShiftReconciliationLine> lines | void | Employee | Unreconciles all the lines that are a part of any of the groups in the lines passed in. | 
Stock count journal controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| Get | QueryResultSettings queryResultSettings | PageResult<StockCountJournal> | Employee | Gets StockCountJournal entities as IQueryable. | 
| Sync | QueryResultSettings queryResultSettings | PageResult<StockCountJournal> | Employee | Syncs the Stock Count journal from AX to RetailServer DB and gets the current list of SC journal from DB. | 
| SyncTransactions | string journalId, QueryResultSettings queryResultSettings | PageResult<StockCountJournalTransaction> | Employee | Syncs the Stock Count journal from AX to RetailServer and gets the current list of journal transactions. | 
| RemoveJournal | string journalId | void | Employee | Deletes the stock count journals from local. | 
| RemoveTransaction | string journalId, string itemId, string inventSizeId, string inventColorId, string inventStyleId, string configId | void | Employee | Deletes the stock count journal transaction from local. | 
| RemoveStockCountLineByLineId | string journalId, long stockCountLineId | void | Employee | Deletes the stock count journal transaction from local by stock count line identifier. | 
| RemoveStockCountLineByProductRecId | string journalId, long productRecId | void | Employee | Deletes the stock count journal transaction from local by product identifier. | 
| Commit | string journalId | void | Employee | Commits the list of Stock journal transactions to AX. | 
| GetEntityByKey | string journalId | StockCountJournal | Employee | Creates journal entity. | 
| UpdateEntity | StockCountJournal entity | StockCountJournal | Employee | Updates journal entity. | 
| PatchEntity | StockCountJournal entity | StockCountJournal | Employee | Partially updates journal entity. | 
Scan result controller
| API | Parameter | Return value | Supported Commerce Roles | Description | 
|---|---|---|---|---|
| GetEntityByKey | string scannedText | ScanResult | Employee | Gets the ScanResult entity by key. |