cURL
curl --request POST \
--url https://apay.caibo.digital/payment-requests \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"amount": 1,
"unit": "<string>",
"id": 123,
"ownerId": 123,
"userId": 123,
"recipientName": "<string>",
"transactionId": 123,
"transactionNumber": "<string>",
"payerCountry": "<string>",
"referenceId": "<string>",
"notes": "<string>",
"link": "<string>",
"createDate": "2023-11-07T05:31:56Z",
"clientId": 123,
"clientName": "<string>",
"clientEmail": "<string>",
"clientAddress": "<string>",
"clientPhone": "<string>",
"clientMemberId": "<string>",
"notifyUrl": "<string>",
"successUrl": "<string>",
"failureUrl": "<string>",
"originDomain": "<string>",
"chargedBack": true,
"feeAmount": 123,
"grossAmount": 123,
"netAmount": 123,
"transactionCurrency": "<string>",
"exchangeRate": 123,
"cardBin": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"cardLastDigits": "<string>",
"sumSubApplicantId": "<string>",
"threeDs": true,
"logMessage": "<string>",
"logTransactionId": "<string>",
"logPayerCountry": "<string>",
"logCreateDate": "2023-11-07T05:31:56Z",
"lastLog": {
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": true,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": true,
"isPendingFallback": true,
"createDate": "2023-11-07T05:31:56Z"
},
"logs": [
{
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": true,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": true,
"isPendingFallback": true,
"createDate": "2023-11-07T05:31:56Z"
}
],
"routeRuleId": 123,
"payerName": "<string>",
"payerEmail": "<string>",
"isFallback": true,
"isPendingFallback": true,
"isH2h": true,
"isDelayedApproval": true,
"isPremiumCardBin": true
}
'import requests
url = "https://apay.caibo.digital/payment-requests"
payload = {
"amount": 1,
"unit": "<string>",
"id": 123,
"ownerId": 123,
"userId": 123,
"recipientName": "<string>",
"transactionId": 123,
"transactionNumber": "<string>",
"payerCountry": "<string>",
"referenceId": "<string>",
"notes": "<string>",
"link": "<string>",
"createDate": "2023-11-07T05:31:56Z",
"clientId": 123,
"clientName": "<string>",
"clientEmail": "<string>",
"clientAddress": "<string>",
"clientPhone": "<string>",
"clientMemberId": "<string>",
"notifyUrl": "<string>",
"successUrl": "<string>",
"failureUrl": "<string>",
"originDomain": "<string>",
"chargedBack": True,
"feeAmount": 123,
"grossAmount": 123,
"netAmount": 123,
"transactionCurrency": "<string>",
"exchangeRate": 123,
"cardBin": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"cardLastDigits": "<string>",
"sumSubApplicantId": "<string>",
"threeDs": True,
"logMessage": "<string>",
"logTransactionId": "<string>",
"logPayerCountry": "<string>",
"logCreateDate": "2023-11-07T05:31:56Z",
"lastLog": {
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": True,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": True,
"isPendingFallback": True,
"createDate": "2023-11-07T05:31:56Z"
},
"logs": [
{
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": True,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": True,
"isPendingFallback": True,
"createDate": "2023-11-07T05:31:56Z"
}
],
"routeRuleId": 123,
"payerName": "<string>",
"payerEmail": "<string>",
"isFallback": True,
"isPendingFallback": True,
"isH2h": True,
"isDelayedApproval": True,
"isPremiumCardBin": True
}
headers = {"Content-Type": "application/json-patch+json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
amount: 1,
unit: '<string>',
id: 123,
ownerId: 123,
userId: 123,
recipientName: '<string>',
transactionId: 123,
transactionNumber: '<string>',
payerCountry: '<string>',
referenceId: '<string>',
notes: '<string>',
link: '<string>',
createDate: '2023-11-07T05:31:56Z',
clientId: 123,
clientName: '<string>',
clientEmail: '<string>',
clientAddress: '<string>',
clientPhone: '<string>',
clientMemberId: '<string>',
notifyUrl: '<string>',
successUrl: '<string>',
failureUrl: '<string>',
originDomain: '<string>',
chargedBack: true,
feeAmount: 123,
grossAmount: 123,
netAmount: 123,
transactionCurrency: '<string>',
exchangeRate: 123,
cardBin: '<string>',
device: '<string>',
browser: '<string>',
osName: '<string>',
cardLastDigits: '<string>',
sumSubApplicantId: '<string>',
threeDs: true,
logMessage: '<string>',
logTransactionId: '<string>',
logPayerCountry: '<string>',
logCreateDate: '2023-11-07T05:31:56Z',
lastLog: {
id: 123,
paymentRequestId: 123,
transactionId: '<string>',
code: '<string>',
message: '<string>',
payerCountry: '<string>',
threeDs: true,
cardBin: '<string>',
cardLastDigits: '<string>',
device: '<string>',
browser: '<string>',
osName: '<string>',
isFallback: true,
isPendingFallback: true,
createDate: '2023-11-07T05:31:56Z'
},
logs: [
{
id: 123,
paymentRequestId: 123,
transactionId: '<string>',
code: '<string>',
message: '<string>',
payerCountry: '<string>',
threeDs: true,
cardBin: '<string>',
cardLastDigits: '<string>',
device: '<string>',
browser: '<string>',
osName: '<string>',
isFallback: true,
isPendingFallback: true,
createDate: '2023-11-07T05:31:56Z'
}
],
routeRuleId: 123,
payerName: '<string>',
payerEmail: '<string>',
isFallback: true,
isPendingFallback: true,
isH2h: true,
isDelayedApproval: true,
isPremiumCardBin: true
})
};
fetch('https://apay.caibo.digital/payment-requests', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://apay.caibo.digital/payment-requests",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'amount' => 1,
'unit' => '<string>',
'id' => 123,
'ownerId' => 123,
'userId' => 123,
'recipientName' => '<string>',
'transactionId' => 123,
'transactionNumber' => '<string>',
'payerCountry' => '<string>',
'referenceId' => '<string>',
'notes' => '<string>',
'link' => '<string>',
'createDate' => '2023-11-07T05:31:56Z',
'clientId' => 123,
'clientName' => '<string>',
'clientEmail' => '<string>',
'clientAddress' => '<string>',
'clientPhone' => '<string>',
'clientMemberId' => '<string>',
'notifyUrl' => '<string>',
'successUrl' => '<string>',
'failureUrl' => '<string>',
'originDomain' => '<string>',
'chargedBack' => true,
'feeAmount' => 123,
'grossAmount' => 123,
'netAmount' => 123,
'transactionCurrency' => '<string>',
'exchangeRate' => 123,
'cardBin' => '<string>',
'device' => '<string>',
'browser' => '<string>',
'osName' => '<string>',
'cardLastDigits' => '<string>',
'sumSubApplicantId' => '<string>',
'threeDs' => true,
'logMessage' => '<string>',
'logTransactionId' => '<string>',
'logPayerCountry' => '<string>',
'logCreateDate' => '2023-11-07T05:31:56Z',
'lastLog' => [
'id' => 123,
'paymentRequestId' => 123,
'transactionId' => '<string>',
'code' => '<string>',
'message' => '<string>',
'payerCountry' => '<string>',
'threeDs' => true,
'cardBin' => '<string>',
'cardLastDigits' => '<string>',
'device' => '<string>',
'browser' => '<string>',
'osName' => '<string>',
'isFallback' => true,
'isPendingFallback' => true,
'createDate' => '2023-11-07T05:31:56Z'
],
'logs' => [
[
'id' => 123,
'paymentRequestId' => 123,
'transactionId' => '<string>',
'code' => '<string>',
'message' => '<string>',
'payerCountry' => '<string>',
'threeDs' => true,
'cardBin' => '<string>',
'cardLastDigits' => '<string>',
'device' => '<string>',
'browser' => '<string>',
'osName' => '<string>',
'isFallback' => true,
'isPendingFallback' => true,
'createDate' => '2023-11-07T05:31:56Z'
]
],
'routeRuleId' => 123,
'payerName' => '<string>',
'payerEmail' => '<string>',
'isFallback' => true,
'isPendingFallback' => true,
'isH2h' => true,
'isDelayedApproval' => true,
'isPremiumCardBin' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://apay.caibo.digital/payment-requests"
payload := strings.NewReader("{\n \"amount\": 1,\n \"unit\": \"<string>\",\n \"id\": 123,\n \"ownerId\": 123,\n \"userId\": 123,\n \"recipientName\": \"<string>\",\n \"transactionId\": 123,\n \"transactionNumber\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"referenceId\": \"<string>\",\n \"notes\": \"<string>\",\n \"link\": \"<string>\",\n \"createDate\": \"2023-11-07T05:31:56Z\",\n \"clientId\": 123,\n \"clientName\": \"<string>\",\n \"clientEmail\": \"<string>\",\n \"clientAddress\": \"<string>\",\n \"clientPhone\": \"<string>\",\n \"clientMemberId\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"successUrl\": \"<string>\",\n \"failureUrl\": \"<string>\",\n \"originDomain\": \"<string>\",\n \"chargedBack\": true,\n \"feeAmount\": 123,\n \"grossAmount\": 123,\n \"netAmount\": 123,\n \"transactionCurrency\": \"<string>\",\n \"exchangeRate\": 123,\n \"cardBin\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"sumSubApplicantId\": \"<string>\",\n \"threeDs\": true,\n \"logMessage\": \"<string>\",\n \"logTransactionId\": \"<string>\",\n \"logPayerCountry\": \"<string>\",\n \"logCreateDate\": \"2023-11-07T05:31:56Z\",\n \"lastLog\": {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n },\n \"logs\": [\n {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n }\n ],\n \"routeRuleId\": 123,\n \"payerName\": \"<string>\",\n \"payerEmail\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"isH2h\": true,\n \"isDelayedApproval\": true,\n \"isPremiumCardBin\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://apay.caibo.digital/payment-requests")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"amount\": 1,\n \"unit\": \"<string>\",\n \"id\": 123,\n \"ownerId\": 123,\n \"userId\": 123,\n \"recipientName\": \"<string>\",\n \"transactionId\": 123,\n \"transactionNumber\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"referenceId\": \"<string>\",\n \"notes\": \"<string>\",\n \"link\": \"<string>\",\n \"createDate\": \"2023-11-07T05:31:56Z\",\n \"clientId\": 123,\n \"clientName\": \"<string>\",\n \"clientEmail\": \"<string>\",\n \"clientAddress\": \"<string>\",\n \"clientPhone\": \"<string>\",\n \"clientMemberId\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"successUrl\": \"<string>\",\n \"failureUrl\": \"<string>\",\n \"originDomain\": \"<string>\",\n \"chargedBack\": true,\n \"feeAmount\": 123,\n \"grossAmount\": 123,\n \"netAmount\": 123,\n \"transactionCurrency\": \"<string>\",\n \"exchangeRate\": 123,\n \"cardBin\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"sumSubApplicantId\": \"<string>\",\n \"threeDs\": true,\n \"logMessage\": \"<string>\",\n \"logTransactionId\": \"<string>\",\n \"logPayerCountry\": \"<string>\",\n \"logCreateDate\": \"2023-11-07T05:31:56Z\",\n \"lastLog\": {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n },\n \"logs\": [\n {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n }\n ],\n \"routeRuleId\": 123,\n \"payerName\": \"<string>\",\n \"payerEmail\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"isH2h\": true,\n \"isDelayedApproval\": true,\n \"isPremiumCardBin\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://apay.caibo.digital/payment-requests")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"amount\": 1,\n \"unit\": \"<string>\",\n \"id\": 123,\n \"ownerId\": 123,\n \"userId\": 123,\n \"recipientName\": \"<string>\",\n \"transactionId\": 123,\n \"transactionNumber\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"referenceId\": \"<string>\",\n \"notes\": \"<string>\",\n \"link\": \"<string>\",\n \"createDate\": \"2023-11-07T05:31:56Z\",\n \"clientId\": 123,\n \"clientName\": \"<string>\",\n \"clientEmail\": \"<string>\",\n \"clientAddress\": \"<string>\",\n \"clientPhone\": \"<string>\",\n \"clientMemberId\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"successUrl\": \"<string>\",\n \"failureUrl\": \"<string>\",\n \"originDomain\": \"<string>\",\n \"chargedBack\": true,\n \"feeAmount\": 123,\n \"grossAmount\": 123,\n \"netAmount\": 123,\n \"transactionCurrency\": \"<string>\",\n \"exchangeRate\": 123,\n \"cardBin\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"sumSubApplicantId\": \"<string>\",\n \"threeDs\": true,\n \"logMessage\": \"<string>\",\n \"logTransactionId\": \"<string>\",\n \"logPayerCountry\": \"<string>\",\n \"logCreateDate\": \"2023-11-07T05:31:56Z\",\n \"lastLog\": {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n },\n \"logs\": [\n {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n }\n ],\n \"routeRuleId\": 123,\n \"payerName\": \"<string>\",\n \"payerEmail\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"isH2h\": true,\n \"isDelayedApproval\": true,\n \"isPremiumCardBin\": true\n}"
response = http.request(request)
puts response.read_body{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>"
}Payment Requests
Payment Request
Create payment requests using the Caibo IPG API with comprehensive parameter support and flexible payment options.
POST
/
payment-requests
cURL
curl --request POST \
--url https://apay.caibo.digital/payment-requests \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"amount": 1,
"unit": "<string>",
"id": 123,
"ownerId": 123,
"userId": 123,
"recipientName": "<string>",
"transactionId": 123,
"transactionNumber": "<string>",
"payerCountry": "<string>",
"referenceId": "<string>",
"notes": "<string>",
"link": "<string>",
"createDate": "2023-11-07T05:31:56Z",
"clientId": 123,
"clientName": "<string>",
"clientEmail": "<string>",
"clientAddress": "<string>",
"clientPhone": "<string>",
"clientMemberId": "<string>",
"notifyUrl": "<string>",
"successUrl": "<string>",
"failureUrl": "<string>",
"originDomain": "<string>",
"chargedBack": true,
"feeAmount": 123,
"grossAmount": 123,
"netAmount": 123,
"transactionCurrency": "<string>",
"exchangeRate": 123,
"cardBin": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"cardLastDigits": "<string>",
"sumSubApplicantId": "<string>",
"threeDs": true,
"logMessage": "<string>",
"logTransactionId": "<string>",
"logPayerCountry": "<string>",
"logCreateDate": "2023-11-07T05:31:56Z",
"lastLog": {
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": true,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": true,
"isPendingFallback": true,
"createDate": "2023-11-07T05:31:56Z"
},
"logs": [
{
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": true,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": true,
"isPendingFallback": true,
"createDate": "2023-11-07T05:31:56Z"
}
],
"routeRuleId": 123,
"payerName": "<string>",
"payerEmail": "<string>",
"isFallback": true,
"isPendingFallback": true,
"isH2h": true,
"isDelayedApproval": true,
"isPremiumCardBin": true
}
'import requests
url = "https://apay.caibo.digital/payment-requests"
payload = {
"amount": 1,
"unit": "<string>",
"id": 123,
"ownerId": 123,
"userId": 123,
"recipientName": "<string>",
"transactionId": 123,
"transactionNumber": "<string>",
"payerCountry": "<string>",
"referenceId": "<string>",
"notes": "<string>",
"link": "<string>",
"createDate": "2023-11-07T05:31:56Z",
"clientId": 123,
"clientName": "<string>",
"clientEmail": "<string>",
"clientAddress": "<string>",
"clientPhone": "<string>",
"clientMemberId": "<string>",
"notifyUrl": "<string>",
"successUrl": "<string>",
"failureUrl": "<string>",
"originDomain": "<string>",
"chargedBack": True,
"feeAmount": 123,
"grossAmount": 123,
"netAmount": 123,
"transactionCurrency": "<string>",
"exchangeRate": 123,
"cardBin": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"cardLastDigits": "<string>",
"sumSubApplicantId": "<string>",
"threeDs": True,
"logMessage": "<string>",
"logTransactionId": "<string>",
"logPayerCountry": "<string>",
"logCreateDate": "2023-11-07T05:31:56Z",
"lastLog": {
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": True,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": True,
"isPendingFallback": True,
"createDate": "2023-11-07T05:31:56Z"
},
"logs": [
{
"id": 123,
"paymentRequestId": 123,
"transactionId": "<string>",
"code": "<string>",
"message": "<string>",
"payerCountry": "<string>",
"threeDs": True,
"cardBin": "<string>",
"cardLastDigits": "<string>",
"device": "<string>",
"browser": "<string>",
"osName": "<string>",
"isFallback": True,
"isPendingFallback": True,
"createDate": "2023-11-07T05:31:56Z"
}
],
"routeRuleId": 123,
"payerName": "<string>",
"payerEmail": "<string>",
"isFallback": True,
"isPendingFallback": True,
"isH2h": True,
"isDelayedApproval": True,
"isPremiumCardBin": True
}
headers = {"Content-Type": "application/json-patch+json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
amount: 1,
unit: '<string>',
id: 123,
ownerId: 123,
userId: 123,
recipientName: '<string>',
transactionId: 123,
transactionNumber: '<string>',
payerCountry: '<string>',
referenceId: '<string>',
notes: '<string>',
link: '<string>',
createDate: '2023-11-07T05:31:56Z',
clientId: 123,
clientName: '<string>',
clientEmail: '<string>',
clientAddress: '<string>',
clientPhone: '<string>',
clientMemberId: '<string>',
notifyUrl: '<string>',
successUrl: '<string>',
failureUrl: '<string>',
originDomain: '<string>',
chargedBack: true,
feeAmount: 123,
grossAmount: 123,
netAmount: 123,
transactionCurrency: '<string>',
exchangeRate: 123,
cardBin: '<string>',
device: '<string>',
browser: '<string>',
osName: '<string>',
cardLastDigits: '<string>',
sumSubApplicantId: '<string>',
threeDs: true,
logMessage: '<string>',
logTransactionId: '<string>',
logPayerCountry: '<string>',
logCreateDate: '2023-11-07T05:31:56Z',
lastLog: {
id: 123,
paymentRequestId: 123,
transactionId: '<string>',
code: '<string>',
message: '<string>',
payerCountry: '<string>',
threeDs: true,
cardBin: '<string>',
cardLastDigits: '<string>',
device: '<string>',
browser: '<string>',
osName: '<string>',
isFallback: true,
isPendingFallback: true,
createDate: '2023-11-07T05:31:56Z'
},
logs: [
{
id: 123,
paymentRequestId: 123,
transactionId: '<string>',
code: '<string>',
message: '<string>',
payerCountry: '<string>',
threeDs: true,
cardBin: '<string>',
cardLastDigits: '<string>',
device: '<string>',
browser: '<string>',
osName: '<string>',
isFallback: true,
isPendingFallback: true,
createDate: '2023-11-07T05:31:56Z'
}
],
routeRuleId: 123,
payerName: '<string>',
payerEmail: '<string>',
isFallback: true,
isPendingFallback: true,
isH2h: true,
isDelayedApproval: true,
isPremiumCardBin: true
})
};
fetch('https://apay.caibo.digital/payment-requests', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://apay.caibo.digital/payment-requests",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'amount' => 1,
'unit' => '<string>',
'id' => 123,
'ownerId' => 123,
'userId' => 123,
'recipientName' => '<string>',
'transactionId' => 123,
'transactionNumber' => '<string>',
'payerCountry' => '<string>',
'referenceId' => '<string>',
'notes' => '<string>',
'link' => '<string>',
'createDate' => '2023-11-07T05:31:56Z',
'clientId' => 123,
'clientName' => '<string>',
'clientEmail' => '<string>',
'clientAddress' => '<string>',
'clientPhone' => '<string>',
'clientMemberId' => '<string>',
'notifyUrl' => '<string>',
'successUrl' => '<string>',
'failureUrl' => '<string>',
'originDomain' => '<string>',
'chargedBack' => true,
'feeAmount' => 123,
'grossAmount' => 123,
'netAmount' => 123,
'transactionCurrency' => '<string>',
'exchangeRate' => 123,
'cardBin' => '<string>',
'device' => '<string>',
'browser' => '<string>',
'osName' => '<string>',
'cardLastDigits' => '<string>',
'sumSubApplicantId' => '<string>',
'threeDs' => true,
'logMessage' => '<string>',
'logTransactionId' => '<string>',
'logPayerCountry' => '<string>',
'logCreateDate' => '2023-11-07T05:31:56Z',
'lastLog' => [
'id' => 123,
'paymentRequestId' => 123,
'transactionId' => '<string>',
'code' => '<string>',
'message' => '<string>',
'payerCountry' => '<string>',
'threeDs' => true,
'cardBin' => '<string>',
'cardLastDigits' => '<string>',
'device' => '<string>',
'browser' => '<string>',
'osName' => '<string>',
'isFallback' => true,
'isPendingFallback' => true,
'createDate' => '2023-11-07T05:31:56Z'
],
'logs' => [
[
'id' => 123,
'paymentRequestId' => 123,
'transactionId' => '<string>',
'code' => '<string>',
'message' => '<string>',
'payerCountry' => '<string>',
'threeDs' => true,
'cardBin' => '<string>',
'cardLastDigits' => '<string>',
'device' => '<string>',
'browser' => '<string>',
'osName' => '<string>',
'isFallback' => true,
'isPendingFallback' => true,
'createDate' => '2023-11-07T05:31:56Z'
]
],
'routeRuleId' => 123,
'payerName' => '<string>',
'payerEmail' => '<string>',
'isFallback' => true,
'isPendingFallback' => true,
'isH2h' => true,
'isDelayedApproval' => true,
'isPremiumCardBin' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://apay.caibo.digital/payment-requests"
payload := strings.NewReader("{\n \"amount\": 1,\n \"unit\": \"<string>\",\n \"id\": 123,\n \"ownerId\": 123,\n \"userId\": 123,\n \"recipientName\": \"<string>\",\n \"transactionId\": 123,\n \"transactionNumber\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"referenceId\": \"<string>\",\n \"notes\": \"<string>\",\n \"link\": \"<string>\",\n \"createDate\": \"2023-11-07T05:31:56Z\",\n \"clientId\": 123,\n \"clientName\": \"<string>\",\n \"clientEmail\": \"<string>\",\n \"clientAddress\": \"<string>\",\n \"clientPhone\": \"<string>\",\n \"clientMemberId\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"successUrl\": \"<string>\",\n \"failureUrl\": \"<string>\",\n \"originDomain\": \"<string>\",\n \"chargedBack\": true,\n \"feeAmount\": 123,\n \"grossAmount\": 123,\n \"netAmount\": 123,\n \"transactionCurrency\": \"<string>\",\n \"exchangeRate\": 123,\n \"cardBin\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"sumSubApplicantId\": \"<string>\",\n \"threeDs\": true,\n \"logMessage\": \"<string>\",\n \"logTransactionId\": \"<string>\",\n \"logPayerCountry\": \"<string>\",\n \"logCreateDate\": \"2023-11-07T05:31:56Z\",\n \"lastLog\": {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n },\n \"logs\": [\n {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n }\n ],\n \"routeRuleId\": 123,\n \"payerName\": \"<string>\",\n \"payerEmail\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"isH2h\": true,\n \"isDelayedApproval\": true,\n \"isPremiumCardBin\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://apay.caibo.digital/payment-requests")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"amount\": 1,\n \"unit\": \"<string>\",\n \"id\": 123,\n \"ownerId\": 123,\n \"userId\": 123,\n \"recipientName\": \"<string>\",\n \"transactionId\": 123,\n \"transactionNumber\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"referenceId\": \"<string>\",\n \"notes\": \"<string>\",\n \"link\": \"<string>\",\n \"createDate\": \"2023-11-07T05:31:56Z\",\n \"clientId\": 123,\n \"clientName\": \"<string>\",\n \"clientEmail\": \"<string>\",\n \"clientAddress\": \"<string>\",\n \"clientPhone\": \"<string>\",\n \"clientMemberId\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"successUrl\": \"<string>\",\n \"failureUrl\": \"<string>\",\n \"originDomain\": \"<string>\",\n \"chargedBack\": true,\n \"feeAmount\": 123,\n \"grossAmount\": 123,\n \"netAmount\": 123,\n \"transactionCurrency\": \"<string>\",\n \"exchangeRate\": 123,\n \"cardBin\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"sumSubApplicantId\": \"<string>\",\n \"threeDs\": true,\n \"logMessage\": \"<string>\",\n \"logTransactionId\": \"<string>\",\n \"logPayerCountry\": \"<string>\",\n \"logCreateDate\": \"2023-11-07T05:31:56Z\",\n \"lastLog\": {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n },\n \"logs\": [\n {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n }\n ],\n \"routeRuleId\": 123,\n \"payerName\": \"<string>\",\n \"payerEmail\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"isH2h\": true,\n \"isDelayedApproval\": true,\n \"isPremiumCardBin\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://apay.caibo.digital/payment-requests")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"amount\": 1,\n \"unit\": \"<string>\",\n \"id\": 123,\n \"ownerId\": 123,\n \"userId\": 123,\n \"recipientName\": \"<string>\",\n \"transactionId\": 123,\n \"transactionNumber\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"referenceId\": \"<string>\",\n \"notes\": \"<string>\",\n \"link\": \"<string>\",\n \"createDate\": \"2023-11-07T05:31:56Z\",\n \"clientId\": 123,\n \"clientName\": \"<string>\",\n \"clientEmail\": \"<string>\",\n \"clientAddress\": \"<string>\",\n \"clientPhone\": \"<string>\",\n \"clientMemberId\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"successUrl\": \"<string>\",\n \"failureUrl\": \"<string>\",\n \"originDomain\": \"<string>\",\n \"chargedBack\": true,\n \"feeAmount\": 123,\n \"grossAmount\": 123,\n \"netAmount\": 123,\n \"transactionCurrency\": \"<string>\",\n \"exchangeRate\": 123,\n \"cardBin\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"sumSubApplicantId\": \"<string>\",\n \"threeDs\": true,\n \"logMessage\": \"<string>\",\n \"logTransactionId\": \"<string>\",\n \"logPayerCountry\": \"<string>\",\n \"logCreateDate\": \"2023-11-07T05:31:56Z\",\n \"lastLog\": {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n },\n \"logs\": [\n {\n \"id\": 123,\n \"paymentRequestId\": 123,\n \"transactionId\": \"<string>\",\n \"code\": \"<string>\",\n \"message\": \"<string>\",\n \"payerCountry\": \"<string>\",\n \"threeDs\": true,\n \"cardBin\": \"<string>\",\n \"cardLastDigits\": \"<string>\",\n \"device\": \"<string>\",\n \"browser\": \"<string>\",\n \"osName\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"createDate\": \"2023-11-07T05:31:56Z\"\n }\n ],\n \"routeRuleId\": 123,\n \"payerName\": \"<string>\",\n \"payerEmail\": \"<string>\",\n \"isFallback\": true,\n \"isPendingFallback\": true,\n \"isH2h\": true,\n \"isDelayedApproval\": true,\n \"isPremiumCardBin\": true\n}"
response = http.request(request)
puts response.read_body{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>",
"instance": "<string>"
}Overview
The Payment Request API allows you to create payment requests that customers can complete using various payment methods. This is the standard integration method for most merchants.Create Payment Request
Use this endpoint to create a new payment request with specified amount, currency, and callback URLs.Key Features
- Multiple Payment Methods: Support for credit cards, digital wallets, and alternative payment methods
- Flexible Callbacks: Configure success, failure, and notification URLs
- Reference Tracking: Include your own reference ID for order tracking
- Multi-Currency: Support for various currencies with automatic conversion
Request Parameters
The payment request requires:- amount: Payment amount (required)
- unit: Currency code (required)
- referenceId: Your internal order/transaction ID (optional)
- notifyUrl: Webhook URL for payment notifications (optional)
- successUrl: Redirect URL for successful payments (optional)
- failureUrl: Redirect URL for failed payments (optional)
Response
Upon successful creation, you’ll receive:- Payment request ID
- Payment link for customer redirect
- Status and tracking information
Next Steps
After creating a payment request:- Redirect customer to the payment link
- Handle webhook notifications for status updates
- Process success/failure redirects
- Query payment status as needed
Query Parameters
Available options:
0, 1, 2, 3 Body
application/json-patch+jsonapplication/jsontext/jsonapplication/*+json
Required range:
x >= 0Maximum string length:
20Available options:
0, 1, 2, 3, 4, 5 Maximum string length:
100Maximum string length:
100Maximum string length:
512Show child attributes
Show child attributes
Maximum string length:
2048Maximum string length:
2048Maximum string length:
2048Available options:
0, 1, 2, 3 Available options:
0, 1, 2, 3 Available options:
0, 1, 2, 3 Available options:
0, 11, 12, 13, 14, 15, 16, 17, 18, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59 Available options:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20 Available options:
0, 11, 12, 13, 14, 15, 16, 17, 18, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59 Show child attributes
Show child attributes
Show child attributes
Show child attributes
Available options:
0, 1, 2 Response
OK
⌘I

