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 NameTypeMandatoryLength/LimitDescription
user_idstringYesUUIDThe unique ID of the user associated with this transaction.
client_transaction_idstringYes-A unique identifier for the transaction from the client’s system.
neokred_transaction_idstringNo-An optional transaction ID from Neokred, if applicable.
account_numberstringYes-The bank account number for the transaction.
ifsc_codestringYes11 charactersThe IFSC code of the bank branch.
account_holder_namestringYesMax 50The name of the account holder.
bank_namestringYesMax 50The name of the bank.
amountstringYes-The transaction amount.
statusstringYes-The initial status of the transaction (e.g., PENDING).
remarkstringNoMax 50A 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

ValueDescription
PENDINGThe transaction has been initiated and is awaiting processing.
PROCESSINGThe transaction is currently being processed.
SUCCESSThe transaction has been successfully completed.
FAILEDThe transaction failed to complete.

  • 💡 Ensure that the ACCESS_TOKEN in the cURL command is a valid JWT token obtained from the authentication endpoint.
  • 💡 The client_transaction_id should be unique for each transaction initiated by your client to prevent duplicate processing.
  • 💡 The status field in the request body sets the initial state of the transaction, typically PENDING.