Skip to content

Direct Deposit

  • Payment API utilizes JSON data and does not provide a payment page, requiring merchants to create and manage their own payment page.

Tip

  • All requests are Post requests, and the data format is json

Brief description

Request URL

  • /v1/vexora/checkout

Request method

  • Method: POST
  • Content-Type: application/json

Way Code

wayCode Description
PSE Online Banking Payment (ACH)
WALLET Nequi Digital Wallet Payment
EFECTY Cash Payment (Over-the-Counter)
BREB Payment Key (Colombia's new generation real-time payment: generates a unique payment key, user copies and pastes it into their banking app to pay. "User can modify the amount")
header required type description
merchantNo Yes String no

Body

parameterName required type description
sign Yes String Except sign, initialise the remaining fields to form key1=value1key2=value2, use app secrect to do salt for md5 encryption, sign ends up being lowercase
timestamp Yes long timestamp (1715941383720)
tradeNo Yes String tradeNo (uniqueness (suggested year, month, day, hour, minute, second + random number) number)
amount Yes String Amount (Decimal not supported)
name Yes String User's Full Name
mobile No String User's mobile phone number
email No String email
wayCode Yes String Deposits method code
idType No String ID Type: CC (6-10 digits; Citizen ID), CE (6-10 digits; Foreigner ID), NIT (9 digits; Tax ID), PA (9 digits; Passport).
Required when wayCode is (PSE), (WALLET), or (BREB).
idCardNumber No String ID Number. Required when wayCode is (PSE), (WALLET), or (BREB).
bankCode No String Bank Code. Required when wayCode is (PSE). Refer to the bank list for creating payouts.
notifyUrl Yes String asynchronous callback address
returnUrl No String Checkout page jump address, remove the escape character โ€˜\โ€™, refer to the format https://www.google.com/ If not passed, jump to the default success page
remark No String Remarks, this field will be brought back as is.

Example of request parameters

{
ย ย ย ย "timestamp":ย 1750911986148,
ย ย ย ย "amount":ย "10000",
ย ย ย ย "wayCode":ย "PSE",
    "idType": "CC",
    "idCardNumber": "1114818656",
    "bankCode": "0001",
ย ย ย ย "tradeNo":ย "LoMwIKtsIKOWMpEJwTDtO",
ย ย ย ย "remark":ย "Testย remark",
ย ย ย ย "email":ย "123@qq.com",
ย ย ย ย "mobile":ย "1234567890",
ย ย ย ย "name":ย "testย name",
ย ย ย ย "notifyUrl":ย "https://www.google.com/",
ย ย ย ย "sign":ย "516c96dcc5816133cabf14d205de4069"
}

Response results

parameter name required type description
msg Yes String Request result (when return success only means that the request is successful, can not do the merchant side of the logic judgement)
code Yes String Request Response Code (when the return 0000 only indicates that the request is successful, can not do the merchant side of the logic judgement), the specific error code, please go to the business error code enumeration view
timestamp Yes String trading hours
success Yes String Transaction results
data Yes Object return object
data.tradeNo Yes String Merchant Transaction Number
data.platFormTradeNo Yes String vexora transaction number, unique
data.status Yes String Transaction results,Merchants can process subsequent workflows based on the returned status in the transaction result. For details, please refer to the status code reference table.
data.desc Yes String misdescription
data.remark Yes String Return content of the request (brought back the way it was)
data.paymentUrl Yes String Payment Redirect URL

Successful return example

{
    "msg": "success",
    "code": "0000",
    "timestamp": 1728609277476,
    "success": true,
    "data": {
        "tradeNo": "test_00000008",
        "tradeNo": "68o0uwogz7mnzutt",
        "status": "0015",
        "desc": "Create",
        "remark": "test",
        "paymentUrl": "https://www.google.com/"
    }
}