Tạo khoản thanh toán

post
https://api.cryptomus.com/v1/payout
Sao chép

Các khoản thanh toán thông qua API chỉ được thực hiện từ số dư ví doanh nghiệp của bạn.

Việc thanh toán có thể được thực hiện theo nhiều cách khác nhau:

  1. Bạn có thể chọn nhận khoản thanh toán bằng một loại tiền điện tử cụ thể và khoản thanh toán sẽ được tự động xử lý bằng loại tiền điện tử đó. Để làm như vậy, hãy đảm bảo bạn có đủ số dư bằng loại tiền tệ đó để trang trải tất cả các khoản phí liên quan.
  2. Ngoài ra, bạn có thể chọn chỉ định số tiền thanh toán bằng tiền pháp định. Trong trường hợp này, số tiền sẽ được tự động chuyển đổi sang một loại tiền điện tử cụ thể từ số dư khả dụng của bạn. Ví dụ: nếu bạn yêu cầu thanh toán 20 USD bằng LTC, giá trị tương đương sẽ được khấu trừ từ số dư LTC của bạn. Điều quan trọng là phải có đủ tiền bằng loại tiền điện tử tương ứng để trang trải tất cả các khoản phí áp dụng.
  3. Một lựa chọn khác là chỉ định số tiền thanh toán bằng tiền pháp định, số tiền này sẽ được tự động chuyển đổi sang một loại tiền điện tử cụ thể dựa trên số dư USDT của bạn. Tùy chọn này đặc biệt hữu ích khi bạn bật tính năng tự động chuyển đổi, vì tiền từ hóa đơn của bạn sẽ được tự động chuyển đổi sang USDT. Ví dụ: nếu bạn muốn thanh toán 20 USD bằng LTC nhưng chỉ có số dư USDT, hãy đảm bảo bạn có đủ tiền USDT để trang trải tất cả các khoản phí.
  4. Ngoài ra, bạn có thể chọn chỉ định số tiền thanh toán bằng bất kỳ loại tiền điện tử nào bạn muốn. Khoản thanh toán sau đó sẽ được tự động xử lý bằng loại tiền điện tử cụ thể đó, sử dụng số dư USDT khả dụng của bạn. Điều quan trọng là phải có đủ số dư USDT để trang trải tất cả các khoản phí liên quan.

Lời yêu cầu

Tham số truy vấn

TênKiểu tham sốGiá trị mặc địnhSự định nghĩa
amount*stringSố tiền thanh toán
currency*stringMã tiền tệ để thanh toánNếu tiền tệ là tiền pháp định, tham số to_currency là bắt buộc.
order_id*stringmin:1max:100alpha_dashID đơn hàng trong hệ thống của bạnTham số phải là một chuỗi bao gồm các ký tự chữ cái, số, dấu gạch dưới và dấu gạch ngang. Chuỗi không được chứa bất kỳ khoảng trắng hoặc ký tự đặc biệt nào.order_id phải là duy nhất trong các khoản thanh toán của người bánKhi chúng tôi tìm thấy khoản thanh toán hiện có với order_id, chúng tôi sẽ trả về thông tin chi tiết của khoản thanh toán đó, khoản thanh toán mới sẽ không được tạo.
address*stringĐịa chỉ ví mà khoản tiền sẽ được rút
is_subtract*booleanXác định nơi phí rút tiền sẽ được khấu trừđúng - từ số dư của bạnsai - từ số tiền thanh toán, số tiền thanh toán sẽ bị giảm
network*stringMã mạng BlockchainKhông bắt buộc khi currency/to_currency là một loại tiền điện tử và chỉ có một mạng lưới, ví dụ như BTC
url_callbackURL mà webhooks có trạng thái thanh toán sẽ được gửi đến
to_currencyMã tiền điện tử dùng để thanh toán. Mã này được sử dụng khi tham số tiền tệ là tiền pháp định. Xem ví dụ bên dưới
course_sourcestringCác giá trị có sẵnBinanceBinanceP2pExmoKucoinGiá trị từ cài đặt của người bánDịch vụ lấy tỷ giá hối đoái để quy đổi trên hóa đơn.Tham số này chỉ được áp dụng nếu tiền tệ là tiền pháp định, nếu không, giá trị mặc định sẽ được lấy từ cài đặt của người bán.
from_currencystringnullCho phép tự động chuyển đổi số tiền rút và sử dụng số dư from_currency. Chỉ khả dụng với USDT.
prioritystringmin: 4max: 11Các giá trị có sẵnrecommendedeconomyhighhighestrecommendedTham số để chọn mức độ ưu tiên rút tiền. Phí rút tiền phụ thuộc vào tham số đã chọn.Tham số này chỉ được áp dụng trong trường hợp sử dụng mạng BTC, ETH, POLYGON và BSC.
memostringmin: 1max: 30Mã định danh bổ sung cho TON, được sử dụng để chỉ định người nhận hoặc mục tiêu cụ thể

Kiểu tham số

string

Sự định nghĩa

Số tiền thanh toán

Kiểu tham số

string

Sự định nghĩa

Mã tiền tệ để thanh toánNếu tiền tệ là tiền pháp định, tham số to_currency là bắt buộc.

Kiểu tham số

stringmin:1max:100alpha_dash

Sự định nghĩa

ID đơn hàng trong hệ thống của bạnTham số phải là một chuỗi bao gồm các ký tự chữ cái, số, dấu gạch dưới và dấu gạch ngang. Chuỗi không được chứa bất kỳ khoảng trắng hoặc ký tự đặc biệt nào.order_id phải là duy nhất trong các khoản thanh toán của người bánKhi chúng tôi tìm thấy khoản thanh toán hiện có với order_id, chúng tôi sẽ trả về thông tin chi tiết của khoản thanh toán đó, khoản thanh toán mới sẽ không được tạo.

Kiểu tham số

string

Sự định nghĩa

Địa chỉ ví mà khoản tiền sẽ được rút

Kiểu tham số

boolean

Sự định nghĩa

Xác định nơi phí rút tiền sẽ được khấu trừđúng - từ số dư của bạnsai - từ số tiền thanh toán, số tiền thanh toán sẽ bị giảm

Kiểu tham số

string

Sự định nghĩa

Mã mạng BlockchainKhông bắt buộc khi currency/to_currency là một loại tiền điện tử và chỉ có một mạng lưới, ví dụ như BTC

Sự định nghĩa

URL mà webhooks có trạng thái thanh toán sẽ được gửi đến

Sự định nghĩa

Mã tiền điện tử dùng để thanh toán. Mã này được sử dụng khi tham số tiền tệ là tiền pháp định. Xem ví dụ bên dưới

Kiểu tham số

string
Các giá trị có sẵn
- Binance- BinanceP2p- Exmo- Kucoin

Sự định nghĩa

Dịch vụ lấy tỷ giá hối đoái để quy đổi trên hóa đơn.Tham số này chỉ được áp dụng nếu tiền tệ là tiền pháp định, nếu không, giá trị mặc định sẽ được lấy từ cài đặt của người bán.

Kiểu tham số

string

Sự định nghĩa

Cho phép tự động chuyển đổi số tiền rút và sử dụng số dư from_currency. Chỉ khả dụng với USDT.

Kiểu tham số

stringmin: 4max: 11
Các giá trị có sẵn
- recommended- economy- high- highest

Sự định nghĩa

Tham số để chọn mức độ ưu tiên rút tiền. Phí rút tiền phụ thuộc vào tham số đã chọn.Tham số này chỉ được áp dụng trong trường hợp sử dụng mạng BTC, ETH, POLYGON và BSC.

Kiểu tham số

stringmin: 1max: 30

Sự định nghĩa

Mã định danh bổ sung cho TON, được sử dụng để chỉ định người nhận hoặc mục tiêu cụ thể

* - tham số bắt buộc

Ví dụ yêu cầu


curl https://api.cryptomus.com/v1/payout \
-X POST \
-H 'merchant: 8b03432e-385b-4670-8d06-064591096795' \
-H 'sign: fe99035f86fa436181717b302b95bacff1' \
-H 'Content-Type: application/json' \
-d '{ 
    "amount": "5",
    "currency": "USDT", 
    "network": "TRON", 
    "order_id": "1",
    "address": "TDD97yguPESTpcrJMqU6h2ozZbibv4Vaqm", 
    "url_callback": "https://your.site/callback", 
    "is_subtract": "1",
}'
Sao chép

Phản ứng

Các thông số phản hồi

TênSự định nghĩa
uuiduuid của khoản thanh toán
amountSố tiền thanh toán bằng tiền tệ
currencyMã tiền tệ để thanh toán
networkMã của mạng blockchain trong đó thanh toán được thực hiện
addressĐịa chỉ ví mà khoản thanh toán được thực hiện
txidID giao dịch trong chuỗi khối
statusTrạng thái thanh toán Xem tất cả các trạng thái có sẵn
is_finalViệc thanh toán đã được hoàn tất chưaQuá trình thanh toán được coi là hoàn tất khi giao dịch đã được thanh toán thành công hoặc thất bại. Trong trường hợp thanh toán không thành công, tiền sẽ được hoàn lại vào số dư của bạn, yêu cầu bạn phải thực hiện lại quy trình thanh toán.
balanceSố tiền còn lại trong số dư của người bán.
payer_currencyMã tiền điện tử mà khoản thanh toán thực tế sẽ được thực hiện. Địa chỉ thanh toán sẽ nhận được loại tiền thanh toán.
payer_amountSố tiền thanh toán bằng tiền_thanh_toán.

Sự định nghĩa

uuid của khoản thanh toán

Sự định nghĩa

Số tiền thanh toán bằng tiền tệ

Sự định nghĩa

Mã tiền tệ để thanh toán

Sự định nghĩa

Mã của mạng blockchain trong đó thanh toán được thực hiện

Sự định nghĩa

Địa chỉ ví mà khoản thanh toán được thực hiện

Sự định nghĩa

ID giao dịch trong chuỗi khối

Sự định nghĩa

Trạng thái thanh toán Xem tất cả các trạng thái có sẵn

Sự định nghĩa

Việc thanh toán đã được hoàn tất chưaQuá trình thanh toán được coi là hoàn tất khi giao dịch đã được thanh toán thành công hoặc thất bại. Trong trường hợp thanh toán không thành công, tiền sẽ được hoàn lại vào số dư của bạn, yêu cầu bạn phải thực hiện lại quy trình thanh toán.

Sự định nghĩa

Số tiền còn lại trong số dư của người bán.

Sự định nghĩa

Mã tiền điện tử mà khoản thanh toán thực tế sẽ được thực hiện. Địa chỉ thanh toán sẽ nhận được loại tiền thanh toán.

Sự định nghĩa

Số tiền thanh toán bằng tiền_thanh_toán.

Ví dụ phản hồi


1{
2    "state": 0,
3    "result": {
4        "uuid": "a7c0caec-a594-4aaa-b1c4-77d511857594", 
5        "amount": "3",
6        "currency": "USDT",
7        "network": "TRON",
8        "address": "TJ...",
9        "txid": null,
10        "status": "process",
11        "is_final": false,
12        "balance": 129,
13        "payer_currency": "USD",
14        "payer_amount": 3
15    }
16}
17
Sao chép

Lỗi có thể xảy ra

Lỗi xác thực

mã số : 422

ví dụ phản hồi:


1{
2	"state": 1,
3	"errors": {
4		"amount": ["validation.required"]
5	}
6}
Sao chép

Nếu khoản thanh toán bị chặn trên đơn vị chấp nhận thanh toán hoặc người dùng của bạn, bạn sẽ nhận được thông báo lỗi này. Ví dụ: điều này xảy ra khi bạn thay đổi mật khẩu và khoản thanh toán bị chặn trong 24 giờ.


1{
2    "state": 1,
3    "message": "You are forbidden"
4}
Sao chép

Nếu chúng tôi không hỗ trợ mã tiền tệ mà bạn cung cấp trong tham số currency, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "The currency was not found"
4}
Sao chép

Nếu chúng tôi không tìm thấy dịch vụ thực hiện thanh toán, bạn sẽ nhận được thông báo lỗi này. Bạn phải đảm bảo rằng loại tiền điện tử được hỗ trợ. Kiểm tra tính chính xác của các giá trị đã nhập trong: currency, network, from_currency, to_currency:


1{
2    "state": 1,
3    "message": "The service was not found"
4}
Sao chép

Nếu số tiền rút quá nhỏ, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "The withdrawal amount is too small"
4}
Sao chép

Nếu bạn không có ví thương gia đang hoạt động với loại tiền điện tử thanh toán, bạn sẽ nhận được lỗi này:


1{
2    "state": 1,
3    "message": "Wallet not found"
4}
Sao chép

Nếu số tiền thanh toán, bao gồm tất cả hoa hồng, nhiều hơn số dư của bạn, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "Not enough funds"
4}
Sao chép

Nếu chúng tôi không tìm thấy dịch vụ thanh toán của loại tiền tệ được truyền vào tham số to_currency, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "Not found service to_currency"
4}
Sao chép

Nếu vô tình có điều gì đó xảy ra khi chuyển đổi sang to_currency, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "Error convert to_currency"
4}
Sao chép

Nếu số tiền thanh toán ít hơn số tiền tối thiểu được hỗ trợ cho tiền điện tử, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "Minimum amount 0.5 USDT"
4}
Sao chép

Nếu số tiền thanh toán lớn hơn số tiền tối đa được hỗ trợ cho tiền điện tử, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "Maximum amount 10000000 USDT"
4}
Sao chép

Nếu bạn không có đủ tiền để thanh toán, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "Not enough funds"
4}
Sao chép

Nếu bạn không có đủ tiền để chuyển đổi số tiền thanh toán từ from_currency, bạn sẽ nhận được thông báo lỗi này:


1{
2    "state": 1,
3    "message": "Not enough balance for convert USDT to LTC"
4}
Sao chép

Nếu xảy ra sự cố kỹ thuật và khoản thanh toán tạm thời không khả dụng, bạn sẽ nhận được thông báo lỗi này


1{
2    "state": 1,
3    "message": "The terminal was not found"
4}
Sao chép

Lỗi máy chủ nội bộ

mã số : 500

ví dụ phản hồi:


1{
2	"message": "Server error, #1",
3	"code": 500,
4	"error": null
5}
Sao chép