Architecture of Microsoft Dynamics AX Retail Server

Applies To: Microsoft Dynamics AX 2012 R3

This topic describes the architecture of Retail Server. Retail Server provides services and business logic for Modern Point of Sale (POS) clients.

Retail Server is installed by using Microsoft Dynamics AX Setup.exe or Windows PowerShell. You can install it on a server in a store or in a datacenter. 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.

Figure 1: Architecture of Microsoft Dynamics AX Retail Server

The Dynamics AX Retail Server architecture

Retail Server utilizes the following concepts.



Entity type

An entity type is an entity that has a lifecycle you want to monitor. Each entity type has a key. An example of an entity type is Customer.

Complex type

A complex type is an OData concept that is designed to avoid duplication by grouping certain related properties. These related properties can be reused in multiple entities. For example, Customer is an entity type that has a customer address, which is a wrapper that contains an address line, city, state, and zip code. Customer address is a complex type that can be reused by other entity types like Order, because the Order entity type would need the same address information that is associated with the Customer entity.


A controller is a mapping for an entity type that controls CRUD behaviors and actions for the entity type. Microsoft Dynamics AX provides a controller for each commerce entity. You can customize the following controllers:





Commerce Lists

Composite Key Entity

Controller Assembly Resolver



Non-Bindable Action

Org Units

Picking Lists


Purchase Orders

Sales Orders


Stock Counts Journals

Transfer Orders


Metadata defines the contract between the client and the server.

You can create your own entity type or complex type, extend an existing controller, add a new controller, and customize the metadata. If you customize commerce runtime, you must also customize various components in Retail Server to expose those changes to your Modern POS clients.

See also

Microsoft Dynamics AX Retail Server

Install Retail Server

Retail Modern Point of Sale

Retail Modern POS architecture

Create a new Retail Server Controller

Extend the metadata