송장 생성
요구
쿼리 매개 변수
이름 | 매개 변수 유형 | 기본값 | 정의 |
---|---|---|---|
amount* | string | 지불 예정 금액.그 양에 동전이 있다면 분리기와 함께 보내십시오. ' 예 : 10.28 | |
currency* | string | 통화 코드 | |
order_id* | stringmin: 1max: 128alpha_dash | 시스템에서 ID를 주문하십시오매개 변수는 알파벳 문자, 숫자, 밑줄 및 대시로 구성된 문자열이어야합니다. 공백이나 특수 문자를 포함해서는 안됩니다. order_id 는 가맹점 송장/정적 지갑/재발 지불 내에서 고유해야합니다. order_id 의 기존 송장을 찾으면 세부 정보를 반환하면 새 송장이 생성되지 않습니다. | |
network | string | null | 블록 체인 네트워크 코드 |
url_return | stringmin: 6max: 255url | null | 결제하기 전에 사용자는 결제 양식의 버튼을 클릭 하고이 URL의 저장 페이지로 돌아갈 수 있습니다. |
url_success | stringmin: 6max: 255url | null | 성공적인 결제 후 사용자는 결제 양식의 버튼을 클릭 하고이 URL로 돌아갈 수 있습니다. |
url_callback | stringmin: 6max: 255url | null | 결제 상태가있는 webhooks가 전송 될 URL |
is_payment_multiple | boolean | true | 사용자가 나머지 금액을 지불 할 수 있는지 여부. 이는 사용자가 한 번의 트랜잭션에 대해 송장의 전체 금액을 지불하지 않았으며 전체 금액으로 지불 할 수 있도록 허용 할 때 유용합니다. 이 기능을 비활성화하면 첫 번째 지불을받은 후 송장이 마무리되며 잔액에 대한 자금을 받게됩니다. |
lifetime | integermin: 300max: 43200 | 3600 | 발행 된 송장의 수명 (초) |
to_currency | string | 매개 변수는 송장 금액을 변환하기위한 대상 통화를 지정하는 데 사용됩니다. 송장을 만들 때 금액과 통화를 제공하면 API는 해당 금액을 to_currency 의 동등한 값으로 변환합니다.예를 들어, 비트 코인에서 20 USD에 대한 송장을 만들려면 : amount : 20 currency : USD to_currency : btcAPI는 현재 환율에 따라 20 USD 금액을 BTC의 동등한 것으로 변환하며 사용자는 BTC로 지불합니다. to_currency 는 항상 화폐 통화 코드가 아닌 cryptocurrency 코드 여야합니다. | |
subtract | integermin: 0max: 100 | 0 | 고객에게 청구 된 지불위원회의 백분율1%의 비율이있는 경우, SUPTRACT = 100 (클라이언트가 100% 커미션을 지불하는)으로 100 USDT에 대한 송장을 작성하면 클라이언트는 101 USDT를 지불해야합니다. |
accuracy_payment_percent | numericmin: 0max: 5 | 0 | 지불에 수용 가능한 부정확성.예를 들어, 값 5를 통과하면 클라이언트가 금액의 95% 만 지불 한 경우에도 송장은 지불 된 것으로 표시됩니다.실제 지불 금액은 잔액에 적립됩니다. |
additional_data | stringmax: 255 | null | 귀하를위한 추가 정보 (고객에게 표시되지 않음) |
currencies | array | 판매자 설정에서 사용 가능한 통화 배열이 사용됩니다 (매개 변수가 설정되지 않은 경우 지원되는 모든 암호 화폐는 기본적으로 사용됩니다).사용 가능한 통화는 판매자 설정 섹션에 설정됩니다. | 지불을위한 허용 통화 목록. 고객이 송장을 지불하는 데 사용할 수있는 코인 목록을 제한하려는 경우 유용합니다. 구조 |
except_currencies | array | null | 지불을위한 제외 통화 목록 구조 |
course_source | stringmin: 4max: 20사용 가능한 값• Binance• BinanceP2P• Exmo• Kucoin | 통과하지 않으면 Cryptomus 환율이 사용됩니다. | 송장의 전환을 위해 환율을 취하는 서비스. |
from_referral_code | string | null | 요청을하는 판매자는 코드별로 참조자에 연결합니다.예를 들어, 귀하는 Cryptomus API를 통해 송장을 생성하는 응용 프로그램이며 고객은 다른 상점입니다. 응용 프로그램에 API 키 및 판매자 ID를 입력하고 자격 증명으로 요청을 보내고 추천 코드를 전달합니다.따라서 고객은 Cryptomus 계정에 대한 진료 의뢰가되며 이직으로부터 수입을 받게됩니다. |
discount_percent | integermin: -99max: 100 | null | 양수 : 을 사용하면 할인을 설정할 수 있습니다. 지불에 대한 5% 할인을 설정하려면 가치를 전달해야합니다 : 5마이너스 숫자 : 을 사용하면 맞춤형 추가 커미션을 설정할 수 있습니다.지불에 대한 추가 커미션 10%를 설정하려면 값을 전달해야합니다. -10송장을 작성할 때의 할인 비율은 송장에 특정 cryptocurrency가있는 경우에만 고려됩니다. |
is_refresh | boolean | false | 이 매개 변수를 사용하면 수명이 만료 된 경우 수명을 업데이트하고 송장에 대한 새 주소를 얻을 수 있습니다.이를 위해서는 필요한 모든 매개 변수를 전달해야하며 Order_ID가 통과 한 송장이 새로 고침됩니다. address , payment_status 및 expired_at 만 변경됩니다. 통과 된 매개 변수에 관계없이 다른 필드는 변경되지 않습니다. |
매개 변수 유형
string정의
지불 예정 금액.그 양에 동전이 있다면 분리기와 함께 보내십시오. '
예 : 10.28매개 변수 유형
string정의
통화 코드매개 변수 유형
stringmin: 1max: 128alpha_dash정의
시스템에서 ID를 주문하십시오매개 변수는 알파벳 문자, 숫자, 밑줄 및 대시로 구성된 문자열이어야합니다. 공백이나 특수 문자를 포함해서는 안됩니다. order_id 는 가맹점 송장/정적 지갑/재발 지불 내에서 고유해야합니다. order_id 의 기존 송장을 찾으면 세부 정보를 반환하면 새 송장이 생성되지 않습니다.매개 변수 유형
string정의
블록 체인 네트워크 코드매개 변수 유형
stringmin: 6max: 255url정의
결제하기 전에 사용자는 결제 양식의 버튼을 클릭 하고이 URL의 저장 페이지로 돌아갈 수 있습니다.매개 변수 유형
stringmin: 6max: 255url정의
성공적인 결제 후 사용자는 결제 양식의 버튼을 클릭 하고이 URL로 돌아갈 수 있습니다.매개 변수 유형
stringmin: 6max: 255url정의
결제 상태가있는 webhooks가 전송 될 URL매개 변수 유형
boolean정의
사용자가 나머지 금액을 지불 할 수 있는지 여부. 이는 사용자가 한 번의 트랜잭션에 대해 송장의 전체 금액을 지불하지 않았으며 전체 금액으로 지불 할 수 있도록 허용 할 때 유용합니다. 이 기능을 비활성화하면 첫 번째 지불을받은 후 송장이 마무리되며 잔액에 대한 자금을 받게됩니다.매개 변수 유형
integermin: 300max: 43200정의
발행 된 송장의 수명 (초)매개 변수 유형
string정의
매개 변수는 송장 금액을 변환하기위한 대상 통화를 지정하는 데 사용됩니다. 송장을 만들 때 금액과 통화를 제공하면 API는 해당 금액을 to_currency 의 동등한 값으로 변환합니다.예를 들어, 비트 코인에서 20 USD에 대한 송장을 만들려면 :
amount : 20
currency : USD
to_currency : btcAPI는 현재 환율에 따라 20 USD 금액을 BTC의 동등한 것으로 변환하며 사용자는 BTC로 지불합니다. to_currency 는 항상 화폐 통화 코드가 아닌 cryptocurrency 코드 여야합니다.매개 변수 유형
integermin: 0max: 100정의
고객에게 청구 된 지불위원회의 백분율1%의 비율이있는 경우, SUPTRACT = 100 (클라이언트가 100% 커미션을 지불하는)으로 100 USDT에 대한 송장을 작성하면 클라이언트는 101 USDT를 지불해야합니다.매개 변수 유형
numericmin: 0max: 5정의
지불에 수용 가능한 부정확성.예를 들어, 값 5를 통과하면 클라이언트가 금액의 95% 만 지불 한 경우에도 송장은 지불 된 것으로 표시됩니다.실제 지불 금액은 잔액에 적립됩니다.매개 변수 유형
stringmax: 255정의
귀하를위한 추가 정보 (고객에게 표시되지 않음)매개 변수 유형
array정의
지불을위한 허용 통화 목록. 고객이 송장을 지불하는 데 사용할 수있는 코인 목록을 제한하려는 경우 유용합니다. 구조매개 변수 유형
array정의
지불을위한 제외 통화 목록 구조매개 변수 유형
stringmin: 4max: 20
사용 가능한 값- Binance- BinanceP2P- Exmo- Kucoin정의
송장의 전환을 위해 환율을 취하는 서비스.매개 변수 유형
string정의
요청을하는 판매자는 코드별로 참조자에 연결합니다.예를 들어, 귀하는 Cryptomus API를 통해 송장을 생성하는 응용 프로그램이며 고객은 다른 상점입니다.
응용 프로그램에 API 키 및 판매자 ID를 입력하고 자격 증명으로 요청을 보내고 추천 코드를 전달합니다.따라서 고객은 Cryptomus 계정에 대한 진료 의뢰가되며 이직으로부터 수입을 받게됩니다.매개 변수 유형
integermin: -99max: 100정의
양수 :
을 사용하면 할인을 설정할 수 있습니다.
지불에 대한 5% 할인을 설정하려면 가치를 전달해야합니다 : 5마이너스 숫자 :
을 사용하면 맞춤형 추가 커미션을 설정할 수 있습니다.지불에 대한 추가 커미션 10%를 설정하려면 값을 전달해야합니다. -10송장을 작성할 때의 할인 비율은 송장에 특정 cryptocurrency가있는 경우에만 고려됩니다.매개 변수 유형
boolean정의
이 매개 변수를 사용하면 수명이 만료 된 경우 수명을 업데이트하고 송장에 대한 새 주소를 얻을 수 있습니다.이를 위해서는 필요한 모든 매개 변수를 전달해야하며 Order_ID가 통과 한 송장이 새로 고침됩니다. address , payment_status 및 expired_at 만 변경됩니다. 통과 된 매개 변수에 관계없이 다른 필드는 변경되지 않습니다.
* - 필수 매개 변수
의 구조 통화
이름 | 정의 |
---|---|
currency* | 통화 코드 |
network | 블록 체인 네트워크 코드 |
정의
통화 코드정의
블록 체인 네트워크 코드
* - 필수 매개 변수
의 구조 except_currencies
이름 | 정의 |
---|---|
currency* | 통화 코드 |
network | 블록 체인 네트워크 코드 |
정의
통화 코드정의
블록 체인 네트워크 코드
* - 필수 매개 변수
요청 예제
아래는 필요한 매개 변수 수가있는 샘플 예제입니다. 이 경우 Fiat Currency USD로 송장이 생성됩니다. 결제 페이지에서 사용자는이 청구서를 지불하기 위해 cryptocurrency 및 네트워크를 선택할 수 있습니다.
curl https://api.cryptomus.com/v1/payment \
-X POST \
-H 'merchant: 8b03432e-385b-4670-8d06-064591096795' \
-H 'sign: fe99035f86fa436181717b302b95bacff1' \
-H 'Content-Type: application/json' \
-d '{
"amount": "15",
"currency": "USD",
"order_id": "1"
}'
복사응답
응답 매개 변수
이름 | 정의 |
---|---|
uuid | 송장 uuid |
order_id | 시스템에서 ID를 주문하십시오 |
amount | 송장 금액 |
payment_amount | 고객이 지불 한 금액 |
payer_amount | 할인 또는 추가 커미션을 포함하여 고객이 지불 해야하는 payer_currency 의 금액. |
discount_percent | 요청 매개 변수에 전달 된 할인 또는 추가 커미션 백분율 |
discount | cryptocurrency의 실제 할인 금액 또는 추가 커미션.예를 들어 송장 금액이 15 USDT이고 할인 _percent가 -5 인 경우 할인 값은 -0.75입니다.즉, amount + discount = payer_amount |
payer_currency | 고객이 지불 해야하는 통화. |
currency | 송장 통화 코드 |
merchant_amount | 당신의 잔액으로 인정받을 암호화 금액. 송장 payer_currency가 지정되지 않으면 값은 null이됩니다. |
network | 블록 체인 네트워크 코드 |
address | 지불을위한 지갑 주소 |
from | 지불이 이루어진 지갑의 주소 |
txid | 거래 해시 |
payment_status | 지불 상태 모든 지불 상태 |
url | URL 결제 페이지 |
expired_at | 송장 만료 타임 스탬프 |
is_final | 송장이 마무리되는지 여부.송장이 마무리되면 송장을 지불하는 것은 불가능합니다 (지불 또는 만료 됨) |
additional_data | 추가 정보 |
created_at | 송장의 생성 날짜. 시간대는 UTC+3입니다 |
updated_at | 마지막 송장 업데이트 날짜. 시간대는 UTC+3입니다 |
정의
송장 uuid정의
시스템에서 ID를 주문하십시오정의
송장 금액정의
고객이 지불 한 금액정의
할인 또는 추가 커미션을 포함하여 고객이 지불 해야하는 payer_currency 의 금액.정의
요청 매개 변수에 전달 된 할인 또는 추가 커미션 백분율정의
cryptocurrency의 실제 할인 금액 또는 추가 커미션.예를 들어 송장 금액이 15 USDT이고 할인 _percent가 -5 인 경우 할인 값은 -0.75입니다.즉, amount + discount = payer_amount정의
고객이 지불 해야하는 통화.정의
송장 통화 코드정의
당신의 잔액으로 인정받을 암호화 금액. 송장 payer_currency가 지정되지 않으면 값은 null이됩니다.정의
블록 체인 네트워크 코드정의
지불을위한 지갑 주소정의
지불이 이루어진 지갑의 주소정의
거래 해시정의
지불 상태 모든 지불 상태정의
URL 결제 페이지정의
송장 만료 타임 스탬프정의
송장이 마무리되는지 여부.송장이 마무리되면 송장을 지불하는 것은 불가능합니다 (지불 또는 만료 됨)정의
추가 정보정의
송장의 생성 날짜. 시간대는 UTC+3입니다정의
마지막 송장 업데이트 날짜. 시간대는 UTC+3입니다
응답 예
1{
2 "state": 0,
3 "result": {
4 "uuid": "26109ba0-b05b-4ee0-93d1-fd62c822ce95",
5 "order_id": "1",
6 "amount": "15.00",
7 "payment_amount": null,
8 "payer_amount": null,
9 "discount_percent": null,
10 "discount": "0.00000000",
11 "payer_currency": null,
12 "currency": "USD",
13 "merchant_amount": null,
14 "network": null,
15 "address": null,
16 "from": null,
17 "txid": null,
18 "payment_status": "check",
19 "url": "https://pay.cryptomus.com/pay/26109ba0-b05b-4ee0-93d1-fd62c822ce95",
20 "expired_at": 1689098133,
21 "status": "check",
22 "is_final": false,
23 "additional_data": null,
24 "created_at": "2023-07-11T20:23:52+03:00",
25 "updated_at": "2023-07-11T21:24:17+03:00"
26 }
27}
복사더 많은 예
Tron Network에서 20 USDT에 대한 송장을 생성하기 위해 데이터를 요청하십시오. 송장에는 창조시 주소가 있습니다.
1{
2 "amount": "20",
3 "currency": "USDT",
4 "order_id": "1",
5 "network": "tron"
6}
복사데이터를 요청하여 25 USD의 송장을 생성하고 모든 네트워크에서 USDT 만 지불 할 수 있습니다.
1{
2 "amount": "25",
3 "currency": "USD",
4 "order_id": "1",
5 "to_currency": "USDT"
6}
복사데이터를 요청하여 25 USD의 송장을 생성하고 고객이 Tron Network에서 USDT에서만 지불 할 수 있습니다. 송장에는 창조시 주소가 있습니다.
1{
2 "amount": "25",
3 "currency": "USD",
4 "order_id": "1",
5 "to_currency": "USDT",
6 "network": "tron"
7}
복사20 USDT에 대한 송장 생성 및 고객이 사용 가능한 모든 네트워크에서 지불 할 수 있도록 데이터를 요청합니다.
1{
2 "amount": "20",
3 "currency": "USDT",
4 "order_id": "1"
5}
복사20 USD에 대한 송장을 생성하기위한 데이터를 요청하고 고객이 비트 코인으로 만 지불 할 수 있습니다. 송장에는 창조시 주소가 있습니다.
1{
2 "amount": "20",
3 "currency": "USD",
4 "order_id": "1",
5 "to_currency": "BTC"
6}
복사0.5 BTC의 송장을 생성하기위한 데이터를 요청하고 고객이 비트 코인으로 만 지불 할 수 있습니다. 송장에는 창조시 주소가 있습니다.
1{
2 "amount": "0.5",
3 "currency": "BTC",
4 "order_id": "1"
5}
복사가능한 오류
유효성 검사 오류
암호 : 422
예제 응답 :
일부 매개 변수가 필요하고 통과되지 않은 경우 :
1{
2 "state": 1,
3 "errors": {
4 "amount": ["validation.required"]
5 }
6}
복사지원되지 않는 네트워크 코드를 제공 한 경우
1{
2 "state": 1,
3 "message": "The network was not found"
4}
복사통화 매개 변수로 제공 한 통화 코드를 지원하지 않으면 :
1{
2 "state": 1,
3 "message": "The currency was not found"
4}
복사지불이 차단 된 경우. 이 경우 지원에 연락해야합니다.
1{
2 "state": 1,
3 "message": "You are forbidden"
4}
복사to_currency 매개 변수로 전달 된 통화의 결제 서비스를 찾지 못하면 :
1{
2 "state": 1,
3 "message": "Not found service to_currency"
4}
복사실수로 to_currency로 변환 할 때 어떤 일이 발생하는 경우 :
1{
2 "state": 1,
3 "message": "Error convert to_currency"
4}
복사지불 금액이 cryptocurrency의 최소 지원 금액보다 낮은 경우이 오류 메시지를 받게됩니다.
1{
2 "state": 1,
3 "message": "Minimum amount 0.5 USDT"
4}
복사지불 금액이 cryptocurrency의 최대 지원 금액보다 큰 경우이 오류 메시지를 받게됩니다.
1{
2 "state": 1,
3 "message": "Maximum amount 10000000 USDT"
4}
복사지불의 암호 화폐가있는 활성 판매자 지갑이 없으면이 오류가 발생합니다.
1{
2 "state": 1,
3 "message": "Wallet not found"
4}
복사기술 작업이 발생하고 지불을 일시적으로 사용할 수없는 경우이 오류 메시지를받을 수 있습니다.
1{
2 "state": 1,
3 "message": "Gateway error"
4}
복사
1{
2 "state": 1,
3 "message": "The terminal was not found"
4}
복사
1{
2 "state": 1,
3 "message": "Server error"
4}
복사인터넷 서버 오류
암호 : 500
예제 응답 :
1{
2 "message": "Server error, #1",
3 "code": 500,
4 "error": null
5}
복사