Fatura Oluşturma

post https://api.cryptomus.com/v1/payment Kopyala

Rica etmek

Sorgu parametreleri

İsimParametre türüVarsayılan değerTanım
amount*string-Ödenecek tutar.Miktarda pennies varsa, o zaman bir ayırıcı ile gönderin '.
Örnek: 10.28
currency*string-Para birimi kodu
order_id*stringmin: 1max: 100alpha_dash-Sisteminizde Sipariş KimliğiParametre, alfabetik karakterler, sayılar, alt çizgiler ve çizgilerden oluşan bir dize olmalıdır. Herhangi bir alan veya özel karakter içermemelidir. order_id, satıcı faturalar/statik cüzdanlar/nüks ödemeleri içinde benzersiz olmalıdır order_id ile mevcut bir fatura bulduğumuzda, ayrıntılarını döndürürüz, yeni bir fatura oluşturulmayacaktır.
networkstringnullBlockchain Ağ Kodu
url_returnstringmin: 6max: 255urlnullÖdemeden önce, kullanıcı ödeme formundaki düğmeye tıklayabilir ve bu URL'deki mağaza sayfasına geri dönebilir.
url_successstringmin: 6max: 255urlnullBaşarılı ödemeden sonra kullanıcı ödeme formundaki düğmeye tıklayabilir ve bu URL'ye geri dönebilir.
url_callbackstringmin: 6max: 255urlnullÖdeme durumuna sahip webhooks'un hangi URL'si gönderilecek
is_payment_multiplebooleantrueKullanıcının kalan tutarı ödemesine izin verilip verilmeyeceği. Bu, kullanıcı bir işlem için faturanın tüm tutarını ödemediğinde ve tam tutarda ödeme yapmasına izin vermek istediğinizde kullanışlıdır. Bu özelliği devre dışı bırakırsanız, fatura ilk ödemeyi aldıktan sonra sonuçlandırır ve bakiyenize fon alırsınız.
lifetimeintegermin: 300max: 432003600Yayınlanan faturanın ömrü (saniyeler içinde)
to_currencystring-Parametre, fatura tutarını dönüştürmek için hedef para birimini belirtmek için kullanılır. Bir fatura oluştururken, bir miktar ve para birimi sağlarsınız ve API bu miktarı to_currency'deki eşdeğer değere dönüştürür.Örneğin, Bitcoin'de 20 USD için bir fatura oluşturmak için:
amount: 20
currency: usd
to_currency : btc
API, mevcut döviz kuruna göre 20 USD tutarı BTC'de eşdeğerine dönüştürecek ve kullanıcı BTC'de ödeyecek to_currency her zaman bir fiat para kodu değil, kripto para kodu olmalıdır.
subtractintegermin: 0max: 1000Müşteriye tahsil edilen ödeme komisyonunun yüzdesi% 1 oranınız varsa, 100 USDT için bir fatura oluşturursanız = 100 (müşteri% 100 komisyon öder), müşteri 101 USDT ödemek zorunda kalacaktır.
accuracy_payment_percentnumericmin: 0max: 50Ödemede kabul edilebilir yanlışlık.Örneğin, 5 değerini geçerseniz, müşteri tutarın sadece% 95'ini ödese bile fatura ödenir.Gerçek ödeme tutarı bakiyeye yatırılacaktır
additional_datastringmax: 255nullSizin için ek bilgi (müşteriye gösterilmemiştir)
currenciesarraySatıcınızın ayarlarından mevcut para birimleri dizisi kullanılır (parametre ayarlanmamışsa, desteklenen tüm kripto para birimleri varsayılan olarak kullanılır).Mevcut para birimleri satıcı ayarları bölümünde ayarlanmıştır.Ödeme için izin verilen para birimlerinin listesi. Müşterilerinizin fatura ödemek için kullanabileceği para listesini sınırlamak istiyorsanız bu yararlıdır. Yapı
except_currenciesarraynullÖdeme için hariç tutulan para birimlerinin listesi Yapı
from_referral_codestringnullİsteği yapan satıcı, bir yönlendiriciye kodla bağlanır.Örneğin, Cryptomus API'si aracılığıyla fatura üreten bir uygulamasınız ve müşterileriniz diğer mağazalardır.
Uygulamanızda API anahtarlarını ve satıcı kimliklerini girerler ve kimlik bilgileriyle istek gönderir ve yönlendirme kodunuzu geçer.
Böylece, müşterileriniz Cryptomus hesabınızda sevk haline gelir ve cirolarından gelir elde edersiniz.
discount_percentintegermin: -99max: 90nullPozitif Sayılar:
indirim ayarlamanızı sağlar.
Ödeme için% 5 indirim ayarlamak için bir değer geçmelisiniz: 5
Negatif sayılar:
Özel ek komisyon ayarlamanıza izin verir.
Ödeme için% 10'luk ek bir komisyon ayarlamak için bir değer geçmelisiniz: -10Bir fatura oluştururken indirim yüzdesi, yalnızca faturada belirli bir kripto para birimi varsa dikkate alınır.
is_refreshbooleanfalseBu parametreyi kullanarak, ömür boyu süresi dolmuşsa ömür boyu güncelleyebilir ve fatura için yeni bir adres alabilirsiniz.Bunu yapmak için, gerekli tüm parametreleri geçmeniz gerekir ve geçti order_id ile fatura yenilenir.Yalnızca address , payment_status ve expired_at değiştirildi. Geçen parametrelere bakılmaksızın başka hiçbir alan değiştirilmez.

Parametre türü

string

Tanım

Ödenecek tutar.Miktarda pennies varsa, o zaman bir ayırıcı ile gönderin '.
Örnek: 10.28

Parametre türü

string

Tanım

Para birimi kodu

Parametre türü

stringmin: 1max: 100alpha_dash

Tanım

Sisteminizde Sipariş KimliğiParametre, alfabetik karakterler, sayılar, alt çizgiler ve çizgilerden oluşan bir dize olmalıdır. Herhangi bir alan veya özel karakter içermemelidir. order_id, satıcı faturalar/statik cüzdanlar/nüks ödemeleri içinde benzersiz olmalıdır order_id ile mevcut bir fatura bulduğumuzda, ayrıntılarını döndürürüz, yeni bir fatura oluşturulmayacaktır.

Parametre türü

string

Varsayılan değer

null

Tanım

Blockchain Ağ Kodu

Parametre türü

stringmin: 6max: 255url

Varsayılan değer

null

Tanım

Ödemeden önce, kullanıcı ödeme formundaki düğmeye tıklayabilir ve bu URL'deki mağaza sayfasına geri dönebilir.

Parametre türü

stringmin: 6max: 255url

Varsayılan değer

null

Tanım

Başarılı ödemeden sonra kullanıcı ödeme formundaki düğmeye tıklayabilir ve bu URL'ye geri dönebilir.

Parametre türü

stringmin: 6max: 255url

Varsayılan değer

null

Tanım

Ödeme durumuna sahip webhooks'un hangi URL'si gönderilecek

Parametre türü

boolean

Varsayılan değer

true

Tanım

Kullanıcının kalan tutarı ödemesine izin verilip verilmeyeceği. Bu, kullanıcı bir işlem için faturanın tüm tutarını ödemediğinde ve tam tutarda ödeme yapmasına izin vermek istediğinizde kullanışlıdır. Bu özelliği devre dışı bırakırsanız, fatura ilk ödemeyi aldıktan sonra sonuçlandırır ve bakiyenize fon alırsınız.

Parametre türü

integermin: 300max: 43200

Varsayılan değer

3600

Tanım

Yayınlanan faturanın ömrü (saniyeler içinde)

Parametre türü

string

Tanım

Parametre, fatura tutarını dönüştürmek için hedef para birimini belirtmek için kullanılır. Bir fatura oluştururken, bir miktar ve para birimi sağlarsınız ve API bu miktarı to_currency'deki eşdeğer değere dönüştürür.Örneğin, Bitcoin'de 20 USD için bir fatura oluşturmak için:
amount: 20
currency: usd
to_currency : btc
API, mevcut döviz kuruna göre 20 USD tutarı BTC'de eşdeğerine dönüştürecek ve kullanıcı BTC'de ödeyecek to_currency her zaman bir fiat para kodu değil, kripto para kodu olmalıdır.

Parametre türü

integermin: 0max: 100

Varsayılan değer

0

Tanım

Müşteriye tahsil edilen ödeme komisyonunun yüzdesi% 1 oranınız varsa, 100 USDT için bir fatura oluşturursanız = 100 (müşteri% 100 komisyon öder), müşteri 101 USDT ödemek zorunda kalacaktır.

Parametre türü

numericmin: 0max: 5

Varsayılan değer

0

Tanım

Ödemede kabul edilebilir yanlışlık.Örneğin, 5 değerini geçerseniz, müşteri tutarın sadece% 95'ini ödese bile fatura ödenir.Gerçek ödeme tutarı bakiyeye yatırılacaktır

Parametre türü

stringmax: 255

Varsayılan değer

null

Tanım

Sizin için ek bilgi (müşteriye gösterilmemiştir)

Parametre türü

array

Varsayılan değer

Satıcınızın ayarlarından mevcut para birimleri dizisi kullanılır (parametre ayarlanmamışsa, desteklenen tüm kripto para birimleri varsayılan olarak kullanılır).Mevcut para birimleri satıcı ayarları bölümünde ayarlanmıştır.

Tanım

Ödeme için izin verilen para birimlerinin listesi. Müşterilerinizin fatura ödemek için kullanabileceği para listesini sınırlamak istiyorsanız bu yararlıdır. Yapı

Parametre türü

array

Varsayılan değer

null

Tanım

Ödeme için hariç tutulan para birimlerinin listesi Yapı

Parametre türü

string

Varsayılan değer

null

Tanım

İsteği yapan satıcı, bir yönlendiriciye kodla bağlanır.Örneğin, Cryptomus API'si aracılığıyla fatura üreten bir uygulamasınız ve müşterileriniz diğer mağazalardır.
Uygulamanızda API anahtarlarını ve satıcı kimliklerini girerler ve kimlik bilgileriyle istek gönderir ve yönlendirme kodunuzu geçer.
Böylece, müşterileriniz Cryptomus hesabınızda sevk haline gelir ve cirolarından gelir elde edersiniz.

Parametre türü

integermin: -99max: 90

Varsayılan değer

null

Tanım

Pozitif Sayılar:
indirim ayarlamanızı sağlar.
Ödeme için% 5 indirim ayarlamak için bir değer geçmelisiniz: 5
Negatif sayılar:
Özel ek komisyon ayarlamanıza izin verir.
Ödeme için% 10'luk ek bir komisyon ayarlamak için bir değer geçmelisiniz: -10Bir fatura oluştururken indirim yüzdesi, yalnızca faturada belirli bir kripto para birimi varsa dikkate alınır.

Parametre türü

boolean

Varsayılan değer

false

Tanım

Bu parametreyi kullanarak, ömür boyu süresi dolmuşsa ömür boyu güncelleyebilir ve fatura için yeni bir adres alabilirsiniz.Bunu yapmak için, gerekli tüm parametreleri geçmeniz gerekir ve geçti order_id ile fatura yenilenir.Yalnızca address , payment_status ve expired_at değiştirildi. Geçen parametrelere bakılmaksızın başka hiçbir alan değiştirilmez.

* - zorunlu parametre

Yapısı Para birimleri

İsimTanım
currency*Para birimi kodu
networkBlockchain Ağ Kodu

Tanım

Para birimi kodu

Tanım

Blockchain Ağ Kodu

* - zorunlu parametre

Yapısı except_currencies

İsimTanım
currency*Para birimi kodu
networkBlockchain Ağ Kodu

Tanım

Para birimi kodu

Tanım

Blockchain Ağ Kodu

* - zorunlu parametre

Fatura, yalnızca para birimi veya to_currency parametresi bir kripto para birimi ise ve ağ parametresi geçiyorsa (veya bir kripto para birimi, örneğin BTC gibi yalnızca bir ağa sahipse) oluşturulma sırasında belirli bir kripto para birimi ve adresi olacaktır.

Talep Örneği

Aşağıda, gerekli minimum sayıda parametreye sahip örnek bir örnek verilmiştir. Bu durumda, fiat para birimi USD ile bir fatura oluşturulacaktır. Ödeme sayfasında, kullanıcı bu faturayı ödemek için kripto para birimini ve ağı seçebilecektir.


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"
}'
Kopyala

Cevap

Yanıt parametreleri

İsimParametre türüTanım
uuidstringFatura uuid
order_idstring|nullSisteminizde Sipariş Kimliği
amountstringFaturanın miktarı
payment_amountstring|nullMüşteri tarafından ödenen miktar
payment_amount_usdstring|nullUSD'de Müşteri tarafından gerçekten ödenen tutar
payer_amountstring|nullMüşterinin bir indirim veya ek komisyon da dahil olmak üzere ödemesi gereken payer_currency .
payer_amount_exchange_ratestring|nullÖdeme yapıldığında uygulanan döviz kuru
discount_percentinteger|nullİstek parametrelerinde geçirilen indirim veya ek komisyon yüzdesi
discountstringKripto para biriminde gerçek indirim veya ek komisyon miktarı.Örneğin, fatura tutarı 15 USDT ve indirim_perent ise -5 ise, indirim değeri -0.75 olacaktıryani amount + discount = payer_amount
payer_currencystring|nullMüşterinin ödemeyi yapması gereken para birimi.
currencystringFatura para kodu
commentsstring|nullYorum
merchant_amountstring|nullBakiyenize yatırılacak kripto tutarı. Payer_currency fatura belirtilmezse, değer boş olacaktır.
networkstring|nullBlockchain Ağ Kodu
addressstring|nullÖdeme için cüzdan adresi
fromstring|nullÖdemenin yapıldığı cüzdanın adresi
txidstring|nullİşlem karma
payment_statusstringÖdeme durumu Tüm Ödeme Durumları
urlstringURL Ödeme Sayfası
expired_atinteger|nullFaturanın son kullanma zaman damgası
statusstringÖdeme durumu Tüm Ödeme Durumları
is_finalbooleanFaturanın sonuçlanıp sonuçlanmadığı.Fatura sonuçlandırıldığında bir fatura ödemek imkansızdır (ödenir veya süresi dolmuş)
additional_datastring|nullEk Bilgiler
created_atstring|nullFaturanın Oluşturulması Tarihi. Timezone UTC+3'tür
updated_atstring|nullSon fatura güncellenen tarih. Timezone UTC+3'tür
commissionstring|nullCryptomus Komisyon Miktarı
address_qr_codestring|nullAdres QR kodu
convertÖdemenin otomatik olarak dönüştürüleceği para birimi hakkında bilgi. Dönüştürme Payer_currency 'den USDT'ye gerçekleştirilirconvert_currency_code parametresi geçirilirse mevcuttur.
convert.to_currencystringÖdemenin dönüştürüleceği para birimi kodu
convert.commissionstringDönüşüm ücreti
convert.ratestring|nullDönüşüm oranı
convert.amountstring|nullTüm komisyonlar çıkarıldığında, satıcının bakiyesine eklenen to_currency dönüşüm miktarı.
convert_fromYanlış ödemenin hangi para biriminden yapıldığına dair bilgi.Ödeme hatalıysa belirtin.
convert_from.from_currencystringPara biriminden
convert_from.from_amountstring|nullMiktar
convert_from.from_networkstring|nullBlockchain Ağ Kodu

Parametre türü

string

Tanım

Fatura uuid

Parametre türü

string|null

Tanım

Sisteminizde Sipariş Kimliği

Parametre türü

string

Tanım

Faturanın miktarı

Parametre türü

string|null

Tanım

Müşteri tarafından ödenen miktar

Parametre türü

string|null

Tanım

USD'de Müşteri tarafından gerçekten ödenen tutar

Parametre türü

string|null

Tanım

Müşterinin bir indirim veya ek komisyon da dahil olmak üzere ödemesi gereken payer_currency .

Parametre türü

string|null

Tanım

Ödeme yapıldığında uygulanan döviz kuru

Parametre türü

integer|null

Tanım

İstek parametrelerinde geçirilen indirim veya ek komisyon yüzdesi

Parametre türü

string

Tanım

Kripto para biriminde gerçek indirim veya ek komisyon miktarı.Örneğin, fatura tutarı 15 USDT ve indirim_perent ise -5 ise, indirim değeri -0.75 olacaktıryani amount + discount = payer_amount

Parametre türü

string|null

Tanım

Müşterinin ödemeyi yapması gereken para birimi.

Parametre türü

string

Tanım

Fatura para kodu

Parametre türü

string|null

Tanım

Yorum

Parametre türü

string|null

Tanım

Bakiyenize yatırılacak kripto tutarı. Payer_currency fatura belirtilmezse, değer boş olacaktır.

Parametre türü

string|null

Tanım

Blockchain Ağ Kodu

Parametre türü

string|null

Tanım

Ödeme için cüzdan adresi

Parametre türü

string|null

Tanım

Ödemenin yapıldığı cüzdanın adresi

Parametre türü

string|null

Tanım

İşlem karma

Parametre türü

string

Tanım

Ödeme durumu Tüm Ödeme Durumları

Parametre türü

string

Tanım

URL Ödeme Sayfası

Parametre türü

integer|null

Tanım

Faturanın son kullanma zaman damgası

Parametre türü

string

Tanım

Ödeme durumu Tüm Ödeme Durumları

Parametre türü

boolean

Tanım

Faturanın sonuçlanıp sonuçlanmadığı.Fatura sonuçlandırıldığında bir fatura ödemek imkansızdır (ödenir veya süresi dolmuş)

Parametre türü

string|null

Tanım

Ek Bilgiler

Parametre türü

string|null

Tanım

Faturanın Oluşturulması Tarihi. Timezone UTC+3'tür

Parametre türü

string|null

Tanım

Son fatura güncellenen tarih. Timezone UTC+3'tür

Parametre türü

string|null

Tanım

Cryptomus Komisyon Miktarı

Parametre türü

string|null

Tanım

Adres QR kodu

Tanım

Ödemenin otomatik olarak dönüştürüleceği para birimi hakkında bilgi. Dönüştürme Payer_currency 'den USDT'ye gerçekleştirilirconvert_currency_code parametresi geçirilirse mevcuttur.

Parametre türü

string

Tanım

Ödemenin dönüştürüleceği para birimi kodu

Parametre türü

string

Tanım

Dönüşüm ücreti

Parametre türü

string|null

Tanım

Dönüşüm oranı

Parametre türü

string|null

Tanım

Tüm komisyonlar çıkarıldığında, satıcının bakiyesine eklenen to_currency dönüşüm miktarı.

Tanım

Yanlış ödemenin hangi para biriminden yapıldığına dair bilgi.Ödeme hatalıysa belirtin.

Parametre türü

string

Tanım

Para biriminden

Parametre türü

string|null

Tanım

Miktar

Parametre türü

string|null

Tanım

Blockchain Ağ Kodu

Yanıt örneği


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		"payment_amount_usd": null,
9		"payer_amount": null,
10		"payer_amount_exchange_rate": null,
11		"discount_percent": null,
12		"discount": "0.00000000",
13		"payer_currency": null,
14		"currency": "USD",
15		"comments": null,
16		"merchant_amount": null,
17		"network": null,
18		"address": null,
19		"from": null,
20		"txid": null,
21		"payment_status": "check",
22		"url": "https://pay.cryptomus.com/pay/26109ba0-b05b-4ee0-93d1-fd62c822ce95",
23		"expired_at": 1689098133,
24		"status": "check",
25		"is_final": false,
26		"additional_data": null,
27		"created_at": "2023-07-11T20:23:52+03:00",
28		"updated_at": "2023-07-11T21:24:17+03:00",
29		"commission": null,
30		"address_qr_code": null
31	}
32}
Kopyala

Daha fazla örnek

Tron ağında 20 USDT için bir fatura oluşturmak için veri isteyin. Faturanın yaratıldığı sırada bir adresi olacaktır.


1{
2	"amount": "20",
3	"currency": "USDT",
4	"order_id": "1",
5	"network": "tron"
6}
Kopyala

25 USD için bir fatura oluşturmak için veri isteyin ve istemcilerin herhangi bir ağda yalnızca USDT'ye göre ödeme yapmasına izin verin.


1{
2	"amount": "25",
3	"currency": "USD",
4	"order_id": "1",
5	"to_currency": "USDT"
6}
Kopyala

25 USD için bir fatura oluşturmak ve müşterilerin yalnızca Tron Network'te USDT tarafından ödeme yapmasına izin vermek için veri isteyin. Faturanın yaratıldığı sırada bir adresi olacaktır.


1{
2	"amount": "25",
3	"currency": "USD",
4	"order_id": "1",
5	"to_currency": "USDT",
6	"network": "tron"
7}
Kopyala

20 USDT için bir fatura oluşturmak ve müşterilerin mevcut tüm ağlarda ödeme yapmasına izin vermek için veri isteyin


1{
2	"amount": "20",
3	"currency": "USDT",
4	"order_id": "1"
5}
Kopyala

20 USD için bir fatura oluşturmak ve müşterilerin yalnızca Bitcoin'de ödeme yapmasına izin vermesini isteyin. Faturanın yaratıldığı sırada bir adresi olacaktır.


1{
2	"amount": "20",
3	"currency": "USD",
4	"order_id": "1",
5	"to_currency": "BTC"
6}
Kopyala

0.5 BTC için bir fatura oluşturmak ve istemcilerin yalnızca Bitcoin'de ödeme yapmasına izin vermesini isteyin. Faturanın yaratıldığı sırada bir adresi olacaktır.


1{
2	"amount": "0.5",
3	"currency": "BTC",
4	"order_id": "1"
5}
Kopyala

Olası hatalar

Doğrulama hataları

kodlamak : 422

örnek yanıtlar:

Bazı parametre gerekiyorsa ve geçmiyorsa:


1{
2	"state": 1,
3	"errors": {
4		"amount": ["validation.required"]
5	}
6}
Kopyala

Desteklenmeyen ağ kodunu sağladıysanız


1{
2    "state": 1,
3    "message": "The network was not found"
4}
Kopyala

Para birimi parametresinde sağladığınız para birimi kodunu desteklemezsek:


1{
2    "state": 1,
3    "message": "The currency was not found"
4}
Kopyala

Ödemeleriniz engellenirse. Bu durumda destekle iletişime geçmeniz gerekir.


1{
2    "state": 1,
3    "message": "You are forbidden"
4}
Kopyala

to_currency parametresinde aktarılan para biriminin ödeme hizmetini bulamazsak:


1{
2    "state": 1,
3    "message": "Not found service to_currency"
4}
Kopyala

Eğer to_currency 'a dönüşürken yanlışlıkla bir şey olur:


1{
2    "state": 1,
3    "message": "Error convert to_currency"
4}
Kopyala

Ödeme tutarı, kripto para birimi için desteklenen minimum miktardan azsa, bu hata mesajını alacaksınız:


1{
2    "state": 1,
3    "message": "Minimum amount 0.5 USDT"
4}
Kopyala

Ödeme tutarı, kripto para birimi için desteklenen maksimum tutardan fazlaysa, bu hata mesajını alacaksınız:


1{
2    "state": 1,
3    "message": "Maximum amount 10000000 USDT"
4}
Kopyala

Ödemenin kripto para birimi ile aktif bir satıcı cüzdanınız olmayacaksa, bu hatayı alacaksınız:


1{
2    "state": 1,
3    "message": "Wallet not found"
4}
Kopyala

Teknik çalışma gerçekleşir ve ödeme geçici olarak kullanılamazsa, bu hata mesajlarını alabilirsiniz:


1{
2    "state": 1,
3    "message": "Gateway error"
4}
Kopyala


1{
2    "state": 1,
3    "message": "The terminal was not found"
4}
Kopyala


1{
2    "state": 1,
3    "message": "Server error"
4}
Kopyala

İç Sunucu Hatası

kodlamak : 500

örnek yanıtlar:


1{
2	"message": "Server error, #1",
3	"code": 500,
4	"error": null
5}
Kopyala