Skip to main content

Connecting a Cash Receiving Machine to POS Using Cash Machine Middleware

This guide covers the installation, configuration, integration, and simulation of the Cash Machine Middleware and POS system.

Teguh Warsono avatar
Written by Teguh Warsono
Updated over a week ago

This article outlines the complete procedure for installing the Middleware application, preparing the cash machine, configuring communication settings, integrating the middleware with the POS system, and simulating operational workflows.


Each section should be completed sequentially to ensure proper setup and functionality.


I. Preparing Required Tools

Step 1. Install .NET 9 Runtime

The middleware requires .NET 9 to operate.

Download Link:

Download .Net 9.0

Install .NET 9 following the on-screen instructions.

Step 2. Trust Development HTTPS Certificate

Open Command Prompt (CMD) and execute:

dotnet dev-certs https --trust

dotnet dev-certs https --trust

Ensure the process completes successfully, then close CMD.

Step 3. Download the Middleware Package

Download the middleware installer from the provided link:

Cooming Soon” ask the link to the administrator.

Extract the downloaded package.

You should see:

  • 1 BAT file

  • 2 folders

Download the Middleware Package

II. Preparing Machine & Running the Middleware

Step 1. Cash Machine Requirements

Before launching the middleware:

  • Ensure the cash machine is powered on.

  • Ensure the machine is connected to the computer via USB or other supported interface.

  • Confirm there are no hardware errors on the machine.

Step 2. Launch Middleware Application

Run the BAT file from the extracted folder.

Launch Middleware Application

The system will automatically open three CMD windows.

Launch Middleware Application

Do not close these windows while the system is operational.

Step 3. Validate Runtime Status

Check the CMD windows and ensure:

  • No errors are displayed

  • No missing file warnings

  • No initialization failures

Step 4. POS Account Requirement

Ensure you have an active DealPOS account and subscription before continuing.


III. Middleware Dashboard Overview

Step 1. Accessing the Dashboard

Open a browser and access the URL:

https://localhost:7065/

Upon loading, the application automatically redirects to the Home page.

Step 2. Dashboard Structure

The dashboard contains two main menus:

  1. Home

    • All Money in Machine

    • Withdraw Money

  2. Setup

    • Communication & machine configuration settings

Dashboard Structure

IV. Middleware Configuration

Step 1. COM Port Configuration

Navigate to the Setup tab.

Check the field “ComPORT” (default: COM3).

ComPORT

Validate this against your system:

  1. Open Device Manager

  2. Expand Ports (COM & LPT)

  3. Identify the COM port assigned to the cash machine

Validate Ports

If the machine uses another port (e.g., COM4), update the value on the dashboard accordingly.

Step 2. Editing appsettings.json (CORS Configuration)

Open from middleware folder:

appsettings.json

Editing appsettings.json

Locate the allowCORS array and add your DealPOS domain, e.g.:

"https://sandbox.dealpos.net"

Insert this entry as the last item in the list, separated by a comma.

allowCORS array and add your DealPOS domain

Save the file.

Step 3. Routes & Inhibits Configuration

Within the Setup tab, two tables are available:

Routes

Defines currency denominations accepted by the machine.

Routes

Inhibits

Defines denominations that the machine can dispense.

Inhibits

The system provides default IDR denominations.

If you require custom currencies, you may edit these tables by edit each row or clicking "Tambah Nominal" button to create a new one or use bulk configuration through:

/middleware/json/banknotes.json

/middleware/json/banknotes.json

V. Customizing banknotes.json

Open file:

banknotes.json

banknotes.json

This file contains two configuration arrays and currency metadata.

Step 1. InhibitsConfig

Used for withdrawal denominations.

Editable properties:

  • Nominal

  • Currency

Important:

Nominal values must include two extra zeros at the end.

Example:

1,000 IDR → input as 100000

Set:

"Inhibit": false

"Inhibit": false

Step 2. RouteConfig

Used for accepted denominations.

Properties:

  • Nominal

  • Currency

  • Route → must always be "1"

RouteConfig

Step 3. Primary & Secondary Currency

Below the arrays:

  • PrimaryCurrency: Main POS operating currency

  • SecondaryCurrency: Secondary machine-supported currency

  • ExchangeRate: Conversion rate from primary → secondary

  • Calculate:

    • false if primary currency value > secondary currency value

    • Controls exchange calculation logic

Example:

1 USD = 10,000 IDR

Thus:

"ExchangeRate": 10000"PrimaryCurrency": "USD""SecondaryCurrency": "IDR"

Primary & Secondary Currency

Step 4. Apply Configuration

After editing, save the file.

Restart Required:

Any configuration changes require:

  1. Closing all 3 CMD runtime windows

  2. Re-running the BAT file

  3. Reloading the dashboard


VI. Turn On Middleware App

Step 1. Establish Connection

Go to Setup → click Open Connection.

Establish Connection

A green success notification will confirm the connection.

Establish Connection

Step 2. Start Devices

Click Start Devices (green button).

Establish Connection

Wait until a green success message appears.

Establish Connection

Middleware configuration is now complete.


VII. POS Setup — Payment Method

Step 1. Open Setup Menu

Navigate to SetupPayment tab.

Add Payment Method

Step 2. Add New Payment Method

Click Add.

Add Payment Method

Fill in:

  • Payment Method Name

  • Type: Cash

  • Subtype: Machine

Select Type and Subtype Payment Method

Note:

A second payment method with the same type and subtype is not allowed.

Click Save.


VIII. POS Setup — Currency

Step 1. Open Currency Menu

Go to SetupCurrency.

Currency

Step 2. Create or Set USD as Primary Currency

If USD is not listed:

  • Click Add

Add Currency
  • Enter:

    • Currency Name: USD

    • Symbol: $

    • Exchange Rate: 1

    • Check Primary Currency

Save Currency

Click Save.

Done Create Currency

IX. POS Setup — Connecting POS with Middleware

Step 1. Establish Connection

Navigate to SellMore ActionCash Machine.

Click Connect.

Activated Cash Machine on Sell

A green toaster confirms success.

Activated Success

If an error appears, review previous configuration steps or contact customer support.


X. Simulation Procedures

Step 1. Machine Simulation via Middleware

All Money in Machine

Displays:

  • Country Code (Currency type)

  • Value (Denominations in syste )

  • Stored (Quantity per denomination)

All Money in Machine

Withdraw Money

Allows withdrawal simulation by entering:

  • Amount (Amount to withdraw)

  • CountryCode (Currency type)

Example:

IDR 50,000 × 2 + IDR 20,000 × 1 = 120,000 IDR

To withdraw:

  • Currency: IDR

  • Amount: 120000

  • Click Get Money

Withdraw Money

XI. POS Transaction Simulation

Step 1. Create Sample Transaction

Create a transaction worth USD 20

(≈ IDR 200,000 at 1 USD = 10,000 IDR).

Create Sample Transaction

Step 2. Process Payment

Click Pay → Choose Cash Machine.

Process Payment

Step 3. Insert Cash

Insert IDR 100,000.

The system registers 10 USD received.

Insert Cash

Insert another IDR 100,000 to complete payment.

Insert Cash

Step 4. Automatic Change Handling

  • If change denominations are available → machine auto-dispenses change.

  • If not available → POS displays a warning to give manual change.

Automatic Change Handling

Note:

Automatic change is fully supported only when using one unified currency.


XII. Completion

Your Cash Machine Middleware and POS integration is now fully installed, configured, and ready for production use. All simulations confirm that currency conversion, denomination routing, and machine behaviors are functioning as designed.


Related Articles


DealPOS is an online point-of-sale (POS) application specifically designed for retail businesses in categories like Fashion, Minimarkets, Electronics, Fresh Food, and Building Material Stores.

With DealPOS, you can manage both online and offline store inventory in real-time on a single platform. You can also sell through omnichannel (offline and online) as DealPOS integrates with marketplaces (Shopee, Tokopedia, TikTok Shop, Lazada) and instant web stores (Shopify and WooCommerce).

dealpos-trial-indonesia

Did this answer your question?