Enkash APIs
HomePayment GatewayPayoutsCreate Account
HomePayment GatewayPayoutsCreate Account
Login
  1. Order
  • Payment Gateway Overview
  • Getting Started
  • Payment Methods
  • Integration
  • API Endpoints
  • APIs
    • Authorisation
      • Get Authorization Token
    • Order
      • Create Order
        POST
      • Get Order Status
        GET
      • Get Order By Merchant Order Id
        GET
      • Get BNPL Payment Modes
        GET
      • Get Dynamic QR Code
        GET
      • UPI Intent Links
        GET
    • Payment
      • Submit Payment Detail
      • Get Transaction Status
      • Validate OTP
      • Resend OTP
      • Payment Notify Request
      • Get UPI Transaction Status
      • Verify VPA
    • Refund
      • Refund
    • Settlement
      • Settlement Reporting
      • Get Settlement Payout By ID
      • Search Settlement Payouts
    • Split Settlement
      • Create Split Settlement Account
      • Update Split Settlement Account
      • Get All Split Settlement Account
      • Deactivate Split Settlement Account
      • Activate Split Settlement Account
      • Submit Payment with Split Details
      • Edit/Deferred Split Settlement
    • E-Commerce Plugins
    • Payment Button
    • Qr Code
      • Create Qr Code
      • Get QR Code
      • Search QR Code
      • createCustomer
      • searchCustomer
      • Cancel QR Code
    • UPI Mandate
      • Create UPI Mandate
      • Update UPI Mandate
      • Revoke UPI Mandate
      • Get UPI Mandate
      • UPI mandate create callback
      • Mandate Pre-debit Notification
      • Execute mandate debit
      • Mandate Debit callback
    • Payment Links
      • Payment Links Overview
      • Payment Link APIs
      • Payment Link
        • Create Payment Link
        • Get Payment Link Details
        • Delete Payment Link
      • Payment Link Webhook
        • Payment Link Webhook Request
  1. Order

Create Order

POST
/api/v0/orders
order-controller
Utilize this API to generate orders with Olympus from your backend. This allows you to initiate transactions and collect payments seamlessly

Request

Header Params
merchantAccessKey
string 
required
Authorization
string 
required
Body Params application/json
orderId
string 
required
A unique identifier for the order in your system. Accepts alphanumeric characters only.
amount
object (Amount) 
required
This specifies the amount for the order, allowing up to two decimal places. For example, 20.15 would represent Rs 20 and 15 paisa.
value
number 
required
>= 0.01
currency
enum<string> 
required
Allowed value:
INR
returnUrl
string 
optional
The URL to which the customer will be redirected after completing the payment. returnUrl is required if not configured at merchant level
notifyUrl
string 
optional
The URL where notifications regarding the order will be sent. notifyUrl is required if not configured at merchant level
customerInfo
object (CustomerDetail) 
optional
Information about the customer associated with the order. It typically includes details such as first name, last name, address, email, and phone number.
firstName
string 
optional
The first name of the customer. Accepts alphabetic characters.
lastName
string 
optional
The last name of the customer. Accepts alphabetic characters.
address
object (Address) 
optional
The address of the customer. Accepts alphanumeric characters and special symbols.
email
string 
optional
The email address of the customer. Must be in a valid email format.
phoneNumber
string 
optional
The phone number of the customer. Please exclude +91 ISD code.
customParameters
object 
optional
Additional custom parameters or metadata associated with the order, if any. These will be key value pairs.
Additional properties
string 
optional
description
string 
optional
paymentDetail
object (OrderPaymentDetail) 
optional
Payment related information for UPI TPV flow
accountNumber
string 
optional
Required for UPI TPV flow for non seamless integration
>= 9 characters<= 36 characters
ifsc
string 
optional
Required for UPI TPV flow for non seamless integration
>= 11 characters<= 11 characters
Example:
KKBK0000432
Match pattern:
^[A-Z]{4}0[A-Z0-9]{6}$
restrictedPaymentOptions
object 
optional

restrictedPaymentOptions is to restrict payment options on check for this order, this field a map containg paymentMode as key and List as value.
NETBANKING: List of Netbanking codes
CREDIT_CARD: null
DEBIT_CARD: null
UPI: null
WALLET: List of wallet codes

Example
{
    "orderId": "string",
    "amount": {
        "value": 0.01,
        "currency": "INR"
    },
    "returnUrl": "string",
    "notifyUrl": "string",
    "customerInfo": {
        "firstName": "string",
        "lastName": "string",
        "address": {
            "streetName": "string",
            "city": "string",
            "state": "string",
            "country": "string",
            "zipcode": "string"
        },
        "email": "string",
        "phoneNumber": "string"
    },
    "customParameters": {
        "property1": "string",
        "property2": "string"
    },
    "description": "string",
    "paymentDetail": {
        "accountNumber": "stringstr",
        "ifsc": "KKBK0000432"
    },
    "restrictedPaymentOptions": {}
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/api/v0/orders' \
--header 'merchantAccessKey;' \
--header 'Authorization;' \
--header 'Content-Type: application/json' \
--data-raw '{
    "orderId": "string",
    "amount": {
        "value": 0.01,
        "currency": "INR"
    },
    "returnUrl": "string",
    "notifyUrl": "string",
    "customerInfo": {
        "firstName": "string",
        "lastName": "string",
        "address": {
            "streetName": "string",
            "city": "string",
            "state": "string",
            "country": "string",
            "zipcode": "string"
        },
        "email": "string",
        "phoneNumber": "string"
    },
    "customParameters": {
        "property1": "string",
        "property2": "string"
    },
    "description": "string",
    "paymentDetail": {
        "accountNumber": "stringstr",
        "ifsc": "KKBK0000432"
    },
    "restrictedPaymentOptions": {}
}'

Responses

🟢200OK
application/json
Body
response_code
integer <int32>
optional
response_message
string 
optional
payload
object (OrderCreateResponse) 
optional
redirectionUrl
string 
optional
orderId
string 
optional
Example
{
    "response_code": 0,
    "response_message": "string",
    "payload": {
        "redirectionUrl": "string",
        "orderId": "string"
    }
}
Previous
Order
Next
Get Order Status
Built with