# doDeal

## Overview

The `doDeal` endpoint is the core gateway for payment operations in the Hyp API. It provides a unified interface for processing various transaction types, with specific behavior controlled by the `validation` parameter.

## Use cases

* **Direct Charge**: Process immediate payment from a credit card via server-to-server integration (see [Basic Integration Flow](/introduction/basic-integration-flow-hello-world-with-a-full-working-charge.md))
* **Pre-Authorization**: Reserve funds without charging immediately - ideal for hotels, car rentals, e-commerce inventory verification (see [Two-Phase Commits](/two-phase-commits/overview.md))
* **Capture Authorization**: Finalize and collect funds that were previously reserved via pre-authorization (see [Two-Phase Commits](/two-phase-commits/overview.md))
* **Tokenization**: Store card details securely for future use without processing a transaction (see [Tokenization Process](/additional-payment-scenarios/tokenization.md))
* **Payment Page Initialization**: Redirect customers to a hosted payment page for PCI-compliant processing (see [Integrating Hyp's Payment Page](/payment-page-integration/integrating-hyps-payment-page-and-accepting-payment.md))
* **Credit Payouts**: Send funds to a customer or third party - refunds, marketplace payouts (see [Payouts](/additional-payment-scenarios/payouts.md))
* **Hold Operations**: Temporarily delay transaction execution for manual review, fraud checks, or business approval
* **Release Operations**: Release transactions from hold status to proceed with processing

## Request structure

For a comprehensive overview of the API request format and authentication, see [API Request & Response General Structure](/introduction/request-and-response-general-structure.md).

### Endpoint

`POST https://your-hyp-environment-url/xpo/Relay`

{% hint style="info" %}
**Note**: The endpoint server may vary by environment (production, sandbox, etc.). Please verify the correct endpoint URL with [Hyp support](mailto:cg-support@hyp.co.il).
{% endhint %}

### Request parameters

The API uses HTTP POST with `application/x-www-form-urlencoded` content type. These parameters are sent as form data:

| Parameter | Required | Type   | Description                                                              |
| --------- | -------- | ------ | ------------------------------------------------------------------------ |
| user      | Yes      | String | API username provided by Hyp                                             |
| password  | Yes      | String | API password provided by Hyp                                             |
| int\_in   | Yes      | String | URL-encoded XML payload containing the actual API command and parameters |

{% hint style="warning" %}
The `int_in` parameter contains the complete XML request shown in the next section, but it must be URL-encoded before sending. All code examples include proper URL encoding.
{% endhint %}

### XML payload structure

The following XML structure is what gets URL-encoded and sent in the `int_in` parameter:

```xml
<ashrait>
  <request>
    <version>2000</version>
    <language>ENG</language>
    <requestId/>
    <command>doDeal</command>
    <doDeal>
        <terminalNumber>0123456</terminalNumber>
        <cardNo>4111111111111111</cardNo>
        <cardExpiration>1225</cardExpiration>
        <transactionType>debit</transactionType>
        <currency>ILS</currency>
        <total>1000</total>
        <validation>autoComm</validation>
        <creditType>RegularCredit</creditType>
        <transactionCode>Phone</transactionCode>
        <!-- Additional parameters based on use case -->
    </doDeal>
  </request>
</ashrait>
```

### Command parameters

#### Required parameters

<details>

<summary>terminalNumber (String, Required)</summary>

A 10-character alphanumeric terminal ID assigned by Hyp. This merchant-specific identifier determines which configuration and rules apply to the transaction.

**Valid Values**: The first 2 characters are alphanumeric; the remaining 8 characters are numeric.

**Examples**: `0882819014`, `cg82819014`

</details>

<details>

<summary>transactionType (String, Required)</summary>

Determines the direction and purpose of the funds flow.

**Valid Values**:

* `Debit` - Cardholder is charged
* `Credit` - Cardholder is credited (no original debit transaction)
* `Forced` - Cardholder is charged. Used to force a locally approved transaction that should have been approved remotely
* `CashBack` - Cardholder is charged and receives a partial amount back in cash
* `Cash` - Cardholder is charged and receives the full amount in cash
* `RecurringDebit` - Recurring payments (Israeli market only)
* `BalanceEnquiry` - Balance inquiry only. `total` must be set to `1`
* `Load` - Credits the balance of a rechargeable card
* `Discharge` - Cardholder receives cash for the total balance of a rechargeable card

**Example**: `Debit`

</details>

<details>

<summary>currency (String, Required)</summary>

ISO 4217 currency code (according to supported currencies by the credit company).

**Valid Values**: `ILS` (New Israeli Shekel), `USD` (United States Dollar), `GBP` (Great Britain Pound), `HKD` (Hong Kong Dollar), `JPY` (Japanese Yen), `EUR` (European currency unit)

**Example**: `ILS`

</details>

<details>

<summary>total (Integer, Required)</summary>

Transaction amount in the smallest currency unit (cents/agorot). For example, 1000 = 10.00 ILS.

**Valid Values**: A positive integer up to 8 characters, or 0 for tokenization only.

**Example**: `1000` (equals 10.00)

</details>

<details>

<summary>validation (String, Required)</summary>

Operation type that determines the transaction behavior. This is the key parameter that controls what action doDeal performs.

**Valid Values**: `autoComm`, `verify`, `token`, `txnSetup`, `SetAsHold`, `autoCommRelease`

**Example**: `autoComm`

**Note**: See validation types reference table below for detailed use cases

</details>

<details>

<summary>creditType (String, Required)</summary>

The following credit types are supported:

**Valid Values**:

* `RegularCredit` - A single debit payment
* `IsraCredit` - "Isracredit", "AMEX credit", "Visa Adif/30+", "Diners Adif/30+" (local Israeli payment method)
* `AdHock` - Ad hock debit- "Hiyuv Miyadi" (local Israeli payment method)
* `SpecialCredit` - Special credit - "credit"/"fixed payments credit" (local Israeli payment method). Tag numberOfPayments is mandatory
* `Payments` - Multiple payments debit (installments). Tags numberOfPayments, periodicalPayment and firstPayment are mandatory according to the notes below

**Example**: `RegularCredit`

</details>

<details>

<summary>transactionCode (String, Required)</summary>

Transaction channel identifier for processing rules and fraud prevention.

**Valid Values**: `Internet` (an e-commerce transaction), `Phone` (a mail-order or telephone transaction using a card number).

**Example**: `Phone`

</details>

#### Card data parameters

<details>

<summary>cardNo (String, Conditional)</summary>

Credit card number. Required for new card transactions unless using a saved card token (cardId).

**Valid Values**: 16-19 digits

**Example**: `4111111111111111`

**Note**: Must be accompanied by cardExpiration

</details>

<details>

<summary>cardExpiration (String, Conditional)</summary>

Card expiry date. Required when cardNo is provided.

**Valid Values**: MMYY format

**Example**: `1225` (December 2025)

</details>

<details>

<summary>cvv (String, Optional but Recommended)</summary>

Card security code for additional verification. While optional, strongly recommended for card-not-present transactions.

**Valid Values**: 3-4 digits

**Example**: `123`

</details>

<details>

<summary>cardId (String, Conditional)</summary>

Token representing a previously saved card. Use as an alternative to cardNo for returning customers.

**Valid Values**: 16-digit token

**Example**: `1234567890121234`

**Note**: Last 4 digits match the original card

</details>

#### Payment page parameters

{% hint style="warning" %}
These parameters apply when `validation` is set to `TxnSetup`.

For details on handling the parameters that Hyp CreditGuard passes when redirecting from the payment page back to your merchant website, see [Handling payment completion redirect](/payment-page-integration/integrating-hyps-payment-page-and-accepting-payment.md#handle-payment-completion-redirect). For transaction validation methods, see [Transaction Validation](/advanced-security-guidelines/transaction-validation.md).
{% endhint %}

<details>

<summary>mpiValidation (String, Required)</summary>

Operation type for payment page transactions. Determines what happens after the customer completes the payment form.

**Valid Values**: `AutoComm`, `Verify`, `Token`, `AutoCommHold`

**Example**: `AutoComm`

</details>

<details>

<summary>successUrl (String, Recommended)</summary>

URL to redirect customers after a successful payment.

**Valid Values**: Valid HTTPS URL

**Example**: `https://yoursite.com/payment/success`

</details>

<details>

<summary>cancelUrl (String, Recommended)</summary>

URL to redirect customers if they cancel the payment.

**Valid Values**: Valid HTTPS URL

**Example**: `https://yoursite.com/payment/cancel`

</details>

<details>

<summary>errorUrl (String, Recommended)</summary>

URL to redirect customers if a payment error occurs.

**Valid Values**: Valid HTTPS URL

**Example**: `https://yoursite.com/payment/error`

</details>

<details>

<summary>mid (String, Required)</summary>

Merchant identifier for payment page branding and configuration.

**Valid Values**: Alphanumeric merchant ID

**Example**: `13092`

</details>

<details>

<summary>uniqueid (String, Required)</summary>

Unique transaction identifier to prevent duplicate processing and for tracking.

**Valid Values**: Any unique string

**Example**: `ORDER-2024-001234`

</details>

#### Installments parameters

The first and subsequent payments are validated against the total based on the following formula:

```
total = firstPayment + (numberOfPayments x periodicalPayment)
```

<details>

<summary>numberOfPayments (Integer, Optional)</summary>

Number of installment payments. Required when `creditType` is set to `Payments`, `SpecialCredit`, or `SpecialAlpha`:

* If `creditType` is set to `Payments`, the value represents the number of payments minus 1 (the first payment).
* If `creditType` is set to `SpecialCredit` or `SpecialAlpha`, the value represents the total number of payments.

**Valid Values**: Integer (1-20 digits)

**Default**: 1

**Example**: `6`

</details>

<details>

<summary>firstPayment (Integer, Optional)</summary>

Amount of the first installment in cents/agorot. The remaining amount is divided equally among the other payments. Required when `creditType` is set to `Payments`.

**Valid Values**: Integer (1-20 digits)

**Default**: Total transaction amount

**Example**: `500` (5.00 ILS)

</details>

<details>

<summary>periodicalPayment (Integer, Optional)</summary>

Amount of a periodical payment (installment) in cents/agorot. Required when `creditType` is set to `Payments`.

**Valid Values**: Integer (1-20 digits)

**Example**: `500` (5.00 ILS)

</details>

#### 3D-Secure parameters

You only need the following parameters when using the Direct API with an external MPI provider. If you're using the [3DS flow in payment page](/3-d-secure-integration/3ds-flow-in-payment-page.md), no additional parameters are required.

<details>

<summary>cavv (String, Optional)</summary>

Cardholder authentication verification value (CAVV) for Visa or UCAF for Mastercard, returned by 3-D Secure. This is a cryptographic proof that the cardholder successfully authenticated with their card issuer.

**Valid Values**: Base64-encoded string, 48 characters

**Example**: `QkM0Q0YxRkE5RDIzNEI2N0M4RDEyMzQ1Njc4OTBBQkM=`

</details>

<details>

<summary>eci (Numeric, Optional)</summary>

Electronic Commerce Indicator. Indicates the authentication result for 3-D Secure transactions.

**Valid Values**: 1-digit numeric code

**Example**: `5`

</details>

<details>

<summary>xid (String, Optional)</summary>

Directory server transaction ID. Transaction identifier for 3-D Secure authentication process.

**Valid Values**: String, up to 50 characters

**Example**: `2791c493-dac3-4aa7-9c0a-7448c21c3f69`

</details>

#### Business logic parameters

<details>

<summary>user (String, Optional)</summary>

User reference identifier for tracking purposes.

**Valid Values**: String (1-19 characters)

**Example**: `customer_12345`

</details>

<details>

<summary>addonData (Numeric, Optional)</summary>

Identification field defined by the merchant and the credit company. If provided, the value appears in credit company reports. Available only if enabled for the terminal by the credit company.

**Valid Values**: Numeric (2-8 digits)

**Example**: `12345678`

</details>

<details>

<summary>dealerNumber (Numeric, Optional)</summary>

Merchant number in the credit company. Required if the merchant operates in "ravMutav" mode and must not be used otherwise.

**Valid Values**: Numeric (1-7 digits)

**Example**: `1234567`

</details>

<details>

<summary>mainTerminalNumber (Numeric, Optional)</summary>

Main terminal number. Required if the merchant operates in "ravSapak" mode; must not be used otherwise.

**Valid Values**: Numeric (up to 7 digits)

**Example**: `0123456`

</details>

<details>

<summary>slaveTerminalNumber (Numeric, Optional)</summary>

Sub-terminal (POS register / "kupa") number as registered in Shva. Typically used when a merchant has multiple registers configured under the same terminal.

**Valid Values**: Numeric (up to 3 digits, with leading zeros)\
**Example**: `012`

</details>

#### ashraitEmvData parameters

<details>

<summary>deferMonths (Numeric, Optional)</summary>

Allows deferring billing of the cardholder by a specified number of months (1 to 12). Requires terminal configuration.

**Valid Values**: 2-digit numeric values from `01` to `12`

**Example**: `08`

</details>

<details>

<summary>dueDate (Numeric, Optional)</summary>

Allows billing the cardholder on a specific future date. The value must be no later than one year from the transaction date. Requires terminal configuration.

**Valid Values**: Numeric (6) representing a date in the `yymmdd` format

**Example**: `251030`

</details>

<details>

<summary>ipayCode (Enum, Optional)</summary>

Payment type code. This field is typically used when `transactionType` is set to `BalanceEnquiry` to check the card balance for a specific payment type.

**Valid Values**: `Currency`, `Stars`, `Points`, `Club`

**Example**: `Points`

</details>

<details>

<summary>offerCode (Numeric, Optional)</summary>

An offer code ("KOD MIVTZA") agreed upon between the merchant and the acquirer. Requires terminal configuration.

**Valid Values**: Numeric (2)

**Example**: `56`

</details>

#### Customer data parameters

<details>

<summary>routeCode (String, Optional)</summary>

A custom identifier used to route transactions from a logical Hyp CreditGuard terminal to a specific acquirer terminal. Requires terminal configuration.

**Valid Values**: 1 to 256. Consult Hyp for specific available codes

**Example**: `15`

</details>

<details>

<summary>userDataX (String, Optional)</summary>

Extended user data field for additional information. Ten fields are available, from `userData1` to `userData10`.

**Valid Values**: String up to 256 characters. Letters, digits, and spaces are allowed

**Example**: `Subscription 789 Premium 2026`

</details>

#### Advanced control parameters

<details>

<summary>shiftIdX (Alphanumeric, Optional)</summary>

Three separate shift identifiers — `shiftId1`, `shiftId2`, and `shiftId3` — used for grouping transactions.

**Valid Values**: Alphanumeric (1-32 characters)

**Example**: `20240715001`

</details>

<details>

<summary>shiftTxnDate (DateTime, Optional)</summary>

Shift date to associate with the transaction.

**Valid Values**: `YYYY-MM-DD hh:mm:ss`

**Example**: `2024-07-15 12:00:00`

</details>

### Validation types reference

| Validation Value  | J Code | Description                                                                                                                                                                                                                | Required Additional Parameters                                                 |
| ----------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| `AutoComm`        | J4     | A capture request that verifies a card locally or with the credit company. A positive response results in immediate settlement.                                                                                            | (`cardNo` + `cardExpiration`) OR `cardId`                                      |
| `AutoCommHold`    | J9     | A capture request (J4) without settlement (transmission). Settlement requires issuing a separate request with `validation` set to `AutoCommRelease`.                                                                       | (`cardNo` + `cardExpiration`) OR `cardId`                                      |
| `AutoCommRelease` | J109   | Settlement for a transaction previously performed with `AutoCommHold`.                                                                                                                                                     | `tranId` (from held transaction)                                               |
| `SetAsHold`       |        | Places a transaction on hold for manual review.                                                                                                                                                                            | `tranId` (from original transaction)                                           |
| `Token`           | J102   | Performs a validity check of the credit card number. If valid, generates and returns a credit card token that can be used for future transactions without storing the original credit card number. No charge is performed. | `cardNo` + `cardExpiration`, `total=0`                                         |
| `TxnSetup`        |        | A payment page request.                                                                                                                                                                                                    | `mpiValidation` + `mid` + `uniqueid` + `successUrl` + `cancelUrl` + `errorUrl` |
| `Verify`          | J5     | Performs an authorization request. Verifies that the credit card has sufficient funds. A separate request with `validation` set to `AutoComm` must be sent to capture the funds within the authorized amount.              | (`cardNo` + `cardExpiration`) OR `cardId`                                      |

### Transaction type & validation combinations

| Transaction Type | Validation                       | Use Case                     | Description                         |
| ---------------- | -------------------------------- | ---------------------------- | ----------------------------------- |
| `Debit`          | `AutoComm`                       | Immediate payment processing | Immediate payment from customer     |
| `Debit`          | `Verify`                         | Pre-authorization            | Hold funds for later capture        |
| `Debit`          | `AutoComm` + `authNo` or `cgUid` | Capture                      | Finalize pre-authorized transaction |
| `Debit`          | `Token`                          | Tokenization                 | Store card details for future use   |
| `Credit`         | `AutoComm`                       | Payout charge                | Send money to customer immediately  |
| `Credit`         | `Verify`                         | Payout pre-auth              | Reserve for future credit payout    |
| `Credit`         | `AutoComm` + `authNo` or `cgUid` | Payout capture               | Finalize credit payout              |

## Response structure

### Success response

```xml
<?xml version='1.0'?>
<ashrait>
    <response>
        <command>doDeal</command>
        <dateTime>2025-08-04 14:48</dateTime>
        <requestId />
        <tranId>119252675</tranId>
        <result>000</result>
        <message>Permitted transaction</message>
        <userMessage>Permitted transaction</userMessage>
        <additionalInfo>Host Result Remote 00-SUCCESS </additionalInfo>
        <version>2000</version>
        <language>Eng</language>
        <doDeal>
            <status>000</status>
            <statusText>Permitted transaction</statusText>
            <extendedStatus />
            <extendedStatusText />
            <extendedUserMessage />
            <terminalNumber>0882804010</terminalNumber>
            <cardId>1092880571131111</cardId>
            <cardBin>411111</cardBin>
            <cardMask>411111******1111</cardMask>
            <cardLength>16</cardLength>
            <cardNo>xxxxxxxxxxxx1111</cardNo>
            <cardName />
            <cardExpiration>1225</cardExpiration>
            <cardType code="99">Foreign</cardType>
            <extendedCardType code="0">Credit</extendedCardType>
            <blockedCard />
            <lifeStyle />
            <customCardType />
            <creditCompany code="0">Foreign</creditCompany>
            <cardBrand code="2">Visa</cardBrand>
            <cardAcquirer code="6">Alphacard</cardAcquirer>
            <serviceCode />
            <transactionType code="01">RegularDebit</transactionType>
            <creditType code="1">RegularCredit</creditType>
            <currency code="1">ILS</currency>
            <baseCurrency />
            <baseAmount />
            <transactionCode code="50">Phone</transactionCode>
            <total>1000</total>
            <firstPayment />
            <periodicalPayment />
            <numberOfPayments />
            <clubId />
            <validation code="4">AutoComm</validation>
            <idStatus code="0">Absent</idStatus>
            <cvvStatus code="3">NotValidated</cvvStatus>
            <authSource code="2">CreditCompany</authSource>
            <authNumber>8605326</authNumber>
            <fileNumber>45</fileNumber>
            <slaveTerminalNumber>021</slaveTerminalNumber>
            <slaveTerminalSequence>884</slaveTerminalSequence>
            <eci />
            <clientIp />
            <email />
            <cavv code="" />
            <user />
            <addonData />
            <supplierNumber>300012</supplierNumber>
            <id />
            <shiftId1 />
            <shiftId2 />
            <shiftId3 />
            <shiftTxnDate />
            <cgUid>119252675</cgUid>
            <cardHash />
            <acquirerData>
                <gateway>AshraitEmv</gateway>
                <acquirerTranType>01</acquirerTranType>
                <mcc>4121</mcc>
                <acquirerResponseId>654676767431</acquirerResponseId>
                <avsResponse code="0">Absent</avsResponse>
                <acquirerTranCode>50</acquirerTranCode>
            </acquirerData>
            <ashraitEmvData>
                <uid>25080414485408828046754</uid>
                <authCodeCreditCompany code="1">CreditCompanyAuthorized</authCodeCreditCompany>
                <idFlag>0</idFlag>
                <manufId>CGD</manufId>
                <catLevel>0</catLevel>
                <manufUse>001101</manufUse>
                <ashVersion>x</ashVersion>
                <ashTermType>0</ashTermType>
                <emvResponseCode>00</emvResponseCode>
                <deviceStatus>1111000000</deviceStatus>
                <ashReasonText>TIKRA</ashReasonText>
                <authCodeAcquirer code="0">NoAuthNumber</authCodeAcquirer>
                <isDoReverseDeal>0</isDoReverseDeal>
                <mti>100</mti>
            </ashraitEmvData>
            <extendedTranCode />
            <sendNotification />
        </doDeal>
    </response>
</ashrait>
```

### Error response

```xml
<?xml version='1.0'?>
<ashrait>
    <response>
        <command>doDeal</command>
        <dateTime>2025-08-06 10:46</dateTime>
        <requestId />
        <tranId>119295245</tranId>
        <result>004</result>
        <message>Refusal by credit company</message>
        <userMessage>Refusal by credit company</userMessage>
        <additionalInfo>Host Result Remote RESPONSE_0004-Transaction not approved </additionalInfo>
        <version>2000</version>
        <language>Eng</language>
        <doDeal>
            <status>004</status>
            <statusText>Refusal by credit company</statusText>
            <extendedStatus>15004</extendedStatus>
            <extendedStatusText>Transaction not approved</extendedStatusText>
            <extendedUserMessage>Transaction not approved</extendedUserMessage>
            <terminalNumber>0882814011</terminalNumber>
            <cardId>1092880571131111</cardId>
            <cardBin>411111</cardBin>
            <cardMask>411111******1111</cardMask>
            <cardLength>16</cardLength>
            <cardNo>xxxxxxxxxxxx1111</cardNo>
            <cardName />
            <cardExpiration>1225</cardExpiration>
            <cardType code="99">Foreign</cardType>
            <extendedCardType code="0">Credit</extendedCardType>
            <blockedCard />
            <lifeStyle />
            <customCardType />
            <creditCompany code="0">Foreign</creditCompany>
            <cardBrand code="2">Visa</cardBrand>
            <cardAcquirer code="2">Visa</cardAcquirer>
            <serviceCode />
            <transactionType code="01">RegularDebit</transactionType>
            <creditType code="1">RegularCredit</creditType>
            <currency code="1">ILS</currency>
            <baseCurrency />
            <baseAmount />
            <transactionCode code="50">Phone</transactionCode>
            <total>1000</total>
            <firstPayment />
            <periodicalPayment />
            <numberOfPayments />
            <clubId />
            <validation code="4">AutoComm</validation>
            <idStatus code="0">Absent</idStatus>
            <cvvStatus code="0">Absent</cvvStatus>
            <authSource code="2">CreditCompany</authSource>
            <authNumber />
            <fileNumber />
            <slaveTerminalNumber />
            <slaveTerminalSequence />
            <eci />
            <clientIp />
            <email />
            <cavv code="" />
            <user />
            <addonData />
            <supplierNumber>7007245</supplierNumber>
            <id />
            <shiftId1 />
            <shiftId2 />
            <shiftId3 />
            <shiftTxnDate />
            <cgUid>119295245</cgUid>
            <cardHash />
            <acquirerData>
                <gateway>AshraitEmv</gateway>
                <acquirerTranType>01</acquirerTranType>
                <mcc>0242</mcc>
                <avsResponse code="0">Absent</avsResponse>
                <acquirerTranCode>50</acquirerTranCode>
            </acquirerData>
            <ashraitEmvData>
                <uid>25080610460308828142450</uid>
                <authCodeCreditCompany code="2">CreditCompanyDeclined</authCodeCreditCompany>
                <idFlag>0</idFlag>
                <manufId>CGD</manufId>
                <catLevel>0</catLevel>
                <manufUse>001101</manufUse>
                <ashVersion>x</ashVersion>
                <ashTermType>0</ashTermType>
                <emvResponseCode>04</emvResponseCode>
                <deviceStatus>1111000000</deviceStatus>
                <ashReasonText>TIKRA</ashReasonText>
                <authCodeAcquirer code="2">AquirerDeclined</authCodeAcquirer>
                <telAuthAbility>1</telAuthAbility>
                <isDoReverseDeal>0</isDoReverseDeal>
                <mti>100</mti>
            </ashraitEmvData>
            <extendedTranCode />
            <sendNotification />
        </doDeal>
    </response>
</ashrait>
```

### Response fields

| XML field             | Field type                   | Value (code)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                              |
| --------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| status                | Numeric (3-5)                | For the full list of status codes, see [Response codes](#response-codes).                                                                                                                                                                                                                                                                                                                                                                                                                                    | Response result code. Successful transactions are marked with `000`. For backward compatibility, Ashrait EMV error codes are mapped to unified 3-digit `status` codes along with a unified `statusText`. The `extendedStatus`, `extendedStatusText`, and `extendedUserMessage` fields provide a more specific status code and detailed message text for the transaction. |
| statusText            | String                       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Response text message. Returned according to the request `language` (`ENG` or `HEB`).                                                                                                                                                                                                                                                                                    |
| extendedStatus        | Numeric (4-5)                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | A 4 to 5 digit specific status code. May be empty, as not all `status` codes have an `extendedStatus`.                                                                                                                                                                                                                                                                   |
| extendedStatusText    | String                       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Extended text message for the `extendedStatus` code. Returned according to the request `language` (`ENG` or `HEB`). Populated only when `extendedStatus` has a value.                                                                                                                                                                                                    |
| extendedUserMessage   | String                       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Extended text message intended for non-technical users. Returned according to the request `language` (`ENG` or `HEB`). Populated only when `extendedStatus` has a value.                                                                                                                                                                                                 |
| authSource            | Enum                         | `None`, `Shva` (`1`), `CreditCompany` (`2`), `VoiceMail` (`3`)                                                                                                                                                                                                                                                                                                                                                                                                                                               | Source of the authorization number.                                                                                                                                                                                                                                                                                                                                      |
| cardAcquirer          | Enum                         | `Isracard` (`1`), `Visa` (`2`), `Alphacard` (`6`), `MultiPass` (`11`)                                                                                                                                                                                                                                                                                                                                                                                                                                        | Card acquirer.                                                                                                                                                                                                                                                                                                                                                           |
| cardBrand             | Enum                         | `PrivateLabel` (`0`), `Mastercard` (`1`), `Visa` (`2`), `Maestro` (`3`), `Amex` (`4`), `Isracard` (`5`), `JCB` (`6`), `Discover` (`7`), `Diners` (`8`)                                                                                                                                                                                                                                                                                                                                                       | Card brand. American Express and Diners cards are also considered private label.                                                                                                                                                                                                                                                                                         |
| cardId                | Numeric (16) or Numeric (36) |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Card identifier. Returned when a card-number transaction is performed and the Card ID module is purchased and configured to generate card IDs.                                                                                                                                                                                                                           |
| creditCompany         | Enum                         | `Foreign` (`0`), `Isracard` (`1`), `Visa` (`2`), `Alphacard` (`6`), `MultiPass` (`11`)                                                                                                                                                                                                                                                                                                                                                                                                                       | Credit card issuer. The following values are deprecated in Ashrait EMV (they appear instead in the `cardBrand` field): `Diners` (`3`), `Amex` (`4`), `JCB` (`5`).                                                                                                                                                                                                        |
| cvvStatus             | Enum                         | `Absent` (`0`), `Valid` (`1`), `Invalid` (`2`), `NotValidated` (`3`)                                                                                                                                                                                                                                                                                                                                                                                                                                         | CVV status. Populated only if the terminal is configured by Shva to validate CVV.                                                                                                                                                                                                                                                                                        |
| idStatus              | Enum                         | `Absent` (`0`), `Valid` (`1`), `Invalid` (`2`), `NotValidated` (`3`)                                                                                                                                                                                                                                                                                                                                                                                                                                         | Status of the cardholder's Israeli ID number (Israeli cards only). Populated only if the terminal is configured by Shva to validate Israeli ID.                                                                                                                                                                                                                          |
| cardNo                | Numeric (8-19)               |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Credit card number, returned as sent in the request.                                                                                                                                                                                                                                                                                                                     |
| total                 | Numeric (1-8)                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| transactionType       | Enum                         | Cardholder is charged: `Blocked` (`00`), `RegularDebit` (`01`), `AuthDebit` (`02`), `ForcedDebit` (`03`). Cardholder is credited: `RegularCredit` (`51`), `Refund` (`52`), `AuthCredit` (`53`). Cardholder obligo is canceled: `Reversal` (`58`).                                                                                                                                                                                                                                                            | Card transaction type.                                                                                                                                                                                                                                                                                                                                                   |
| creditType            | Enum                         | Returned as sent in the request. `AdHock` (`3`) is returned when the card type is "Hiyuv Miyadi".                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                                                                                                                                                                                                                                                                                                          |
| currency              | Enum                         | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |                                                                                                                                                                                                                                                                                                                                                                          |
| transactionCode       | Enum                         | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |                                                                                                                                                                                                                                                                                                                                                                          |
| authNumber            | Alphanumeric (3-7)           |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned when a transaction is authorized. Allowed characters: `0-9`, `A-Z` (uppercase only).                                                                                                                                                                                                                                                                            |
| firstPayment          | Numeric (0-20)               |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| periodicalPayment     | Numeric (0-20)               |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| numberOfPayments      | Numeric (0-20)               |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| slaveTerminalNumber   | Numeric (1-3)                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Sub-terminal (POS register or "kupa") number as registered in Shva. Used when a merchant has multiple registers under the same terminal.                                                                                                                                                                                                                                 |
| slaveTerminalSequence | Numeric (1-3)                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Sequential transaction number generated by the sub-terminal (register). Together with `slaveTerminalNumber` and `fileNumber`, forms the unique transaction reference in the acquirer system.                                                                                                                                                                             |
| validation            | Enum                         |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request, along with the value (code) also referred to as the "J Code".                                                                                                                                                                                                                                                                           |
| cardExpiration        | Date (4)                     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| user                  | String (1-19)                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| addonData             | Numeric (2-8)                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| cavv                  | Enum                         | `AuthenticationInvalid` (`0`), `FailedValidationAuthentication` (`1`), `PassedValidationAuthentication` (`2`), `PassedValidationAttempt` (`3`), `FailedValidationAttempt` (`4`), `NotUsed` (`5`), `NotValidated` (`6`), `FailedValidationAttemptByVisa` (`7`), `PassedValidationAttemptByVisa` (`8`), `FailedValidationAttemptAcsUnavailable` (`9`), `PassedValidationAttemptAcsUnavailable` (`A`), `PassedValidationInformationOnly` (`B`), `NotValidatedAttempt` (`C`), `NotValidatedAuthentication` (`D`) | Field for merchants using 3-D Secure. Returned when the transaction is sent for authorization (Visa only).                                                                                                                                                                                                                                                               |
| eci                   | Numeric (1)                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Field for merchants using 3-D Secure. E-commerce indicator obtained from the 3DS MPI.                                                                                                                                                                                                                                                                                    |
| xid                   | String (50)                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Field for merchants using 3-D Secure. Obtained from the 3DS MPI.                                                                                                                                                                                                                                                                                                         |
| cardType              | Enum                         | `Local` (`00`), `Foreign` (`99`), `Fuel` (`03`), `Debit` (`01`), `Rechargable` (`06`), `Dually` (`04`), `Dalkan` (`08`), `Club` (`70`), `FuelClub` (`73`), `DuallyClub` (`74`), `RechargeClub` (`76`)                                                                                                                                                                                                                                                                                                        | Extended card identification.                                                                                                                                                                                                                                                                                                                                            |
| cardName              | String                       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Card name. Empty when using the English protocol.                                                                                                                                                                                                                                                                                                                        |
| cardBin               | Numeric (2-6)                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Credit card BIN (first 2 or 6 digits of the card prefix).                                                                                                                                                                                                                                                                                                                |
| cardMask              | String                       |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Masked card number (for example `123456XXXX1234`).                                                                                                                                                                                                                                                                                                                       |
| cardLength            | Numeric (2)                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Card number length.                                                                                                                                                                                                                                                                                                                                                      |
| fileNumber            | Numeric (2)                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Next tentative transmit file number.                                                                                                                                                                                                                                                                                                                                     |
| supplierNumber        | Numeric (7)                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Supplier number (MID).                                                                                                                                                                                                                                                                                                                                                   |
| extendedCardType      | String (1-100)               | Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Available only when installed. Custom card type determined by the merchant's BIN range linkage table.                                                                                                                                                                                                                                                                    |
| lifeStyle             | Numeric (1)                  | Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Available only when installed. Value `1` identifies a lifestyle sub-brand.                                                                                                                                                                                                                                                                                               |
| customCardType        | String (1-100)               | Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Available only when installed. Custom card type determined by the merchant's BIN range linkage table.                                                                                                                                                                                                                                                                    |
| shiftId1              | Alphanumeric (1-32)          | Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Shift identifier associated with the transaction. Used for grouping transactions.                                                                                                                                                                                                                                                                                        |
| shiftId2              | Alphanumeric (1-32)          | Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Shift identifier associated with the transaction. Used for grouping transactions.                                                                                                                                                                                                                                                                                        |
| shiftId3              | Alphanumeric (1-32)          | Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Shift identifier associated with the transaction. Used for grouping transactions.                                                                                                                                                                                                                                                                                        |
| shiftTxnDate          | Date & time                  | Requested date and time: `YYYY-MM-DD hh:mm:ss`. Can be empty.                                                                                                                                                                                                                                                                                                                                                                                                                                                | Current shift date associated with the transaction.                                                                                                                                                                                                                                                                                                                      |
| routeCode             | Alphanumeric (1-32)          | Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Available only when installed. Custom identifier for routing transactions from a Hyp CreditGuard (logical) terminal to a real acquiring terminal.                                                                                                                                                                                                                        |
| customerData          |                              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Returned as sent in the request.                                                                                                                                                                                                                                                                                                                                         |
| acquirerData          |                              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | See [acquirerData fields](#acquirerData-fields) below for nested fields.                                                                                                                                                                                                                                                                                                 |
| ashraitEmvData        |                              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | See [ashraitEmvData fields](#ashraitEmvData-fields) below for nested fields.                                                                                                                                                                                                                                                                                             |

#### acquirerData fields

| XML field          | Field type        | Value (code) | Description                                                                                            |
| ------------------ | ----------------- | ------------ | ------------------------------------------------------------------------------------------------------ |
| acquirerResponseId | Alphanumeric (12) |              | RRN identifier returned by the authorizing party (when the transaction was sent to Shva for approval). |

#### ashraitEmvData fields

| XML field             | Field type         | Value (code)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Description                                                                                                                                                                                                                                                                    |
| --------------------- | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| authCodeAcquirer      | Enum               | `NoAuthNumber` (`0`), `AcquirerAuthorized` (`1`), `AcquirerDeclined` (`2`), `ShvaAuthorized` (`3`), `ShvaDeclined` (`4`), `VoiceAuthorized` (`5`), `VoiceDeclined` (`6`), `AuthorizedOffline` (`7`)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |                                                                                                                                                                                                                                                                                |
| authCodeCreditCompany | Enum               | `NoAuthNumber` (`0`), `CreditCompanyAuthorized` (`1`), `CreditCompanyDeclined` (`2`), `ShvaAuthorized` (`3`), `ShvaDeclined` (`4`), `VoiceAuthorized` (`5`), `VoiceDeclined` (`6`), `CreditCompanyPreAuthorized` (`7`), `AuthorizedSmartCard` (`8`)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |                                                                                                                                                                                                                                                                                |
| authNoAcquirer        | Alphanumeric (7)   |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | In specific situations (for example, transactions with foreign credit cards), the response may contain both an acquirer authentication number and a credit company authentication number.                                                                                      |
| informativeTranCode   | Enum               | `SmartCardRejected` (`1`), `CardInNeg` (`2`), `AuthNoRejected` (`3`)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                                                                                                                                                                                                                |
| cvvFlag               | Numeric (1)        | `0`: CVV was not entered, `1`: CVV was entered. Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Indicates whether CVV was entered.                                                                                                                                                                                                                                             |
| idFlag                | Numeric (1)        | `0`: Israeli ID was not entered, `1`: Israeli ID was entered. Can be empty                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | Indicates whether the Israeli ID of the cardholder was entered.                                                                                                                                                                                                                |
| uid                   | Numeric (23)       | Example: `20110310360108828046560`. Position 1-12: transaction date in `yymmddhhmmss` format. Position 13-19: first 7 digits of the terminal number. Position 20-22: 3 unique digits. Position 23: check digit                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Shva transaction identifier. In some cases, requests related to the same financial transaction share the same Shva `uid`. For example, in a two-phase sale (J5 followed by J4), both requests share the same `uid`.                                                            |
| dspBalance            | Alphanumeric (35)  | 100.00 סכום יתרת הכרטיס                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Returned for `BalanceEnquiry` transactions. Contains the card balance as returned by the credit company. The value may include a Hebrew description suffix (for example, "סכום יתרת הכרטיס", meaning "card balance amount"). Returned exactly as provided, without conversion. |
| ashReasonText         | Alphanumeric (256) | May contain one or more of: `BAKASHA_YEZUMA`, `DRISHAT_KARTIS_CHACHAM`, `KARTIS_HASUM`, `KOD_SHERUT`, `KOD_BIZUA_DCODE`, `REQUEST_DCC_OFFER`, `TIKRA`, `RANDOM`, `SUG_ISKA`, `SUG_ASHRAY`, `EXPIRATION_DATE`, `TEUDAT_ZEHUT_SHGUYA`, `SCHUM_ISKAOT_MIZTABER`, `HAAVARA_MAGNETIT_KARTIS_C`, `HACHAM`, `BITUL_BAKASHA_LEISHUR_LEL`, `O_ISKA`, `IMUT_MISPAR_ISHUR_SHEHUKL`, `AD`, `ISKA_FROM_MOBILE_PHONE`, `BAKASHA_LEISHUR_LELO_ISKA`, `SUG_KARTIS_NOT_IN_VECTOR`, `KARTIS_NITAN`, `STOP_ACTIVITY`, `TASHLUM_TORAN_MEAL_TIKRA`, `ITCHUL_HORAAT_KEVA`, `KARTIS_MICHUTZ_LATCHUM`, `TIMEOUT`, `DRISHAT_MANPIK`, `TRACK2_LENGTH_LESS_THAN_3`, `7_IN_MAGNETIC_TRAN`, `SUG_MATBEA`, `SUG_KARTIS_HASER_BEKOVETZ`, `_TKEFIM`, `KABALAT_MEIDA`, `ISKA_CHACHAMA_NIDCHATA_ON`, `LINE`, `OBLIGO_UPDATE`, `TNAEY_TASHLUM`, `ASHRAIT_DACHATA_ISHUR_MAN`, `PIK`, `ISKA_IM_HATAVA`, `PP_ERROR_DURING_ISKA`, `KARTIS_DACHA_ISHUR_MANPIK`, `SMARTCARD_TAKEN_OUT_OR_PI`, `NPAD_DISCONTINUED_TRAN`, `NETEK_BATIKSHORET`, `UNIDENTIFIED_PREFIX`, `CONTACTLESS_DEMAND` | Reason(s) the transaction was sent to Shva for authorization. A transaction may include one or more reasons.                                                                                                                                                                   |
| manufId               | Alphanumeric (3)   | Example: `CGD`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Manufacturer identifier (SHVA YATZRAN). CreditGuard uses `CGD`. When processing transactions via a pinpad, this value may contain the pinpad `manufId`.                                                                                                                        |
| manufUse              | Alphanumeric (6)   | Example: `001101`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | Manufacturer (SHVA YATZRAN) software version.                                                                                                                                                                                                                                  |
| ashVersion            | Alphanumeric (1)   | `w` (Windows), `l` (DLL), `i` (web service (SaaS))`,` a`(Android),`x`(Linux),`o`(iOS),`u`(Unix),`t\` (proprietary)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Ashrait operating system type.                                                                                                                                                                                                                                                 |
| deviceStatus          | Numeric (10)       | Example: `1111000000`. Each of the 10 digits is `0` (NOT OK) or `1` (OK). 1st: magnetic reader. 2nd: contact EMV. 3rd: contactless magnetic. 4th: contactless EMV. 5-10: reserved                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | Pinpad status. Relevant for card-present transactions only.                                                                                                                                                                                                                    |
| emvResponseCode       | Alphanumeric (2)   | Examples: `00` (success), `04` (declined)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | Authorization response code returned from the card issuer (known as "F39 response" in Shva). Relevant only for card-present transactions processed via an EMV reader.                                                                                                          |
| addendum2             |                    |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | Parent container for the `specialAddData` field (see below).                                                                                                                                                                                                                   |
| specialAddData        | Numeric (8)        |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | May be used by the credit company to return KOD MOADON. The value must be pre-configured between the merchant and the credit company/acquirer. Nested inside the `addendum2` field.                                                                                            |

## Code examples

{% tabs %} {% tab title="cURL" %}

```bash
#!/bin/bash

# Set credentials and endpoint
API_USER="your_username"
API_PASS="your_password"
ENDPOINT="https://your-hyp-environment-url/xpo/Relay"

# Create XML payload for direct charge
XML_PAYLOAD='<ashrait>
  <request>
    <version>2000</version>
    <language>ENG</language>
    <command>doDeal</command>
    <doDeal>
      <terminalNumber>0123456</terminalNumber>
      <transactionType>debit</transactionType>
      <transactionCode>Phone</transactionCode>
      <total>1000</total>
      <currency>ILS</currency>
      <creditType>RegularCredit</creditType>
      <validation>autoComm</validation>
      <cardNo>4111111111111111</cardNo>
      <cardExpiration>1225</cardExpiration>
      <cvv>123</cvv>
    </doDeal>
  </request>
</ashrait>'

# URL encode the XML
ENCODED_XML=$(echo -n "$XML_PAYLOAD" | python3 -c "import sys, urllib.parse; print(urllib.parse.quote(sys.stdin.read()))")

# Send request
curl -X POST "$ENDPOINT" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "user=$API_USER&password=$API_PASS&int_in=$ENCODED_XML"
```

```py
import requests
import urllib.parse
from xml.etree import ElementTree as ET

# Configuration
API_USER = "your_username"
API_PASS = "your_password"
ENDPOINT = "https://your-hyp-environment-url/xpo/Relay"

def process_payment(terminal_number, total, currency="ILS", **kwargs):
    """
    Process various types of payments using doDeal endpoint
    
    Args:
        terminal_number (str): Terminal ID
        total (int): Amount in cents
        currency (str): Currency code
        **kwargs: Additional parameters for specific use cases:
            - validation: Transaction type (autoComm, verify, token, etc.)
            - transaction_type: debit or credit
            - card_number: Credit card number
            - card_expiration: Card expiry (MMYY)
            - cvv: Card security code
            - card_id: Token for saved card
            - tran_id: For capture/hold operations
            - mpi_validation: For payment page setup
            - success_url: Payment page success URL
            - cancel_url: Payment page cancel URL
        
    Returns:
        dict: Response containing success status and transaction data
    """
    
    # Build XML parameters dynamically
    xml_params = [
        f"<terminalNumber>{terminal_number}</terminalNumber>",
        f"<transactionType>{kwargs.get('transaction_type', 'debit')}</transactionType>",
        f"<total>{total}</total>",
        f"<currency>{currency}</currency>",
        f"<validation>{kwargs.get('validation', 'autoComm')}</validation>",
        f"<creditType>{kwargs.get('credit_type', 'RegularCredit')}</creditType>",
        f"<transactionCode>{kwargs.get('transaction_code', 'Phone')}</transactionCode>"
    ]
    
    # Add card data if provided
    if 'card_number' in kwargs:
        xml_params.append(f"<cardNo>{kwargs['card_number']}</cardNo>")
    if 'card_expiration' in kwargs:
        xml_params.append(f"<cardExpiration>{kwargs['card_expiration']}</cardExpiration>")
    if 'cvv' in kwargs:
        xml_params.append(f"<cvv>{kwargs['cvv']}</cvv>")
    if 'card_id' in kwargs:
        xml_params.append(f"<cardId>{kwargs['card_id']}</cardId>")
    
    # Add transaction reference for capture/hold operations
    if 'tran_id' in kwargs:
        xml_params.append(f"<tranId>{kwargs['tran_id']}</tranId>")
    
    # Add payment page parameters
    if 'mpi_validation' in kwargs:
        xml_params.append(f"<mpiValidation>{kwargs['mpi_validation']}</mpiValidation>")
    if 'success_url' in kwargs:
        xml_params.append(f"<successUrl>{kwargs['success_url']}</successUrl>")
    if 'cancel_url' in kwargs:
        xml_params.append(f"<cancelUrl>{kwargs['cancel_url']}</cancelUrl>")
    if 'mid' in kwargs:
        xml_params.append(f"<mid>{kwargs['mid']}</mid>")
    if 'uniqueid' in kwargs:
        xml_params.append(f"<uniqueid>{kwargs['uniqueid']}</uniqueid>")
    
    # Create XML payload
    xml_payload = f"""<ashrait>
      <request>
        <version>2000</version>
        <language>ENG</language>
        <command>doDeal</command>
        <doDeal>
          {''.join(xml_params)}
        </doDeal>
      </request>
    </ashrait>"""
    
    # Prepare form data
    form_data = {
        'user': API_USER,
        'password': API_PASS,
        'int_in': xml_payload
    }
    
    # Send request
    try:
        response = requests.post(ENDPOINT, data=form_data)
        response.raise_for_status()
        
        # Parse XML response
        root = ET.fromstring(response.text)
        result = root.find('.//result').text
        
        if result == '000':
            # Extract response data
            tran_id = root.find('.//tranId').text
            response_data = {
                'success': True,
                'transaction_id': tran_id,
                'result_code': result
            }
            
            # Add optional response fields if present
            auth_number = root.find('.//authNumber')
            if auth_number is not None:
                response_data['auth_number'] = auth_number.text
            
            card_id = root.find('.//cardId')
            if card_id is not None:
                response_data['card_id'] = card_id.text
            
            cg_uid = root.find('.//cgUid')
            if cg_uid is not None:
                response_data['cg_uid'] = cg_uid.text
            
            return response_data
        else:
            error_msg = root.find('.//userMessage')
            return {
                'success': False,
                'error': error_msg.text if error_msg is not None else 'Unknown error',
                'result_code': result
            }
            
    except Exception as e:
        return {
            'success': False,
            'error': str(e)
        }

# Example 1: Direct Charge
direct_charge = process_payment(
    terminal_number='0123456',
    total=1000,  # 10.00 ILS
    validation='autoComm',
    card_number='4111111111111111',
    card_expiration='1225',
    cvv='123'
)

# Example 2: Pre-Authorization
pre_auth = process_payment(
    terminal_number='0123456',
    total=5000,  # 50.00 ILS
    validation='verify',
    card_number='4111111111111111',
    card_expiration='1225',
    cvv='123'
)

# Example 3: Tokenization
tokenization = process_payment(
    terminal_number='0123456',
    total=0,  # No charge for tokenization
    validation='token',
    card_number='4111111111111111',
    card_expiration='1225'
)

# Example 4: Payment Page Setup
payment_page = process_payment(
    terminal_number='0123456',
    total=2500,  # 25.00 ILS
    validation='txnSetup',
    mpi_validation='autoComm',
    success_url='https://yoursite.com/success',
    cancel_url='https://yoursite.com/cancel',
    mid='MERCHANT123',
    uniqueid='ORDER-456'
)

# Example 5: Capture Pre-Authorization
capture = process_payment(
    terminal_number='0123456',
    total=5000,  # Same amount as pre-auth
    validation='autoComm',
    tran_id='12345678'  # From pre-auth response
)

# Example 6: Credit Payout
payout = process_payment(
    terminal_number='0123456',
    total=1500,  # 15.00 ILS
    transaction_type='credit',
    validation='autoComm',
    card_number='4111111111111111',
    card_expiration='1225'
)

# Print results
for name, result in [('Direct Charge', direct_charge), ('Pre-Auth', pre_auth), 
                     ('Tokenization', tokenization), ('Payment Page', payment_page),
                     ('Capture', capture), ('Payout', payout)]:
    if result['success']:
        print(f"{name} successful! Transaction ID: {result['transaction_id']}")
    else:
        print(f"{name} failed: {result['error']}")
```

```js
const axios = require('axios');
const querystring = require('querystring');
const xml2js = require('xml2js');

// Configuration
const API_USER = 'your_username';
const API_PASS = 'your_password';
const ENDPOINT = 'https://your-hyp-environment-url/xpo/Relay';

/**
 * Process various types of payments using doDeal endpoint
 * @param {Object} options - Payment options
 * @returns {Object} Response with success status and data
 */
async function processPayment(options) {
    const {
        terminalNumber,
        total,
        currency = 'ILS',
        validation = 'autoComm',
        transactionType = 'debit',
        creditType = 'RegularCredit',
        transactionCode = 'Phone',
        ...additionalParams
    } = options;

    // Build XML parameters
    const xmlParams = [
        `<terminalNumber>${terminalNumber}</terminalNumber>`,
        `<transactionType>${transactionType}</transactionType>`,
        `<total>${total}</total>`,
        `<currency>${currency}</currency>`,
        `<validation>${validation}</validation>`,
        `<creditType>${creditType}</creditType>`,
        `<transactionCode>${transactionCode}</transactionCode>`
    ];

    // Add additional parameters dynamically
    Object.entries(additionalParams).forEach(([key, value]) => {
        if (value !== undefined && value !== null) {
            xmlParams.push(`<${key}>${value}</${key}>`);
        }
    });

    const xmlPayload = `<ashrait>
      <request>
        <version>2000</version>
        <language>ENG</language>
        <command>doDeal</command>
        <doDeal>
          ${xmlParams.join('\n          ')}
        </doDeal>
      </request>
    </ashrait>`;

    // Prepare form data
    const formData = querystring.stringify({
        user: API_USER,
        password: API_PASS,
        int_in: xmlPayload
    });

    try {
        // Send request
        const response = await axios.post(ENDPOINT, formData, {
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
            }
        });

        // Parse XML response
        const parser = new xml2js.Parser();
        const result = await parser.parseStringPromise(response.data);
        
        const responseData = result.ashrait.response[0];
        const resultCode = responseData.result[0];

        if (resultCode === '000') {
            const successResponse = {
                success: true,
                transactionId: responseData.tranId[0],
                resultCode: resultCode
            };

            // Add optional fields if present
            if (responseData.doDeal && responseData.doDeal[0]) {
                const dealData = responseData.doDeal[0];
                if (dealData.authNumber) successResponse.authNumber = dealData.authNumber[0];
                if (dealData.cardId) successResponse.cardId = dealData.cardId[0];
                if (dealData.cgUid) successResponse.cgUid = dealData.cgUid[0];
                if (dealData.cardBrand) successResponse.cardBrand = dealData.cardBrand[0];
            }

            return successResponse;
        } else {
            return {
                success: false,
                error: responseData.userMessage ? responseData.userMessage[0] : 'Unknown error',
                resultCode: resultCode
            };
        }
    } catch (error) {
        return {
            success: false,
            error: error.message
        };
    }
}

// Example usage patterns

async function runExamples() {
    try {
        // 1. Direct Charge
        const directCharge = await processPayment({
            terminalNumber: '0123456',
            total: 1000,
            validation: 'autoComm',
            cardNo: '4111111111111111',
            cardExpiration: '1225',
            cvv: '123'
        });

        // 2. Pre-Authorization  
        const preAuth = await processPayment({
            terminalNumber: '0123456',
            total: 5000,
            validation: 'verify',
            cardNo: '4111111111111111',
            cardExpiration: '1225',
            cvv: '123'
        });

        // 3. Tokenization
        const tokenization = await processPayment({
            terminalNumber: '0123456',
            total: 0,
            validation: 'token',
            cardNo: '4111111111111111',
            cardExpiration: '1225'
        });

        // 4. Payment Page Setup
        const paymentPage = await processPayment({
            terminalNumber: '0123456',
            total: 2500,
            validation: 'txnSetup',
            mpiValidation: 'autoComm',
            successUrl: 'https://yoursite.com/success',
            cancelUrl: 'https://yoursite.com/cancel',
            mid: 'MERCHANT123',
            uniqueid: 'ORDER-456'
        });

        // 5. Installments Payment
        const installments = await processPayment({
            terminalNumber: '0123456',
            total: 3000,
            validation: 'autoComm',
            creditType: 'Installments',
            numberOfPayments: 6,
            firstPayment: 500,
            cardNo: '4111111111111111',
            cardExpiration: '1225',
            cvv: '123'
        });

        // 6. Token-based Payment
        const tokenPayment = await processPayment({
            terminalNumber: '0123456',
            total: 1500,
            validation: 'autoComm',
            cardId: '1234567890123456'  // Previously obtained token
        });

        // Process results
        const examples = [
            ['Direct Charge', directCharge],
            ['Pre-Authorization', preAuth],
            ['Tokenization', tokenization],
            ['Payment Page', paymentPage],
            ['Installments', installments],
            ['Token Payment', tokenPayment]
        ];

        examples.forEach(([name, result]) => {
            if (result.success) {
                console.log(`${name} successful! Transaction ID: ${result.transactionId}`);
                if (result.authNumber) console.log(`  Auth Number: ${result.authNumber}`);
                if (result.cardId) console.log(`  Card Token: ${result.cardId}`);
            } else {
                console.log(`${name} failed: ${result.error} (Code: ${result.resultCode})`);
            }
        });

    } catch (error) {
        console.error('Error running examples:', error.message);
    }
}

// Run examples
runExamples();
```

```java
import java.io.*;
import java.net.*;
import java.util.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;

public class HypDoDealClient {
    private static final String API_USER = "your_username";
    private static final String API_PASS = "your_password";
    private static final String ENDPOINT = "https://your-hyp-environment-url/xpo/Relay";
    
    public static class PaymentRequest {
        public String terminalNumber;
        public int total;
        public String currency = "ILS";
        public String validation = "autoComm";
        public String transactionType = "debit";
        public String creditType = "RegularCredit";
        public String transactionCode = "Phone";
        public Map<String, String> additionalParams = new HashMap<>();
        
        public PaymentRequest(String terminalNumber, int total) {
            this.terminalNumber = terminalNumber;
            this.total = total;
        }
        
        public PaymentRequest setValidation(String validation) {
            this.validation = validation;
            return this;
        }
        
        public PaymentRequest setTransactionType(String transactionType) {
            this.transactionType = transactionType;
            return this;
        }
        
        public PaymentRequest setCreditType(String creditType) {
            this.creditType = creditType;
            return this;
        }
        
        public PaymentRequest addParam(String key, String value) {
            this.additionalParams.put(key, value);
            return this;
        }
    }
    
    public static class PaymentResult {
        public boolean success;
        public String transactionId;
        public String authNumber;
        public String cardId;
        public String cgUid;
        public String cardBrand;
        public String resultCode;
        public String error;
        
        @Override
        public String toString() {
            return success ? 
                String.format("SUCCESS - TxnID: %s, Auth: %s", transactionId, authNumber) :
                String.format("FAILED - %s (Code: %s)", error, resultCode);
        }
    }
    
    public static PaymentResult processPayment(PaymentRequest request) {
        PaymentResult result = new PaymentResult();
        
        try {
            // Build XML payload
            StringBuilder xmlBuilder = new StringBuilder();
            xmlBuilder.append("<ashrait>")
                     .append("<request>")
                     .append("<version>2000</version>")
                     .append("<language>ENG</language>")
                     .append("<command>doDeal</command>")
                     .append("<doDeal>")
                     .append("<terminalNumber>").append(request.terminalNumber).append("</terminalNumber>")
                     .append("<transactionType>").append(request.transactionType).append("</transactionType>")
                     .append("<total>").append(request.total).append("</total>")
                     .append("<currency>").append(request.currency).append("</currency>")
                     .append("<validation>").append(request.validation).append("</validation>")
                     .append("<creditType>").append(request.creditType).append("</creditType>")
                     .append("<transactionCode>").append(request.transactionCode).append("</transactionCode>");
            
            // Add additional parameters
            for (Map.Entry<String, String> entry : request.additionalParams.entrySet()) {
                xmlBuilder.append("<").append(entry.getKey()).append(">")
                         .append(entry.getValue())
                         .append("</").append(entry.getKey()).append(">");
            }
            
            xmlBuilder.append("</doDeal>")
                     .append("</request>")
                     .append("</ashrait>");
            
            String xmlPayload = xmlBuilder.toString();
            
            // Prepare form data
            String formData = String.format("user=%s&password=%s&int_in=%s",
                URLEncoder.encode(API_USER, "UTF-8"),
                URLEncoder.encode(API_PASS, "UTF-8"),
                URLEncoder.encode(xmlPayload, "UTF-8")
            );
            
            // Send HTTP request
            URL url = new URL(ENDPOINT);
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");
            conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
            conn.setDoOutput(true);
            
            try (OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream())) {
                writer.write(formData);
                writer.flush();
            }
            
            // Read response
            StringBuilder response = new StringBuilder();
            try (BufferedReader reader = new BufferedReader(
                    new InputStreamReader(conn.getInputStream()))) {
                String line;
                while ((line = reader.readLine()) != null) {
                    response.append(line);
                }
            }
            
            // Parse XML response
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            DocumentBuilder builder = factory.newDocumentBuilder();
            Document doc = builder.parse(new ByteArrayInputStream(
                response.toString().getBytes("UTF-8")));
            
            String resultCode = getElementValue(doc, "result");
            result.resultCode = resultCode;
            
            if ("000".equals(resultCode)) {
                result.success = true;
                result.transactionId = getElementValue(doc, "tranId");
                result.authNumber = getElementValue(doc, "authNumber");
                result.cardId = getElementValue(doc, "cardId");
                result.cgUid = getElementValue(doc, "cgUid");
                result.cardBrand = getElementValue(doc, "cardBrand");
            } else {
                result.success = false;
                result.error = getElementValue(doc, "userMessage");
                if (result.error == null) {
                    result.error = getElementValue(doc, "message");
                }
            }
            
        } catch (Exception e) {
            result.success = false;
            result.error = e.getMessage();
        }
        
        return result;
    }
    
    private static String getElementValue(Document doc, String tagName) {
        NodeList nodeList = doc.getElementsByTagName(tagName);
        if (nodeList.getLength() > 0) {
            return nodeList.item(0).getTextContent();
        }
        return null;
    }
    
    public static void main(String[] args) {
        // Example 1: Direct Charge
        PaymentResult directCharge = processPayment(
            new PaymentRequest("0123456", 1000)
                .setValidation("autoComm")
                .addParam("cardNo", "4111111111111111")
                .addParam("cardExpiration", "1225")
                .addParam("cvv", "123")
        );
        
        // Example 2: Pre-Authorization
        PaymentResult preAuth = processPayment(
            new PaymentRequest("0123456", 5000)
                .setValidation("verify")
                .addParam("cardNo", "4111111111111111")
                .addParam("cardExpiration", "1225")
                .addParam("cvv", "123")
        );
        
        // Example 3: Tokenization
        PaymentResult tokenization = processPayment(
            new PaymentRequest("0123456", 0)
                .setValidation("token")
                .addParam("cardNo", "4111111111111111")
                .addParam("cardExpiration", "1225")
        );
        
        // Example 4: Payment Page Setup
        PaymentResult paymentPage = processPayment(
            new PaymentRequest("0123456", 2500)
                .setValidation("txnSetup")
                .addParam("mpiValidation", "autoComm")
                .addParam("successUrl", "https://yoursite.com/success")
                .addParam("cancelUrl", "https://yoursite.com/cancel")
                .addParam("mid", "MERCHANT123")
                .addParam("uniqueid", "ORDER-456")
        );
        
        // Example 5: Installments
        PaymentResult installments = processPayment(
            new PaymentRequest("0123456", 3000)
                .setValidation("autoComm")
                .setCreditType("Installments")
                .addParam("numberOfPayments", "6")
                .addParam("firstPayment", "500")
                .addParam("cardNo", "4111111111111111")
                .addParam("cardExpiration", "1225")
                .addParam("cvv", "123")
        );
        
        // Example 6: Credit Payout
        PaymentResult payout = processPayment(
            new PaymentRequest("0123456", 1500)
                .setTransactionType("credit")
                .setValidation("autoComm")
                .addParam("cardNo", "4111111111111111")
                .addParam("cardExpiration", "1225")
        );
        
        // Example 7: Token-based Payment
        PaymentResult tokenPayment = processPayment(
            new PaymentRequest("0123456", 1500)
                .setValidation("autoComm")
                .addParam("cardId", "1234567890123456")
        );
        
        // Print results
        System.out.println("=== Payment Processing Results ===");
        System.out.println("Direct Charge: " + directCharge);
        System.out.println("Pre-Authorization: " + preAuth);
        System.out.println("Tokenization: " + tokenization);
        System.out.println("Payment Page: " + paymentPage);
        System.out.println("Installments: " + installments);
        System.out.println("Payout: " + payout);
        System.out.println("Token Payment: " + tokenPayment);
    }
}
```

## Response codes

### Common response codes

Here are the most frequently encountered response codes:

| Code | Message                    | Description                                                                |
| ---- | -------------------------- | -------------------------------------------------------------------------- |
| 000  | Permitted transaction      | Transaction approved successfully                                          |
| 003  | Contact the credit company | Contact the credit company                                                 |
| 004  | Refusal by credit company  | Transaction declined by issuer                                             |
| 006  | Incorrect CVV/ID           | CVV or ID verification failed                                              |
| 009  | No communication           | Connection error - retry or [contact support](mailto:cg-support@hyp.co.il) |
| 033  | Defective card             | Card validation failed                                                     |
| 036  | Expired card               | Card expiration date has passed                                            |
| 039  | Incorrect control number   | Card control number validation failed                                      |

### All response codes

<details>

<summary><strong>Click for the full list of response codes</strong></summary>

| Code | Message                                                                                                                                     | Description                                                                                                                                 |
| ---- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| 000  | Permitted transaction                                                                                                                       | Permitted transaction                                                                                                                       |
| 001  | The card is blocked - confiscate it                                                                                                         | The card is blocked - confiscate it                                                                                                         |
| 002  | The card is stolen - confiscate it                                                                                                          | The card is stolen - confiscate it                                                                                                          |
| 003  | Contact the credit company                                                                                                                  | Contact the credit company                                                                                                                  |
| 004  | Refusal by credit company                                                                                                                   | Refusal by credit company                                                                                                                   |
| 005  | The card is forged - confiscate it                                                                                                          | The card is forged - confiscate it                                                                                                          |
| 006  | Incorrect CVV/ID                                                                                                                            | Incorrect CVV/ID                                                                                                                            |
| 007  | Incorrect CAVV/ECI/UCAF                                                                                                                     | Incorrect CAVV/ECI/UCAF                                                                                                                     |
| 008  | An error occurred while building access key for blocked card files                                                                          | Please contact System Administration                                                                                                        |
| 009  | No communication                                                                                                                            | No communication. Please try again or contact System Administration                                                                         |
| 010  | The program was stopped by user\`s command (ESC)                                                                                            | Please contact System Administration                                                                                                        |
| 011  | The acquirer is not authorized for foreign currency transactions                                                                            | The acquirer is not authorized for foreign currency transactions                                                                            |
| 012  | This card is not permitted for foreign currency transactions                                                                                | This card is not permitted for foreign currency transactions                                                                                |
| 013  | The terminal is not permitted for foreign currency load/unload into this card                                                               | The terminal is not permitted for foreign currency charge/discharge into this card                                                          |
| 014  | This card is not permitted for load/unload transaction                                                                                      | This card is not permitted for charge/discharge transaction                                                                                 |
| 015  | Track 2 (Magnetic) does not match the typed data                                                                                            | Track 2 (Magnetic) does not match the typed data                                                                                            |
| 016  | Additional required data was not entered (Z field)                                                                                          | Additional required data was not entered (Z field)                                                                                          |
| 017  | Last 4 digits were not entered (W field)                                                                                                    | Last 4 digits were not entered (W field)                                                                                                    |
| 018  | AVS status not approved                                                                                                                     | AVS status not approved                                                                                                                     |
| 019  | INT\_IN is shorter than 16 characters                                                                                                       | Please contact System Administration                                                                                                        |
| 020  | The input file (INT\_IN) does not exist                                                                                                     | Please contact System Administration                                                                                                        |
| 021  | Blocked cards file (NEG) does not exist or has not been updated - transmit or request authorization for each transaction                    | Please contact System Administration                                                                                                        |
| 022  | One of the parameter files/vectors does not exist                                                                                           | Please contact System Administration                                                                                                        |
| 023  | Date file (DATA) does not exist                                                                                                             | Please contact System Administration                                                                                                        |
| 024  | Format file (START) does not exist                                                                                                          | Please contact System Administration                                                                                                        |
| 025  | The difference in days in the blocked cards input is too large - transmit or request authorization for each transaction                     | Please contact System Administration                                                                                                        |
| 026  | The difference in generations in the blocked cards input is too large - transmit or request authorization for each transaction              | Please contact System Administration                                                                                                        |
| 027  | When the magnetic strip is not completely entered - define the transaction as a telephone number or signature only                          | When the magnetic strip is not completely entered - define the transaction as a telephone number or signature only                          |
| 028  | The central terminal number was not entered into the defined main supplier terminal                                                         | Please contact System Administration                                                                                                        |
| 029  | The beneficiary number was not entered into the defined main beneficiary terminal                                                           | Please contact System Administration                                                                                                        |
| 030  | The supplier/beneficiary number was entered - however the terminal was not updated as the main supplier/beneficiary                         | Please contact System Administration                                                                                                        |
| 031  | The beneficiary number was entered - however the terminal was updated as the main supplier                                                  | Please contact System Administration                                                                                                        |
| 032  | Old transactions - transmit or request authorization for each transaction                                                                   | Please contact System Administration                                                                                                        |
| 033  | Defective card                                                                                                                              | Defective card                                                                                                                              |
| 034  | This card is not permitted for this terminal or is not authorized for this type of transaction                                              | This card is not permitted for this terminal or is not authorized for this type of transaction                                              |
| 035  | This card is not permitted for this transaction or type of credit                                                                           | This card is not permitted for this transaction or type of credit                                                                           |
| 036  | Expired card                                                                                                                                | Expired card                                                                                                                                |
| 037  | Installment error - the amount of transactions needs to be equal to: first installment plus fixed installments times number of installments | Installment error - the amount of transactions needs to be equal to: first installment plus fixed installments times number of installments |
| 038  | Unable to execute a debit transaction that is higher than the credit card\`s ceiling                                                        | Unable to execute a debit transaction that is higher than the credit card\`s ceiling                                                        |
| 039  | Incorrect control number                                                                                                                    | Incorrect control number                                                                                                                    |
| 040  | The beneficiary and supplier numbers were entered - however the terminal is defined as main                                                 | Please contact System Administration                                                                                                        |
| 041  | The transaction\`s amount exceeds the ceiling when the input file contains J1 or J2 or J3 (contact prohibited)                              | Check card details with no amount                                                                                                           |
| 042  | The card is blocked for the supplier where input file contains J1 or J2 or J3 (contact prohibited)                                          | Please contact System Administration                                                                                                        |
| 043  | Random where input file contains J1 (contact prohibited)                                                                                    | Please contact System Administration                                                                                                        |
| 044  | The terminal is prohibited from requesting authorization without transaction (J5)                                                           | Please contact System Administration                                                                                                        |
| 045  | The terminal is prohibited for supplier-initiated authorization request (J6)                                                                | Please contact System Administration                                                                                                        |
| 046  | The terminal must request authorization where the input file contains J1 or J2 or J3 (contact prohibited)                                   | Please contact System Administration                                                                                                        |
| 047  | Secret code must be entered where input file contains J1 or J2 or J3 (contact prohibited)                                                   | Please contact System Administration                                                                                                        |
| 051  | Incorrect vehicle number                                                                                                                    | Incorrect vehicle number                                                                                                                    |
| 052  | The number of the distance meter was not entered                                                                                            | The number of the distance meter was not entered                                                                                            |
| 053  | The terminal is not defined as gas station (petrol card or incorrect transaction code was used)                                             | Please contact System Administration                                                                                                        |
| 057  | An ID number is required (for Israeli cards only) but was not entered                                                                       | An ID number is required (for Israeli cards only) but was not entered                                                                       |
| 058  | CVV is required but was not entered                                                                                                         | CVV is required but was not entered                                                                                                         |
| 059  | CVV and ID number are required (for Israeli cards only) but were not entered                                                                | CVV and ID number are required (for Israeli cards only) but were not entered                                                                |
| 060  | ABS attachment was not found at the beginning of the input data in memory                                                                   | Please contact System Administration                                                                                                        |
| 061  | The card number was either not found or found twice                                                                                         | Please contact System Administration                                                                                                        |
| 062  | Incorrect transaction type                                                                                                                  | Please contact System Administration                                                                                                        |
| 063  | Incorrect transaction code                                                                                                                  | Please contact System Administration                                                                                                        |
| 064  | Incorrect credit type                                                                                                                       | Please contact System Administration                                                                                                        |
| 065  | Incorrect currency                                                                                                                          | Please contact System Administration                                                                                                        |
| 066  | The first installment and/or fixed payment are for non-installment type of credit                                                           | Please contact System Administration                                                                                                        |
| 067  | Number of installments exist for the type of credit that does not require this                                                              | Please contact System Administration                                                                                                        |
| 068  | Linkage to dollar or index is possible only for installment credit                                                                          | Please contact System Administration                                                                                                        |
| 069  | The magnetic strip is too short                                                                                                             | Please contact System Administration                                                                                                        |
| 070  | The PIN code device is not defined                                                                                                          | Please contact System Administration                                                                                                        |
| 071  | Incorrect beneficiary                                                                                                                       | Please contact System Administration                                                                                                        |
| 072  | The secret code was not entered                                                                                                             | The secret code was not entered                                                                                                             |
| 073  | Incorrect secret code                                                                                                                       | Incorrect secret code                                                                                                                       |
| 074  | Incorrect secret code - last try                                                                                                            | Incorrect secret code - last try                                                                                                            |
| 075  |                                                                                                                                             | Please contact System Administration                                                                                                        |
| 076  |                                                                                                                                             | Please contact System Administration                                                                                                        |
| 077  | Incorrect PIN code                                                                                                                          | Incorrect PIN code                                                                                                                          |
| 079  | Terminal definitions does not permit to clear this currency                                                                                 | Terminal definitions does not permit to clear this currency                                                                                 |
| 080  | The club code entered does not match the credit type                                                                                        | The club code entered does not match the credit type                                                                                        |
| 081  | Validation type is incorrect                                                                                                                | Validation type is incorrect                                                                                                                |
| 090  | Cannot cancel charge transaction                                                                                                            | Cannot cancel charge transaction                                                                                                            |
| 091  | Cannot cancel discharge transaction                                                                                                         | Cannot cancel discharge transaction                                                                                                         |
| 092  | Cannot cancel foreign currency transaction                                                                                                  | Cannot cancel foreign currency transaction                                                                                                  |
| 100  | No equipment for inputting secret code                                                                                                      | Please contact System Administration                                                                                                        |
| 101  | No authorization from credit company for clearance                                                                                          | Please contact System Administration                                                                                                        |
| 106  | The terminal is not permitted to send queries for immediate debit cards                                                                     | Please contact System Administration                                                                                                        |
| 107  | The transaction amount is too large - divide it into a number of transactions                                                               | The transaction amount is too large - divide it into a number of transactions                                                               |
| 108  | The terminal is not authorized to execute forced transactions                                                                               | Please contact System Administration                                                                                                        |
| 109  | The terminal is not authorized for cards with service code 587                                                                              | Please contact System Administration                                                                                                        |
| 110  | The terminal is not authorized for immediate debit cards                                                                                    | The terminal is not authorized for immediate debit cards                                                                                    |
| 111  | The terminal is not authorized for installment transactions                                                                                 | The terminal is not authorized for installment transactions                                                                                 |
| 112  | The terminal is authorized for installment transactions only - not telephone/signature                                                      | The terminal is authorized for installment transactions only - not telephone/signature                                                      |
| 113  | The terminal is not authorized for telephone transactions                                                                                   | The terminal is not authorized for telephone transactions                                                                                   |
| 114  | The terminal is not authorized for signature-only transactions                                                                              | The terminal is not authorized for signature-only transactions                                                                              |
| 115  | The terminal is not authorized for foreign currency transactions - or transaction is not authorized                                         | The terminal is not authorized for foreign currency transactions - or transaction is not authorized                                         |
| 116  | The terminal is not authorized for club transactions                                                                                        | The terminal is not authorized for club transactions                                                                                        |
| 117  | The terminal is not authorized for star/point/mile transactions                                                                             | The terminal is not authorized for star/point/mile transactions                                                                             |
| 118  | The terminal is not authorized for Isracredit credit                                                                                        | The terminal is not authorized for Isracredit credit                                                                                        |
| 119  | The terminal is not authorized for Amex credit                                                                                              | The terminal is not authorized for Amex credit                                                                                              |
| 120  | The terminal is not authorized for dollar linkage                                                                                           | The terminal is not authorized for dollar linkage                                                                                           |
| 121  | The terminal is not authorized for index linkage                                                                                            | The terminal is not authorized for index linkage                                                                                            |
| 122  | The terminal is not authorized for index linkage with foreign cards                                                                         | The terminal is not authorized for index linkage with foreign cards                                                                         |
| 123  | The terminal is not authorized for star/point/mile transactions for this type of credit                                                     | The terminal is not authorized for star/point/mile transactions for this type of credit                                                     |
| 124  | The terminal is not authorized for Isra 36 credit                                                                                           | The terminal is not authorized for Isra 36 credit                                                                                           |
| 125  | The terminal is not authorized for Amex 36 credit                                                                                           | The terminal is not authorized for Amex 36 credit                                                                                           |
| 126  | The terminal is not authorized for this club code                                                                                           | The terminal is not authorized for this club code                                                                                           |
| 127  | The terminal is not authorized for immediate debit transactions (except for immediate debit cards)                                          | The terminal is not authorized for immediate debit transactions (except for immediate debit cards)                                          |
| 128  | The terminal is not authorized to accept Visa card staring with 3                                                                           | The terminal is not authorized to accept Visa card staring with 3                                                                           |
| 129  | The terminal is not authorized to execute credit transactions above the ceiling                                                             | The terminal is not authorized to execute credit transactions above the ceiling                                                             |
| 130  | The card is not permitted to execute club transactions                                                                                      | The card is not permitted to execute club transactions                                                                                      |
| 131  | The card is not permitted to execute star/point/mile transactions                                                                           | The card is not permitted to execute star/point/mile transactions                                                                           |
| 132  | The card is not permitted to execute dollar transactions (regular or telephone)                                                             | The card is not permitted to execute dollar transactions (regular or telephone)                                                             |
| 133  | The card is not valid according to Isracard\`s list of valid cards                                                                          | The card is not valid according to Isracard\`s list of valid cards                                                                          |
| 134  | Defective card according to system definitions (Isracard VECTOR1) - error in the number of figures on the card                              | Defective card according to system definitions (Isracard VECTOR1) - error in the number of figures on the card                              |
| 135  | The card is not permitted to execute dollar transactions according to system definitions (Isracard VECTOR1)                                 | The card is not permitted to execute dollar transactions according to system definitions (Isracard VECTOR1)                                 |
| 136  | The card belongs to a group that is not permitted to execute transactions according to system definitions (Visa VECTOR 20)                  | The card belongs to a group that is not permitted to execute transactions according to system definitions (Visa VECTOR 20)                  |
| 137  | The card\`s prefix (7 figures) is invalid according to system definitions (Diners VECTOR21)                                                 | The card\`s prefix (7 figures) is invalid according to system definitions (Diners VECTOR21)                                                 |
| 138  | The card is not permitted to carry out installment transactions according to Isracard\`s list of valid cards                                | The card is not permitted to carry out installment transactions according to Isracard\`s list of valid cards                                |
| 139  | The number of installments is too large according to Isracard\`s list of valid cards                                                        | The number of installments is too large according to Isracard\`s list of valid cards                                                        |
| 140  | Visa and Diners cards are not permitted for club installment transactions                                                                   | Visa and Diners cards are not permitted for club installment transactions                                                                   |
| 141  | Series of cards are not valid according to system definition (Isracard VECTOR5)                                                             | Series of cards are not valid according to system definition (Isracard VECTOR5)                                                             |
| 142  | Invalid service code according to system definitions (Isracard VECTOR6)                                                                     | Invalid service code according to system definitions (Isracard VECTOR6)                                                                     |
| 143  | The card\`s prefix (2 figures) is invalid according to system definitions (Isracard VECTOR7)                                                | The card\`s prefix (2 figures) is invalid according to system definitions (Isracard VECTOR7)                                                |
| 144  | Invalid service code according to system definitions (Visa VECTOR12)                                                                        | Invalid service code according to system definitions (Visa VECTOR12)                                                                        |
| 145  | Invalid service code according to system definitions (Visa VECTOR13)                                                                        | Invalid service code according to system definitions (Visa VECTOR13)                                                                        |
| 146  | Immediate debit card is prohibited for executing credit transaction                                                                         | Immediate debit card is prohibited for executing credit transaction                                                                         |
| 147  | The card is not permitted to execute installment transactions according to Alpha vector no. 31                                              | The card is not permitted to execute installment transactions according to Alpha vector no. 31                                              |
| 148  | The card is not permitted for telephone and signature-only transactions according to Alpha vector no. 31                                    | The card is not permitted for telephone and signature-only transactions according to Alpha vector no. 31                                    |
| 149  | The card is not permitted for telephone transactions according to Alpha vector no. 31                                                       | The card is not permitted for telephone transactions according to Alpha vector no. 31                                                       |
| 150  | Credit is not approved for immediate debit cards                                                                                            | Credit is not approved for immediate debit cards                                                                                            |
| 151  | Credit is not approved for foreign cards                                                                                                    | Credit is not approved for foreign cards                                                                                                    |
| 152  | Incorrect club code                                                                                                                         | Incorrect club code                                                                                                                         |
| 153  | The card is not permitted to execute flexible credit transactions (Adif/30+) according to system definitions (Diners VECTOR21)              | The card is not permitted to execute flexible credit transactions (Adif/30+) according to system definitions (Diners VECTOR21)              |
| 154  | The card is not permitted to execute immediate debit transactions according to system definitions (Diners VECTOR21)                         | The card is not permitted to execute immediate debit transactions according to system definitions (Diners VECTOR21)                         |
| 155  | The payment amount is too low for credit transactions                                                                                       | The payment amount is too low for credit transactions                                                                                       |
| 156  | Incorrect number of installments for credit transaction                                                                                     | Incorrect number of installments for credit transaction                                                                                     |
| 157  | Zero ceiling for this type of card for regular credit or Credit transaction                                                                 | Zero ceiling for this type of card for regular credit or Credit transaction                                                                 |
| 158  | Zero ceiling for this type of card for immediate debit credit transaction                                                                   | Zero ceiling for this type of card for immediate debit credit transaction                                                                   |
| 159  | Zero ceiling for this type of card for immediate debit in dollars                                                                           | Zero ceiling for this type of card for immediate debit in dollars                                                                           |
| 160  | Zero ceiling for this type of card for telephone transaction                                                                                | Zero ceiling for this type of card for telephone transaction                                                                                |
| 161  | Zero ceiling for this type of card for credit transaction                                                                                   | Zero ceiling for this type of card for credit transaction                                                                                   |
| 162  | Zero ceiling for this type of card for installment transaction                                                                              | Zero ceiling for this type of card for installment transaction                                                                              |
| 163  | American Express card issued abroad is not permitted for installment transactions                                                           | American Express card issued abroad not permitted for instalments transaction                                                               |
| 164  | JCB cards are only permitted to carry out regular credit transactions                                                                       | JCB cards are only permitted to carry out regular credit transactions                                                                       |
| 165  | The amount in stars/points/miles is higher than the transaction amount                                                                      | The amount in stars/points/miles is higher than the transaction amount                                                                      |
| 166  | The club card is not within terminal range                                                                                                  | The club card is not within terminal range                                                                                                  |
| 167  | Star/point/mile transactions cannot be executed                                                                                             | Star/point/mile transactions cannot be executed                                                                                             |
| 168  | Dollar transactions cannot be executed for this type of card                                                                                | Dollar transactions cannot be executed for this type of card                                                                                |
| 169  | Credit transactions cannot be executed with other than regular credit                                                                       | Credit transactions cannot be executed with other than regular credit                                                                       |
| 170  | Amount of discount on stars/points/miles is higher than the permitted                                                                       | Amount of discount on stars/points/miles is higher than the permitted                                                                       |
| 171  | Forced transactions cannot be executed with credit/immediate debit card                                                                     | Forced transactions cannot be executed with credit/immediate debit card                                                                     |
| 172  | The previous transaction cannot be cancelled (credit transaction or card number are not identical)                                          | The previous transaction cannot be cancelled (credit transaction or card number are not identical)                                          |
| 173  | Double transaction                                                                                                                          | Double transaction                                                                                                                          |
| 174  | The terminal is not permitted for index linkage of this type of credit                                                                      | The terminal is not permitted for index linkage of this type of credit                                                                      |
| 175  | The terminal is not permitted for dollar linkage of this type of credit                                                                     | The terminal is not permitted for dollar linkage of this type of credit                                                                     |
| 176  | The card is invalid according to system definitions (Isracard VECTOR1)                                                                      | The card is invalid according to system definitions (Isracard VECTOR1)                                                                      |
| 177  | Unable to execute the self-service transaction if the gas station does not have self service                                                | Unable to execute the self-service transaction if the gas station does not have self service                                                |
| 178  | Credit transactions are forbidden with stars/points/miles                                                                                   | Credit transactions are forbidden with stars/points/miles                                                                                   |
| 179  | Dollar credit transactions are forbidden on tourist cards                                                                                   | Dollar credit transactions are forbidden on tourist cards                                                                                   |
| 180  | Phone transactions are not permitted on Club cards                                                                                          | Phone transactions are not permitted on Club cards                                                                                          |
| 200  | Application error                                                                                                                           | Please contact System Administration                                                                                                        |
| 201  | Error reading encrypted magnetic strip                                                                                                      | Error reading encrypted magnetic strip                                                                                                      |
| 250  | Internal error - communication synchronization                                                                                              | Please contact System Administration                                                                                                        |
| 251  | Terminal directory does not exist                                                                                                           | Please contact System Administration                                                                                                        |
| 252  | No write permission for terminal directory                                                                                                  | Please contact System Administration                                                                                                        |
| 253  | No executable permission for terminal directory                                                                                             | Please contact System Administration                                                                                                        |
| 300  | Invalid response received from Ashrait                                                                                                      | Please contact System Administration                                                                                                        |
| 301  | Zero amount is not allowed when J is not 2 or 3 or 5 or 102                                                                                 | Please contact System Administration                                                                                                        |
| 302  | No authorization number was entered in the E field                                                                                          | Please contact System Administration                                                                                                        |
| 303  | XPO (Ashrait) did not respond within the defined timeout                                                                                    | Please contact System Administration                                                                                                        |
| 304  | The terminals folder does not exist                                                                                                         | Please contact System Administration                                                                                                        |
| 305  | No writing permission to terminal log file                                                                                                  | Please contact System Administration                                                                                                        |
| 306  | Incorrect username - password or database name when connecting to the database                                                              | Please contact System Administration                                                                                                        |
| 307  | An error occurred while connecting to the database                                                                                          | Please contact System Administration                                                                                                        |
| 308  | An error occurred while executing a query in the database                                                                                   | Please contact System Administration                                                                                                        |
| 309  | Invalid date for checking previous charge deals                                                                                             | Please contact System Administration                                                                                                        |
| 310  | There is no debit deal that matches the credit deal                                                                                         | Please contact System Administration                                                                                                        |
| 311  | An error occurred while attempting to write Ashrait record with error code into database                                                    | Please contact System Administration                                                                                                        |
| 312  | There is no transaction found for canceling                                                                                                 | There is no transaction found for canceling                                                                                                 |
| 313  | Transaction for canceling was already transmitted                                                                                           | Transaction for canceling was already transmitted                                                                                           |
| 314  | The transaction was already cancelled                                                                                                       | The transaction was already cancelled                                                                                                       |
| 315  | Access to the terminals folder is not permitted                                                                                             | Please contact System Administration                                                                                                        |
| 316  | Error connecting to external interface                                                                                                      | Please contact System Administration                                                                                                        |
| 317  | There are missing parameters for the required action                                                                                        | Please contact System Administration                                                                                                        |
| 318  | Configuration file error                                                                                                                    | Please contact System Administration                                                                                                        |
| 319  | The terminal is not allowed to accept cancellation commands                                                                                 | The terminal is not allowed to accept cancellation commands                                                                                 |
| 320  | Credit is already done per specified debit deal                                                                                             | Credit is already done per specified debit deal                                                                                             |
| 321  | The refund amount is large/small than the charge amount                                                                                     | The refund amount is large/small than the charge amount amount is different than the charge deal amount                                     |
| 322  | Missing mandatory field in XML                                                                                                              | Please contact System Administration                                                                                                        |
| 323  | Incorrect deal type when using DELETE1                                                                                                      | Please contact System Administration                                                                                                        |
| 324  | The terminal is not permitted to refund transactions                                                                                        | The terminal is not permitted to refund transactions                                                                                        |
| 325  | Invalid XML format                                                                                                                          | Please contact System Administration                                                                                                        |
| 326  | No permission for this type of card                                                                                                         | No permission for this type of card                                                                                                         |
| 327  | The terminal does not exist                                                                                                                 | Please contact System Administration                                                                                                        |
| 328  | The terminal already exists                                                                                                                 | Please contact System Administration                                                                                                        |
| 329  | The terminal is locked for doDeal                                                                                                           | Terminal is locked for doDeal                                                                                                               |
| 330  | The terminal is locked for transmission                                                                                                     | Terminal is locked for transmit                                                                                                             |
| 331  | Invalid value in an XML field                                                                                                               | Please contact System Administration                                                                                                        |
| 332  | More than one transaction found for cancel/ cond. Refund                                                                                    | More than one transaction found for cancel/ cond. Refund                                                                                    |
| 333  | Merchant is not permitted to perform the required action                                                                                    | Please contact System Administration                                                                                                        |
| 334  | The transaction has already been settled once                                                                                               | The transaction has already been settled once                                                                                               |
| 335  | Blocked card for credit in CFT terminal                                                                                                     | Blocked card for credit in CFT terminal                                                                                                     |
| 336  | Terminal blocked for non dollars deals                                                                                                      | Terminal blocked for non dollars deals                                                                                                      |
| 337  | X field is mandatory                                                                                                                        | X field is mandatory                                                                                                                        |
| 338  | Total amount for this card is above permitted per day                                                                                       | Total amount for this card is above permitted per day                                                                                       |
| 339  | Refund credit type is different from original transaction                                                                                   | Refund credit type is different from original transaction                                                                                   |
| 340  | Refund number of payments is different from original transaction                                                                            | Refund number of payments is different from original transaction                                                                            |
| 341  | Refund amount is different from original transaction                                                                                        | Refund amount is different from original transaction                                                                                        |
| 342  | Card id was not found                                                                                                                       | Card id was not found                                                                                                                       |
| 343  | shva communicator returned empty response                                                                                                   | Please contact System Administration                                                                                                        |
| 344  | Merchant does not exist                                                                                                                     | Merchant does not exist                                                                                                                     |
| 345  | Merchant already exist                                                                                                                      | Merchant already exist                                                                                                                      |
| 346  | Terminal is not permitted to clear this currency                                                                                            | Terminal is not permitted to clear this currency                                                                                            |
| 347  | Sector does not exist                                                                                                                       | Sector does not exist                                                                                                                       |
| 348  | Password should contain upper and lower case letters numbers and punctuation                                                                | Password should contain upper and lower case letters numbers and punctuation                                                                |
| 349  | Terminal does not support mayBeDuplicate                                                                                                    | Please contact System Administration                                                                                                        |
| 350  | Acquirer does not exist                                                                                                                     | Acquirer does not exist                                                                                                                     |
| 351  | Matching routing was not found                                                                                                              | Matching routing was not found                                                                                                              |
| 352  | Unable to transmit - exceeded a daily quota                                                                                                 | Unable to transmit - exceeded a daily quota                                                                                                 |
| 353  | No transactions to transmit                                                                                                                 | No transactions to transmit                                                                                                                 |
| 354  | Transaction processing time exceeds allowed time                                                                                            | Please contact System Administration                                                                                                        |
| 355  | Hold deal already released                                                                                                                  | Hold deal already released                                                                                                                  |
| 356  | There is no transaction found for release                                                                                                   | There is no transaction found for release                                                                                                   |
| 357  | More than one transaction found for release                                                                                                 | More than one transaction found for release                                                                                                 |
| 358  | Sensitive details were not found                                                                                                            | Sensitive details were not found                                                                                                            |
| 359  | Report id was not found                                                                                                                     | Report id was not found                                                                                                                     |
| 360  | Merchant block action                                                                                                                       | Merchant block action                                                                                                                       |
| 361  | Error identifying extended card type                                                                                                        | Please contact System Administration                                                                                                        |
| 362  | Merchant does not have permission for report definition                                                                                     | Merchant does not have permission for report definition                                                                                     |
| 363  | Definition Id does not exist                                                                                                                | Definition Id does not exist                                                                                                                |
| 364  | Sent parameters are not defined for report                                                                                                  | Sent parameters are not defined for report                                                                                                  |
| 365  | Error producing report                                                                                                                      | Error producing report                                                                                                                      |
| 366  | Report process id does not exists                                                                                                           | Report process id does not exists                                                                                                           |
| 367  | Internal card Id does not exists for card number                                                                                            | Internal card Id does not exists for card number                                                                                            |
| 368  | Transaction already transmitted                                                                                                             | Transaction already transmitted                                                                                                             |
| 369  | Original transaction was done on unauthorized terminal                                                                                      | Original transaction was done on unauthorized terminal                                                                                      |
| 370  | Transfer transaction amount does not match original transaction                                                                             | Transfer transaction amount does not match original transaction                                                                             |
| 371  | Did not find transaction for transfer                                                                                                       | Did not find transaction for transfer                                                                                                       |
| 372  | Transaction was transferred to another terminal                                                                                             | Transaction was transferred to another terminal                                                                                             |
| 373  | Merchant decision for cvv is not allowed                                                                                                    | Merchant decision for cvv is not allowed                                                                                                    |
| 374  | Cannot do forced transaction with this card                                                                                                 | Cannot do forced transaction with this card                                                                                                 |
| 375  | cgUid does not exist                                                                                                                        | cgUid does not exist                                                                                                                        |
| 376  | No transaction found for hold                                                                                                               | No transaction found for hold                                                                                                               |
| 377  | Transaction already on hold                                                                                                                 | Transaction already on hold                                                                                                                 |
| 378  | More than one transaction found for hold                                                                                                    | More than one transaction found for hold                                                                                                    |
| 379  | Capture total amount is higher than authorization amount                                                                                    | Capture total amount is higher than authorization amount                                                                                    |
| 380  | OTP request failed                                                                                                                          | OTP request failed                                                                                                                          |
| 381  | Terminal is blocked for OTP request                                                                                                         | Terminal is blocked for OTP request                                                                                                         |
| 382  | OTP invalid                                                                                                                                 | OTP invalid                                                                                                                                 |
| 383  | OTP used                                                                                                                                    | OTP used                                                                                                                                    |
| 384  | Maximum OTP request exceeded                                                                                                                | Maximum OTP request exceeded                                                                                                                |
| 385  | Incorrect CVV/ID                                                                                                                            | Incorrect CVV/ID                                                                                                                            |
| 386  | Cancel transaction was found matching current transaction                                                                                   | Cancel transaction was found matching current transaction                                                                                   |
| 399  | Missing initialization in payCheckOut server                                                                                                | Missing initialization in payCheckOut server                                                                                                |
| 400  | Invalid parameters order                                                                                                                    | Please contact System Administration                                                                                                        |
| 401  | Invalid characters in INT\_IN string                                                                                                        | Please contact System Administration                                                                                                        |
| 402  | Invalid characters in XML string                                                                                                            | Please contact System Administration                                                                                                        |
| 403  | Less than six days to card\`s expiration date                                                                                               | Less than six days to card\`s expiration date                                                                                               |
| 404  | No communication to Ashrait                                                                                                                 | Please contact System Administration                                                                                                        |
| 405  | SSL HTTPS customers are not permitted to access the system                                                                                  | Please contact System Administration                                                                                                        |
| 406  | Not in use                                                                                                                                  | Not in use                                                                                                                                  |
| 407  | Not in use                                                                                                                                  | Not in use                                                                                                                                  |
| 408  | Authorization number was not found in the system                                                                                            | Authorization number was not found in the system                                                                                            |
| 409  | The card is in customers black list                                                                                                         | The card is in customers black list                                                                                                         |
| 410  | This type of transaction is not permitted in this terminal                                                                                  | This type of transaction is not permitted in this terminal                                                                                  |
| 411  | The customer is not permitted to work with this terminal                                                                                    | The customer is not permitted to work with this terminal                                                                                    |
| 412  | No authorization number was found for this transaction                                                                                      | No authorization number was found for this transaction                                                                                      |
| 413  | Removing transaction from TR table failed                                                                                                   | Removing transaction from TR table failed                                                                                                   |
| 414  | An XML field or an INT\_IN parameter is too short/ long                                                                                     | An XML field or an INT\_IN parameter is too short/ long                                                                                     |
| 415  | No permission to charge twice with same authorization number                                                                                | No permission to charge twice with same authorization number                                                                                |
| 416  | No permission to refund twice with same authorization number                                                                                | No permission to refund twice with same authorization number                                                                                |
| 417  | The card is in customers negative list - previous Ashrait return code                                                                       | The card is in customers negative list - previous Ashrait return code                                                                       |
| 418  | Merchant is not permitted to send non-encrypted data                                                                                        | Merchant is not permitted to send non-encrypted data                                                                                        |
| 419  | Authorization number from credit company is invalid                                                                                         | Authorization number from credit company is invalid                                                                                         |
| 420  | Application error - customer specific                                                                                                       | Application error - customer specific                                                                                                       |
| 421  | More than 4 days passed since charge transaction                                                                                            | More than 4 days passed since charge transaction                                                                                            |
| 422  | The card is in customer\`s negative list - previous chargeback                                                                              | The card is in customer\`s negative list - previous chargeback                                                                              |
| 423  | The card failed the fraud detection test                                                                                                    | The card failed the fraud detection test                                                                                                    |
| 424  | A failure occurred in the fraud detection test                                                                                              | A failure occurred in the fraud detection test                                                                                              |
| 425  | Failed to get response from external server                                                                                                 | Please contact System Administration                                                                                                        |
| 426  | Failed to find external server details for sharing cardid                                                                                   | Please contact System Administration                                                                                                        |
| 427  | There are details missing in the receipt                                                                                                    | There are details missing in the receipt                                                                                                    |
| 428  | No matching transaction was found for printing the receipt                                                                                  | No matching transaction was found for printing the receipt                                                                                  |
| 429  | More than one matching transaction was found for printing the receipt                                                                       | More than one matching transaction was found for printing the receipt                                                                       |
| 430  | Kupa number is missing in the printing receipt request                                                                                      | Kupa number is missing in the printing receipt request                                                                                      |
| 431  | X field is missing in the printing receipt request                                                                                          | X field is missing in the printing receipt request                                                                                          |
| 432  | Unknown request sent by Kupa for printing the receipt                                                                                       | Unknown request sent by Kupa for printing the receipt                                                                                       |
| 433  | The transaction amount is above offline mode limits                                                                                         | The amount is above limit for offline transaction                                                                                           |
| 434  | J5 transactions are not permitted in offline mode                                                                                           | Cannot make J5 transaction in offline mode                                                                                                  |
| 441  | Refund total is different from original transaction                                                                                         | Refund total is different from original transaction                                                                                         |
| 444  | Application Error                                                                                                                           | Please contact System Administration                                                                                                        |
| 449  | Invalid discount amount                                                                                                                     | Invalid discount amount                                                                                                                     |
| 450  | Inactive card                                                                                                                               | Inactive card                                                                                                                               |
| 451  | This card does not exist                                                                                                                    | This card does not exist                                                                                                                    |
| 452  | No privileges found for sharing cardid                                                                                                      | Please contact System Administration                                                                                                        |
| 453  | Sharing external cardId is not allowed                                                                                                      | Please contact System Administration                                                                                                        |
| 454  | Sharing internal cardId is not allowed                                                                                                      | Please contact System Administration                                                                                                        |
| 455  | merchant does not support sessionId                                                                                                         | Please contact System Administration                                                                                                        |
| 456  | merchant session timeout                                                                                                                    | Please contact System Administration                                                                                                        |
| 457  | Error creating sessionId                                                                                                                    | Please contact System Administration                                                                                                        |
| 458  | Duplicate transactions                                                                                                                      | Duplicate transactions                                                                                                                      |
| 459  | Missing parameter orgUid/cgUid                                                                                                              | Missing parameter orgUid/cgUid                                                                                                              |
| 460  | Original transaction was not found                                                                                                          | Original transaction was not found                                                                                                          |
| 461  | Refusal (manual phone approval is not possible for this card)                                                                               | Refusal (manual phone approval is not possible for this card)                                                                               |
| 462  | Wrong value in header                                                                                                                       | Wrong value in header                                                                                                                       |
| 463  | More than one original transaction was found                                                                                                | More than one original transaction was found                                                                                                |
| 464  | No Authorization to run the billing Id                                                                                                      | No Authorization to run the billing Id                                                                                                      |
| 470  | for notification transactions - you must be sent informativeIndication field                                                                | for notification transactions - you must be sent informativeIndication field                                                                |
| 471  | request must contain at least one condition                                                                                                 | request must contain at least one condition                                                                                                 |
| 499  | This card is not permitted for this terminal                                                                                                | Please contact System Administration                                                                                                        |
| 500  | TransmitId was not found                                                                                                                    | transmitId was not found                                                                                                                    |
| 501  | Terminal cannot be retransmitted. please call support                                                                                       | Terminal cannot be retransmitted. please call support                                                                                       |
| 502  | Terminal is currently in transmit. cannot make another transmit                                                                             | Terminal is currently in transmit. cannot make another transmit                                                                             |
| 503  | Terminal cannot be retransmitted. there was no transmit failure                                                                             | Terminal cannot be retransmitted. there was no transmit failure                                                                             |
| 504  | Cannot transmit. there was a transmit failure. please try to reTransmit                                                                     | Cannot transmit. there was a transmit failure. please try to reTransmit                                                                     |
| 505  | Modem Closed Please wait                                                                                                                    | Please contact System Administration                                                                                                        |
| 506  | Phone Not Connected                                                                                                                         | Phone Not Connected                                                                                                                         |
| 507  | Trying again                                                                                                                                | Trying again                                                                                                                                |
| 508  | Number of Bad lines in Neg                                                                                                                  | Please contact System Administration                                                                                                        |
| 509  | Old Neg file cannot be opened                                                                                                               | Please contact System Administration                                                                                                        |
| 510  | Old Del file cannot be opened                                                                                                               | Please contact System Administration                                                                                                        |
| 511  | Old Add file cannot be opened                                                                                                               | Please contact System Administration                                                                                                        |
| 512  | Add and Del size differ                                                                                                                     | Please contact System Administration                                                                                                        |
| 513  | Cannot Open Temp neg                                                                                                                        | Please contact System Administration                                                                                                        |
| 514  | Bad Neg file                                                                                                                                | Please contact System Administration                                                                                                        |
| 515  | for future use                                                                                                                              | for future use                                                                                                                              |
| 516  | Not Authorised                                                                                                                              | Not Authorised                                                                                                                              |
| 517  | Could not connect trying Backup line                                                                                                        | Could not connect trying Backup line                                                                                                        |
| 518  | Could not connect                                                                                                                           | Could not connect                                                                                                                           |
| 519  | Ashrait EMV decision - general error                                                                                                        | Please contact System Administration                                                                                                        |
| 520  | Ashrait EMV decision - transaction is not permitted                                                                                         | Please contact System Administration                                                                                                        |
| 521  | Card exists already in NEG                                                                                                                  | Card exists already in NEG                                                                                                                  |
| 522  | Card Does Not exists in NEG                                                                                                                 | Card Does Not exists in NEG                                                                                                                 |
| 523  | Cannot Open file                                                                                                                            | Cannot Open file                                                                                                                            |
| 524  | Disconnected in Parameters                                                                                                                  | Disconnected in Parameters                                                                                                                  |
| 525  | Disconnected in Transactions                                                                                                                | Disconnected in Transactions                                                                                                                |
| 526  | Disconnected in Neg                                                                                                                         | Disconnected in Neg                                                                                                                         |
| 527  | Cannot Delete file                                                                                                                          | Cannot Delete file                                                                                                                          |
| 528  | Transmit stoped without an error code                                                                                                       | Transmit stoped without an error code                                                                                                       |
| 529  | Unable to begin new transmission due to many transmission process                                                                           | Unable to begin new transmission due to many transmission process                                                                           |
| 530  | Transmit file does not match expected number of transactions                                                                                | Please contact System Administration                                                                                                        |
| 531  | Disconnected in Transmit                                                                                                                    | Disconnected in Transmit                                                                                                                    |
| 532  | Prod port used of test terminal                                                                                                             | Please contact System Administration                                                                                                        |
| 533  | Error in transmit                                                                                                                           | Error in transmit                                                                                                                           |
| 534  | Transmit exceeds allowed batches per transmit                                                                                               | Please contact System Administration                                                                                                        |
| 550  | Transmit service - error parsing GW request                                                                                                 | Please contact System Administration                                                                                                        |
| 551  | transmit service - error starting flow                                                                                                      | Please contact System Administration                                                                                                        |
| 552  | Transmit service - transmit\_log not in status 0                                                                                            | Please contact System Administration                                                                                                        |
| 553  | Transmit service - error getting transactions from DB                                                                                       | Please contact System Administration                                                                                                        |
| 554  | Transmit service - error creating transactionData                                                                                           | Please contact System Administration                                                                                                        |
| 555  | Transmit service - error creating 1402 messages                                                                                             | Please contact System Administration                                                                                                        |
| 556  | Transmit service - error sending or creating request to BP                                                                                  | Please contact System Administration                                                                                                        |
| 557  | Transmit service - error updating transmit log                                                                                              | Please contact System Administration                                                                                                        |
| 558  | Acquirer error - terminal does not exist                                                                                                    | Please contact System Administration                                                                                                        |
| 559  | Transmit service - received negative checksum from SHVA for transactions transmit                                                           | Please contact System Administration                                                                                                        |
| 681  | MPI Authentication Failed                                                                                                                   | MPI Authentication Failed                                                                                                                   |
| 682  | MPI Transaction validation failed                                                                                                           | MPI Transaction validation failed                                                                                                           |
| 683  | MPI Invalid request or post parameters                                                                                                      | MPI Invalid request or post parameters                                                                                                      |
| 684  | MPI CG Gateway returned an error                                                                                                            | MPI CG Gateway returned an error                                                                                                            |
| 685  | MPI Error accessing the CG Gateway                                                                                                          | MPI Error accessing the CG Gateway                                                                                                          |
| 686  | MPI Internal Server Error                                                                                                                   | MPI Internal Server Error                                                                                                                   |
| 687  | MPI Transaction has expired (timeout)                                                                                                       | MPI Transaction has expired (timeout)                                                                                                       |
| 688  | MPI Transaction already submitted                                                                                                           | MPI Transaction already submitted                                                                                                           |
| 689  | MPI Transaction not found (used for reports)                                                                                                | MPI Transaction not found (used for reports)                                                                                                |
| 690  | Too many processes                                                                                                                          | too many processes                                                                                                                          |
| 691  | No process found - no files found                                                                                                           | no process found - no files found                                                                                                           |
| 692  | Process id was not found                                                                                                                    | Process id was not found                                                                                                                    |
| 693  | SHVA error - data mismatch between terminal and SHVA                                                                                        | Please contact System Administration                                                                                                        |
| 694  | SHVA error - errors in STANDIN                                                                                                              | Please contact System Administration                                                                                                        |
| 695  | SHVA / Ashrait error - acquirer/issuer permissions                                                                                          | Please contact System Administration                                                                                                        |
| 696  | PinPad device error                                                                                                                         | Please contact System Administration                                                                                                        |
| 697  | Ashrait decision - validation of SHVA files                                                                                                 | Please contact System Administration                                                                                                        |
| 698  | SHVA error - permissions missing for credit type                                                                                            | Please contact System Administration                                                                                                        |
| 699  | SHVA error - permissions missing for card type                                                                                              | Please contact System Administration                                                                                                        |
| 700  | Error - request details invalid                                                                                                             | Please contact System Administration                                                                                                        |
| 701  | SHVA error - message validation error                                                                                                       | Please contact System Administration                                                                                                        |
| 831  | Terminal is not permitted to clear that currency                                                                                            | Terminal is not permitted to clear that currency                                                                                            |
| 850  | Error in Mpos module                                                                                                                        | Error in Mpos module                                                                                                                        |
| 851  | Error in Pos module                                                                                                                         | Error in Pos module                                                                                                                         |
| 852  | Host already exists in Mpos                                                                                                                 | Host already exists in Mpos                                                                                                                 |
| 853  | Request was not done                                                                                                                        | Request was not done                                                                                                                        |
| 854  | General network error                                                                                                                       | General network error                                                                                                                       |
| 855  | Error while copying terminal files                                                                                                          | Error while copying terminal files                                                                                                          |
| 856  | Pos cannot transmit local approved transactions                                                                                             | Pos cannot transmit local approved transactions                                                                                             |
| 857  | Error during downgrade. There are transactions waiting for transmission                                                                     | Error during downgrade. There are transactions waiting for transmission                                                                     |
| 858  | Error during downgrade. Cannot find application backup file                                                                                 | Error during downgrade. Cannot find application backup file                                                                                 |
| 859  | Error during downgrade. Cannot find upgrade file                                                                                            | Error during downgrade. Cannot find upgrade file                                                                                            |
| 900  | transaction blocked due to no liability shift                                                                                               | transaction blocked due to no liability shift                                                                                               |
| 901  | 3DS is not enabled for this terminal                                                                                                        | 3DS is not enabled for this terminal                                                                                                        |
| 902  | 3DS is not enabled for this card brand                                                                                                      | 3DS is not enabled for this card brand                                                                                                      |
| 903  | Could not find a matching 3DS Lookup (J107) Transaction                                                                                     | Could not find a matching 3DS Lookup (J107) Transaction                                                                                     |
| 904  | Duplicate 3DS transaction                                                                                                                   | Duplicate 3DS transaction                                                                                                                   |
| 910  | Cannot add EMD Item.Original EMD transaction was not found                                                                                  | Cannot add EMD Item.Original EMD transaction was not found                                                                                  |
| 911  | EMD item was already been refunded in the past                                                                                              | EMD item was already been refunded in the past                                                                                              |
| 912  | EMD item was already been canceled in the past                                                                                              | EMD item was already been canceled in the past                                                                                              |
| 913  | Cannot refund EMD item - call support                                                                                                       | Cannot refund EMD item - call support                                                                                                       |
| 914  | Cannot cancel EMD item - call support                                                                                                       | Cannot cancel EMD item - call support                                                                                                       |
| 915  | General problem in EMD item management - call support                                                                                       | General problem in EMD item management - call support                                                                                       |
| 916  | Sum amount of total EMD items is more than amount of original EMD transaction                                                               | Sum amount of total EMD items is more than amount of original EMD transaction                                                               |
| 917  | EMD item currency must be identical to original EMD transaction currency                                                                    | EMD item currency must be identical to original EMD transaction currency                                                                    |
| 918  | Duplicate EMD item.Ticket number already exist                                                                                              | Duplicate EMD item.Ticket number already exist                                                                                              |
| 919  | EMD item not exist                                                                                                                          | EMD item not exist                                                                                                                          |
| 920  | EMD transaction was already been fully refunded - Cannot add EMD item                                                                       | EMD transaction was already been fully refunded - Cannot add EMD item                                                                       |
| 921  | EMD transaction was already cancelled - Cannot add EMD item                                                                                 | EMD transaction was already cancelled - Cannot add EMD item                                                                                 |
| 988  | No Authorization to run the billing id                                                                                                      | No Authorization to run the billing id                                                                                                      |
| 997  | Could not find terminal for conversion                                                                                                      | Could not find terminal for conversion                                                                                                      |
| 1001 | Refer to Card Issuer                                                                                                                        | Refer to Card Issuer                                                                                                                        |
| 1002 | Refer to Card Issuer-special condition                                                                                                      | Refer to Card Issuer-special condition                                                                                                      |
| 1003 | Invalid Merchant                                                                                                                            | Invalid Merchant                                                                                                                            |
| 1004 | Pick up card                                                                                                                                | Pick up card                                                                                                                                |
| 1005 | Do not honour                                                                                                                               | Do not honour                                                                                                                               |
| 1006 | Error                                                                                                                                       | Error                                                                                                                                       |
| 1007 | Pick up card                                                                                                                                | Pick up card                                                                                                                                |
| 1009 | Request in progress                                                                                                                         | Request in progress                                                                                                                         |
| 1012 | Invalid Transaction                                                                                                                         | Invalid Transaction                                                                                                                         |
| 1013 | Invalid Amount                                                                                                                              | Invalid Amount                                                                                                                              |
| 1014 | Invalid card number                                                                                                                         | Invalid card number                                                                                                                         |
| 1019 | Re-enter transaction                                                                                                                        | Re-enter transaction                                                                                                                        |
| 1021 | No action taken                                                                                                                             | No action taken                                                                                                                             |
| 1030 | Format Error                                                                                                                                | Format Error                                                                                                                                |
| 1041 | Lost card pick up                                                                                                                           | Lost card pick up                                                                                                                           |
| 1043 | Stolen card pick up                                                                                                                         | Stolen card pick up                                                                                                                         |
| 1051 | Not sufficient funds                                                                                                                        | Not sufficient funds                                                                                                                        |
| 1052 | No checking account                                                                                                                         | No checking account                                                                                                                         |
| 1053 | No savings account                                                                                                                          | No savings account                                                                                                                          |
| 1054 | Expired card                                                                                                                                | Expired card                                                                                                                                |
| 1055 | PIN incorrect                                                                                                                               | PIN incorrect                                                                                                                               |
| 1057 | Transaction not allowed for cardholder                                                                                                      | Transaction not allowed for cardholder                                                                                                      |
| 1058 | Transaction not allowed for merchant                                                                                                        | Transaction not allowed for merchant                                                                                                        |
| 1061 | Exceeds withdrawal amount limit                                                                                                             | Exceeds withdrawal amount limit                                                                                                             |
| 1062 | Restricted card                                                                                                                             | Restricted card                                                                                                                             |
| 1063 | Security violation                                                                                                                          | Security violation                                                                                                                          |
| 1065 | Activity count limit exceeded                                                                                                               | Activity count limit exceeded                                                                                                               |
| 1075 | PIN tries exceeded                                                                                                                          | PIN tries exceeded                                                                                                                          |
| 1077 | Inconsistent with original                                                                                                                  | Inconsistent with original                                                                                                                  |
| 1078 | It is not authorized to clear this transaction                                                                                              | It is not authorized to clear this transaction                                                                                              |
| 1081 | Validation type not supported                                                                                                               | Validation type not supported                                                                                                               |
| 1082 | Transaction type not supported                                                                                                              | Transaction type not supported                                                                                                              |
| 1083 | Card type not supported                                                                                                                     | Card type not supported                                                                                                                     |
| 1084 | Pre-authorisation time too great                                                                                                            | Pre-authorisation time too great                                                                                                            |
| 1086 | Cannot verify PIN                                                                                                                           | Cannot verify PIN                                                                                                                           |
| 1091 | Issuer unavailable                                                                                                                          | Issuer unavailable                                                                                                                          |
| 1092 | Invalid receiving institution id                                                                                                            | Invalid receiving institution id                                                                                                            |
| 1093 | Transaction violates law                                                                                                                    | Transaction violates law                                                                                                                    |
| 1094 | Duplicate transaction                                                                                                                       | Duplicate transaction                                                                                                                       |
| 1096 | System malfunction                                                                                                                          | System malfunction                                                                                                                          |
| 1099 | No Communication to bank Proxy                                                                                                              | No Communication to bank Proxy                                                                                                              |
| 1102 | Capture was already done per specified authorize deal                                                                                       | Capture was already done per specified authorize deal                                                                                       |
| 1103 | Bank timeout                                                                                                                                | Bank timeout                                                                                                                                |
| 1104 | Bank proxy timeout                                                                                                                          | Bank proxy timeout                                                                                                                          |
| 1105 | Capture total amount is higher than authorization amount                                                                                    | Capture total amount is higher than authorization amount                                                                                    |
| 1106 | Original authorization was not found                                                                                                        | Original authorization was not found                                                                                                        |
| 1163 | batchsettlement action error                                                                                                                | batch settlement action error                                                                                                               |
| 1164 | save transactionid action error                                                                                                             | save transactionid action error                                                                                                             |
| 1165 | get settlement status action error                                                                                                          | get settlement status action error                                                                                                          |
| 1166 | update transmit status action error                                                                                                         | update transmit status action error                                                                                                         |
| 1167 | file validator action error                                                                                                                 | file validator action error                                                                                                                 |
| 1168 | build host file action error                                                                                                                | build host file action error                                                                                                                |
| 1169 | check transmitted file size action error                                                                                                    | check transmitted file size action error                                                                                                    |
| 1170 | transmit settlement file action                                                                                                             | transmit settlement file action                                                                                                             |
| 1200 | Unable to transmit - exceeded a daily quota                                                                                                 | Unable to transmit - exceeded a daily quota                                                                                                 |
| 1201 | No transactions to transmit                                                                                                                 | No transactions to transmit                                                                                                                 |
| 1202 | Missing parameter in transmit request                                                                                                       | Missing parameter in transmit request                                                                                                       |
| 1710 | Invalid Merchant                                                                                                                            | Invalid Merchant                                                                                                                            |
| 1803 | Call Issuer                                                                                                                                 | Call Issuer                                                                                                                                 |
| 1804 | Deny                                                                                                                                        | Deny                                                                                                                                        |
| 1809 | Invalid merchant                                                                                                                            | Invalid merchant                                                                                                                            |
| 1810 | Invalid amount                                                                                                                              | Invalid amount                                                                                                                              |
| 1811 | Invalid account                                                                                                                             | Invalid account                                                                                                                             |
| 1812 | Issuer not available                                                                                                                        | Issuer not available                                                                                                                        |
| 1815 | Requested function not supported                                                                                                            | Requested function not supported                                                                                                            |
| 1822 | Invalid card security code                                                                                                                  | Invalid card security code                                                                                                                  |
| 1836 | Expired Card                                                                                                                                | Expired Card                                                                                                                                |
| 1883 | Invalid currency code                                                                                                                       | Invalid currency code                                                                                                                       |
| 1887 | Deny — New card issued                                                                                                                      | Deny — New card issued                                                                                                                      |
| 1888 | Deny — Account canceled                                                                                                                     | Deny — Account canceled                                                                                                                     |
| 1889 | Deny — Canceled or Closed Merchant                                                                                                          | Deny — Canceled or Closed Merchant                                                                                                          |
| 1890 | Deny — Pick up card                                                                                                                         | Deny — Pick up card                                                                                                                         |
| 1907 | The customer has not yet confirmed payment for this transaction                                                                             | The customer has not yet confirmed payment for this transaction                                                                             |
| 2001 | Amount error                                                                                                                                | Amount error                                                                                                                                |
| 2002 | Amount is more than established service limit                                                                                               | Amount is more than established service limit                                                                                               |
| 2003 | Call for Assistance                                                                                                                         | Call for Assistance                                                                                                                         |
| 2004 | Check is OK but cannot be converted                                                                                                         | Check is OK but cannot be converted                                                                                                         |
| 2005 | Declined                                                                                                                                    | Declined                                                                                                                                    |
| 2006 | Declined - Do Not Honor. Failed Negative Check - Unpaid Items                                                                               | Declined - Do Not Honor. Failed Negative Check - Unpaid Items                                                                               |
| 2007 | Declined - General System Error / Host Busy                                                                                                 | Declined - General System Error / Host Busy                                                                                                 |
| 2008 | Duplicate Check Number                                                                                                                      | Duplicate Check Number                                                                                                                      |
| 2009 | Expired Card                                                                                                                                | Expired Card                                                                                                                                |
| 2010 | Invalid PIN                                                                                                                                 | Invalid PIN                                                                                                                                 |
| 2011 | Invalid Card                                                                                                                                | Invalid Card                                                                                                                                |
| 2012 | Invalid Terminal ID                                                                                                                         | Invalid Terminal ID                                                                                                                         |
| 2013 | Invalid Routing/Transit Number                                                                                                              | Invalid Routing/Transit Number                                                                                                              |
| 2014 | Invalid Merchant Nbr                                                                                                                        | Invalid Merchant Nbr                                                                                                                        |
| 2015 | Invalid SE Number                                                                                                                           | Invalid SE Number                                                                                                                           |
| 2016 | Invalid Data Submitted or Void Transaction                                                                                                  | Invalid Data Submitted or Void Transaction                                                                                                  |
| 2017 | MICR Read Error                                                                                                                             | MICR Read Error                                                                                                                             |
| 2018 | Must settle POS Device - batch is over 7 days old                                                                                           | Must settle POS Device - batch is over 7 days old                                                                                           |
| 2019 | General System Error                                                                                                                        | General System Error                                                                                                                        |
| 2020 | Please retry/ reenter transaction                                                                                                           | Please retry/ reenter transaction                                                                                                           |
| 2021 | Record not found on Elavon                                                                                                                  | Record not found on Elavon                                                                                                                  |
| 2022 | Request Exceeds Balance                                                                                                                     | Request Exceeds Balance                                                                                                                     |
| 2023 | Call for Assistance                                                                                                                         | Call for Assistance                                                                                                                         |
| 2024 | Invalid request                                                                                                                             | Invalid request                                                                                                                             |
| 2025 | Too Many Checks (over Limit)                                                                                                                | Too Many Checks (over Limit)                                                                                                                |
| 2026 | Refer to Issuer                                                                                                                             | Refer to Issuer                                                                                                                             |
| 2027 | Refer to Issuer                                                                                                                             | Refer to Issuer                                                                                                                             |
| 2028 | Do Not Honor. Declined CVV2 Mismatchailure                                                                                                  | Do Not Honor. Declined CVV2 Mismatchailure                                                                                                  |
| 2029 | Pick up card                                                                                                                                | Pick up card                                                                                                                                |
| 2030 | General System Error / Host Busy (Gift Card)                                                                                                | General System Error / Host Busy (Gift Card)                                                                                                |
| 2031 | Invalid Card (Gift Card)                                                                                                                    | Invalid Card (Gift Card)                                                                                                                    |
| 2032 | Invalid Terminal ID (Gift Card)                                                                                                             | Invalid Terminal ID (Gift Card)                                                                                                             |
| 2033 | Transaction Amount Error (Gift Card)                                                                                                        | Transaction Amount Error (Gift Card)                                                                                                        |
| 2034 | Gift Card has already been activated                                                                                                        | Gift Card has already been activated                                                                                                        |
| 2035 | Request Exceeds Balance (Gift Card)                                                                                                         | Request Exceeds Balance (Gift Card)                                                                                                         |
| 2036 | Cannot Load the Gift Card Amount Specified                                                                                                  | Cannot Load the Gift Card Amount Specified                                                                                                  |
| 2037 | Gift Card Cannot be Reloaded                                                                                                                | Gift Card Cannot be Reloaded                                                                                                                |
| 2038 | Gift Card has not been previously activated                                                                                                 | Gift Card has not been previously activated                                                                                                 |
| 2039 | Call for Assistance (Gift Card)                                                                                                             | Call for Assistance (Gift Card)                                                                                                             |
| 2040 | General System Error / Host Busy (Gift Card)                                                                                                | General System Error / Host Busy (Gift Card)                                                                                                |
| 2171 | Blocked due to ECI downgrade                                                                                                                | Blocked due to ECI downgrade                                                                                                                |
| 2200 | Unsupported Message Type                                                                                                                    | Unsupported message type                                                                                                                    |
| 2201 | Unable to handle message type at this time                                                                                                  | Unable to handle message type at this time                                                                                                  |
| 2202 | Unsupported Message Version                                                                                                                 | Unsupported message version                                                                                                                 |
| 2203 | Invalid xml format                                                                                                                          | Invalid xml format                                                                                                                          |
| 2204 | Empty request                                                                                                                               | Empty request                                                                                                                               |
| 2205 | Unable to locate merchant configuration                                                                                                     | Unable to locate merchant configuration                                                                                                     |
| 2206 | Error processing message request                                                                                                            | Error processing message request                                                                                                            |
| 2207 | Error processing cg3dsPaRes                                                                                                                 | Error processing cg3dsPaRes                                                                                                                 |
| 2208 | Missing or invalid cg3dsPaRes                                                                                                               | Missing or invalid cg3dsPaRes                                                                                                               |
| 2209 | Card type and message type mismatch                                                                                                         | Card type and message type mismatch                                                                                                         |
| 2210 | Error validating processor id value                                                                                                         | Error validating processor id value                                                                                                         |
| 2211 | Error validating merchant id value                                                                                                          | Error validating merchant id value                                                                                                          |
| 2212 | Merchant not active                                                                                                                         | Merchant not active                                                                                                                         |
| 2213 | Error validating message - transaction id is empty                                                                                          | Error validating message - transaction id is empty                                                                                          |
| 2214 | Error parsing cg3dsPaRes message elements                                                                                                   | Error parsing cg3dsPaRes message elements                                                                                                   |
| 2215 | Error validating amount                                                                                                                     | Error validating amount                                                                                                                     |
| 2216 | System error - call support                                                                                                                 | System error - call support                                                                                                                 |
| 2217 | Error processing lookup request                                                                                                             | Error processing lookup request                                                                                                             |
| 2218 | Error during 3ds authentication                                                                                                             | Error during 3ds authentication                                                                                                             |
| 2219 | Error persisting lookup information                                                                                                         | Error persisting lookup information                                                                                                         |
| 2220 | Error persisting cg3dsPaRes information                                                                                                     | Error persisting cg3dsPaRes information                                                                                                     |
| 2221 | Error persisting 3-D Secure authentication information                                                                                      | Error persisting 3-D Secure authentication information                                                                                      |
| 2222 | Error persisting VERes information                                                                                                          | Error persisting VERes information                                                                                                          |
| 2223 | Error persisting PAReq information                                                                                                          | Error persisting PAReq information                                                                                                          |
| 2224 | Error persisting VEReq information                                                                                                          | Error persisting VEReq information                                                                                                          |
| 2225 | Payment initiative not supported                                                                                                            | Payment initiative not supported                                                                                                            |
| 2230 | Cannot verify cg3dsPaRes - see status of cg3dsSignatureVerification                                                                         | Cannot verify cg3dsPaRes - see status of cg3dsSignatureVerification                                                                         |
| 2300 | Not allowed                                                                                                                                 | Not allowed                                                                                                                                 |
| 2301 | Invalid card number                                                                                                                         | Invalid card number                                                                                                                         |
| 2302 | Invalid card security code                                                                                                                  | Invalid card security code                                                                                                                  |
| 2303 | Invalid AVS fields                                                                                                                          | Invalid AVS fields                                                                                                                          |
| 2304 | Card holder missing                                                                                                                         | Card holder missing                                                                                                                         |
| 2305 | Invalid amount                                                                                                                              | Invalid amount                                                                                                                              |
| 2306 | Unsupported currency                                                                                                                        | Unsupported currency                                                                                                                        |
| 2307 | Invalid merchant account                                                                                                                    | Invalid merchant account                                                                                                                    |
| 2308 | Internal error                                                                                                                              | Internal error                                                                                                                              |
| 2309 | Billing address problem (City)                                                                                                              | Unable to process your request. Please try later                                                                                            |
| 2311 | Billing address problem (Street)                                                                                                            | Billing address problem (City)                                                                                                              |
| 2312 | Billing address problem (HouseNumberOrName)                                                                                                 | Billing address problem (Street)                                                                                                            |
| 2313 | Billing address problem (Country)                                                                                                           | Billing address problem (HouseNumberOrName)                                                                                                 |
| 2314 | Billing address problem (StateOrProvince)                                                                                                   | Billing address problem (Country)                                                                                                           |
| 2315 | Billing address problem (Country)                                                                                                           | Billing address problem (StateOrProvince)                                                                                                   |
| 2316 | Refused                                                                                                                                     | Refused                                                                                                                                     |
| 2317 | Payment details are not supported                                                                                                           | Payment details are not supported                                                                                                           |
| 5001 | Redirect the card holder to the issuer page for additional authentication                                                                   | Redirect the card holder to the issuer page for additional authentication                                                                   |
| 9689 | Maximal length for the parameter passportNumber is                                                                                          | Maximal length for the parameter passportNumber is                                                                                          |
| 9860 | Field user is mandatory                                                                                                                     | Field user is mandatory                                                                                                                     |
| 9861 | Missing configuration                                                                                                                       | Missing configuration                                                                                                                       |

</details>

## Related commands

* [cancelDeal](/api-reference/canceldeal.md) - Cancel transaction before settlement
* [refundDeal](/api-reference/refunddeal.md) - Refund transaction after settlement
* [transmitTerminal](/api-reference/transmitterminal.md) - Manual settlement transmission

## Notes

* **Amount Format**: Always use cents/agorot (1000 = 10.00)
* **Card Requirements**: cardNo must be accompanied by cardExpiration
* **Pre-auth Expiry**: Pre-authorizations expire after 7-30 days (issuer-dependent)
* **Token Format**: 16 digits with the last 4 matching the original card
* **Test Cards**: Use 4111111111111111 in a sandbox environment
* **Settlement**: Transactions settle during nightly batch (typically 11:00 PM Israel time)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.hyp.co.il/api-reference/dodeal.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
