cURL
curl -X POST "${BASE_URL}/api/v2/trans/batchDirectPay" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
--data-raw '{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}'import json
import os
import urllib.parse
import urllib.request
base_url = os.environ["BASE_URL"].rstrip("/")
url = base_url + "/api/v2/trans/batchDirectPay"
headers = {"Accept": "application/json"}
headers["Authorization"] = "Bearer " + os.environ["ACCESS_TOKEN"]
payload = json.loads(r'''{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}''')
body = json.dumps(payload).encode("utf-8")
headers["Content-Type"] = "application/json"
request = urllib.request.Request(url, data=body, headers=headers, method="POST")
with urllib.request.urlopen(request, timeout=30) as response:
print(response.read().decode("utf-8"))
const env = (name) => {
const value = process.env[name];
if (!value) throw new Error(`Missing environment variable: ${name}`);
return value;
};
const baseUrl = env("BASE_URL").replace(/\/+$/, "");
const url = new URL(baseUrl + "/api/v2/trans/batchDirectPay");
const headers = { Accept: "application/json" };
headers.Authorization = `Bearer ${env("ACCESS_TOKEN")}`;
const payload = {
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
};
const body = JSON.stringify(payload);
headers["Content-Type"] = "application/json";
const response = await fetch(url, {
method: "POST",
headers,
body,
signal: AbortSignal.timeout(30_000),
});
console.log(await response.text());
<?php
$env = static function (string $name): string {
$value = getenv($name);
if ($value === false || $value === '') {
throw new RuntimeException("Missing environment variable: " . $name);
}
return $value;
};
$baseUrl = rtrim($env('BASE_URL'), '/');
$url = $baseUrl . "/api/v2/trans/batchDirectPay";
$headers = ['Accept: application/json'];
$headers[] = 'Authorization: Bearer ' . $env('ACCESS_TOKEN');
$body = <<<'JSON'
{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}
JSON;
$headers[] = 'Content-Type: application/json';
$curl = curl_init($url);
curl_setopt_array($curl, [
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
CURLOPT_POSTFIELDS => $body,
]);
$response = curl_exec($curl);
if ($response === false) {
$error = curl_error($curl);
curl_close($curl);
throw new RuntimeException($error);
}
curl_close($curl);
echo $response, PHP_EOL;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
"time"
)
func mustEnv(name string) string {
value := os.Getenv(name)
if value == "" { panic("Missing environment variable: " + name) }
return value
}
func main() {
baseURL := strings.TrimRight(mustEnv("BASE_URL"), "/")
endpoint := baseURL + "/api/v2/trans/batchDirectPay"
payload := `{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}`
body := strings.NewReader(payload)
req, err := http.NewRequest("POST", endpoint, body)
if err != nil { panic(err) }
req.Header.Set("Accept", "application/json")
req.Header.Set("Authorization", "Bearer " + mustEnv("ACCESS_TOKEN"))
req.Header.Set("Content-Type", "application/json")
client := &http.Client{Timeout: 30 * time.Second}
response, err := client.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, err := io.ReadAll(response.Body)
if err != nil { panic(err) }
fmt.Println(string(result))
}
import java.io.ByteArrayOutputStream;
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.time.Duration;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
public class Example {
static String requireEnv(String name) {
String value = System.getenv(name);
if (value == null || value.isEmpty()) {
throw new IllegalArgumentException("Missing environment variable: " + name);
}
return value;
}
public static void main(String[] args) throws Exception {
String baseUrl = requireEnv("BASE_URL").replaceAll("/+$", "");
String endpoint = baseUrl + "/api/v2/trans/batchDirectPay";
String payload =
"{\n" +
" \"merchant_id\": \"48290713\",\n" +
" \"transactions\": [\n" +
" {\n" +
" \"amount\": \"25.50\",\n" +
" \"merchant_order_no\": \"BB-BATCH-20300101-001\",\n" +
" \"currency\": \"AUD\",\n" +
" \"trans_func\": 3,\n" +
" \"first_name\": \"Emily\",\n" +
" \"last_name\": \"Carter\",\n" +
" \"card\": {\n" +
" \"card_number\": \"4111111111111111\",\n" +
" \"expiration_month\": \"12\",\n" +
" \"expiration_year\": \"2030\",\n" +
" \"security_code\": \"123\"\n" +
" },\n" +
" \"notify_email\": false,\n" +
" \"notify_sms\": false\n" +
" },\n" +
" {\n" +
" \"trans_func\": 5,\n" +
" \"amount\": \"12.00\",\n" +
" \"merchant_order_no\": \"BB-BATCH-20300101-002\",\n" +
" \"currency\": \"AUD\",\n" +
" \"bank_account\": {\n" +
" \"bsb\": \"062-000\",\n" +
" \"account_no\": \"618472950\",\n" +
" \"account_name\": \"Emily Carter\"\n" +
" },\n" +
" \"process_date\": \"2030-01-15\"\n" +
" }\n" +
" ]\n" +
"}";
HttpRequest.Builder builder = HttpRequest.newBuilder(URI.create(endpoint))
.timeout(Duration.ofSeconds(30))
.header("Accept", "application/json");
builder.header("Authorization", "Bearer " + requireEnv("ACCESS_TOKEN"));
builder.header("Content-Type", "application/json");
HttpRequest request = builder.method("POST", HttpRequest.BodyPublishers.ofString(payload, StandardCharsets.UTF_8)).build();
HttpClient client = HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(30)).build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8));
System.out.println(response.body());
}
}
require "net/http"
require "uri"
base_url = ENV.fetch("BASE_URL").sub(%r{/+$}, "")
uri = URI(base_url + "/api/v2/trans/batchDirectPay")
request = Net::HTTP::Post.new(uri)
request["Accept"] = "application/json"
request["Authorization"] = "Bearer " + ENV.fetch("ACCESS_TOKEN")
request["Content-Type"] = "application/json"
request.body = <<~'JSON'
{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}
JSON
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
http.open_timeout = 30
http.read_timeout = 30
puts http.request(request).body
{
"code": 0,
"message": "accepted",
"data": {
"total": 2,
"accepted": 1,
"rejected": 1,
"items": [
{
"merchant_order_no": "BB-BATCH-20300101-001",
"result": "accepted"
},
{
"merchant_order_no": "BB-BATCH-20300101-002",
"result": "rejected",
"reason": "Order already exists"
}
]
}
}交易
批量直连支付
每笔交易的参数规则
顶层提供 merchant_id 和 transactions,每批 1–100 笔。每笔交易均须提供 trans_func、amount、merchant_order_no 和 currency,再按下表填写。
| trans_func | 操作 | 每笔额外必填参数 |
|---|---|---|
| 2 | Token 支付 | card_token、first_name、last_name |
| 3 | 卡号支付 | card.card_number、card.expiration_month、card.expiration_year、card.security_code、first_name、last_name |
| 5 | 银行账户支付 | bank_account.bsb、bank_account.account_no、bank_account.account_name;本笔使用银行账户,card 不用于支付,请省略 |
批量不支持创建 Token、收银台或 3DS;is3ds、return_url 不是支持的行参数。process_date 可选,填写时须严格晚于业务时区的今天。坏行返回失败原因,好行可被受理;受理不代表扣款成功。
每次提交 1 至 100 笔,逐笔返回受理或拒绝结果。accepted 表示请求已受理,将异步处理,不代表支付成功。仅支持 trans_func=2/3/5,不支持创建 Token、收银台或 3DS。已存在订单号、批内重复订单号及无效参数会导致对应交易 rejected,不影响其他有效交易受理。即使全部 rejected,顶层仍可能 code=0;请检查逐笔结果并核对最终支付状态。
逐笔结果用于处理正常完成的批次;请求结构异常或处理异常可能导致整批失败。未收到完整逐笔结果时,请先按订单查询状态,再决定是否重试。
所有示例均为格式示例,客户、订单、卡及账户数据须替换为测试环境获准使用的数据。BASE_URL 为服务根域名,不附加 /api/v2;ACCESS_TOKEN 为 /oauth/token 返回的 access_token。日期示例为 2030 年,执行时请改为满足当前日期限制的实际日期。
POST
/
api
/
v2
/
trans
/
batchDirectPay
cURL
curl -X POST "${BASE_URL}/api/v2/trans/batchDirectPay" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
--data-raw '{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}'import json
import os
import urllib.parse
import urllib.request
base_url = os.environ["BASE_URL"].rstrip("/")
url = base_url + "/api/v2/trans/batchDirectPay"
headers = {"Accept": "application/json"}
headers["Authorization"] = "Bearer " + os.environ["ACCESS_TOKEN"]
payload = json.loads(r'''{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}''')
body = json.dumps(payload).encode("utf-8")
headers["Content-Type"] = "application/json"
request = urllib.request.Request(url, data=body, headers=headers, method="POST")
with urllib.request.urlopen(request, timeout=30) as response:
print(response.read().decode("utf-8"))
const env = (name) => {
const value = process.env[name];
if (!value) throw new Error(`Missing environment variable: ${name}`);
return value;
};
const baseUrl = env("BASE_URL").replace(/\/+$/, "");
const url = new URL(baseUrl + "/api/v2/trans/batchDirectPay");
const headers = { Accept: "application/json" };
headers.Authorization = `Bearer ${env("ACCESS_TOKEN")}`;
const payload = {
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
};
const body = JSON.stringify(payload);
headers["Content-Type"] = "application/json";
const response = await fetch(url, {
method: "POST",
headers,
body,
signal: AbortSignal.timeout(30_000),
});
console.log(await response.text());
<?php
$env = static function (string $name): string {
$value = getenv($name);
if ($value === false || $value === '') {
throw new RuntimeException("Missing environment variable: " . $name);
}
return $value;
};
$baseUrl = rtrim($env('BASE_URL'), '/');
$url = $baseUrl . "/api/v2/trans/batchDirectPay";
$headers = ['Accept: application/json'];
$headers[] = 'Authorization: Bearer ' . $env('ACCESS_TOKEN');
$body = <<<'JSON'
{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}
JSON;
$headers[] = 'Content-Type: application/json';
$curl = curl_init($url);
curl_setopt_array($curl, [
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
CURLOPT_POSTFIELDS => $body,
]);
$response = curl_exec($curl);
if ($response === false) {
$error = curl_error($curl);
curl_close($curl);
throw new RuntimeException($error);
}
curl_close($curl);
echo $response, PHP_EOL;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
"time"
)
func mustEnv(name string) string {
value := os.Getenv(name)
if value == "" { panic("Missing environment variable: " + name) }
return value
}
func main() {
baseURL := strings.TrimRight(mustEnv("BASE_URL"), "/")
endpoint := baseURL + "/api/v2/trans/batchDirectPay"
payload := `{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}`
body := strings.NewReader(payload)
req, err := http.NewRequest("POST", endpoint, body)
if err != nil { panic(err) }
req.Header.Set("Accept", "application/json")
req.Header.Set("Authorization", "Bearer " + mustEnv("ACCESS_TOKEN"))
req.Header.Set("Content-Type", "application/json")
client := &http.Client{Timeout: 30 * time.Second}
response, err := client.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, err := io.ReadAll(response.Body)
if err != nil { panic(err) }
fmt.Println(string(result))
}
import java.io.ByteArrayOutputStream;
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.time.Duration;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
public class Example {
static String requireEnv(String name) {
String value = System.getenv(name);
if (value == null || value.isEmpty()) {
throw new IllegalArgumentException("Missing environment variable: " + name);
}
return value;
}
public static void main(String[] args) throws Exception {
String baseUrl = requireEnv("BASE_URL").replaceAll("/+$", "");
String endpoint = baseUrl + "/api/v2/trans/batchDirectPay";
String payload =
"{\n" +
" \"merchant_id\": \"48290713\",\n" +
" \"transactions\": [\n" +
" {\n" +
" \"amount\": \"25.50\",\n" +
" \"merchant_order_no\": \"BB-BATCH-20300101-001\",\n" +
" \"currency\": \"AUD\",\n" +
" \"trans_func\": 3,\n" +
" \"first_name\": \"Emily\",\n" +
" \"last_name\": \"Carter\",\n" +
" \"card\": {\n" +
" \"card_number\": \"4111111111111111\",\n" +
" \"expiration_month\": \"12\",\n" +
" \"expiration_year\": \"2030\",\n" +
" \"security_code\": \"123\"\n" +
" },\n" +
" \"notify_email\": false,\n" +
" \"notify_sms\": false\n" +
" },\n" +
" {\n" +
" \"trans_func\": 5,\n" +
" \"amount\": \"12.00\",\n" +
" \"merchant_order_no\": \"BB-BATCH-20300101-002\",\n" +
" \"currency\": \"AUD\",\n" +
" \"bank_account\": {\n" +
" \"bsb\": \"062-000\",\n" +
" \"account_no\": \"618472950\",\n" +
" \"account_name\": \"Emily Carter\"\n" +
" },\n" +
" \"process_date\": \"2030-01-15\"\n" +
" }\n" +
" ]\n" +
"}";
HttpRequest.Builder builder = HttpRequest.newBuilder(URI.create(endpoint))
.timeout(Duration.ofSeconds(30))
.header("Accept", "application/json");
builder.header("Authorization", "Bearer " + requireEnv("ACCESS_TOKEN"));
builder.header("Content-Type", "application/json");
HttpRequest request = builder.method("POST", HttpRequest.BodyPublishers.ofString(payload, StandardCharsets.UTF_8)).build();
HttpClient client = HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(30)).build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8));
System.out.println(response.body());
}
}
require "net/http"
require "uri"
base_url = ENV.fetch("BASE_URL").sub(%r{/+$}, "")
uri = URI(base_url + "/api/v2/trans/batchDirectPay")
request = Net::HTTP::Post.new(uri)
request["Accept"] = "application/json"
request["Authorization"] = "Bearer " + ENV.fetch("ACCESS_TOKEN")
request["Content-Type"] = "application/json"
request.body = <<~'JSON'
{
"merchant_id": "48290713",
"transactions": [
{
"amount": "25.50",
"merchant_order_no": "BB-BATCH-20300101-001",
"currency": "AUD",
"trans_func": 3,
"first_name": "Emily",
"last_name": "Carter",
"card": {
"card_number": "4111111111111111",
"expiration_month": "12",
"expiration_year": "2030",
"security_code": "123"
},
"notify_email": false,
"notify_sms": false
},
{
"trans_func": 5,
"amount": "12.00",
"merchant_order_no": "BB-BATCH-20300101-002",
"currency": "AUD",
"bank_account": {
"bsb": "062-000",
"account_no": "618472950",
"account_name": "Emily Carter"
},
"process_date": "2030-01-15"
}
]
}
JSON
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
http.open_timeout = 30
http.read_timeout = 30
puts http.request(request).body
{
"code": 0,
"message": "accepted",
"data": {
"total": 2,
"accepted": 1,
"rejected": 1,
"items": [
{
"merchant_order_no": "BB-BATCH-20300101-001",
"result": "accepted"
},
{
"merchant_order_no": "BB-BATCH-20300101-002",
"result": "rejected",
"reason": "Order already exists"
}
]
}
}授权
OAuth2 client_credentials 授权。access_token 到期后重新获取。
请求体
application/json