# Acme Zand Bank UAE Transactions (/guides/zand-ae-transactions)



This describes how Acme categorizes transactions on Zand Bank UAE accounts in the
[Transactions API](/reference/get-transactions), and how the transaction `transactionType`
relates to the payment `type` you specify when [creating a payment](/guides/zand-ae-payments).

<Callout type="info" title="How Acme derives `transactionType`">
  Zand Bank does not provide an explicit payment rail / transaction type on its transaction
  notifications or account statements. Acme derives the `transactionType` of each transaction from
  the information the bank does provide using the rules documented on this page.
</Callout>

## Payment Type vs Transaction Type [#payment-type-vs-transaction-type]

* **Payments API** (`POST /v1/payments`): you specify the payment `type` to choose the rail a
  payment is sent through. For Zand, the allowed values are `BKTR`, `UAE_FTS`, `UAE_IBFT` and
  `TT` — see [Acme Zand Bank UAE Payments (API)](/guides/zand-ae-payments).
* **Transactions API** (`GET /v1/transactions`): every transaction reported on your account retrieved from multiple sources including incoming credits, outgoing debits, and bank-generated entries such as fees and
  interest — carries a `transactionType` describing the rail the money moved through.

The two map to each other as follows:

| Payment `type` (Payments API) | Transaction `transactionType` (Transactions API) | Underlying Payment Rails                                                                                                                                                                     |
| ----------------------------- | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `BKTR`                        | `BKTR`                                           | Book transfer between two Zand Bank accounts                                                                                                                                                 |
| `UAE_FTS`                     | `FTS`                                            | The UAE Funds Transfer System (FTS) is the Central Bank of the UAE's core real-time gross settlement (RTGS) network. Zand automatically route the transaction to FTS if amount > 50,000 AED. |
| `UAE_IBFT`                    | `IBFT`                                           | Instant Payment Platform (IPP) / Immediate Payment Instructions (IPI) or AANI. Zand autoamtically route the transaction to IPI if amount ≤ 50,000 AED                                        |
| `TT`                          | `TT`                                             | Telegraphic Transfer — cross-border international SWIFT transfer                                                                                                                             |
| —                             | `OTHERS`                                         | Bank-generated entries (fees, VAT on fees, interest) and any record Acme cannot categorize as a specific rail.                                                                               |

## Categorization rules [#categorization-rules]

The bank transactions reach Acme through two sources, and each source provides different information,
so the categorization rules differ.

### From Inbound Credit Notifications [#from-inbound-credit-notifications]

For credit transactions received through Zand's credit notifications webhook, the
`transactionType` is derived from the notification event type, the counterparty IBANs, and the
amount. The conditions are evaluated in order:

| `dataSource` | Condition                                                                                    | `transactionType` |
| ------------ | -------------------------------------------------------------------------------------------- | ----------------- |
| ICN          | Both parties are Zand Bank accounts (IBAN bank code `096`)                                   | `BKTR`            |
| ICN          | International event types `INCOMING_INTERNATIONAL_TRANSACTION_STATUS`                        | `TT`              |
| ICN          | Domestic inter-bank event types `INCOMING_DOMESTIC_TRANSACTION_STATUS` & amount > 50,000 AED | `FTS`             |
| ICN          | Domestic inter-bank event types `INCOMING_DOMESTIC_TRANSACTION_STATUS` & amount ≤ 50,000 AED | `IBFT`            |

**Example payload**:

An Incoming book transfer from a credit notification, categorized as `BKTR`:

```json
{
  "data": [
    {
      "id": "txn_0QN6ZF3MGNNQF",
      "dataSource": "ICN",
      "transactionType": "BKTR",
      "transactionStatus": "BOOKED",
      "bankReference": "D7811010XXXXXXXX",
      "transactionReferences": [
        {
          "dataSource": "ICN",
          "name": "channelRefId",
          "value": "D7811010XXXXXXXX"
        },
        {
          "dataSource": "ICN",
          "name": "instructionIdentification",
          "value": "<UUID>"
        }
      ],
      "description": "Incoming Transfer within Zand Received",
      "customerReference": "<UUID>",
      "remittanceInformation": "UUID",
      "additionalInformation": "OpenFX - <UUID>",
      "amount": 200000000,
      "currency": "AED",
      "direction": "CREDIT",
      "counterparty": {
        "name": "<Sender Name>",
        "bank": null,
        "bankAccountNumber": "<IBAN>"
      },
      "bankAccount": {
        "id": "intacc_0PWZ0XWTR3S8Q",
        "bank": "ZANDAEAAXXX",
        "bankAccountNumber": "REDACTED"
      },
      "virtualAccountNumber": null,
      "transactionDate": "2026-06-10",
      "bookingDate": {
        "date": "2026-06-10",
        "time": "18:12:51.908"
      }
    }
  ]
}
```

### From Account Statement Inquiry [#from-account-statement-inquiry]

For transactions received through Zand's account statement inquiry, the `transactionType` is derived from
the statement record's description and the amount:

| `dataSource` | Transaction `description`                                                                                                                             | Transaction `amount` | `transactionType` |
| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ----------------- |
| RECON        | `Incoming transfer within Zand Bank`, `Incoming Transfer within Zand Received`, `Outgoing Transfer within Zand`, `Outgoing transfer within Zand Bank` | —                    | `BKTR`            |
| RECON        | `International Transfer`, `Outgoing AED Remittance`, `Incoming AED Remittance`, `Outgoing Foreign Currency Remittance`                                | —                    | `TT`              |
| RECON        | `Domestic Transfer`, `Local Transfer`                                                                                                                 | > 50,000 AED         | `FTS`             |
| RECON        | `Domestic Transfer`, `Local Transfer`, `Instant Payment`, `Real-time Payment`                                                                         | ≤ 50,000 AED         | `IBFT`            |
| RECON        | `Outward Local Remittance Fee`                                                                                                                        | —                    | `OTHERS`          |
| RECON        | `{N}% VAT On Fee` (e.g. `5% VAT On Fee`)                                                                                                              | —                    | `OTHERS`          |
| RECON        | null / blank / unrecognized (e.g. interest calculation)                                                                                               | —                    | `OTHERS`          |

Records that Acme does not recognize are labelled `OTHERS` and logged on Acme side for review, so
new description patterns can be added to the categorization over time.

**Example payload**:

An outgoing cross-border transfer debitted from your account, categorized as `TT`:

```json
{
  "data": [
    {
      "id": "txn_0QMT893PK4MP7",
      "dataSource": "RECON",
      "transactionType": "TT",
      "transactionStatus": "BOOKED",
      "bankReference": "C0261032XXXXXXXX",
      "transactionReferences": [
        {
          "dataSource": "RECON",
          "name": "channelRefId",
          "value": "C0261032XXXXXXXX"
        },
        {
          "dataSource": "RECON",
          "name": "instructionIdentification",
          "value": "C0261032XXXXXXXX"
        },
        {
          "dataSource": "RECON",
          "name": "partType",
          "value": "Main"
        },
        {
          "dataSource": "RECON",
          "name": "Description",
          "value": "Outgoing AED Remittance"
        },
        {
          "dataSource": "RECON",
          "name": "BeneficiaryDetails",
          "value": "<bene details> "
        }
      ],
      "description": "Outgoing AED Remittance",
      "customerReference": "C0261032XXXXXXXX",
      "remittanceInformation": null,
      "additionalInformation": "Additional Info   ",
      "amount": 1090000,
      "currency": "AED",
      "direction": "DEBIT",
      "counterparty": {
        "name": "<Sender Name>",
        "bank": null,
        "bankAccountNumber": "<IBAN>"
      },
      "bankAccount": {
        "id": "intacc_0PWZ0XRXQ4WJ2",
        "bank": "ZANDAEAAXXX",
        "bankAccountNumber": "REDACTED"
      },
      "virtualAccountNumber": null,
      "transactionDate": "2026-06-10",
      "bookingDate": {
        "date": "2026-06-10",
        "time": "18:12:51.908"
      }
    }
  ]
}
```

Bank charges associated with the transaction above with a different `id` but the same `bankReference`, categorized as `OTHERS`:

```json
{
  "data": [
    {
      "id": "txn_0QMT893R34DSW",
      "dataSource": "RECON",
      "transactionType": "TT",
      "transactionStatus": "BOOKED",
      "bankReference": "C0261032XXXXXXXX",
      "transactionReferences": [
        {
          "dataSource": "RECON",
          "name": "channelRefId",
          "value": "C0261032XXXXXXXX"
        },
        {
          "dataSource": "RECON",
          "name": "instructionIdentification",
          "value": "C0261032XXXXXXXX"
        },
        {
          "dataSource": "RECON",
          "name": "partType",
          "value": "Main"
        },
        {
          "dataSource": "RECON",
          "name": "Description",
          "value": "Outward International Remittance Fee"
        },
        {
          "dataSource": "RECON",
          "name": "BeneficiaryDetails",
          "value": "<bene details> "
        }
      ],
      "description": "Outward International Remittance Fee",
      "customerReference": "C0261032XXXXXXXX",
      "remittanceInformation": null,
      "additionalInformation": "Outward International Remittance Fee",
      "amount": 500,
      "currency": "AED",
      "direction": "DEBIT",
      "counterparty": {
        "name": null,
        "bank": null,
        "bankAccountNumber": null
      },
      "bankAccount": {
        "id": "intacc_0PWZ0XRXQ4WJ2",
        "bank": "ZANDAEAAXXX",
        "bankAccountNumber": "REDACTED"
      },
      "virtualAccountNumber": null,
      "transactionDate": "2026-06-10",
      "bookingDate": {
        "date": "2026-06-10",
        "time": "18:12:51.908"
      }
    }
  ]
}
```
