unicodeC / Razorpay APIs / Create a Virtual Account
Back to Collection Items
#include <C_CkHttpW.h>
#include <C_CkJsonObjectW.h>
#include <C_CkHttpResponseW.h>
void ChilkatSample(void)
{
HCkHttpW http;
BOOL success;
HCkJsonObjectW json;
HCkHttpResponseW resp;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttpW_Create();
CkHttpW_putBasicAuth(http,TRUE);
CkHttpW_putLogin(http,L"username");
CkHttpW_putPassword(http,L"password");
// Use this online tool to generate code from sample JSON: Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "receivers": {
// "types": [
// "bank_account"
// ]
// },
// "allowed_payers": [
// {
// "type": "bank_account",
// "bank_account": {
// "ifsc": "UTIB0000013",
// "account_number": "914010012345679"
// }
// },
// {
// "type": "bank_account",
// "bank_account": {
// "ifsc": "UTIB0000014",
// "account_number": "914010012345680"
// }
// }
// ],
// "description": "Virtual Account created for Raftar Soft",
// "customer_id": "cust_CaVDm8eDRSXYME",
// "close_by": 1981615838,
// "notes": {
// "project_name": "Banking Software"
// }
// }
json = CkJsonObjectW_Create();
CkJsonObjectW_UpdateString(json,L"receivers.types[0]",L"bank_account");
CkJsonObjectW_UpdateString(json,L"allowed_payers[0].type",L"bank_account");
CkJsonObjectW_UpdateString(json,L"allowed_payers[0].bank_account.ifsc",L"UTIB0000013");
CkJsonObjectW_UpdateString(json,L"allowed_payers[0].bank_account.account_number",L"914010012345679");
CkJsonObjectW_UpdateString(json,L"allowed_payers[1].type",L"bank_account");
CkJsonObjectW_UpdateString(json,L"allowed_payers[1].bank_account.ifsc",L"UTIB0000014");
CkJsonObjectW_UpdateString(json,L"allowed_payers[1].bank_account.account_number",L"914010012345680");
CkJsonObjectW_UpdateString(json,L"description",L"Virtual Account created for Raftar Soft");
CkJsonObjectW_UpdateString(json,L"customer_id",L"cust_CaVDm8eDRSXYME");
CkJsonObjectW_UpdateInt(json,L"close_by",1981615838);
CkJsonObjectW_UpdateString(json,L"notes.project_name",L"Banking Software");
resp = CkHttpW_PostJson3(http,L"https://api.razorpay.com/v1/virtual_accounts",L"application/json",json);
if (CkHttpW_getLastMethodSuccess(http) == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
CkHttpW_Dispose(http);
CkJsonObjectW_Dispose(json);
return;
}
wprintf(L"%d\n",CkHttpResponseW_getStatusCode(resp));
wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp));
CkHttpResponseW_Dispose(resp);
CkHttpW_Dispose(http);
CkJsonObjectW_Dispose(json);
}
Curl Command
curl -X POST
-u 'username:password'
-d '{
"receivers": {
"types": [
"bank_account"
]
},
"allowed_payers": [
{
"type": "bank_account",
"bank_account": {
"ifsc": "UTIB0000013",
"account_number": "914010012345679"
}
},
{
"type": "bank_account",
"bank_account": {
"ifsc": "UTIB0000014",
"account_number": "914010012345680"
}
}
],
"description": "Virtual Account created for Raftar Soft",
"customer_id": "cust_CaVDm8eDRSXYME",//Replace customer_id
"close_by": 1981615838,
"notes": {
"project_name": "Banking Software"
}
}'
https://api.razorpay.com/v1/virtual_accounts
Postman Collection Item JSON
{
"name": "Create a Virtual Account",
"request": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"receivers\": {\n \"types\": [\n \"bank_account\"\n ]\n },\n \"allowed_payers\": [\n {\n \"type\": \"bank_account\",\n \"bank_account\": {\n \"ifsc\": \"UTIB0000013\",\n \"account_number\": \"914010012345679\"\n }\n },\n {\n \"type\": \"bank_account\",\n \"bank_account\": {\n \"ifsc\": \"UTIB0000014\",\n \"account_number\": \"914010012345680\"\n }\n }\n ],\n \"description\": \"Virtual Account created for Raftar Soft\",\n \"customer_id\": \"cust_CaVDm8eDRSXYME\",//Replace customer_id\n \"close_by\": 1981615838,\n \"notes\": {\n \"project_name\": \"Banking Software\"\n }\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "https://api.razorpay.com/v1/virtual_accounts",
"protocol": "https",
"host": [
"api",
"razorpay",
"com"
],
"path": [
"v1",
"virtual_accounts"
]
},
"description": "You can create a virtual account using this <a href=\"https://razorpay.com/docs/api/smart-collect-tpv/#create-virtual-account\" target=\"_blank\">API</a>."
},
"response": [
]
}