Payment initiation
TIP
Initiate paying on your behalf first.
Interface address
POST https://api.ttpay.io/v1/payanother/payment
Interface parameters
Name | Location | Type | Required | Description |
---|---|---|---|---|
app_id | body | string | Yes | Application ID, example value: 8e4b8c2e7cxxxxxxxx1a1cbd3d59e0bd |
mch_id | body | string | Yes | Merchant ID, example value: 1234567890 |
description | body | string | No | Description, example value: 1234567890 |
out_trade_no | body | string | No | Merchant order number(out_trade_no and transaction_id pass at least one) |
amount | body | string | Yes | PayAnother amount |
chain | body | string | Yes | Owned public chain, example value: TRON 、ETHEREUM 、BSC . View supported public chains |
currency | body | string | Yes | Currency, example value: TRX 、USDT 、ETH . View supported currencies |
to_address | body | string | Yes | Collection address |
attach | body | string | No | Custom parameter. It returns as-is in the query API and payment notifications and can be used as a custom parameter. In practice, this field is returned only when the payment is complete. |
notify_url | body | string | No | Callback url, example value: https://xxx/xxx , suggest using https |
TIP
app_id through the merchant backstage creating an applicationto obtain.
Interface return
Name | Time | Required | Description |
---|---|---|---|
code | integer | true | Status code |
msg | string | true | Statements |
request_id | string | true | |
data | PayAnotherTransactionDetail | false |
Example retrun
{
"code": 0,
"msg": "ok",
"request_id": "08250916-a677-4a36-a090-323807ac644c",
"data": {
"out_trade_no": "fb722ca8-ed7b-444b-9f58-0b5c8a7b52cb",
"transaction_id": "e98b3029477f4bdcb971797a9d9e09ce",
"trade_state": "SUCCESS",
"description": "recharge",
"block_no": 33215220,
"create_time": 1673407302044,
"block_time": 1673407329000,
"expire_time": 1673407902044,
"expire_second": 0,
"pay_time": 1673407329000,
"close_time": 0,
"tx_id": "9fdf0ab5823e23225f93bcc644af30a6ab83b6583a8e29e359ee80219802a33a",
"from_address": "TULRFYoFuEmUbxxxxxxxx8nQYFHJ88888",
"contract_address": "",
"to_address": "TQjxEW2Z3p9wjoxxxxxxxxgJUrWXBun91w",
"amount": 15000000,
"chain": "TRON",
"decimals": 6,
"attach": "anim dolore",
"service_amount": 45000,
"service_amount_currency": "USDT",
"notify_url": "/console/callback/pay",
"notify_num": 1,
"notify_status": 2,
"status": 2,
"currency": {
"type": "TRX",
"chain": "TRON",
"code": "TRON_TRX",
"currency": "TRX",
"name": "TRX",
"sub_name": "TRON",
"logo": "https://static.tronscan.org/production/logo/trx.png",
"contract_address": "",
"decimal": 6,
}
}
}
Example code
curl --location --request POST 'https://api.ttpay.io/v1/payanother/payment' \
--header 'Authorization: <Authorization>' \
--header 'User-Agent: TTPay API (https://ttpay.io)' \
--header 'Content-Type: application/json' \
--data-raw '<body data here>'
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.ttpay.io/v1/payanother/payment"
method := "POST"
payload := strings.NewReader(`<body data here>`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "<Authorization>")
req.Header.Add("User-Agent", "TTPay API (https://ttpay.io)")
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.ttpay.io/v1/payanother/payment',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'<body data here>',
CURLOPT_HTTPHEADER => array(
'Authorization: <Authorization>',
'User-Agent: TTPay API (https://ttpay.io)',
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import http.client
import json
conn = http.client.HTTPSConnection("https://api.ttpay.io")
payload = "<body data here>"
headers = {
'Authorization': '<Authorization>',
'User-Agent': 'TTPay API (https://ttpay.io)',
'Content-Type': 'application/json'
}
conn.request("POST", "/v1/payanother/payment", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "<body data here>");
Request request = new Request.Builder()
.url("https://api.ttpay.io/v1/payanother/payment")
.method("POST", body)
.addHeader("Authorization", "<Authorization>")
.addHeader("User-Agent", "TTPay API (https://ttpay.io)")
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();