Assign Card
curl --request POST \
--url https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign \
--header 'Content-Type: application/json' \
--header 'x-auth-token: <api-key>' \
--header 'x-idempotency-key: <x-idempotency-key>' \
--data '
{
"cardholder_id": "5135e6cc-28b6-4889-81dc-3b86a09e1395",
"card_number": "4096360800133951",
"card_currency": "USD",
"card_mode": "SINGLE"
}
'import requests
url = "https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign"
payload = {
"cardholder_id": "5135e6cc-28b6-4889-81dc-3b86a09e1395",
"card_number": "4096360800133951",
"card_currency": "USD",
"card_mode": "SINGLE"
}
headers = {
"x-idempotency-key": "<x-idempotency-key>",
"x-auth-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-idempotency-key': '<x-idempotency-key>',
'x-auth-token': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
cardholder_id: '5135e6cc-28b6-4889-81dc-3b86a09e1395',
card_number: '4096360800133951',
card_currency: 'USD',
card_mode: 'SINGLE'
})
};
fetch('https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign', 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-sandbox.uqpaytech.com/api/v1/issuing/cards/assign",
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([
'cardholder_id' => '5135e6cc-28b6-4889-81dc-3b86a09e1395',
'card_number' => '4096360800133951',
'card_currency' => 'USD',
'card_mode' => 'SINGLE'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-auth-token: <api-key>",
"x-idempotency-key: <x-idempotency-key>"
],
]);
$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-sandbox.uqpaytech.com/api/v1/issuing/cards/assign"
payload := strings.NewReader("{\n \"cardholder_id\": \"5135e6cc-28b6-4889-81dc-3b86a09e1395\",\n \"card_number\": \"4096360800133951\",\n \"card_currency\": \"USD\",\n \"card_mode\": \"SINGLE\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-idempotency-key", "<x-idempotency-key>")
req.Header.Add("x-auth-token", "<api-key>")
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-sandbox.uqpaytech.com/api/v1/issuing/cards/assign")
.header("x-idempotency-key", "<x-idempotency-key>")
.header("x-auth-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"cardholder_id\": \"5135e6cc-28b6-4889-81dc-3b86a09e1395\",\n \"card_number\": \"4096360800133951\",\n \"card_currency\": \"USD\",\n \"card_mode\": \"SINGLE\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-idempotency-key"] = '<x-idempotency-key>'
request["x-auth-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cardholder_id\": \"5135e6cc-28b6-4889-81dc-3b86a09e1395\",\n \"card_number\": \"4096360800133951\",\n \"card_currency\": \"USD\",\n \"card_mode\": \"SINGLE\"\n}"
response = http.request(request)
puts response.read_body{
"card_id": "c0cef051-29c5-4796-b86a-cd5b684bfad7",
"card_order_id": "c0cef051-29c5-4796-b86a-cd5ee34bfad7",
"create_time": "2024-03-21T17:17:32+08:00",
"card_status": "ACTIVE",
"order_status": "PENDING"
}Card Lifecycle
Assign Card
将实体卡或批量创建的虚拟卡绑定给持卡人。
POST
/
v1
/
issuing
/
cards
/
assign
Assign Card
curl --request POST \
--url https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign \
--header 'Content-Type: application/json' \
--header 'x-auth-token: <api-key>' \
--header 'x-idempotency-key: <x-idempotency-key>' \
--data '
{
"cardholder_id": "5135e6cc-28b6-4889-81dc-3b86a09e1395",
"card_number": "4096360800133951",
"card_currency": "USD",
"card_mode": "SINGLE"
}
'import requests
url = "https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign"
payload = {
"cardholder_id": "5135e6cc-28b6-4889-81dc-3b86a09e1395",
"card_number": "4096360800133951",
"card_currency": "USD",
"card_mode": "SINGLE"
}
headers = {
"x-idempotency-key": "<x-idempotency-key>",
"x-auth-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-idempotency-key': '<x-idempotency-key>',
'x-auth-token': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
cardholder_id: '5135e6cc-28b6-4889-81dc-3b86a09e1395',
card_number: '4096360800133951',
card_currency: 'USD',
card_mode: 'SINGLE'
})
};
fetch('https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign', 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-sandbox.uqpaytech.com/api/v1/issuing/cards/assign",
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([
'cardholder_id' => '5135e6cc-28b6-4889-81dc-3b86a09e1395',
'card_number' => '4096360800133951',
'card_currency' => 'USD',
'card_mode' => 'SINGLE'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-auth-token: <api-key>",
"x-idempotency-key: <x-idempotency-key>"
],
]);
$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-sandbox.uqpaytech.com/api/v1/issuing/cards/assign"
payload := strings.NewReader("{\n \"cardholder_id\": \"5135e6cc-28b6-4889-81dc-3b86a09e1395\",\n \"card_number\": \"4096360800133951\",\n \"card_currency\": \"USD\",\n \"card_mode\": \"SINGLE\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-idempotency-key", "<x-idempotency-key>")
req.Header.Add("x-auth-token", "<api-key>")
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-sandbox.uqpaytech.com/api/v1/issuing/cards/assign")
.header("x-idempotency-key", "<x-idempotency-key>")
.header("x-auth-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"cardholder_id\": \"5135e6cc-28b6-4889-81dc-3b86a09e1395\",\n \"card_number\": \"4096360800133951\",\n \"card_currency\": \"USD\",\n \"card_mode\": \"SINGLE\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sandbox.uqpaytech.com/api/v1/issuing/cards/assign")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-idempotency-key"] = '<x-idempotency-key>'
request["x-auth-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cardholder_id\": \"5135e6cc-28b6-4889-81dc-3b86a09e1395\",\n \"card_number\": \"4096360800133951\",\n \"card_currency\": \"USD\",\n \"card_mode\": \"SINGLE\"\n}"
response = http.request(request)
puts response.read_body{
"card_id": "c0cef051-29c5-4796-b86a-cd5b684bfad7",
"card_order_id": "c0cef051-29c5-4796-b86a-cd5ee34bfad7",
"create_time": "2024-03-21T17:17:32+08:00",
"card_status": "ACTIVE",
"order_status": "PENDING"
}授权
由 UQPAY 提供的登录 API Token。
请求头
指定代表哪个子账户发起请求。应设置为 account_id,该值可通过 List Connected Accounts 接口获取。若省略或为空,则请求以主账户身份执行。
更多信息参见 关联账户。
用于维持操作幂等性的唯一标识符(UUID),确保同一操作的重复执行不会产生意外影响或重复。它有助于在网络错误、重试或失败的情况下保持数据一致性。
请求体
application/json
持卡人的唯一标识符。
示例:
"5135e6cc-28b6-4889-81dc-3b86a09e1395"
卡号。
示例:
"4096360800133951"
分配给该卡片的币种。
示例:
"USD"
卡模式。
可用选项:
SINGLE, SHARE 示例:
"SINGLE"
绑卡元数据。绑定 Personal Visa 卡时,必须提供 card_sku_code。绑定其他卡产品时请省略 metadata。
Show child attributes
Show child attributes
响应
200 - application/json
成功绑定卡片。
卡片的唯一标识符。
示例:
"c0cef051-29c5-4796-b86a-cd5b684bfad7"
卡订单的 ID。
示例:
"c0cef051-29c5-4796-b86a-cd5ee34bfad7"
对象的创建时间。
示例:
"2024-03-21T17:17:32+08:00"
卡片状态枚举。更多信息参见卡生命周期与状态指南。
PENDING:创建卡片的请求已收到,正在审核中。ACTIVE:创建卡片的请求成功,卡片可以使用。FROZEN:所有进入的授权请求都将被拒绝。卡片可以重新激活以接受新的授权。BLOCKED:因可疑活动,卡片被 UQPAY 锁定。PRE_CANCEL:卡片已被安排注销,处于等待期,期间所有进入的授权请求都将被拒绝。等待期结束后转为CANCELLED。CANCELLED:卡片无法再从此状态重新激活,所有进入的授权请求都将被永久拒绝。LOST:卡片已向 UQPAY 报失。STOLEN:卡片已向 UQPAY 报被盗。FAILED:使用 创建卡片 创建卡片的请求失败。
可用选项:
PENDING, ACTIVE, FROZEN, BLOCKED, PRE_CANCEL, CANCELLED, LOST, STOLEN, FAILED 示例:
"ACTIVE"
此字段包含请求处理后的状态。
PENDING- 订单请求的初始状态。PROCESSING- 此状态将通过 webhooks 通知。SUCCESS- 订单请求的最终状态为成功。FAILED- 订单请求的最终状态为失败。
可用选项:
PENDING, PROCESSING, SUCCESS, FAILED 
