Terminal Configuration — MPGS

Generated page — source of truth is schema/mpgs.yaml and templates/mpgs-uat.j2. Do not edit this file directly.


What is Terminal Configuration?

Every MPGS merchant has one or more terminals — the logical endpoints that process payment transactions. A terminal in MGMT is not necessarily a physical device. For ecommerce and MOTO flows, it represents a processing lane or a workstation identifier that groups transactions together.

Each terminal has two records in MGMT:

A single terminal can have multiple terminal config rows — one per processing mode. In a standard MPGS provisioning, each terminal gets two terminalConfig rows: one async row (for token and ecom transactions) and one sync row (for card-present).


How Terminal Config Connects to MPG

The channelId in each terminalConfig row determines which MPG entry the terminal uses for that processing mode. This is the link between the terminal layer and the MPG array:

terminalConfig row 1: channelId=20189 (sync)  → PM0 Bank Card MPG + PM1 Token Sync MPG
terminalConfig row 2: channelId=20188 (async) → PM1 Token Async MPG + PM4 Ecom Processing MPG

The asyncFlag on each row determines the processing mode for that config:

The MPG entries for PM1 Token and PM4 Ecom are separated into sync and async entries specifically because of this terminal config mechanism. A terminal configured with asyncFlag=1 routes to the defaultFlag=0 MPG entries; a terminal with asyncFlag=0 routes to defaultFlag=1.


Terminal Fields

One terminal record is created per physical or logical terminal.

Field Var MGMT Field Required Notes
Terminal ID ter_id terId Required Also written to workstationId. Unique per merchant.

Additional fields set by the template with fixed values:

MGMT Field Value Notes
status 2 Active
description MPGS
tokenFlag 2
createClientIdFlag false

Terminal Config Fields

Each terminalConfig row connects a terminal to a channel and processing mode. A standard MPGS provisioning creates two rows per terminal.

Field Var MGMT Field Required Sample (UAT) Notes
Terminal ID ter_id terId Required <TER_ID> Must match a terminal record
Channel ID channel_id channelId Required 20188 or 20189 Determines MPG routing
Async Flag async_flag asyncFlag Required 0 or 1 0=sync, 1=async
Channel Terminal ID channel_terminal_id channelTerminalId Required <secret> Acquirer terminal ID
Channel Merchant ID channel_merchant_id channelMerchantId Required <secret> Acquirer merchant ID
Partial Auth partial_auth extData1 Conditional true true = allow partial authorisations
API Version api_version extData3 Conditional 72 MPGS API version

Fixed template values on every terminalConfig row:

MGMT Field Value Notes
printReceiptFlag 0

Standard Two-Row Terminal Config

A typical MPGS terminal provisioning creates exactly two terminalConfig rows:

Row 1 — Async (Token + Ecom)

Field Value Notes
channelId 20188 Async channel
asyncFlag 1 Async processing
channelTerminalId <secret>
channelMerchantId <secret>

Row 2 — Sync (Card Present)

Field Value Notes
channelId 20189 Sync channel
asyncFlag 0 Sync processing
channelTerminalId <secret>
channelMerchantId <secret>

Channel IDs are UAT only — extracted from values/mpgs-uat.yaml. SIT and PROD values are not in this repository. See Open Item OI-003.


Provisioning Checklist


Open Items

# Item Impact
OI-003 Channel IDs are UAT only Cannot document SIT/PROD terminal config values

See Also