Tạo thanh toán

Tạo liên kết thanh toán cho dịch vụ của bạn

POST

https://api.fps.pro/invoices/create

Định dạng yêu cầuapplication/json

amount

required

number

Số tiền thanh toán bằng fiat đã chọn

currency

required

string

Fiat được chấp nhận (xem danh sách fiat)

order_id

string

ID đơn hàng trong hệ thống của bạn

network

string

Bạn có thể chỉ định mạng bắt buộc để nhận thanh toán hoặc để trống để nhận qua bất kỳ mạng khả dụng nào

webhook_link

url

URL nhận trạng thái thanh toán

Mặc định: merchant settings

success_link

url

URL chuyển hướng khách hàng sau khi thanh toán thành công

Mặc định: merchant settings

error_link

url

URL chuyển hướng khách hàng sau khi thanh toán không thành công

Mặc định: merchant settings

part_payment

boolean

Bạn có thể cho phép hoặc cấm thanh toán một phần trong một giao dịch

Mặc định: true or merchant settings

ignore_client_amount

boolean

Nếu đặt True, bất kỳ số tiền nào khách hàng thanh toán cũng sẽ hoàn tất hóa đơn thành công

Mặc định: false or merchant settings

payment_accuracy

number

Chỉ định phần trăm từ 1 đến 100. Ví dụ, nếu đặt 5 cho thanh toán $100, khách hàng trả $95 thì thanh toán được xem là thành công

Mặc định: 0 or merchant settings

fee

number

Giá trị từ 1 đến 100 để cộng phí theo tỷ lệ phần trăm vào thanh toán

Mặc định: 0

discount

number

Giá trị từ 1 đến 100 để áp dụng phần trăm giảm giá cho thanh toán

Mặc định: 0

additional_info

string

Bất kỳ thông tin nào

auto_convert

boolean

Tự động chuyển đổi thanh toán sau khi nhận

Mặc định: false

Định dạng phản hồidata object

id

uuid

ID hóa đơn

info.currency

string | null

Mã tiền fiat của hóa đơn

info.token

string | null

Token thanh toán

info.network

string | null

Mạng thanh toán

info.address

string | null

Địa chỉ ví để thanh toán

amount.starting_price

number

Số tiền ban đầu của hóa đơn bằng fiat

amount.discount_percent

number

Mức giảm giá theo phần trăm

amount.merchant_fee_percent

number

Phí merchant theo phần trăm

amount.service_fee_percent

number | null

Phí dịch vụ nền tảng theo phần trăm

amount.total

number

Số tiền cuối cùng sau giảm giá và phí

url.webhook

url | null

URL Webhook của merchant

url.success

url | null

URL chuyển hướng sau khi thanh toán thành công

url.error

url | null

URL chuyển hướng sau khi thanh toán lỗi

url.payment

url

Liên kết trang thanh toán

options.part_payment

boolean

Có cho phép thanh toán một phần hay không

options.ignore_client_amount

boolean

Có bỏ qua số tiền chính xác của client hay không

options.payment_accuracy

number

Sai số thanh toán được phép

additional.order_id

string | null

ID đơn hàng bên ngoài

additional.info

string | null

Thông tin bổ sung của đơn hàng

status

string

Trạng thái hiện tại của hóa đơn

expired_at

string (ISO 8601, UTC)

Ngày hết hạn hóa đơn

created_at

string (ISO 8601, UTC)

Ngày tạo hóa đơn

Ví dụ yêu cầu

curl --request POST 'https://api.fps.pro/invoices/create' \
  --header 'Content-Type: application/json' \
  --header 'X-Client-Id: YOUR_CLIENT_ID' \
  --header 'X-Timestamp: 1720000000' \
  --header 'X-Signature: YOUR_HMAC_SHA256_SIGNATURE' \
  --data '{
  "amount": 150.75,
  "currency": "usd",
  "order_id": "ORD-1001",
  "network": "tron",
  "webhook_link": "https://merchant.example.com/webhooks/fps",
  "success_link": "https://merchant.example.com/payments/success",
  "error_link": "https://merchant.example.com/payments/error",
  "part_payment": true,
  "ignore_client_amount": false,
  "payment_accuracy": 0,
  "fee": 1.5,
  "discount": 3,
  "additional_info": "Premium subscription",
  "auto_convert": false
}'

Phản hồi thành công

{
  "status": 201,
  "message": "invoice created",
  "data": {
    "id": "0a718b02-138d-495a-9661-39ca52139c07",
    "info": {
      "currency": "USD",
      "token": null,
      "network": null,
      "address": null
    },
    "amount": {
      "starting_price": 1000,
      "discount_percent": 0,
      "merchant_fee_percent": 10,
      "service_fee_percent": 1,
      "total": 1100
    },
    "url": {
      "webhook": "https://merchant.example/webhook",
      "success": "https://merchant.example/success",
      "error": "https://merchant.example/error",
      "payment": "https://frontend.example/0a718b02-138d-495a-9661-39ca52139c07"
    },
    "options": {
      "part_payment": true,
      "ignore_client_amount": false,
      "payment_accuracy": 0
    },
    "additional": {
      "order_id": "1",
      "info": ""
    },
    "status": "init",
    "expired_at": "2026-01-05 14:30:43",
    "created_at": "2026-01-05T13:30:43.000Z"
  }
}

Lỗi

Danh sách lỗi ủy quyền chi tiết nằm trong Ủy quyền - Lỗi

{
  "status": 422,
  "message": "Validation Error",
  "errors": [
    {
      "field": "currency",
      "message": "currency is required"
    }
  ]
}
{
  "status": 500,
  "message": "Internal Server Error"
}