Retail Server customer and consumer APIs

Important

This topic applies to Dynamics 365 Retail and Dynamics 365 Commerce (Preview).

This topic 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 eCommerce clients.

Overview

  • Retail Server 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 Retail Server (via retail proxy) operates under these main roles:

  • CommerceRole.Employee
  • CommerceRole.Anonymous
  • CommerceRole.Customer
  • CommerceRole.Application

The Anonymous and Customer roles apply to eCommerce (customer/consumer) scenarios. The Anonymous role is used for requests that represent an eCommerce customer who hasn't signed in. The Customer role is used for requests that represent an eCommerce customer who has been authenticated and has signed in. A role filter is applied to every API that is exposed in Retail Server. For eCommerce scenarios, you can use only APIs that have either CommerceRole.Anonymous or CommerceRole.Customer associated with them.

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 Retail 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.

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 tring 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.

Discount controller

API Parameter Return value Supported Commerce Roles Description
GetDiscountCodes QueryResultSettings queryResultSettings PageResult<DiscountCode> Employee Gets collection of discount codes.
GetDiscountCodesByOfferId string offerId, QueryResultSettings queryResultSettings PageResult<DiscountCode> Employee Gets collection of discount codes filtered by offer identifier.
GetDiscountCodesByKeyword string keyword, DateTimeOffset activeDate, QueryResultSettings queryResultSettings PageResult<DiscountCode> Employee Searches the discount codes.
GetDiscountCode string discountCode DiscountCode Employee Gets the discount code.

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, Applicationn 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.

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.