Payment Gateway Setup
curl --request POST \
--url https://api.unibee.dev/merchant/gateway/setup \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"gatewayName": "<string>",
"companyIssuer": {
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueLogo": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>"
},
"currencyExchange": [
{
"exchange_rate": 123,
"from_currency": "<string>",
"to_currency": "<string>"
}
],
"displayName": "<string>",
"gatewayIcons": [
[
"<string>"
]
],
"gatewayKey": "<string>",
"gatewayPaymentTypes": [
"<string>"
],
"gatewaySecret": "<string>",
"metadata": {},
"sort": 123,
"subGateway": "<string>"
}
'import requests
url = "https://api.unibee.dev/merchant/gateway/setup"
payload = {
"gatewayName": "<string>",
"companyIssuer": {
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueLogo": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>"
},
"currencyExchange": [
{
"exchange_rate": 123,
"from_currency": "<string>",
"to_currency": "<string>"
}
],
"displayName": "<string>",
"gatewayIcons": [["<string>"]],
"gatewayKey": "<string>",
"gatewayPaymentTypes": ["<string>"],
"gatewaySecret": "<string>",
"metadata": {},
"sort": 123,
"subGateway": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
gatewayName: '<string>',
companyIssuer: {
issueAddress: '<string>',
issueCompanyName: '<string>',
issueLogo: '<string>',
issueRegNumber: '<string>',
issueVatNumber: '<string>'
},
currencyExchange: [{exchange_rate: 123, from_currency: '<string>', to_currency: '<string>'}],
displayName: '<string>',
gatewayIcons: [['<string>']],
gatewayKey: '<string>',
gatewayPaymentTypes: ['<string>'],
gatewaySecret: '<string>',
metadata: {},
sort: 123,
subGateway: '<string>'
})
};
fetch('https://api.unibee.dev/merchant/gateway/setup', 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://api.unibee.dev/merchant/gateway/setup",
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([
'gatewayName' => '<string>',
'companyIssuer' => [
'issueAddress' => '<string>',
'issueCompanyName' => '<string>',
'issueLogo' => '<string>',
'issueRegNumber' => '<string>',
'issueVatNumber' => '<string>'
],
'currencyExchange' => [
[
'exchange_rate' => 123,
'from_currency' => '<string>',
'to_currency' => '<string>'
]
],
'displayName' => '<string>',
'gatewayIcons' => [
[
'<string>'
]
],
'gatewayKey' => '<string>',
'gatewayPaymentTypes' => [
'<string>'
],
'gatewaySecret' => '<string>',
'metadata' => [
],
'sort' => 123,
'subGateway' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/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://api.unibee.dev/merchant/gateway/setup"
payload := strings.NewReader("{\n \"gatewayName\": \"<string>\",\n \"companyIssuer\": {\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueLogo\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\"\n },\n \"currencyExchange\": [\n {\n \"exchange_rate\": 123,\n \"from_currency\": \"<string>\",\n \"to_currency\": \"<string>\"\n }\n ],\n \"displayName\": \"<string>\",\n \"gatewayIcons\": [\n [\n \"<string>\"\n ]\n ],\n \"gatewayKey\": \"<string>\",\n \"gatewayPaymentTypes\": [\n \"<string>\"\n ],\n \"gatewaySecret\": \"<string>\",\n \"metadata\": {},\n \"sort\": 123,\n \"subGateway\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/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://api.unibee.dev/merchant/gateway/setup")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"gatewayName\": \"<string>\",\n \"companyIssuer\": {\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueLogo\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\"\n },\n \"currencyExchange\": [\n {\n \"exchange_rate\": 123,\n \"from_currency\": \"<string>\",\n \"to_currency\": \"<string>\"\n }\n ],\n \"displayName\": \"<string>\",\n \"gatewayIcons\": [\n [\n \"<string>\"\n ]\n ],\n \"gatewayKey\": \"<string>\",\n \"gatewayPaymentTypes\": [\n \"<string>\"\n ],\n \"gatewaySecret\": \"<string>\",\n \"metadata\": {},\n \"sort\": 123,\n \"subGateway\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.unibee.dev/merchant/gateway/setup")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"gatewayName\": \"<string>\",\n \"companyIssuer\": {\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueLogo\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\"\n },\n \"currencyExchange\": [\n {\n \"exchange_rate\": 123,\n \"from_currency\": \"<string>\",\n \"to_currency\": \"<string>\"\n }\n ],\n \"displayName\": \"<string>\",\n \"gatewayIcons\": [\n [\n \"<string>\"\n ]\n ],\n \"gatewayKey\": \"<string>\",\n \"gatewayPaymentTypes\": [\n \"<string>\"\n ],\n \"gatewaySecret\": \"<string>\",\n \"metadata\": {},\n \"sort\": 123,\n \"subGateway\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"data": {
"gateway": {
"IsSetupFinished": true,
"archive": true,
"autoChargeEnabled": true,
"bank": {
"accountHolder": "<string>",
"address": "<string>",
"ABARoutingNumber": "<string>",
"CNAPS": "<string>",
"Remarks": "<string>",
"accountNumber": "<string>",
"bankName": "<string>",
"bic": "<string>",
"bsbCode": "<string>",
"iban": "<string>",
"swiftCode": "<string>"
},
"companyIssuer": {
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueLogo": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>"
},
"countryConfig": {},
"createTime": 123,
"currency": "<string>",
"currencyExchange": [
{
"exchange_rate": 123,
"from_currency": "<string>",
"to_currency": "<string>"
}
],
"currencyExchangeEnabled": true,
"defaultGatewayPaymentType": {
"autoCharge": true,
"category": "<string>",
"countryName": "<string>",
"name": "<string>",
"paymentType": "<string>",
"supportCurrencies": [
"<string>"
]
},
"description": "<string>",
"displayName": "<string>",
"gatewayIcons": [
"<string>"
],
"gatewayId": 123,
"gatewayKey": "<string>",
"gatewayLogo": "<string>",
"gatewayName": "<string>",
"gatewayPaymentTypes": [
{
"autoCharge": true,
"category": "<string>",
"countryName": "<string>",
"name": "<string>",
"paymentType": "<string>",
"supportCurrencies": [
"<string>"
]
}
],
"gatewaySecret": "<string>",
"gatewayType": 123,
"gatewayWebhookIntegrationLink": "<string>",
"gatewayWebsiteLink": "<string>",
"isDefault": true,
"metadata": {},
"minimumAmount": 123,
"name": "<string>",
"privateSecretName": "<string>",
"publicKeyName": "<string>",
"setupGatewayPaymentTypes": [
{
"autoCharge": true,
"category": "<string>",
"countryName": "<string>",
"name": "<string>",
"paymentType": "<string>",
"supportCurrencies": [
"<string>"
]
}
],
"sort": 123,
"subGateway": "<string>",
"subGatewayName": "<string>",
"webhookEndpointUrl": "<string>",
"webhookSecret": "<string>"
}
},
"merchantId": 123,
"message": "<string>",
"redirect": "<string>",
"requestId": "<string>"
}Gateway
Payment Gateway Setup
Setup Payment gateway
POST
/
merchant
/
gateway
/
setup
Payment Gateway Setup
curl --request POST \
--url https://api.unibee.dev/merchant/gateway/setup \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"gatewayName": "<string>",
"companyIssuer": {
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueLogo": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>"
},
"currencyExchange": [
{
"exchange_rate": 123,
"from_currency": "<string>",
"to_currency": "<string>"
}
],
"displayName": "<string>",
"gatewayIcons": [
[
"<string>"
]
],
"gatewayKey": "<string>",
"gatewayPaymentTypes": [
"<string>"
],
"gatewaySecret": "<string>",
"metadata": {},
"sort": 123,
"subGateway": "<string>"
}
'import requests
url = "https://api.unibee.dev/merchant/gateway/setup"
payload = {
"gatewayName": "<string>",
"companyIssuer": {
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueLogo": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>"
},
"currencyExchange": [
{
"exchange_rate": 123,
"from_currency": "<string>",
"to_currency": "<string>"
}
],
"displayName": "<string>",
"gatewayIcons": [["<string>"]],
"gatewayKey": "<string>",
"gatewayPaymentTypes": ["<string>"],
"gatewaySecret": "<string>",
"metadata": {},
"sort": 123,
"subGateway": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
gatewayName: '<string>',
companyIssuer: {
issueAddress: '<string>',
issueCompanyName: '<string>',
issueLogo: '<string>',
issueRegNumber: '<string>',
issueVatNumber: '<string>'
},
currencyExchange: [{exchange_rate: 123, from_currency: '<string>', to_currency: '<string>'}],
displayName: '<string>',
gatewayIcons: [['<string>']],
gatewayKey: '<string>',
gatewayPaymentTypes: ['<string>'],
gatewaySecret: '<string>',
metadata: {},
sort: 123,
subGateway: '<string>'
})
};
fetch('https://api.unibee.dev/merchant/gateway/setup', 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://api.unibee.dev/merchant/gateway/setup",
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([
'gatewayName' => '<string>',
'companyIssuer' => [
'issueAddress' => '<string>',
'issueCompanyName' => '<string>',
'issueLogo' => '<string>',
'issueRegNumber' => '<string>',
'issueVatNumber' => '<string>'
],
'currencyExchange' => [
[
'exchange_rate' => 123,
'from_currency' => '<string>',
'to_currency' => '<string>'
]
],
'displayName' => '<string>',
'gatewayIcons' => [
[
'<string>'
]
],
'gatewayKey' => '<string>',
'gatewayPaymentTypes' => [
'<string>'
],
'gatewaySecret' => '<string>',
'metadata' => [
],
'sort' => 123,
'subGateway' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/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://api.unibee.dev/merchant/gateway/setup"
payload := strings.NewReader("{\n \"gatewayName\": \"<string>\",\n \"companyIssuer\": {\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueLogo\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\"\n },\n \"currencyExchange\": [\n {\n \"exchange_rate\": 123,\n \"from_currency\": \"<string>\",\n \"to_currency\": \"<string>\"\n }\n ],\n \"displayName\": \"<string>\",\n \"gatewayIcons\": [\n [\n \"<string>\"\n ]\n ],\n \"gatewayKey\": \"<string>\",\n \"gatewayPaymentTypes\": [\n \"<string>\"\n ],\n \"gatewaySecret\": \"<string>\",\n \"metadata\": {},\n \"sort\": 123,\n \"subGateway\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/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://api.unibee.dev/merchant/gateway/setup")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"gatewayName\": \"<string>\",\n \"companyIssuer\": {\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueLogo\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\"\n },\n \"currencyExchange\": [\n {\n \"exchange_rate\": 123,\n \"from_currency\": \"<string>\",\n \"to_currency\": \"<string>\"\n }\n ],\n \"displayName\": \"<string>\",\n \"gatewayIcons\": [\n [\n \"<string>\"\n ]\n ],\n \"gatewayKey\": \"<string>\",\n \"gatewayPaymentTypes\": [\n \"<string>\"\n ],\n \"gatewaySecret\": \"<string>\",\n \"metadata\": {},\n \"sort\": 123,\n \"subGateway\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.unibee.dev/merchant/gateway/setup")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"gatewayName\": \"<string>\",\n \"companyIssuer\": {\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueLogo\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\"\n },\n \"currencyExchange\": [\n {\n \"exchange_rate\": 123,\n \"from_currency\": \"<string>\",\n \"to_currency\": \"<string>\"\n }\n ],\n \"displayName\": \"<string>\",\n \"gatewayIcons\": [\n [\n \"<string>\"\n ]\n ],\n \"gatewayKey\": \"<string>\",\n \"gatewayPaymentTypes\": [\n \"<string>\"\n ],\n \"gatewaySecret\": \"<string>\",\n \"metadata\": {},\n \"sort\": 123,\n \"subGateway\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"data": {
"gateway": {
"IsSetupFinished": true,
"archive": true,
"autoChargeEnabled": true,
"bank": {
"accountHolder": "<string>",
"address": "<string>",
"ABARoutingNumber": "<string>",
"CNAPS": "<string>",
"Remarks": "<string>",
"accountNumber": "<string>",
"bankName": "<string>",
"bic": "<string>",
"bsbCode": "<string>",
"iban": "<string>",
"swiftCode": "<string>"
},
"companyIssuer": {
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueLogo": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>"
},
"countryConfig": {},
"createTime": 123,
"currency": "<string>",
"currencyExchange": [
{
"exchange_rate": 123,
"from_currency": "<string>",
"to_currency": "<string>"
}
],
"currencyExchangeEnabled": true,
"defaultGatewayPaymentType": {
"autoCharge": true,
"category": "<string>",
"countryName": "<string>",
"name": "<string>",
"paymentType": "<string>",
"supportCurrencies": [
"<string>"
]
},
"description": "<string>",
"displayName": "<string>",
"gatewayIcons": [
"<string>"
],
"gatewayId": 123,
"gatewayKey": "<string>",
"gatewayLogo": "<string>",
"gatewayName": "<string>",
"gatewayPaymentTypes": [
{
"autoCharge": true,
"category": "<string>",
"countryName": "<string>",
"name": "<string>",
"paymentType": "<string>",
"supportCurrencies": [
"<string>"
]
}
],
"gatewaySecret": "<string>",
"gatewayType": 123,
"gatewayWebhookIntegrationLink": "<string>",
"gatewayWebsiteLink": "<string>",
"isDefault": true,
"metadata": {},
"minimumAmount": 123,
"name": "<string>",
"privateSecretName": "<string>",
"publicKeyName": "<string>",
"setupGatewayPaymentTypes": [
{
"autoCharge": true,
"category": "<string>",
"countryName": "<string>",
"name": "<string>",
"paymentType": "<string>",
"supportCurrencies": [
"<string>"
]
}
],
"sort": 123,
"subGateway": "<string>",
"subGatewayName": "<string>",
"webhookEndpointUrl": "<string>",
"webhookSecret": "<string>"
}
},
"merchantId": 123,
"message": "<string>",
"redirect": "<string>",
"requestId": "<string>"
}Endpoint Overview
POSThttps://api.unibee.dev/merchant/gateway/setup
Setup Payment gateway
Authorization
All UniBee Merchant API requests require authentication via API key.| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer <your_api_key> |
Content-Type | Yes | application/json (for request body) |
Parameters
Parameters for this endpoint are listed below. The schema is also shown in the Try it panel.Request body
| Name | Type | Required | Description |
|---|---|---|---|
companyIssuer | string | No | |
currencyExchange | array | No | The currency exchange for gateway payment, effect at start of payment creation when currency matched |
displayName | string | No | The displayName of payment gateway |
gatewayIcons | array | No | The icons of payment gateway |
gatewayKey | string | No | The key of payment gateway |
gatewayName | string | Yes | The name of payment gateway, stripe|paypal|changelly|unitpay|payssion|cryptadium |
gatewayPaymentTypes | array | No | Selected gateway payment types |
gatewaySecret | string | No | The secret of payment gateway |
metadata | object | No | Metadata,Map |
sort | integer | No | The sort value of payment gateway, The higher the value, the lower the ranking |
subGateway | string | No | The sub gateway of payment gateway |
Request examples
cURL
curl -X POST "https://api.unibee.dev/merchant/gateway/setup" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"companyIssuer": "",
"currencyExchange": [],
"displayName": "",
"gatewayIcons": [],
"gatewayKey": "",
"gatewayName": "",
"gatewayPaymentTypes": [],
"gatewaySecret": "",
"metadata": {},
"sort": 0,
"subGateway": ""
}'
Sandbox
curl -X POST "https://api-sandbox.unibee.top/merchant/gateway/setup" \
-H "Authorization: Bearer YOUR_SANDBOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"companyIssuer": "",
"currencyExchange": [],
"displayName": "",
"gatewayIcons": [],
"gatewayKey": "",
"gatewayName": "",
"gatewayPaymentTypes": [],
"gatewaySecret": "",
"metadata": {},
"sort": 0,
"subGateway": ""
}'
Response
Success responses return a JSON envelope withcode, data, message, redirect, and requestId. code 0 indicates success.
| Field | Type | Description |
|---|---|---|
code | integer | Response code. 0 = success |
data | object | Response payload |
data.gateway | object | |
message | string | Human-readable message |
requestId | string | Request ID for support |
Error handling
| HTTP status | Meaning |
|---|---|
| 400 | Bad request — invalid or missing parameters. Check message in the body. |
| 401 | Unauthorized — missing or invalid API key. |
| 404 | Not found — invalid path or resource. |
| 500 | Server error — retry with backoff. |
code in the response body is non-zero, check message for details. Use requestId when contacting support.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Setup Payment gateway
The name of payment gateway, stripe|paypal|changelly|unitpay|payssion|cryptadium
Show child attributes
Show child attributes
The currency exchange for gateway payment, effect at start of payment creation when currency matched
Show child attributes
Show child attributes
The displayName of payment gateway
The icons of payment gateway
The key of payment gateway
Selected gateway payment types
The secret of payment gateway
Metadata,Map
Show child attributes
Show child attributes
The sort value of payment gateway, The higher the value, the lower the ranking
The sub gateway of payment gateway
⌘I

