> For the complete documentation index, see [llms.txt](https://docs.udara360.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.udara360.io/udara360-docs-1/transfer/transfer-api/tsq-interbank-ft.md).

# TSQ - InterBank FT

The "TSQ - InterBank FT" endpoint allows customers to check the status of an InterBank Funds Transfer transaction.

<mark style="color:green;">`GET`</mark> `/api/Transfer/v1/TSQ`

To retrieve the current status of the transaction, you need to provide either `transactionRef` or `apiRequestRef` as a query parameter.

{% hint style="warning" %}
Do not use the responseCode field in the response to decide the state of the transaction. The status code must be used at all times.
{% endhint %}

**Processing Status values**

| Status          | Meaning                                                                                                                                                           |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Pending         | The customer has been debited, and the request has been queued for transmission to the processing gateway (e.g. NIBSS, Interswitch).                              |
| Processing      | The customer has been debited, and the request has been sent to the processing gateway, awaiting a response.                                                      |
| PendingTSQ      | A response has been received from the processing gateway, but final confirmation is still pending.                                                                |
| ConfirmManually | The response returned from the processing gateway does not clearly indicate whether the transaction succeeded or failed, and TSQ returned an indefinite response. |
| Processed       | A successful transfer confirmation has been received from the processing gateway.                                                                                 |
| Reversed        | The customer's funds have been reversed after the transaction was confirmed to have failed on the processing gateway.                                             |
| Failed          | The transaction failed, and the customer was not debited.                                                                                                         |

**Headers**

| Name                                            | Value                |
| ----------------------------------------------- | -------------------- |
| Content-Type<mark style="color:red;">\*</mark>  | `application/json`   |
| Authorization<mark style="color:red;">\*</mark> | `Bearer`             |
| Request-Reference                               | `{unique_reference}` |

**Query Params**

<table><thead><tr><th>Name</th><th>Data Type (Length)</th><th data-type="checkbox">Required</th><th>Description</th></tr></thead><tbody><tr><td><code>transactionRef</code></td><td>string <em>(100)</em></td><td>false</td><td>The Transaction Reference / TransactionID / SessionID of the transaction.<br><br><em>Pass the value returned in the Instrument Number field of the Outward Transfer response.</em></td></tr><tr><td><code>apiRequestRef</code></td><td>string <em>(100)</em></td><td>false</td><td>The unique reference you passed in your header when making the original transfer request.<br><br><em>This is the unique reference you passed in your header when making a request to the endpoint.</em></td></tr></tbody></table>

Here is an example request and response with a sample payload sent to the endpoint in Curl format.

<details>

<summary>Sample Request</summary>

```json
curl --location -g '{{baseurl}}/api/Transfer/v1/TSQ?transactionRef=%3Cstring%3E&apiRequestRef=%3Cstring%3E' \
--header 'Authorization: bearer {token}' \
--header 'request-reference: {unique_reference}' \
--header 'Content-Type: application/json' \
--data ''
```

</details>

<details>

<summary>Response: <code>200</code></summary>

```json
{
    "data": {
        "responseCode": "",
        "transactionReference": "",
        "channelCode": "",
        "sourceInstitutionCode": "",
        "responseMessage": "",
        "processingStatus": ""//Pending, Processing, Processed, Reversed, PendingTSQ, Failed, ConfirmManually
    },
    "responseCode": null, //This has been depricated and will be removed soon
    "transactionReference": null,//This has been depricated and will be removed soon
    "channelCode": null,//This has been depricated and will be removed soon
    "sourceInstitutionCode": null,//This has been depricated and will be removed soon
    "responseMessage": null,//This has been depricated and will be removed soon
    "status": false,
    "message": ""
}
```

</details>
