Create a direct payment invoice
curl --request POST \
--url https://business.planewallet.org/api/v1/card-account/invoices \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"amount": "50.00"
}
'const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({amount: '50.00'})
};
fetch('https://business.planewallet.org/api/v1/card-account/invoices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://business.planewallet.org/api/v1/card-account/invoices"
payload = { "amount": "50.00" }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"environment": "<string>",
"status": "creating",
"depositAmount": "100.00",
"fee": "1.50",
"creditAmount": "98.50",
"address": "<string>",
"payAmount": "100.000123",
"asset": "<string>",
"network": "<string>",
"expiresAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z"
}{
"statusCode": 123,
"message": "<string>"
}Balance
Create a card account invoice
Required permission: funding:write. Idempotent. Transfer the exact payAmount of USDT on TRON to address before expiresAt. The issuer confirms settlement; never infer credit from a client transaction ID. Only one unresolved invoice is allowed per workspace/environment. Creating or ambiguous requests are never automatically repeated. Network fees require TRX in the sender wallet.
POST
/
api
/
v1
/
card-account
/
invoices
Create a direct payment invoice
curl --request POST \
--url https://business.planewallet.org/api/v1/card-account/invoices \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"amount": "50.00"
}
'const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({amount: '50.00'})
};
fetch('https://business.planewallet.org/api/v1/card-account/invoices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://business.planewallet.org/api/v1/card-account/invoices"
payload = { "amount": "50.00" }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"environment": "<string>",
"status": "creating",
"depositAmount": "100.00",
"fee": "1.50",
"creditAmount": "98.50",
"address": "<string>",
"payAmount": "100.000123",
"asset": "<string>",
"network": "<string>",
"expiresAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z"
}{
"statusCode": 123,
"message": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Maximum string length:
128Body
application/json
Whole USD deposit amount, minimum 10 USD or the issuer minimum, whichever is higher. Fee is deducted from the amount.
Pattern:
^\d+(\.\d{1,2})?$Example:
"50.00"
Response
Success
Available options:
creating, pending, completed, expired, failed, manual_review Pattern:
^\d+(\.\d{1,2})?$Example:
"100.00"
Pattern:
^\d+(\.\d{1,2})?$Example:
"1.50"
Pattern:
^\d+(\.\d{1,2})?$Example:
"98.50"
Exact USDT transfer amount; up to 6 decimals. Never round this value.
Example:
"100.000123"