Direct Transaction Initiation API
This document explains how to initiate a direct transaction, providing all necessary details in a single API call.
Overview
The initiate-direct endpoint under /transaction allows for the direct initiation of a transaction, combining user, bank, and transaction details into one request for streamlined processing.
Initiate Direct Transaction
Description: Initiates a transaction with all required user and bank details provided directly in the request.
Request Body Payload
| Property Name | Type | Mandatory | Length/Limit | Description |
|---|---|---|---|---|
user_id | string | Yes | UUID | The unique ID of the user associated with this transaction. |
client_transaction_id | string | Yes | - | A unique identifier for the transaction from the client’s system. |
neokred_transaction_id | string | No | - | An optional transaction ID from Neokred, if applicable. |
account_number | string | Yes | - | The bank account number for the transaction. |
ifsc_code | string | Yes | 11 characters | The IFSC code of the bank branch. |
account_holder_name | string | Yes | Max 50 | The name of the account holder. |
bank_name | string | Yes | Max 50 | The name of the bank. |
amount | string | Yes | - | The transaction amount. |
status | string | Yes | - | The initial status of the transaction (e.g., PENDING). |
remark | string | No | Max 50 | A remark or description for the transaction. |
cURL Command
curl --request POST \
--url https://api.swiftramp.in/v1/transaction/initiate-direct \
--header 'authorization: Bearer [ACCESS_TOKEN]' \
--header 'Content-Type: application/json' \
--data '{
"user_id": "87b2b208-a8e6-4185-90ba-67629a95eb48",
"client_transaction_id": "87b2b208-a8e6-4185-90ba-67629a95eb49",
"neokred_transaction_id": "87b2b208-a8e6-4185-90ba-67629a95eb50",
"account_number": "987654321123",
"ifsc_code": "SBIN0000031",
"account_holder_name": "Ravinder Joshi",
"bank_name": "State Bank Of India",
"amount": "100",
"status": "PENDING",
"remark": "remark"
}'Success Response (201 Created)
{
"status": true,
"code": 201,
"message": "transaction inserted successfully",
"data": {
"currency": "INR",
"user_id": "87b2b208-a8e6-4185-90ba-67629a95eb48",
"client_transaction_id": "87b2b208-a8e6-4185-90ba-67629a95eb49",
"neokred_transaction_id": "87b2b208-a8e6-4185-90ba-67629a95eb50",
"account_number": "987654321123",
"ifsc_code": "SBIN0000031",
"account_holder_name": "Ravinder Joshi",
"bank_name": "State Bank Of India",
"amount": "100",
"status": "PENDING",
"remark": "remark",
"client_id": "ab937578-6553-4c46-8148-553869e1d88f",
"id": "019d6179-ac2d-734c-8475-0fe170596249",
"updated_at": "2026-04-06T06:27:37.134Z",
"created_at": "2026-04-06T06:27:37.134Z",
"utr": null,
"metadata": null
}
}Enums and Constants
Transaction Status
| Value | Description |
|---|---|
PENDING | The transaction has been initiated and is awaiting processing. |
PROCESSING | The transaction is currently being processed. |
SUCCESS | The transaction has been successfully completed. |
FAILED | The transaction failed to complete. |
- 💡 Ensure that the
ACCESS_TOKENin the cURL command is a valid JWT token obtained from the authentication endpoint. - 💡 The
client_transaction_idshould be unique for each transaction initiated by your client to prevent duplicate processing. - 💡 The
statusfield in the request body sets the initial state of the transaction, typicallyPENDING.