Kripto Ödeme Geçidi API: Entegrasyondan Önce Kontrol Edilecek 12 Şey

Her kripto ödeme API'si fatura oluşturabilir. Farklar tekrar denemelerde, kısmi ödemelerde ve başarısız webhook'larda ortaya çıkar. Geliştiriciler için 12 maddelik kontrol listesi ve mistKET API'sinin her maddeye yanıtı.

Güncellendi: 5 dk okuma
Kripto ödeme geçidi API kontrol listesi — imzalı istekler, fatura durumları ve webhook tekrar denemeleri

Her kripto ödeme geçidi API'si aynı şeyi vaat eder: fatura oluştur, ödemeyi al, callback'i gönder. Farklar sonradan ortaya çıkar — iki istek yarıştığında, müşteri fatura tutarından biraz az gönderdiğinde, sunucunuz bir saat kapalı kaldığında ya da bir saldırgan yakaladığı bir isteği tekrar gönderdiğinde. API'yi dikkatle seçmek, hızlı entegre etmekten çok daha fazla zaman kazandırır.

Bu yazı, kod yazmadan önce kripto ödeme API'lerini karşılaştıran geliştiriciler ve CTO'lar için bir kontrol listesi. Her maddede neye bakmanız gerektiğini, neden önemli olduğunu ve mistKET API'sinin bunu nasıl ele aldığını göreceksiniz. Seçiminizi yaptıysanız ve adım adım kod istiyorsanız kripto ödeme API entegrasyonu rehberimize geçin.

Olması gereken asgari endpoint'ler

Kullanışlı bir kripto ödeme API'si “ödeme oluştur”dan fazlasını sunmalıdır. En azından şunlara bakın:

YetenekNeden gereklimistKET endpoint'i
Fatura oluşturmaHer sipariş için süreli tek bir ödeme talebiPOST /invoices
Fatura sorgulamaKaçırılan webhook'ta mutabakatGET /invoices/{uuid}
Listeleme ve filtrelemeYönetim ekranları ve gece mutabakatıGET /invoices
Fatura iptaliTerk edilen siparişte stoğu serbest bırakmakPOST /invoices/{uuid}/cancel
Desteklenen varlıklarYalnızca şu an ödenebilen ağları göstermekGET /assets
Kur teklifiFatura oluşturmadan kripto tutarını göstermekGET /rate
Sağlık kontrolüİzleme ve kontrollü geri dönüşGET /health

Bir sağlayıcı faturaları sorgulamanıza veya listelemenize izin vermiyorsa webhook'lara körü körüne güvenmek zorunda kalırsınız — ilk başarısız teslimatta kötü bir pozisyon.

1. Kimlik doğrulama: her istek imzalı mı?

Başlıkta gönderilen bir API anahtarı en zayıf seçenektir: onu yakalayan veya sızdıran herkes fatura oluşturup iptal edebilir. Her isteğin, ağ üzerinde hiç dolaşmayan bir gizli anahtarla imzalandığı bir API tercih edin. mistKET istekleri X-Api-Key, X-Api-Timestamp ve zaman damgası ile ham gövdenin HMAC-SHA256 imzasını taşır. Gizli anahtar işletme panelinde yalnızca bir kez gösterilir.

2. Tekrar (replay) koruması

İmza tek başına yakalanmış bir isteğin yeniden gönderilmesini engellemez. Zaman damgası penceresi ve nonce desteği arayın. mistKET sunucu saatinden ±300 saniyeden fazla sapan zaman damgalarını reddeder ve durum değiştiren isteklerde aynı imzayı iki kez kabul etmez. İmza sürüm 2, her isteğe bir nonce ekler ve metot ile yolu da imzalar; böylece bir imza başka bir endpoint'te yeniden kullanılamaz.

3. Fatura oluşturmada idempotency

Ağlar zaman aşımına uğrar. Ödeme akışınız “fatura oluştur” çağrısını tekrar denerse bir sipariş için iki fatura oluşmamalıdır. İyi bir API idempotency anahtarı sunar. mistKET'te bu görevi kendi order_id değeriniz üstlenir: aynı sipariş numarasıyla tekrar çağırdığınızda yenisi oluşturulmaz, mevcut fatura "idempotent": true ile döner.

4. Gerçek ödemeleri kapsayan bir durum modeli

“Ödendi / ödenmedi” yetmez. Müşteriler borsa komisyon kestiği için biraz eksik, bazen fazla gönderir ya da süre dolduktan sonra öder. API'nin bu durumları açıkça gösterdiğinden emin olun. mistKET faturaları new, pending, underpaid, paid, confirmed, overpaid, expired ve cancelled durumlarından geçer; paid_amount, remaining_amount, can_pay_remaining ve under_review gibi alanlar sayesinde kodunuz hiçbir zaman tahmin yürütmek zorunda kalmaz.

Özetle: API “işlem görüldü” ile “işlem kesinleşti”yi ayırmalıdır. mistKET'te paid, transferin tespit edildiği ve onay beklediği anlamına gelir; siparişi yalnızca confirmed veya overpaid durumunda teslim edin.

5. Görünür onaylar

API, ödemenin kaç blok onayı aldığını ve kaç onay gerektiğini, ayrıca işlem hash'ini ve explorer linkini söylemelidir. Böylece ödeme destek talepleri hızlı bir kontrole dönüşür. mistKET her fatura için confirmations, required_confirmations ve hash, tutar, durum ve explorer URL'si içeren bir transactions[] dizisi döndürür.

6. Kur sabitleme ve fiyat para birimleri

Siz fiat ile fiyatlarsınız, müşteri kripto ile öder. Hangi fiat para birimlerinin kabul edildiğini ve kurun ne kadar süre sabit kaldığını sorun. mistKET USD, EUR, TRY, RUB, GBP ve AED (veya doğrudan kripto sembolü) cinsinden fiyat kabul eder, kuru fatura ömrü boyunca sabitler ve bu süreyi fatura başına 5 ile 1.440 dakika arasında ayarlamanıza izin verir.

7. Ağ seçimi

Ağı API çağrısında sabitleyebiliyor musunuz, yoksa müşterinin ödeme sayfasında seçmesine mi bırakıyorsunuz? İkisi de işe yarar: sabitlemek botlara ve otomatik akışlara uyar, müşteriye bırakmak yanlış ağdan gönderimleri azaltır. mistKET ikisini de pay_currency + network veya asset_id ile destekler; GET /assets bir ağda boş adres yoksa available: false döndürür. Bugün TRON (TRC-20) üzerinde USDT etkindir; ek varlık ve ağlar talep üzerine işletme bazında açılır. TRON'un neden yaygın varsayılan olduğunu USDT TRC20 ve ERC20 yazımızda bulabilirsiniz.

8. İmzalı, tekrar denenen ve izlenebilir webhook'lar

Entegrasyonların çoğu webhook'larda bozulur. Dört şeyi kontrol edin: gövde imzalı mı, eski teslimatları reddetmek için zaman damgası var mı, başarısız teslimatlar saniyeler değil saatler boyunca tekrar deneniyor mu ve her teslimatın tekilleştirme için bir kimliği var mı. mistKET webhook'ları ayrı bir webhook anahtarıyla imzalar, X-Mistket-Delivery ve X-Mistket-Event başlıklarını gönderir ve 2xx olmayan yanıtları 10 sn, 30 sn, 2 dk, 10 dk, 30 dk, 1 sa, 2 sa ve 3 sa aralıklarla yeniden dener; teslimat geçmişi panelde görünür. Handler tasarımının ayrıntıları kripto ödeme webhook'ları yazımızda.

9. Belgelenmiş hatalar ve hız limitleri

Hatalı imza, engellenen IP veya doğrulama hatasının neye benzediğini önceden bilmelisiniz. mistKET tutarlı bir { "success": false, "error": … } gövdesi döndürür, doğrulama hatalarında alan bazında ayrıntı verir, standart kodlar (401, 403, 404, 422, 429, 503) kullanır ve limitini belgeler: API anahtarı başına dakikada 120 istek.

10. Ağ düzeyinde kontroller

IP izin listesi sayesinde sızan bir anahtar sizin sunucularınız dışında hiçbir yerden kullanılamaz. mistKET bunu panelden tanımlamanıza izin verir; başka adreslerden gelen istekler 403 alır. İmzalı istekler ve kısa zaman penceresiyle birlikte en yaygın saldırı yollarını kapatır.

11. SDK bağımlılığı yok

SDK'lar, dil sürümünüzün gerisinde kalana kadar pratiktir. Düz HTTPS ve JSON üzerine kurulu, imzalamanın tek bir HMAC çağrısı olduğu bir API PHP, Node.js, Python, Go veya bir shell betiğinden çalışır. mistKET API dokümantasyonunda PHP, Node.js ve Python için kopyala-yapıştır istemciler yayınlar, ancak hiçbiri zorunlu değildir.

12. Geliştirici olmayanlar için manuel yol

API öncelikli işletmelerin de zaman zaman tek seferlik bir müşteriye fatura kesmesi gerekir. Faturaların bir panelde de oluşturulup link olarak paylaşılabildiğinden emin olun; satış ve destek ekipleri geliştiricilere ihtiyaç duymasın. mistKET'te aynı faturalar işletme panelinde de bulunur ve her barındırılan ödeme sayfası bir ödeme linki olarak çalışır.

İpucu: canlıya geçmeden önce küçük ve gerçek bir faturayı uçtan uca deneyin — oluşturun, ödeyin, webhook'u alın, ardından GET /invoices/{uuid} çağırıp karşılaştırın. İmzalamanızı, webhook handler'ınızı ve mutabakatınızı tek seferde doğrularsınız.

Kripto ödeme API'si değerlendirirken alarm işaretleri

  • İmzasız webhook'lar ya da yalnızca gizli bir URL ile “korunan” webhook'lar.
  • Oluşturulduktan sonra faturayı sorgulama imkânı olmaması.
  • Eksik veya fazla ödeme durumu olmaması — uç durumlar destek sohbetine düşer.
  • Yalnızca birkaç dakika süren tekrar denemeler veya teslimat kaydının olmaması.
  • Belgelenmemiş hız limitleri ve hata formatları.
  • İşlem başına belirsiz fiyatlandırma — kripto ödeme geçidi komisyonları rehberimizle karşılaştırın.

mistKET API erişimi nasıl alınır?

İşletmeler mistKET ekibi tarafından kabul edilir: web sitenizi, iş türünüzü ve beklenen hacminizi Telegram'da @mistnetwork adresine yazın. Onaylandıktan sonra API anahtarınızı, gizli anahtarınızı ve webhook ayarlarınızı işletme panelinde oluşturursunuz. Tipik bir entegrasyon bir öğleden sonra sürer.

7REST endpoint'i
8webhook denemesi, ~7 saate yayılır
HMACiki yönde imzalı

Başlamadan önce geliştirici bölümünü, fiyatlandırmayı ve eksiksiz API referansını inceleyin.

Sık sorulan sorular

Bir kripto ödeme geçidi API'sinde neler olmalı?
En azından: fatura oluşturma, sorgulama, listeleme ve iptal, desteklenen varlık listesi, kur teklifi, tekrar denenen imzalı webhook'lar, belgelenmiş hatalar ve limitler. Sorgulama ve listeleme olmadan kaçırılan webhook'ların mutabakatını yapamazsınız.
mistKET API'sinde kimlik doğrulama nasıl yapılır?
Her istek bir API anahtarı, Unix zaman damgası ve API gizli anahtarınızla oluşturulan, zaman damgası ile ham gövdenin HMAC-SHA256 imzasını taşır. İmza sürüm 2 ayrıca nonce ekler ve metot ile yolu da imzalar.
Bir istek zaman aşımına uğradığında mükerrer faturayı nasıl önlerim?
Her faturayla kendi order_id değerinizi gönderin. Aynı sipariş numarasıyla tekrar çağırırsanız mistKET ikinci bir fatura oluşturmaz, mevcut faturayı idempotent olarak işaretleyip döndürür.
Siparişi ne zaman teslim etmeliyim?
Yalnızca fatura confirmed veya overpaid olduğunda. paid durumu transferin görüldüğünü ama gereken blok onaylarını hâlâ beklediğini gösterir.
mistKET API'si ile hangi kriptoları kabul edebilirim?
Ödeme sayfasında bugün TRON (TRC-20) üzerinde USDT etkindir. Ek varlık ve ağlar talep üzerine işletme bazında açılır; GET /assets mağazanız için neyin kullanılabilir olduğunu her zaman gösterir.
mistKET API'sinin hız limiti var mı?
Evet, API anahtarı başına dakikada 120 istek. Aşıldığında HTTP 429 döner; bu yüzden varlık listesini önbelleğe alın ve sık sorgulama yerine webhook kullanın.

İlgili yazılar

Son yazılar

Tüm yazılar