# Create a Transaction

<mark style="color:orange;">`POST`</mark> `{{baseurl}}/v1/api/evaluations`

This endpoint is used to send or stream a single financial transaction associated with an existing client (individual or business client) for evaluation.

## Header

| Name                                    | Type   | Description |
| --------------------------------------- | ------ | ----------- |
| token<mark style="color:red;">\*</mark> | String | API token   |

## Body

| Field                                                  | Type    | Description                                                                                                                                                                                                                                                            |
| ------------------------------------------------------ | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| transaction<mark style="color:red;">\*</mark>          | Object  | Transaction information.                                                                                                                                                                                                                                               |
| channel                                                | String  | <p>The platform used to initiate the transaction.</p><p>Allowed values: <mark style="color:red;"><code>"ATM, CARD\_SWIPE\_TERMINAL, IOS, ANDROID, ONLINE, POS, BRANCH, UNKOWN"</code></mark></p>                                                                       |
| currency<mark style="color:red;">\*</mark>             | String  | 3 letter ISO 4217 currency code of the value.                                                                                                                                                                                                                          |
| transactionReference<mark style="color:red;">\*</mark> | String  | Primary identifier for the transaction.                                                                                                                                                                                                                                |
| amount<mark style="color:red;">\*</mark>               | Float   | Value of the transaction.                                                                                                                                                                                                                                              |
| localAmount<mark style="color:red;">\*</mark>          | Float   | Amount converted to the local currency of the financial institution.                                                                                                                                                                                                   |
| instrument<mark style="color:red;">\*</mark>           | String  | <p>Instrument of the transaction.</p><p>Allowed values: <mark style="color:red;"><code>"CASH,CHECK,DIRECT\_DEBIT,STANDING\_ORDER,TRANSFER,CARD,VIRTUAL"</code>, <code>", PROMISSORY\_NOTE,UNKNOWN"</code></mark></p>                                                   |
| purpose<mark style="color:red;">\*</mark>              | String  | <p>A more specific reason for the transaction beyond the general method (transaction.instrument).</p><p>Allowed values: <mark style="color:red;"><code>"FEE,INTEREST,PAYMENT,REVERSAL,CORRECTION,BILL\_PAY,INTRA\_ACTOR,REFUND,CHARGE\_BACK,UNKNOWN"</code></mark></p> |
| direction<mark style="color:red;">\*</mark>            | String  | <p>The direction of a transaction is OUTFLOW when funds are sent from the account holder, and INFLOW when funds are received by the account holder.</p><p>Allowed values: <mark style="color:red;"><code>"OUTFLOW,INFLOW"</code></mark></p>                            |
| international                                          | Boolean | Indicates if the transaction was international.                                                                                                                                                                                                                        |
| night                                                  | Boolean | Indicates whether the transaction occurred after a specific time designated by the financial institution (e.g., night time).                                                                                                                                           |
| description                                            | String  | Description of the transaction.                                                                                                                                                                                                                                        |
| status                                                 | String  | <p>Status of the transaction.</p><p>Allowed values: <mark style="color:red;"><code>"COMPLETE,PENDING,VOID,FAILED"</code></mark></p>                                                                                                                                    |
| countryCode<mark style="color:red;">\*</mark>          | String  | Initiating country code, Two country code, ISO 3166-1. This should be set for transaction monitoring to work as intended.                                                                                                                                              |
| transactionDate<mark style="color:red;">\*</mark>      | Integer | Date in seconds since 1 Jan 1970 00:00:00 UTC (i.e. in Unix time).                                                                                                                                                                                                     |
| source<mark style="color:red;">\*</mark>               | Object  | Initiator of the transaction.                                                                                                                                                                                                                                          |
| accountHolderType<mark style="color:red;">\*</mark>    | String  | <p>Type of party involved in the transaction.</p><p>Allowed values: <mark style="color:red;"><code>"LEGAL\_ENTITY,INDIVIDUAL,EMPTY"</code></mark></p>                                                                                                                  |
| accountBalance                                         | Float   | The current, settled balance of the account in the currency of the account.                                                                                                                                                                                            |
| accountName                                            | String  | Name of the transaction source in order \[FirstName, MiddleName, LastName] if not legal entity.                                                                                                                                                                        |
| bankName                                               | String  | Name of the bank of the initiator.                                                                                                                                                                                                                                     |
| accountNumber<mark style="color:red;">\*</mark>        | String  | Account number of initiator.                                                                                                                                                                                                                                           |
| externalAccountId                                      | String  | Primary identifier for the initiator.                                                                                                                                                                                                                                  |
| bankCode                                               | String  | bankCode (Bank Identifier Code) Unique identifier of the bank. In some countries, this can be the same as the bank's SWIFT code.                                                                                                                                       |
| beneficiary<mark style="color:red;">\*</mark>          | Object  | Counterparty information.                                                                                                                                                                                                                                              |
| accountNumber<mark style="color:red;">\*</mark>        | String  | Bank account number the counterparty.                                                                                                                                                                                                                                  |
| externalAccountId                                      | String  | Primary identifier for the counterparty.                                                                                                                                                                                                                               |
| bankName                                               | String  | Name of the bank of the counterparty.                                                                                                                                                                                                                                  |
| accountName<mark style="color:red;">\*</mark>          | String  | Account name of the counterparty in order \[FirstName, MiddleName, LastName] if not legal entity.                                                                                                                                                                      |
| accountHolderType<mark style="color:red;">\*</mark>    | String  | <p>Type of party involved in the transaction.</p><p>Allowed values: <mark style="color:red;"><code>"LEGAL\_ENTITY,INDIVIDUAL,EMPTY"</code></mark></p>                                                                                                                  |
| merchantCategoryCode                                   | String  | Merchant category code for counterparty if legal\_entity.                                                                                                                                                                                                              |
| countryCode<mark style="color:red;">\*</mark>          | String  | Country code of the merchant.                                                                                                                                                                                                                                          |
| routingNumber                                          | String  | Routing number.                                                                                                                                                                                                                                                        |
| bank                                                   | String  | bankCode (Bank Identifier Code) Unique identifier of the bank. In some countries, this can be the same as the bank's SWIFT code.                                                                                                                                       |
| iban                                                   | String  | IBAN (International Bank Account Number).                                                                                                                                                                                                                              |
| swift                                                  | String  | SWIFT (Society for Worldwide Interbank Financial Telecommunication) code.                                                                                                                                                                                              |
| cifNumber                                              | String  | CIF (Customer Information File) number.                                                                                                                                                                                                                                |
| avs                                                    | String  | AVS (Address Verification System) code.                                                                                                                                                                                                                                |
| addressCity                                            | String  | City of the counterparty's residence address .                                                                                                                                                                                                                         |
| addressState                                           | String  | State of the counterparty's residence address.                                                                                                                                                                                                                         |
| addressPostalCode                                      | String  | Post code of the counterparty's residence address.                                                                                                                                                                                                                     |
| addressCountryCode                                     | String  | Counterparty's country of residence.                                                                                                                                                                                                                                   |
| ipAddress                                              | String  | IP address for the device associated with the transaction.                                                                                                                                                                                                             |
| deviceId                                               | String  | Device ID is a unique, anonymized string of numbers and letters that identifies the device.                                                                                                                                                                            |

{% tabs %}
{% tab title="Sample Request " %}

```json
{
    "transactionReference": "external_transaction_identifier",
    "transactionDate": 31532409,
    "direction": "OUTFLOW",
    "description": "Payment (details might be missing)",
    "channel": "IOS",
    "currency": "NGN",
    "amount": 10930,
    "localAmount": 0,
    "status": "PENDING",
    "purpose": "FEE",
    "international": false,
    "instrument": "UNKNOWN",
    "night": false,
    "countryCode": "AF",
    "device": {
        "deviceId": "unique_identifier_of_device_used_in_transaction",
        "ipAddress": "10.0.0.1"
    },
    "source": {
        "externalAccountId": "external_account_id",
        "accountBalance": 0,
        "accountNumber": "0989067890",
        "accountType": "INDIVIDUAL",
        "accountName": "r",
        "bankName": "r",
        "bankCode": "1234"
    },
    "beneficiary": {
        "accountType": "INDIVIDUAL",
        "externalAccountId": "external_account_id",
        "accountNumber": "0989067890",
        "accountName": "Johann McPherson",
        "bankName": "Societe",
        "merchantCategoryCode": "1234",
        "countryCode": "NG",
        "bic": "bank_identifier_code/SWIFT",
        "bankCode": "1234",
        "addressPostalCode": "10001",
        "addressCountryCode": "NG",
        "addressCity": "",
        "addressState": "",
        "iban": "",
        "avs": "",
        "cifNumber": "",
        "routingNumber": ""
    },
    "metadata": {}
}
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Success Response" %}

```json
{
       "success": true,
       "statusCode": 201,
       "message": "Transaction successfully created and sent for evaluation!",
       "data": {},
       "links": []
     }
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Error Responses" %}

```json
{
  "success": false,
  "statusCode": 404,
  "message": "You have attempted to get a resource that does not exist.",
  "name": "ResourceNotFoundError",
  "data": {}
}
```

{% endtab %}
{% endtabs %}
