송장 생성

post
https://api.cryptomus.com/v1/payment
복사

요구

쿼리 매개 변수

이름매개 변수 유형기본값정의
amount*string지불 예정 금액.그 양에 동전이 있다면 분리기와 함께 보내십시오. '
예 : 10.28
currency*string통화 코드
order_id*stringmin: 1max: 128alpha_dash시스템에서 ID를 주문하십시오매개 변수는 알파벳 문자, 숫자, 밑줄 및 대시로 구성된 문자열이어야합니다. 공백이나 특수 문자를 포함해서는 안됩니다. order_id 는 가맹점 송장/정적 지갑/재발 지불 내에서 고유해야합니다. order_id 의 기존 송장을 찾으면 세부 정보를 반환하면 새 송장이 생성되지 않습니다.
networkstringnull블록 체인 네트워크 코드
url_returnstringmin: 6max: 255urlnull결제하기 전에 사용자는 결제 양식의 버튼을 클릭 하고이 URL의 저장 페이지로 돌아갈 수 있습니다.
url_successstringmin: 6max: 255urlnull성공적인 결제 후 사용자는 결제 양식의 버튼을 클릭 하고이 URL로 돌아갈 수 있습니다.
url_callbackstringmin: 6max: 255urlnull결제 상태가있는 webhooks가 전송 될 URL
is_payment_multiplebooleantrue사용자가 나머지 금액을 지불 할 수 있는지 여부. 이는 사용자가 한 번의 트랜잭션에 대해 송장의 전체 금액을 지불하지 않았으며 전체 금액으로 지불 할 수 있도록 허용 할 때 유용합니다. 이 기능을 비활성화하면 첫 번째 지불을받은 후 송장이 마무리되며 잔액에 대한 자금을 받게됩니다.
lifetimeintegermin: 300max: 432003600발행 된 송장의 수명 (초)
to_currencystring매개 변수는 송장 금액을 변환하기위한 대상 통화를 지정하는 데 사용됩니다. 송장을 만들 때 금액과 통화를 제공하면 API는 해당 금액을 to_currency 의 동등한 값으로 변환합니다.예를 들어, 비트 코인에서 20 USD에 대한 송장을 만들려면 :
amount : 20
currency : USD
to_currency : btc
API는 현재 환율에 따라 20 USD 금액을 BTC의 동등한 것으로 변환하며 사용자는 BTC로 지불합니다. to_currency 는 항상 화폐 통화 코드가 아닌 cryptocurrency 코드 여야합니다.
subtractintegermin: 0max: 1000고객에게 청구 된 지불위원회의 백분율1%의 비율이있는 경우, SUPTRACT = 100 (클라이언트가 100% 커미션을 지불하는)으로 100 USDT에 대한 송장을 작성하면 클라이언트는 101 USDT를 지불해야합니다.
accuracy_payment_percentnumericmin: 0max: 50지불에 수용 가능한 부정확성.예를 들어, 값 5를 통과하면 클라이언트가 금액의 95% 만 지불 한 경우에도 송장은 지불 된 것으로 표시됩니다.실제 지불 금액은 잔액에 적립됩니다.
additional_datastringmax: 255null귀하를위한 추가 정보 (고객에게 표시되지 않음)
currenciesarray판매자 설정에서 사용 가능한 통화 배열이 사용됩니다 (매개 변수가 설정되지 않은 경우 지원되는 모든 암호 화폐는 기본적으로 사용됩니다).사용 가능한 통화는 판매자 설정 섹션에 설정됩니다.지불을위한 허용 통화 목록. 고객이 송장을 지불하는 데 사용할 수있는 코인 목록을 제한하려는 경우 유용합니다. 구조
except_currenciesarraynull지불을위한 제외 통화 목록 구조
course_sourcestringmin: 4max: 20사용 가능한 값BinanceBinanceP2PExmoKucoin통과하지 않으면 Cryptomus 환율이 사용됩니다.송장의 전환을 위해 환율을 취하는 서비스.
from_referral_codestringnull요청을하는 판매자는 코드별로 참조자에 연결합니다.예를 들어, 귀하는 Cryptomus API를 통해 송장을 생성하는 응용 프로그램이며 고객은 다른 상점입니다.
응용 프로그램에 API 키 및 판매자 ID를 입력하고 자격 증명으로 요청을 보내고 추천 코드를 전달합니다.
따라서 고객은 Cryptomus 계정에 대한 진료 의뢰가되며 이직으로부터 수입을 받게됩니다.
discount_percentintegermin: -99max: 100null양수 :
을 사용하면 할인을 설정할 수 있습니다.
지불에 대한 5% 할인을 설정하려면 가치를 전달해야합니다 : 5
마이너스 숫자 :
을 사용하면 맞춤형 추가 커미션을 설정할 수 있습니다.
지불에 대한 추가 커미션 10%를 설정하려면 값을 전달해야합니다. -10송장을 작성할 때의 할인 비율은 송장에 특정 cryptocurrency가있는 경우에만 고려됩니다.
is_refreshbooleanfalse이 매개 변수를 사용하면 수명이 만료 된 경우 수명을 업데이트하고 송장에 대한 새 주소를 얻을 수 있습니다.이를 위해서는 필요한 모든 매개 변수를 전달해야하며 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 : btc
API는 현재 환율에 따라 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블록 체인 네트워크 코드

정의

통화 코드

정의

블록 체인 네트워크 코드

* - 필수 매개 변수

송장은 Currency 또는 to_currency 매개 변수가 cryptocurrency이고 네트워크 매개 변수가 전달되는 경우에만 생성시 특정 cryptocurrency 및 주소를 갖습니다 (또는 cryptocurrency는 BTC와 같은 네트워크가 하나만 있습니다).

요청 예제

아래는 필요한 매개 변수 수가있는 샘플 예제입니다. 이 경우 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요청 매개 변수에 전달 된 할인 또는 추가 커미션 백분율
discountcryptocurrency의 실제 할인 금액 또는 추가 커미션.예를 들어 송장 금액이 15 USDT이고 할인 _percent가 -5 인 경우 할인 값은 -0.75입니다.즉, amount + discount = payer_amount
payer_currency고객이 지불 해야하는 통화.
currency송장 통화 코드
merchant_amount당신의 잔액으로 인정받을 암호화 금액. 송장 payer_currency가 지정되지 않으면 값은 null이됩니다.
network블록 체인 네트워크 코드
address지불을위한 지갑 주소
from지불이 이루어진 지갑의 주소
txid거래 해시
payment_status지불 상태 모든 지불 상태
urlURL 결제 페이지
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}
복사