Thursday, 30 April 2015

AX 2012 R3 Retail and eCommerce Licensing Guide

This blog post will provide you the information about the licensing for the Microsoft Dynamics AX for Retail R3 version. I found an interesting white paper on the licensing for Retail R3 and though of sharing with all those AX for Retail consultant who want to get some information on new and simplified pricing and licensing model specifically designed for retail and eCommerce configurations.

There are three separate licensing configurations for Retail R3:

•Traditional Store (Brick and mortar store)

•Mobile POS


There are basically 2 types of licensing models:

•Server + CAL Licensing – This licensing will be utilized by Traditional Store (Brick and mortar store) and Mobile POS.

•Per Core Licensing – This licensing will be utilized by eCommerce Below are the pricing that will go into effect for retail and eCommerce configurations.

The below pricing information is fetched from the Microsoft partnersource and subject to change.

1.Retail configurations:

 •All store locations will need to license a Store Server

This new Store Server SKU provides access to the following new capabilities:

A.Local caching for offline use of data

B.Centralization of POS in the store.

C.Local management of items such as promotions

•The Task CAL continues to provide rights to operate a Point of Sale Device.

Please note that the price of the Task User CAL will remain the same.

2.eCommerce configurations:

 •To access the eCommerce functionality customers must license based on the number of cores in the server. The new Commerce Server SKU provides access for 2 cores.

 The number of core licenses needed depends on whether you are licensing the physical server or individual virtual Operating System Environments (OSEs).

Go through the Retail licensing guide (Microsoft Dynamics AX 2012 R3 Retail Licensing Scenarios Brief) and pricing guide (AX2012R3RetailLicensingAnnouncement) for detailed information.

Hope this will help you understand the licensing and pricing for Retail scenarios

Modern POS Activation in Dynamics AX for Retail R3 Cumulative Upate 8

With the latest version Microsoft Dynamics AX 2012, Microsoft has came out with the Mobile application for Retail POS which includes Retail Modern POS, a point-of-sale app for PCs, tablets, and phones. The modern POS includes the basics around tender/transaction, but now also extends into a rich clienteling or assisted sales offering, as well as back office capabilities at the employees fingertips. The power of this new modern POS is that it becomes much more than a Point of Sale experience – it is a customer engagement dashboard!

I would like to give you a brief walk-through on the installation and activation process of Modern POS. Follow below steps to install and activate Modern POS in Windows Server 2012 R2 or Windows 8.

Install Desktop Experience

The Desktop Experience feature enables you to install a variety of Windows 8 features on your server running Windows Server 2012. If you use Windows Server 2012 as your primary operating system, you might want to have some of these Windows 8 features available for your daily use.

Install Desktop Experience in Windows server 2012 R2
  1. Click Start, point to Administrative Tools, and then click Server Manager.
  2. In Server Manager, click Features, and then in the Server Manager Details pane, under Features Summary, click Add features.
  3. The Adding Features Wizard starts.
  4. In the Features list, select Desktop Experience, and then click Install.
The desktop experience is not required to install for Windows 8 OS

Developer license

In most cases, if you want to install and test an app, you must get a developer license for each machine on which you want to run the app.

Getting a developer license at a command prompt
If you aren’t using Visual Studio 2013, you can get and manage developer licenses at a command prompt by running these commands in Windows PowerShell.
  • Show-WindowsDeveloperLicenseRegistration. This command opens a dialog box from which you can get a developer license and install it on the local machine. To run this command, you must have a valid Microsoft account. You also must run this command in a command prompt with elevated permissions.

  • Get-WindowsDeveloperLicense. This command returns an object that has two properties: ExpirationTime and IsValid. ExpirationTime is a System.DateTime structure that contains the date and time when the license expires. IsValid is a System.Boolean that indicates whether the license is valid. You can run this command from a command prompt that doesn’t have elevated permissions.

  • Unregister-WindowsDeveloperLicense. This command warns you that some apps will stop working if you remove the developer license from the local machine. If you choose “Yes” (the default) to confirm that you want to remove the license, the license is removed from the local machine. You must run this command in a command prompt with elevated permissions.

Configure Group Policy for side loading

  1. Open the Group Policy Management Editor
  2. Click to expand Computer Configuration, Administrative Templates, Windows Components, and then App Package Deployment.
  3. Double-click the Allow all trusted apps to install setting.
  4. In the Allow all trusted apps to install window, click Enabled and then click OK.
  5. Setting the Group Policy to allow trusted applications updates the following registry setting:
    HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Appx\AllowAllTrustedApps = 1

Install the prerequisites for Modern POS

  1. You can install Visual Studio Express 2013 to obtain the files, and then manually install the prerequisites for Modern POS.
  2. Download and install Visual Studio Express 2013.
  3. Copy and paste the following files to the specified locations.
    File1: Microsoft.WinJS.2.0.appx
    Copy from “\Program Files (x86)\Microsoft SDKs\Windows\v8.1\ExtensionSDKs\Microsoft.WinJS.2.0\1.0\
    To “\Program Files (x86)\Microsoft Dynamics AX\60\Retail Modern POS\x64\Dependencies\”
    File2: Microsoft.VCLibs.x64.12.00.appx
    (64-bit operating systems only)
    Copy from “\Program Files (x86)\Microsoft SDKs\Windows\v8.1\ExtensionSDKs\Microsoft.VCLibs\12.0\AppX\Retail\x64\ “
    To “\Program Files\Microsoft Dynamics AX\60\Retail Modern POS\x64\Dependencies\x64\”
    File3: Microsoft.VCLibs.x86.12.00.appx
    (32-bit operating systems only)
    Copy from “\Program Files (x86)\Microsoft SDKs\Windows\v8.1\ExtensionSDKs\Microsoft.VCLibs\12.0\AppX\Retail\x86\”
    To “\Program Files (x86)\Microsoft Dynamics AX\60\Retail Modern POS\x86\Dependencies\x86\ “

Manually install the prerequisites.

  1. Open a Windows PowerShell session as an administrator.
  2. Run the following command to install WinJS. Add-AppxPackage “:\Program Files (x86)\Microsoft Dynamics AX\60\Retail Modern POS\x64\Dependencies\Microsoft.WinJS.2.0.appx
  3. Run one of the following commands to install VCLibs.
    On a 64-bit operating system
    Add-AppxPackage “:\Program Files (x86)\Microsoft Dynamics AX\60\Retail Modern POS\x64\Dependencies\x64\Microsoft.VCLibs.x64.12.00.appx
    On a 32-bit operating system:
    Add-AppxPackage “:\Program Files (x86)\Microsoft Dynamics AX\60\Retail Modern POS\x86\Dependencies\x86\Microsoft.VCLibs.x86.12.00.appx

Install Modern POS using Power Shell

Run Install-Retail Modern POS command through power shell to install Modern POS.
Power Shell Command
.\Install-RetailModernPOS.ps1 “C:\Program Files (x86)\Microsoft Dynamics AX\60\Retail Modern POS”

Configuring Retail Server using Power Shell

Retail server is very important component for Modern POS. Power Shell Command to deploy retail server –
$Cred = @((New-Object System.Management.Automation.PSCredential(‘domain\aosadmin’,(ConvertTo-SecureString ‘Aos@admin123′ -AsPlainText -Force))))
.\DeployRetailServer.ps1 -SettingsXmlFilePath .\rs-settings-updated.xml -TopologyXmlFilePath .\rs-topology-updated.xml -Credential $Cred -Authentication $Cred
Go to Retail server’s web.config and make sure RequireSSL setting is “false”

Test the Retail Server

Run this URL on browser.

Modern POS Activation

1. Start the Microsoft Dynamics AX Modern POS app.
2. In the Device Activation page, enter the URL for the Retail Server. After you enter the URL, the device is queued in the Microsoft Dynamics AX client where it must be approved. After the device has been approved, the client is ready to use.

 Troubleshooting MPOS

There are many hurdles in installing and activating the MPOS. I am trying to consolidate the solutions and below are few which can help you in fixing the issues.
  1. User ‘000XXX’ logon request error –
  2. Wrong End point exception –
Hope this will help you install and activate the Modern POS. Do like the post and comment if you face any difficulty in installing the MPOS.

Tuesday, 28 April 2015

AX for Retail 2012 R3 Receipt Printing Enhancements: Print Multiple Logos and Select Images in AX Client

AX for Retail 2012 R3 introduced a new feature on the Receipt Format Designer that allows you to select a specific image for your Receipt Logo.   In previous versions of AX for Retail you had to place a specific logo file on each terminal, either as a local bitmap on the file system or directly into the printer’s memory.  This made for a lot of effort if you ever wanted to change the logo on your printed receipt.  The new functionality now allows you to centrally manage your receipt images directly from Headquarters, and even provides the ability to have multiple logos on the same receipt.

Importing the Images

To use the new method of printing logos you first need to import the images you want to print into the RetailImages table in Headquarters.  Loading the Image into AX is pretty straightforward;  simply go to Retail > Setup >  POS  > Images:

Click New to create a new image and enter a value for Image ID.  Once the ID is set click the Select Image button and load the image from your file system.  This will then insert the image into the RetailImages table in the AX Database.   You will also see a preview of the logo:

Close the window after uploading the image file.

Adding the Logo to the Receipt

Once the image has been added to the table you will be able to add it to your receipt using the receipt designer.  Go to Retail > POS > Receipt Formats and select the receipt you want to modify.  Click the Designer button.

Adding a logo to the layout is the same as previous versions:  simply drag the Logo field from the field list onto either the Header or Footer section.  For this example I'm going to stick with the demo data example of having the logo at the top of the header:

Note that the field just says “Logo” when you drop it on the form. If you leave it as-is, EPOS will look for look for the file RetailPOSLogo.bmp in your POS folder and use that when printing (just like previous versions).  However, the new feature allows you to change any logo field to print a specific image.

Make sure the Logo field is selected and click on the new Select Image button at the bottom of the window:

This will bring up the Select Image form.  Select the ID of the logo you want to use on this receipt and click Select Image.

If you look closely at the Logo field on the form you will see that it now shows the specific logo ID:

If you want multiple logos, simply drag new logo fields anywhere you want into the Receipt Layout and repeat the process to select a different image.  Note that you can have as many different images on as many different receipts as you want.

Testing the Logo

Hopefully you remembered to click the Save button before you closed the designer form.  In order to test the receipt all you need to do is push your changes to the channel database.  EPOS will automatically use the new receipt layout and images you stored to the RetailImages table.  All of the tables you need to replicate are in the 1090 job.

If everything works correctly you should see your (multiple!) images on your printed receipt:


Here are a few things to keep in mind with this new feature:
  1. In R2 and previous versions EPOS used to scale the image to exactly 250 pixels wide.   In R3 the image is sent to the printer as is (it literally sends an OPOS constant called
(“PTR_BM_ASIS”).  If your image is larger than the OPOS printer can handle it will not print your logo.  Due to differences in Printer hardware you may need experiment different image widths in order to print your logo.
  1. Depending on your Receipt Printer you may be able to print color bitmaps.  However we typically get the best results using a monochrome bmp file.

With the new method EPOS loads the images from the channel database every time a receipt is printed.   If you are having network or SQL Server limitations you may want to use the default logo to reduce network congestion.  Logo bitmaps tend to be rather small in size, though, so this may not be a problem.

How to slip-stream AX 2012 R3 Cumulative Update 8

With the release of CU 8 for AX 2012 R3 the process for doing a slip-stream installation of AX has changed slightly.  In the past we released one CU package file that could be used for both slip-streaming and updating.  With R3 Cu 8 we now have two different package files, one for doing an upgrade (R3 RTM to the next CU) and an R3 RTM Slip-Stream package file.  This often leads to confusion about whether or not you download the right package file and slip-streamed it properly.  To help clear up some of this and hopefully make your upgrades to AX 2012 R3 a lot smoother I thought I'd take a quick minute and cover this topic.  The steps below are written for R3 Cu 8, however you can use this example same process to slip-stream any individual hotfix into R3 with your new deployments as well. 
Because Ax 2012 R3 makes great use of  LCS (Life Cycle Services), you will need an account on here to download CU 8 as it only available via  LCS.
To Start:

1. Log into your LCS Account  (

2. Select an AX 2012 R3  Project  (if you don't have one, just create a new one, but remember to select your type as R3, or you won't be able to see the R3 updates)

3. After signing into your Project  go over to the More Tools Section and Click the Updates  Button

4. Under the Updates to Include With New Installations > Click Cumulative Update 8 Slip Stream

5. Select to save the DynamicsAX2012R3-KB2998197-SlipStreamOnly.exe  file to a location on your hard drive

6. Browse to the Folder you save the file to and Double Click   DynamicsAX2012R3-KB2998197-SlipStreamOnly  to extract the files

 7. You should now have the four folders extracted (Notice there is no longer an Axupdate.exe file with the Slip-Stream Installer, this is an expected change with R3 CU8 slipstream file)

8. Now Create a new Folder named "CU 8"  and move the above four folders into it.

9. Locate your original AX 2012 R3 Install files, and copy the CU8 Folder you created into the "updates" folder.

Inside the CU 8 Folder we have our four files:

10. Launch the Setup.exe file located in the main AX install folder.    

**The differences starting in CU 8 are that we no longer package one CU update for both Slip Stream and Upgrades version.  These are now separate installation files.  If you try to use the AX Upgrade package this won't work.    The best way to tell what package you currently have downloaded is to see if you have an axupdate.exe file If you do then you are using the upgrade version, which cannot be slipstreamed in the R3 RTM installation files.

** Starting in R3 we no longer allow the update subfolders to be directly in the Updates folder.  Every update that is slipstreamed must be placed into its own folder inside of the Updates folder.   So for example if I wanted to SlipStream KB 299999, and KB 12345678. I need to create two folders inside of the Updates folder one for each KB that I want to install.  For Example:   Updates\KB299999  and Updates\KB12345678


Friday, 17 April 2015

Using Post Inventory along with Calculate and Post Statement in AX 2012 Retail

On multiple occasions I have had questions or seen confusion surrounding the usage of Post Inventory in conjunction with Calculate Statement and Post Statement for keeping inventory up-to-date and posting sales transaction.

Let's first define the purpose of each process:

Post Inventory
When running the Post Inventory, this looks for all unposted transactions that have been synced from POS to AX using the P-job.  This will reserve inventory as needed for each item in the transactions.  Normally this will update the “Physical reserved” if there is a quantity available in Physical Inventory.  If there is not enough available inventory, then the “On Order” will be updated.  To keep your on-hand inventory accurate, you should run this batch job frequently throughout the day.  NOTE: This does NOT need to be ran prior to a statement posting, this is only ran throughout the day to keep inventory numbers current.

Calculate Statement
This will find any unposted transactions based on the statement's Setup settings and assigns them to the current statement ID.  Calculating the statement does not have any additional effect on the Inventory Posting that was performed. If the Post Inventory was not performed or some items missed the last Post inventory prior to the Calculate statement, then the On order will be updated based on the quantity of items in the statement's transactions.

Post Statement
The Post statement process will reverse the Post Inventory reservations and officially create sales orders in AX based on the statements transactions.  This will normally update the Physical Inventory quantities, even going negative if allowed by the Item model group. If the Calculate Statement captured any items outside of the Post inventory, which could normally be the case at the very end of the day just prior to posting the statement, it performs a similar check by moving any of the related On order items to Physical Inventory during the sales order creation.

Below are two basic examples using AX 2012 R3 on how inventory was affected when the above 3 processes were used to post a POS transaction.  The first one has available quantities to cover the items sold at the POS, the second one does not. 

Click on the pictures to view them at a larger size.

Posting Inventory and then Posting the statement when an item has available quantities.

Starting on-hand inventory quantities for item 0008 are set at 45

A cash and carry transaction is performed at the POS for a quantity of 1 for item 0008. The P-job is ran to bring the transaction into AX.  Note that the quantities have not been affected yet.

Run the “Post inventory” operation for that store. There is now 1 in Physical Reserved and the Available Physical has been deducted by 1.

Create and calculate a statement for this store.  Once again, no change.

Post the statement.  The Physical Inventory is now updated to 44 from the 1 in Physical Reserved as a sales order was created in AX.

Posting Inventory and then Posting the statement when an item does NOT have available quantity, a movement journal is performed to make it available.Starting on-hand inventory quantities for item 0008 is at 5.

A cash and carry transaction is performed at the POS for a quantity of 6 for item 0008.  The P-job is ran to bring the transaction into AX.  Note that the quantities have not yet been affected.

Run the “Post inventory” operation for that store.  There are now 6 in On order.

Perform an Item Movement of 10 to add an available quantity.  The Physical inventory and Available physical are updated to 15, but the On order is still at 6.

Calculate and post the statement with this transaction.  The Physical inventory and Available physical are now updated to 9.

AX Content: Management Packs for AX 2012 R3

The Management Packs have arrived! We now have System Center Operations Manager management packs for both core Microsoft Dynamics AX 2012 and the AX 2012 R3 Retail functionality. The Retail management pack has been tested for side-by-side compatibility with the core management pack.

Core Management Pack
The management pack for Microsoft Dynamics AX 2012 provides an end-to-end monitoring solution. It automatically discovers the entire AX 2012 environment, and monitors the configuration, availability, and performance of components. It also provides early warnings that an operator can use to proactively identify issues that can affect the performance and availability of the AX 2012 system.  
The current management pack has been updated to work with AX 2012 R3, and works for all older versions of AX 2012, although to use it with older versions, you must install the hotfix from KB
article 2928714
You can get it from the Download Center at: System Center Management Pack for Microsoft Dynamics AX 2012 or from the catalog in System Center. For detailed documentation, see the Management Pack Guide in the download package.

Retail Management Pack

This management pack allows IT administrators to gain deep real-time insights into their distributed retail deployments, during deployment as well as ongoing operations.

Note: The Retail Management Pack works only with AX 2012 R3 Retail functionality. 

You can get it from the Download Center at: System Center 2012 Management Pack for Microsoft Dynamics AX 2012 R3 Retail or from the catalog in System Center. For detailed documentation, see the Management Pack Guide in the download package.

Using the Retail Management Pack, IT administrators can:

  • Auto-discover Retail components
  • Monitor service and application pool state
  • Monitor components such as POS with online or offline databases, Retail online store, Retail Server, Async Server, Async Client, Real-time Service, and Commerce Data Exchange
  • Monitor inter-component connectivity
  • Remotely change tracing levels with minimal down-time
  • Bulk collect event logs
  • Monitor SSL certificate expiry
  • Alert for key failure states

AX 2012 for Retail - Receipt numbering formats

It is essential that when setting up a receipt number formats in Retail that they are unique per register and store.

The following example is the most common scenario we've seen happen when receipt formats are not unique:
Scenario:  Terminal 1 has a receipt numbered at 1001 with item 0015 and terminal 2 also has a receipt number 1001 with item 0017.  A customer walks in with receipt number 1001 and wants to return an item at Terminal 3.
  The receipt number is correct, but 50% of the time the items listed are incorrect.  The reason behind this is because the receipt that is displayed in POS is the first one that the select query finds where receipted = 1001.

This can also happen if you' have two stores in the same town and a customer wants to return an item at another store.  You can understand the potential issues that can arise with this setup that duplicates receipt numbers, the wrong receipt can be displayed with no way to pull up the correct receipt to look at or return this customers item(s).  You could simply go into return mode and return this outside of bringing up the customers receipt, but the best practice is to give the customer their original receipt with the return on it.  It is also possible that the incorrect receipt that POS is attempting to display doesn't allow returns which will generate an error if going through the Return Transaction button.  This can cause confusion with the cashier and deny the customer the option to return the merchandise.

Below are some simple steps for setting up the receipt numbering for a Sale, Return, Sales order, and Quote as each will need their own formats.

The receipt numbering property is hosted in the POS Functionality profile (Retail > Setup > POS > Profiles > Functionality profiles).  These functionality profiles are then assigned to each retail store.

1. Go to:  Retail > Setup > POS > Profiles > Functionality profiles

2. Select a functionality profile to edit and expand the Receipt numbering fast tab.

3. You can create your own numbering format here but there are a few things to note:

a. S is used for Store number.  A store numbered at S1001 with a format of SSS will display 001 on the receipt, a format of SSSSS will display S1001.

b. T is used for the Terminal number.  A terminal numbered at 0001 with a format of TTTT will display 0001 on the receipt.

c. # is used for the sequential numbering such as using #### to get 0001, 0002, 0003, and so on.

d. C is used for the Staff ID number

e. ddd corresponds to the day of the year, 1 through 366

f. MM is for the two-digit month

g. DD is for the two-digit day of the month

h. YY is for the two digit year

i. You can add other characters such as a 1, 2, 3, 4 to distinguish between the receipt types as shown below.

NOTE: You can order these in any way you would like and in any length up to 18 characters, but using the receipt numbering sequence last is usually the most aesthetically pleasing when attempting to quickly look at a receipt number if searching a list such as the Show Journal or Customer Transactions window.

4. There is also a check mark for Independent sequence for each receipt type. Select this check box to indicate that the format for the receipt number uses a unique number sequence. Clear the check box to indicate that the format uses the default number sequence
5. Run these two specific jobs to sync the functionality profile and the receipt mask we just created or updated.

a. A-1070 or N-1070 - (Stores and tenders) will sync the RetailFunctionalityProfile

b. A-1090 or N-1090 - (Registers) will sync the RetailReceiptMasks

6. Open POS and log in

7. Add an item and tender this as Pay cash quick.

8. Click the Show journal from the Cashier task menu.

9. Select the transaction you just tendered and click Receipt

10. At the bottom you will note the receipt number.

You may want to play around with this a bit to get the desired receipt format.

As shown in the screenshot below, my receipt number is S00010101100045.  Broken down it is as follows:

- S0001  = store number

- 0101    = terminal number

- 1          = distinguishes it as a Sale receipt

- 00045  = is the 45th receipt for this terminal

Dynamics Online user Roles

When creating new payment services or when adding new users to Dynamics Online, we need to ensure that we are assigning proper roles to these services.  This user role can then be used to enter in the Payment Services setup in AX in conjunction with the service they have access to.  A newly created Microsoft Account or user within Dynamics Online will not have any roles assigned until they are manually added.  Thus they will run into "service unavailable" errors when attempting to log into the service at  We will need to modify this user to assign any services and roles they should have access to in the Customer Portal so that they can either make payments using that service or access the customer portal administration for that service.  Below are the steps for adding user roles.

  1. Go to
  2. Click For Customers
  3. Click Sign in
  4. Enter your Microsoft account and password credentials
  5. In the Customer Portal, click on User Management in the left navigation pane.
  6. Select a user by putting a checkmark to the left of their name and click Edit.
    1. Or select New User and skip step 6.
  7. If a new user, enter in the User details
  8. Under Services and Roles we will want to select the access this user has.
  9. You can select individual services and roles and add them to the Selected Roles.
    For instance, if you have multiple Payment services set up for multiple stores, you will see a list of Administrators, System User, Users, and Limited Users for each payment service.  
  10. Select the access you want this user to have and click the Arrows to move the service from the Available Roles to the Selected Roles.
  11. Click Save.
  12. This change is immediate, so that user can try the access right away.

AX 2012 Retail Common Operations and Processes

The intent of this article is to assist with discovering the basic retail daily procedures for a Cashier and Manager from the design point of view.  While there are many combinations of how daily procedures are performed, this article is simply displaying some of the basic workflows in the day of a retail store


The information provided in this article assumes that you possess basic knowledge with AX and AX Retail functionality.  This is needed to understand certain parts the material and concepts as not all details will be provided and explained.  Lastly before we get started, keep in mind that not all available POS operations will be discussed and each business will have their own combination of daily procedures.

List of Common Operations and Processes:

You can also view the full POS operations list in the following TechNet article: Set up permissions and operations [AX 2012] -

POS Operations

1. Time clock – Display the time clock to clock in, clock out, record breaks and lunch breaks, and view time clock entries
2. Declare starting amount – Record the amount that is in the cash drawer when the day or shift starts.
3. Create customer order – creates a sales orders or quote directly in AX
4. Float Entry – Register a float entry to the cash drawer, such as an addition of money to drawer.
5. Tender removal – Record the removal of money from the cash drawer.
6. Income accounts – Record money that is put into the cash drawer for a reason other than a sale.
7. Expense accounts – Record money that is removed from the cash drawer for occasional expenses.
8. Stock Count – Record the current inventory counts.
9. Safe drop – Record the amount of money that is taken to the safe.
10. Bank drop – Record the amount of money that is sent to the bank.
11. Print X – provides a summary of the shifts transaction count and amounts
12. Tender declaration – Record the amount counted in the cash drawer
13. Suspend shift – Suspend the current shift. The shift can be logged on to later.
14. Blind close – Set the current shift to blind close, and log off the cashier.
15. Show blind closed shifts – View a list of shifts that have been blind closed.
16. Close shift (Print Z) – Closes the shift and prints the Z-Report

AX Client processes

1. P-job – Syncs transaction data from POS to AX.
2. Post inventory – Performs inventory reservations for unposted POS transactions.
3. New statement – Creates a new statement for the selected store.
4. Calculate statement – Assigns the statement ID to all unposted transactions based on the statements Setup settings and summarizes the data.
5. Post statement – Creates sales orders, inventory movements, and journal entries for the data captured by the calculate statement.
6. General journal – Create a new journal entry to transfer and reconcile the money deposited into the bank from POS sales.

Basic Setup Configurations:

Retail Parameters for Posting

     1. Discount specific posting – Select this check box to enable periodic offers to be posted to the ledger accounts. Periodic discounts include mix and match discounts, quantity discounts, and discount offers
     2. Aggregation – Select the checkboxes to post the amounts as a sum or leave unchecked to post as separate lines.


 1. Default customer – This customer is used for posting if a specific customer was not added to a POS transaction.

     2. Statement method – The statement calculation method that is used at the store. The value can be Staff, POS terminal, Total, or Shift.

     3. Closing method – The closing method that is used at the store. The value can be either Date and time or Shift.

     4. Rounding – The general ledger account to which any rounding differences are posted.

     5. Maximum differences – The maximum difference amount that is allowed when Posting, Shift, or Transactions are posted.

     6. Remove/add payment method – The payment method that is used to add or remove money from the cash drawer.

     7. Hide training mode – Select this check box to hide training mode on the store’s registers.

     8. Payment Methods (Set up menu bar) – Used to set up the payment methods used at the POS.

Warehouse setting  

  1. Retail
          a. Store – Checkmark this to identify the warehouse as a Retail store.

          b. Negative inventory – check to allow posting to occur for retail transactions even if there are insufficient product quantities available

Quick walkthrough of daily POS procedures:

1. As a cashier, you log into POS and start a new shift.

2. Select the “Timeclock” operation to “Clock-in” for the day.

3. Count the amount of money in the cash drawer and use “Declare start amount” to enter the amount.

     a. If needed during the day, use the “Declare start amount” for additional money added to the till. Example: Started with $150, but now want the till count to be $200 (using sales cash for other $50).

4. Perform sales transactions and customer orders.

5. When the cash drawer obtain a certain threshold, select “Bank drop” to remove funds from the drawer as needed.  This is put into a numbered back deposit bag and is taken to the bank.

6. When the cash drawer obtain a certain threshold, select “Safe drop” to remove money from the drawer and take it to the safe in the back office.

7. Go to lunch by selecting “Timeclock” and selecting the option to “Break for lunch”.
8. Log off the shift using one of the following:

     a. If someone is taking over the POS station and the shift, simply Log Off the user account.

     b. If someone is taking over the POS station but not your shift, select “Suspend shift” to log out of POS to go to lunch.

     c. If no one is using the POS station or shift, you can use either of the two options to simply Log Off or Suspend shift..

9. Return from lunch and log into POS with your user account selecting to “Resume shift”.

10. You run out of quarters and select “Float Entry” to add a new roll of quarters obtained from
the back office.

11. Another cashier needs $10 bills.  Instead of running to the back office, you select “Tender Removal” to remove money from your till and give that to the other cashier.

12. A local community club uses the parking lot for car wash and provides you with payment.  Select “Income Account” to add the funds to the cash drawer.

13. You and your co-workers work on a holiday.  Your manager orders pizza for the team and uses elevated privileges at your POS station to perform an “Expense Account” transaction to pay for the pizza.

14. At the end of your shift, select Print X to print the current shift tender balances to the receipt printer to help balance the tender declaration.

15. Select the “Blind close shift” operation and take the cash drawer to the back office for counting.

16. Log into POS in the back office or another location to enter counted amounts.

17. Select “Show blind closed shifts” to recall your shift.

18. Count the money in the cash drawer and select “Tender declaration” to enter the amounts.

19. Select “Close Shift” to close out the shift, which also prints a Z-Report.

20. Select the “Timeclock” operation to “Clock-out” for the day.

21. Put the counted money and Z-Report in a deposit bag for a Manager to review (do not perform a bank drop operation).

22. Manager logs into AX client in the back office.

23. Runs the P-job to upload the transactional data from POS to the AX database. (normally done in batch throughout the day)

24. Throughout the day the “Post inventory” process may have been running.  But this is not needed as an end of the day procedure, it is normally used for updating inventory on-hand quantities during the day.
 See Blog Post: Using Post Inventory along with Calculate and Post Statement

25. Create a new statement for the store.

26. Calculate the statement by “Date and Time” or “Shift” (normally done in batch each night).

27. Manager then audits the counted money with the Z-Reports for all cashier shifts, performing any reconciliation as needed and updating the calculated statement. (normally not be performed when batch processing is used for Calculate and Post Statement unless posting difference are outside of thresholds).

28. Post statement to create (normally done in batch each night)

29. The money is then taken to the bank that night and put in the bank's deposit drop box. 

30. During reconciliation by an accountant or manager, General Journal entries would be created to move funds from the Retail Ledger accounts (cash, credit card, etc) to Bank accounts to account for the money deposited into the bank.

For additional walk through details with amounts and screenshots, see the attached Word document "Example Scenario of Stores Daily Procedures".

IMPORTANT NOTE: I recommended, not require, setting up payment methods with their own Ledger accounts and not Bank accounts.  You can utilize the Bank account option, but all transactions will affect the Bank account directly and usually causes Bank reconciliation nightmares.  When using Ledger accounts you can reconcile this with Bank accounts by creating journals entries to move deposited funds into their respective bank accounts.  This is a better process for moving money to the bank than having all transactions automatically written directly to the bank account.

IMPORTANT NOTE: The Safe drop and Bank drop were designed to be used when the till amount reaches a certain threshold.  At that point, money is take to the bank or back office safe to reduce the amount of cash in the drawer for security purposes.  Based on the payment method (normally Cash-Cash) you chose at the POS that you were taking funds from, you can assign specific accounts to the Safe drop or Bank drop in that payment method to show the amount taken out of the till.  If no account is assigned to these entities, it is assumed that the cashier is taking this money back out from the safe to count as part of the drawer amount at the end of the day which affects the Cash payment method account.

IMPORTANT NOTE: I highly recommend assigning a certain set permissions to each employee.  For instance, you may want a manager or supervisor approval to perform any sort of bank or safe drop.

Process questions:

  1. At the beginning of the day, I declare a start amount.  Throughout the day I have several transactions and do some Safe Drops when the till is full to move cash from the till to the safe.  At the end of the day, I need to do a Tender Declaration and then a Bank Drop to bring money to the bank.  How should I perform this process?

    1. Bank Drops were designed for money taken to the bank throughout the day to track money that was taken from the till.  If you want to perform another Bank Drop at the end of the day for the till count, then you would not include that amount in the original Tender Declaration.  The only amount in the Tender Declaration at this point would be for any amounts left in the drawer for tomorrow.

Option 1: If you the Store setting is to use the “Last” Tender declaration calculation, then in the above scenario, you would need to perform an additional tender declaration after the Bank Drop to count how much money is now left in the drawer after the bank drop.  This would record both the full till before the bank drop and the till after the bank drop.

     NOTE: You cannot perform a $0 Tender declaration, so you would not be able to perform a second Tender declaration if all funds were put into the Bank drop.
    1. Option 2: If you the Store setting is to use the “Sum” Tender declaration calculation, then in the above scenario, you would need to perform an additional tender declaration after the Bank Drop to count how much money was removed for the bank drop.  This would record the full till before the bank drop and then add that to the secondary (negative) tender declaration after the bank drop.

During the day, if I need to move money from the safe back to the till, how do I do that?
    1. Perform a Float Entry to add money to the till.  For this to be accurate, it would be advisable to set the Safe Drop posting account to be the same as the Cash payment method posting account.  Therefore, a Float Entry and Safe Drop would be affecting the same account.
At the end of the day when I do my Tender Declaration, does that include the Bank Drop and Safe Drop amounts?  I’m assuming no as that seems to be calculated in the difference already.
When performing the Tender Declaration at the POS, this should not include the Bank/Safe drop amounts.  These are auto calculated with the Cash-Cash payment method and offset by the Tender Remove/Float payment method.  This money is not meant to be taken back out for counting again, it was considered “counted” when the Bank/Safe drop was performed.
Do I need to do the Bank Drop and Tender Declaration in any particular order?
No, but make sure you do both and do so before the close shift in order for the reconciliation to be accurate.

I don’t see a way to move the amounts in my Safe Drops anywhere.  When I run my P job to bring in transactions, they always show up as a Safe Drop.  How do I move that from the Safe Drop to a Bank Drop?
If you are using different ledger accounts for Safe Drops than you are with the Cash payment method, then this is not possible at the POS.
Once that money is in the safe, you would normally not want to go back and record further movement of that money through each POS stations shift.  But if you do want to record that at the POS, you cannot simply perform a negative Safe drop.  If the Cash, Safe drop, and Bank drop use the same ledger account, the recommended workaround would be to first perform a Float entry to put that money back into the POS and then perform a Bank Drop to take that money along with other funds out for the Bank Drop.
If you are in the back office and sending Safe money to the bank and have access to the AX client, my recommendation would be to perform a General Journal entry to record the safe to bank amount.  You would also want to record the money taken from the tills as a Bank Drop and include a second line in the General Journal entry to that amount as well.  This will help with reconciling the bank statements.
Using Cash-Other or Cash-“CAD” (or other currencies)
It is highly recommended due to the back end processes that Tender Removal/Float and other Cash operations all use Cash-Cash versus a Cash-Other payment method such as when entering Tender Removals, Floats, Tender Declarations, Declare Start Amounts.


Search results

Contact Form


Email *

Message *