Retail Modern Point of Sale
Important
This content is archived and is not being updated. For the latest documentation, see Microsoft Dynamics 365 product documentation. For the latest release plans, see Dynamics 365 and Microsoft Power Platform release plans.
Applies To: Microsoft Dynamics AX 2012 R3
Microsoft Dynamics AX 2012 R3 includes Retail Modern POS, a point-of-sale app for PCs, tablets, and phones. Sales staff can process sales transactions, customer orders, and perform daily operations and inventory management with mobile devices anywhere in the store, as well as at PC-based registers.
The Retail Modern POS app can either connect to a database directly, or to Retail Server.
Learn Install Extend Configure |
Learn
Retail Modern POS clients can communicate with databases in your store, or Retail Servers that are deployed in your store or in a data center. Retail Modern POS clients can also communicate with peripheral devices such as cash drawers, credit card readers, and printers either directly, or by using Microsoft Dynamics AX Hardware Station. If you use Hardware Station, it must be deployed in your store, so that all Retail Modern POS clients can connect to the same Hardware Station.
Task |
Details |
Topics |
---|---|---|
Learn about the Retail Modern POS architecture |
The topic describes the components of Retail Modern POS and includes technical architecture diagrams. |
|
Learn about the Retail Server architecture |
The topic describes the components of Retail Server and includes technical architecture diagrams. |
Install
The following tables provide information about the Microsoft Dynamics AX features and components that you must install before you install Retail Modern POS.
Install components at headquarters
Install the following components at the headquarters location.
Task |
Details |
Topics |
---|---|---|
Deploy Microsoft Dynamics AX |
Retail Modern POS is a component of AX 2012 R3. |
|
Install and configure Retail Headquarters |
When you install Retail Headquarters by using Setup, you install the basic components to run Microsoft Dynamics AX Retail. |
|
Install and configure components of Commerce Data Exchange |
Commerce Data Exchange is a system that transfers data between Microsoft Dynamics AX and retail channels. At headquarters, you must install Commerce Data Exchange: Async Server and Commerce Data Exchange: Real-time Service. |
Install Commerce Data Exchange: Async Server Specify working folders for Commerce Data Exchange Install Commerce Data Exchange: Real-time Service (Retail Transaction Service) |
Install Retail SDK |
The Retail Software Development Kit (SDK) includes code samples, templates, and tools to customize Microsoft Dynamics AX 2012 Retail clients. |
Install components at the stores
Install the following components at each store location.
Task |
Details |
Topics |
---|---|---|
Install and configure components of Commerce Data Exchange |
Commerce Data Exchange is a system that transfers data between Microsoft Dynamics AX and retail channels. At stores, you must install Commerce Data Exchange: Async Client. |
|
Create channel databases |
Each store location must have a channel database to store the data that is needed for retail transactions. POS devices connect to the channel database to access data and to upload transactions. |
Create a channel database or an offline database (AX 2012 R3) |
Install Retail Server |
Retail Server provides services and business logic for Retail Modern POS clients. |
|
Install the Windows 8.1 packaged Retail Modern POS app |
The Microsoft Dynamics AX Windows 8.1 Retail Modern POS is a fully-functional app. You can install it by using the Microsoft Dynamics AX setup wizard or Windows PowerShell. If you want to customize this app, then you must use a different installation method. See the next row in this table. |
|
Install an app from the Retail SDK |
You may want to install another app. For example, you can install the Windows 8.1 app or the Windows Phone app from the Retail SDK. You can customize those apps or create your own. If you do, you must utilize side-loading to install your app. For more information, see Extend. |
Extend
You can customize the behavior of your modern POS system in several ways. For example, you can modify the information that is made available to modern POS by extending a commerce entity to include a new column from your Microsoft Dynamics AX database. You can then make use of that new column in commerce runtime in a service and workflow, and then expose it in the commerce runtime API. Because you modified the commerce entity, you would also need to customize the corresponding controller and metadata in Retail Server. For an end to end customization example, see Walkthrough: Extend Modern Point of Sale for Microsoft Dynamics AX.
In other extensibility scenarios, you wouldn’t need to modify every layer of the stack. For example, you could simply modify the way a workflow behaves without modifying the database schema.
The Retail SDK includes apps for various clients. You can customize those apps to match the branding of your organization or to extend their functionality.
Extend Microsoft Dynamics AX
Task |
Details |
Topics |
---|---|---|
Customize the database schema |
If you add one or more new fields to a table in Microsoft Dynamics AX, a commerce entity in the commerce runtime automatically includes those fields as long as you make changes to the stored procedure or view to return the additional field. |
Customize the Data in a Commerce Entity Walkthrough: Adding a table for customer preferences to the AX 2012 database |
Customize Commerce Data Exchange: Real-time Service |
Commerce Data Exchange: Real-time Service is a Windows Communication Foundation (WCF) service that uses .NET Business Connector to enable retail clients to communicate with Microsoft Dynamics AX in real time. You can customize Real-time Service by adding extension methods to the RetailTransactionServiceEx class. |
|
Enable debugging |
You can use the X++ debugger to debug from commerce runtime to Real-time Service to Microsoft Dynamics AX, but you must create Microsoft Dynamics AX configurations for your local client and Business Connector, and then update the Business Connector configuration in the registry editor. |
Extend commerce runtime
The commerce runtime is a set of assemblies that enables your store to obtain interactive data based on a shopping cart. The commerce runtime includes several services that query for real-time data. It also includes workflow business logic that enforces rules for your store.
Task |
Details |
Topics |
---|---|---|
Customize data in a commerce entity |
The CommerceEntity class is a property bag of key value pairs of C# properties. These properties provide string representations of fields from the database so that you do not need to remember the names of columns in your database when you write code. For any existing data type, if you add one or more new fields to a table in Microsoft Dynamics AX, the commerce entity automatically includes those fields as long as you make changes to the stored procedure or view to return the additional field. |
Customize the Data in a Commerce Entity Walkthrough: Adding a table for customer preferences to the AX 2012 database Walkthrough: Extending the CRT to add customer preference data for Retail clients |
Customize services |
Microsoft Dynamics AX offers many services in the commerce runtime that support the basic functionality of a store. If one of these services does not meet the needs of your store, you can replace it with your own service and continue to use the other services that are installed with the commerce runtime. |
Services Overview for Commerce Runtime |
Customize workflow |
The commerce runtime includes workflow business logic that enforces rules for your business. You can use the workflows that are included in commerce runtime or create your own. |
|
Use the API |
You can use the API for things like getting information about items, price calculation, shipping calculation, and placing orders. You can extend the API to fit your business processes. |
.NET Framework Classes for Microsoft Dynamics AX Commerce Runtime |
Deploy your commerce runtime customizations |
After you customize the functionality of your store in the commerce runtime, use the GAC utility to copy your new DLLs to your solution. |
Extend Retail Server
The Microsoft Dynamics AX Commerce runtime is wrapped in a Retail Server layer. Retail Server uses a web API with OData to support thin clients within the store like tablets and phones. Commerce runtime communicates through Commerce Data Exchange services to Microsoft Dynamics AX for Retail Headquarters.
Task |
Details |
Topics |
---|---|---|
Create a new controller |
If you create a new commerce entity or complex type, you need to create a new controller to expose actions that you want to be available. After you create a new controller, you must modify the metadata to use it. |
|
Extend an existing controller |
You can integrate a new controller or extend on of the controllers that come with Microsoft Dynamics AX. If you add a commerce entity or action, you must modify the metadata to use it. |
|
Extend metadata (OData) |
Metadata defines a contract between client and server. It exposes the entity definition and action definition, so when you make a change on the server side, you can use a tool on the client side to generate proxy code, reducing maintenance effort for developers. To consume new commerce entities and actions, you must extend the metadata, otherwise the client won’t know about it. |
|
Use Web API and OData controllers together |
You can create your own Web API controller and extend the Web API configuration as an alternative to using the standard OData controllers. |
|
Retail Server reference |
You can reference API documentation for the Microsoft.Dynamics.Retail.RetailServerLibrary assembly. |
.NET Framework Classes for Microsoft Dynamics AX Retail Server |
Incorporate your changes |
You need to copy the DLL into the retail server bin folder. You need to repackage the new DLL into the same MSI installation package. You also need to modify the Web.config file to make sure the DLL is processed, just like the commerceruntime.config file. |
Extend clients
You can customize the look and feel of a Modern POS client to make it an extension of your brand. We recommend that you use your own file names and namespaces for any customizations.
Task |
Details |
Topics |
---|---|---|
Extend Modern POS for a Windows client |
You can install the Windows 8.1 packaged Retail Modern POS app by using the Microsoft Dynamics AX setup wizard, but you can’t extend it. The Retail SDK includes sample code that you can use to extend the Windows 8.1 Retail Modern POS app to meet your needs. To use the Windows 8.1 Retail Modern POS sample code that is included in the Retail SDK, you must install for Visual Studio 2012 and 2013. |
TypeScript for Visual Studio 2012 and 2013 Walkthrough: Extend Modern Point of Sale for Microsoft Dynamics AX |
Extend Modern POS for Windows Phone client |
The Retail SDK includes sample code that you can use to create your own Windows Phone Retail Modern POS app. |
|
Enable Modern POS for Windows Phone reports |
The Windows Phone app in the Retail SDK contains code you can use for reports. You must install Silverlight libraries, uncomment code from certain files in the Windows Phone app, and then add references to the Silverlight toolkit. |
|
Package your changes |
After you have customized one of the mobile apps that are available in the Retail SDK, you can package your solution so that it can be installed on devices. To package your app, in Visual Studio, click Project > Store > Create App Packages. On the Create Your Packages screen, select No, and then complete the wizard. |
|
Install a customized app |
After you extend one of the apps that are available in the Retail SDK, you must use side-loading to install it to devices. |
Configure
Before you can process transactions or perform any other retail operations using Retail Modern POS, you must first set up your retail store in Microsoft Dynamics AX. Each retail store can have its own payment methods, price groups, point-of-sale (POS) registers, income accounts and expense accounts, and staff.
The following tables describe the configuration tasks that you must complete in Microsoft Dynamics AX for a retail store.
Prerequisites
Task |
Details |
Topics |
---|---|---|
Configure organization structures for Retail |
Set up organization hierarchies for retail assortments, replenishment, and reporting. Organization hierarchies represent the relationships between the organizations that make up your business. When you set up stores, you can add them to an organization hierarchy. The stores then share data that is used for assortments, replenishment, and reporting. |
|
Set up address books for employees and customers |
Microsoft Dynamics AX 2012 includes a global address book that is shared among all companies in your environment. The global address book stores party record information for each organization or person that your organization has contact with. |
|
Set up a warehouse to represent the retail store |
A retail store is considered a type of warehouse. First, you create a warehouse and define it as a store. Then, you create a new store and assign the warehouse to it. |
|
Set up number sequences for retail stores, store statements, and statement vouchers |
Before you can create stores, statements and statement vouchers, you must set up number sequences for them. |
|
Configure parameters for Retail |
Set parameters to configure Retail for your business. Parameters provide default settings and values. |
|
Set up the methods of payment that the store accepts |
If you accept payments that are made by using checks, credit cards, debit cards, corporate charge cards, gift cards, customer credit, and other forms of payment, you must set up each payment method for your organization. You can assign specific payment methods to each store and then set up store-specific settings for each payment method. To process credit card transactions at retail point-of-sale (POS) registers, you can also set up payment services. |
Setting up payment methods (Retail) Set up payment connector (optional) |
Set up sales tax groups |
Sales tax groups are groups of sales tax codes that are attached to customers and vendors. The sales taxes that apply to a transaction are determined by the sales tax codes that are included both in the sales tax group and in the item sales tax group of the transaction. |
|
Set up retail products, product hierarchies, product variants, and product assortments |
Before you can offer products for resale in your retail channels, you must create and configure the products in Microsoft Dynamics AX. To link the products that you sell to the retail channels that sell those products, you must set up product assortments. |
|
Set up retail product pricing |
Use price groups to create and manage prices and discounts for retail products. For example, you could use price groups to offer specific products at different prices to different groups of customers in different stores. |
|
Set up staff |
Before workers can perform their job duties in the retail store, you must set up the workers in Microsoft Dynamics AX. You must also assign appropriate permissions to the workers, so that they can log on and perform tasks. |
|
Configure the Retail POS profiles and other settings to assign to the store |
Profiles include basic information about the receipts, appearance, and functionality of the registers at the stores. |
Set up a retail store
Task |
Details |
Topics |
---|---|---|
Create a retail store |
A retail store is considered a type of warehouse. First, you create a warehouse and define it as a store. Then, you create a new store and assign the warehouse to it. |
|
Assign a sales tax group to the store |
A sales tax group is required for each store. |
|
Assign the accepted payment methods to the store |
After you create a payment method in Retail, you can assign the payment method to stores. Multiple payment methods for stores can be based on a single organization-wide payment method. Each store payment method can have different settings. |
|
Add details to product descriptions |
Use product attributes to add merchandising details, such as rich text, images, and videos to the descriptions of products that you offer in your retail stores or in product catalogs. |
|
Add the store to an organization hierarchy |
Add the store to an organization hierarchy that is assigned to a purpose of Retail assortment, Retail replenishment and Retail reporting. You use the hierarchy to select the stores that you distribute assortments to or replenish stock for. For example, you assign a store to an organization hierarchy with a purpose of Retail assortment. Then, when you distribute assortments to retail channels, you can select only the retail channels that are included in this organization hierarchy. |
After you set up a retail store
Task |
Details |
Topics |
---|---|---|
Configure the point of sale (POS) registers for the store |
When you set up a register in Retail POS, you select a hardware profile and a visual profile for the terminal. A hardware profile determines the physical configuration of a terminal and a visual profile determines its screen characteristics. You can assign the profiles either to a specific register or to a group of registers. |
|
Assign product assortments to the store |
The assortment that is assigned to a store contains a list of products that are available in the store.
Note
You can assign the retail store to an existing assortment or create a new assortment for the retail store.
|
|
Process assortments |
Process assortments to generate the list of products that are included in the assortment and to make the products available in the retail store. |
Set up data exchange between Microsoft Dynamics AX and the store
Task |
Details |
Topics |
---|---|---|
Set up channel integration profiles |
Profiles enable the components of Retail to communicate with each other. Set up profiles before you configure data exchange settings. |
Set up a profile for Async Server |
Configure data distribution and scheduling |
A channel data group is a group of one or more retail channel databases. A data package is generated for each data group. All channel databases in a data group subscribe to the same data. Scheduler jobs are the mechanism for distributing data to and from stores. Jobs are made up of subjobs, which specify how to distribute the data in selected tables and selected table fields. |
|
Send configuration settings and data to the stores |
After store settings and data exchange settings have been configured in Microsoft Dynamics AX, run jobs to distribute data to the channel database. In the Channel database form, click Full data sync and then select the distribution schedule that is named Full sync. |