ImaCash integration

Open POS NG (Avalon)

Read-only beta connector between ImaCash and Avalon Open POS NG through a controlled 32-bit ODBC source.

Avalon Open POS NG terminal
Fuel stations and retail

Technical beta: A read-only ODBC connector is available for an initial controlled validation against a real Open POS NG installation. It must not be enabled for live cash operations until the test matrix has been completed.

Prerequisites

ImaCash must run on Windows and reach the local Open POS NG server. Create a 32-bit ODBC system DSN with the database driver used by that installation and a read-only account with SELECT permission on a transactional table or view prepared by Avalon or the POS maintainer.

ImaCash configuration

  1. Open Configuration > Integration and select Open POS NG (Avalon) - Beta.
  2. Under ODBC name, enter the exact x86 system DSN name. Enter a username and password only when the DSN does not manage them.
  3. Under Sales table or view, enter the exact authorised source, with one row per operation or payment method; never use an item table that repeats the ticket total. Use schema.table when required. ImaCash does not discover or select other sources.

Explicit authoritative mapping

Always define the column mapping as semicolon-separated pairs; ImaCash treats it as the authoritative contract and does not guess columns. It must include dateonly=true|false: true means date is a DATE column without a time and allows time to be used with dateonly=true; false means date already contains both date and time. For example: id=ID;date=DATE;dateonly=true;time=TIME;cash=CASH_AMOUNT;operator=OPERATOR;terminal=TILL. The cash contract accepts one consistent amount per ID and fails closed if that ID is repeated with different values. For payment rows, use amount=PAYMENT_AMOUNT;payment=PAYMENT_METHOD;cashvalue=CASH. If identifiers require quoting, add quote=none|double|bracket|backtick; none is the default.

Mandatory completion contract

Configure one of these two options: a view containing final sales only together with finalonly=true; or status=STATUS;closedvalue=CLOSED|PAID;modified=MODIFIED_AT to filter closed states and retrieve late closures. For the amount+payment contract with status+modified, modified identifies the sale change: ImaCash first obtains the modified IDs and then retrieves all their lines before totalling cash, preventing partial capture of a mixed payment. Without one of these contracts, the integration fails closed.

Beta scope

The integration reads recent operations and passes only cash to ImaCash, including only the cash component of mixed payments and refunds with a negative sign. It is strictly read-only: it never modifies Open POS NG or writes confirmations, statuses, payments or cancellations to Avalon.

Official Open POS NG information from Avalon

Beta integration available

The next step is to validate the real Open POS NG schema

With the read-only DSN ready, we will verify the exact source, cash classification and absence of duplicates before enabling the installation.