Name Mismatch Handling

Overview

For Pay Out transactions, Xenith provides a Name Mismatch Handling feature that validates the recipient’s bank account name you submitted against the official bank records. There are two available configurations:

  • Automatic Cancellation – Transactions with mismatched names are automatically cancelled, the account name returned by the bank (based on official records) will be included in the cancelled callback.
  • Manual Review – Mismatched transactions are flagged for your team to review in the dashboard, where you can choose to approve or cancel them.

Validation Logic

To determine whether there's a name mismatch between the name you submitted and the actual name from the bank, we follow this process:

  1. Normalization
    1. Trim all blank spaces (leading, trailing, and in-between multiple spaces).
    2. Convert all characters to lowercase to avoid case sensitivity issues.
  2. Character Sorting
    1. Alphabetically sort the characters in both the submitted name and the actual name returned from the bank.
    2. This helps reduce issues due to transposition or different name orders.
  3. Levenshtein Similarity
    1. After normalization and sorting, we calculate the Levenshtein distance similarity between the two names.
    2. If the similarity is 80% or higher, we consider it a match.

Example:

Submitted NameActual Bank NameNormalized & Sorted (Submitted Name)Normalized & Sorted (Actual Name)Levenshtein SimilarityMatch Result
Wiranto AndiAndi Wirantoaadiinorrtwaadiinorrtw100%Matched
Nguyễn Thị MaiMai Nguyen Thiyaeghiimnnstuyaeghiimnnstuyy92.85%Matched
Andi Wiranto HadiAndi Wirantoaaddhiiinnortwadiinnortw71.43%Mismatched
Nguyễn Thị MaiNguyen Maiaeghiimnntuyaegimnnuy75%Mismatched

You can check Levenshtein similarity between two names using tools like https://awsm-tools.com/levenshtein-distance

Handling Name Mismatch (Automatic Cancellation)

Transactions with recipient name mismatches are automatically cancelled. The cancellation callback will include the account name returned by the bank based on official records (see "errorMessage"). Example:

{
  "data": {
    "id": "payout-360-01KMMX4RZ2A6NZVZMKK6ZMWCEH",
    "status": "CANCELLED",
    "currency": "IDR",
    "feeAmount": "0",
    "sentAmount": "0",
    "createdTime": "2026-03-26T11:05:47.19135Z",
    "description": "",
    "updatedTime": "2026-03-26T11:06:02.811752266Z",
    "errorCode": "ACCOUNT_NAME_MISMATCH",
    "errorMessage": "Account name mismatch: The provided bank account name is 'Jc Boehm Test', but the bank records show 'Jc Boehm'.",
    "referenceCode": "ref-payout-20260326-1774523144923",
    "initiatedAmount": "10000",
    "customerReference": "ref-payout-20260326-1774523144923",
    "destinationPayoutMethod": "BANK_TRANSFER",
    "destinationPayoutChannel": "CENAIDJA"
  },
  "timestamp": "2026-03-26T11:06:06.309161274Z",
  "schemaVersion": "1.0.1"
}

Handling Name Mismatch (Manual Review)

Transactions with recipient name mismatches are routed for review in the merchant dashboard, where you can choose to approve or cancel them.

  • Transactions are labeled as "Name Mismatch" instead of failing immediately.

  • You can manage these transactions in the "Name Mismatch" tab on the dashboard.

  • On the transaction details page, you can take one of the following actions:

    • Approve – Process the transaction using the bank’s recorded name.

    • Cancel – Cancel the transaction immediately.

      Actions are available for Merchant Users with "Full Access" Pay Out Module Permission:

Approving a Name Mismatch Transaction

To approve a transaction despite a name mismatch:

  1. Select the Transaction: Click on the transaction you want to approve.
  2. Click "Approve": In the transaction details page, click "Approve".
  3. Review and Verify: Check the recipient’s details, including provided account name, provided account number, and bank’s recorded name. (Optional) Add remarks if needed. If all details are correct, click "Approve".
  4. Confirm Approval: A confirmation pop-up will appear. Click "Continue" to proceed.
  5. Transaction Processing: The transaction will be processed using the bank’s recorded name. You can track its progress in the transaction timeline.

Cancelling a Name Mismatch Transaction

To reject a transaction due to a name mismatch:

  1. Select the Transaction: Click on the transaction you want to reject.
  2. Click "Cancel": In the transaction details page, click "Cancel".
  3. Review and Verify: Confirm that the names belong to different individuals. (Optional) Add remarks if needed. If you are sure the details are incorrect, click "Cancel".
  4. Confirm Rejection: A confirmation pop-up will appear. Click "Continue" to finalize rejection.
  5. Transaction Failed: The transaction status will update to "Cancelled". You can check the history in the transaction timeline.
📘

By default, name mismatch handling is configured as Auto Cancel. This means that any payout transaction with a name mismatch will be automatically cancelled. If you prefer to review these transactions manually, you may request to switch the setting to Manual Review by contacting [email protected]