> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fexco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Field name mapping

> Cross-reference of field names for the same concept across Fexco DCC APIs and file formats.

Fexco Dynamic Currency Conversion (DCC) integrations use different field
names for the same concept depending on the API or file format. Use this
page to locate the correct field name when moving data between systems,
such as from a boarding API response to a transaction import file.

The table below shows the abbreviations that identify each system.

| Abbreviation | System |
| :- | :- |
| Boarding API | Merchant boarding via REST API |
| XML Boarding File Upload | XML file for merchant boarding via SFTP |
| XML I-file | XML Information File (transaction import) |
| I-file | Fixed-width Information File |
| V-file | Fixed-width Submission File |
| Rate Service Connect | Flex Proxy rate service |

## Merchant and terminal identifiers

Identifier fields link a merchant or terminal record across boarding,
rate requests, and transaction import files. The same underlying value
may carry a different name and format in each system:

| Concept | Boarding API | XML Boarding File Upload | XML I-file | I-file / V-file | Rate Service Connect |
| :- | :- | :- | :- | :- | :- |
| Merchant identifier (reporting) | `location.locationId` | `id` attribute on `<createMerchant>` | n/a | n/a | n/a |
| Merchant originator tag (rate query and transaction import) | `location.cardAcceptors[].cardAcceptorId` | `tag` attribute on `<originator>` | `merchantID` attribute | n/a | `x-card-acceptor-id` header |
| Terminal identifier | Not separately represented | `id` attribute on `<terminal>` | `terminalID` / `atmID` / `eCommID` attributes | `TERMINAL ID` (Segment 1, Field 3) | `terminalInformation.terminalId` |
| Acquirer identifier | `X-Acquirer-ID` header | `id` attribute on `<acquirer>` | `acquirerID` attribute | n/a | `x-acquirer-id` header |

> [!NOTE]
>
> The Boarding File Upload XML file uses two distinct merchant identifiers: the `id`
> attribute on the merchant element (acquirer reporting identity) and
> the `tag` attribute on the `<originator>` element (merchant originator
> tag for rate queries and transaction import). In most cases both
> values are the same, but they are separate fields.

## Boarding configuration fields

Boarding configuration fields supply the setup data that Fexco needs
before a merchant can process DCC transactions. These fields appear in
boarding APIs and files only, not in transaction import files.

| Concept | Boarding API | XML Boarding File Upload | XML I-file |
| :- | :- | :- | :- |
| Merchant name | `location.name` | `<name>` element | `merchantName` attribute |
| Merchant category code | `location.mcc` | `mcc` attribute | `mccCode` attribute |
| Base (merchant) currency | `location.cardAcceptors[].baseCurrency` | `<baseCurrency>` element | n/a |
| Country code | `location.address.country` | `<countryCode>` inside `<address>` | n/a |
| Currency configuration identifier | `location.cardAcceptors[].templateId` (MID template ID) | `fileGroupId` attribute on `<originator>` (file group ID) | n/a |
| Product type (DCC or multi-currency pricing (MCP)) | n/a | `fmsProduct` attribute | `currencyConversionType` attribute |
| Payment service provider (PSP) code | n/a | `<pspCode>` element | n/a |
| Merchant distribution type | n/a | `distributionType` attribute | `merchantType` attribute |

> [!NOTE]
>
> The Boarding API `templateId` and XML Boarding File Upload `fileGroupId`
> are distinct configuration identifiers. Do not assume their values are
> interchangeable. Confirm how they relate before mapping between them.

## Transaction and rate service fields

Transaction and rate service fields appear in rate service requests and
responses, and in the transaction import files submitted after a DCC
transaction completes. The I-file and V-file columns give the character
positions on the transaction line. For the full field definitions, see
the [I-file format](https://docs.fexco.com/dcc/developer-resources/file-formats/i-file.md) and
[V-file format](https://docs.fexco.com/dcc/developer-resources/file-formats/v-file.md) references.

| Concept | XML I-file | I-file | V-file | Rate Service Connect |
| :- | :- | :- | :- | :- |
| Transaction amount in base currency | `<baseAmount>` | `BASE AMOUNT` (positions 37 to 47) | `BASE AMOUNT` (positions 37 to 47) | `orderDetails.amount` (request) / `baseAmount` (response) |
| Transaction amount in cardholder currency | `<transactionAmount>` | `CURRENCY AMOUNT` (positions 138 to 148) | `CURRENCY AMOUNT` (positions 138 to 148) | `foreignAmount` (response) |
| Exchange rate | `<exchangeRate>` | `EXCHANGE RATE` (positions 116 to 128) | `EXCHANGE RATE` (positions 116 to 128) | `exchangeRate.rate` (response) |
| Cardholder (transaction) currency | `<transactionCurrency>` | `TRANSACTION CURRENCY CODE` (positions 160 to 163) | `TRANSACTION CURRENCY CODE` (positions 160 to 163) | `exchangeRate.foreignCurrency.alphaCode` (response) |
| Card bank identification number (BIN) | `<bin>` | `BIN` (positions 4 to 13) | Embedded in `CARD NUMBER` (positions 1 to 19) | `paymentDetails.bin` |
| Authorisation code | `<authorisationCode>` | `AUTHORISATION CODE` (positions 60 to 67) | `AUTHORISATION CODE` (positions 60 to 67) | n/a |
| Terminal type | `merchantType` attribute | `ATM/POS TERMINAL TYPE` (position 81) | `ATM/POS TERMINAL TYPE` (position 81) | `terminalInformation.terminalType` |
| Rate offer reference | `rateOfferRef` attribute | n/a | n/a | `id` field in response |

## Format differences

Several fields use different value formats across systems. The following
table describes the key differences:

| Field | System | Format |
| :- | :- | :- |
| Currency code | Boarding API, XML Boarding File Upload | ISO 4217 three-digit numeric code (for example, `978` for EUR). |
| Currency code | I-file, V-file | ISO 4217 three-digit numeric code stored in a four-character, zero-padded field (for example, `0978` for EUR). |
| Currency code | Rate Service Connect (request) | ISO 4217 three-letter alphabetic code (for example, `EUR`). |
| Currency code | Rate Service Connect (response) | Both alphabetic and numeric codes are returned. |
| Acquirer identifier | Rate Service Connect | Three-letter alphabetic acquirer code. |
| Acquirer identifier | XML Boarding File Upload, XML I-file | Numeric acquirer ID assigned by Fexco during onboarding. |
| Merchant distribution type | XML Boarding File Upload | `distributionType`: `Terminal`, `Integrated`, `eCommerce`, `Other`. |
| Terminal type | XML I-file | `merchantType`: `pos`, `atm`, `ecomm`. |
| Terminal type | Rate Service Connect | `terminalInformation.terminalType`: `POS`, `ATM`, `ECOMMERCE`. |
| Rate offer reference | Rate Service Connect response | The `id` field in the rate offer response is the value to supply in the `rateOfferRef` attribute of the XML I-file transaction record. |

## Next steps

* [Currency codes](https://docs.fexco.com/dcc/developer-resources/codes/currency.md): ISO 4217
  alphabetic and numeric codes used across Fexco DCC systems.
* [V-file format reference](https://docs.fexco.com/dcc/developer-resources/file-formats/v-file.md):
  complete field specifications for the fixed-width V-file format.
* [I-file format reference](https://docs.fexco.com/dcc/developer-resources/file-formats/i-file.md):
  complete field specifications for the fixed-width I-file format.
* [XML I-file format reference](https://docs.fexco.com/dcc/developer-resources/file-formats/xml-i-file.md):
  field specifications for the XML Information File transaction import format.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.