Ödemeler ve durumlar
Bir fatura bir siparişi tanımlar. Bir ödeme, onu ödemek için belirli bir girişimdir. Bir ödeme girişimi ile bağlantısının kullanılabilirliği ayrı durumlardır.
Bu sayfada
Ödeme kaydı#
Fatura sipariş koşullarını saklar; ödeme, ağ geçidi işlemini tanımlar. İlk başlatma, kalıcı bir bağlama ve bir sunucu Idempotency-Key ayırtır. Gönderim başladıktan sonra, başka bir yöntem aynı fatura üzerinde ikinci bir tahsilat oluşturamaz.
GET /api/payment-links ve GET /api/v1/payments, bağlantı.ödeme ögesini sahibine döndürür. Bağlantının etkin/duraklatılmış/iptal edilmiş/süresi dolmuş durumu, ödeme durumundan ayrıdır. Müşteri yalnızca rastgele ödeme jetonu aracılığıyla kendi işlemini okuyabilir.
| Veri | Amaç |
|---|---|
| Tanımlayıcı ve sipariş | Girişimi bir satın alma ile ilişkilendir |
| Temel tutar ve para birimi | Hesaplama tabanı |
| Ödeme yöntemi | Geçerli ücret ve vergi |
| KDV mükellefi | Vergiyi kim karşılar |
| Ücret, KDV ve toplamlar | Kaydedilmiş hesaplama |
| Durum ve zaman | Geçerli işlem durumu |
| Ağ geçidi olay referansı | Sunucu onay kaynağı |
Canlı işlem durumları#
Demo, ayrı test kayıtları kullanır. Bir demo durumunu değiştirmek, gerçek bir ödemeyi onaylamaz veya mali kayıtları değiştirmez.
| Durum | Anlam |
|---|---|
| beklemede | İşlem oluşturuldu; işlem veya sonuç bekleniyor |
| requires_action | Bir banka kodu veya müşteri onayı gereklidir |
| processing | Sağlayıcı hâlâ sonucu doğruluyor |
| başarılı | Sunucu kesin ödemeyi doğruladı |
| başarısız | Girişim onaylanmış ödeme olmadan sona erdi |
| expired | Talimatların süresi doldu; mutabakat hâlâ mevcut |
| review_required | Ek inceleme gerekiyor; tekrar ödeme yapmayın |
| partially_paid | Tutarın yalnızca bir kısmı alındı; başka bir ödeme oluşturmayın |
| partially_refunded | Ödemenin bir kısmı iade edildi |
| refunded | İade onaylandı |
| disputed | İşlem ihtilaflıdır |
Gerçeğin kaynağı#
İmzalı bir webhook, kesin ağ geçidi işleminin kimliği doğrulanmış bir okumasını tetikler. Kimlikler, sipariş, para birimi, yöntem, temel ve nihai tutarlar, canlı mod ve monotonik sürüm doğrulanır. Gelen bir olay adı tek başına para kanıtı değildir.
Durum, makbuz ve satıcı olayı atomik olarak kaydedilir. Eski yanıtlar daha yeni bir sürümün üzerine yazamaz; kopyalar iki kez yerine getirmez ve beklemede, onaylanmış bir ödemenin yerini alamaz. Bu kayıtlar otomatik olarak çekilebilir bir bakiye veya ödeme oluşturmaz.
Sonuç bilinmediğinde#
- 1
Orijinal faturayı ve işlem tanımlayıcısını koruyun.
- 2
GET /api/checkout/{token}/status uç noktasını okuyun; bu bir tahsilat oluşturmaz.
- 3
Açık mutabakat gerektiğinde POST /api/checkout/{token}/reconcile uç noktasını kullanın.
- 4
Belirsiz bir sonuçtan sonra yöntemi, tutarı veya idempotency anahtarını değiştirmeyin.
Birden fazla mağaza ve tek USD taban fiyat#
Toplu analiz ve işlemler için Tüm mağazaları seçin veya kendi kayıtları için bir mağaza seçin. Her mağazanın ayrı bir storeId'si, adı, varsayılan KDV'si, faturaları, API anahtarları, webhook uç noktaları, olay geçmişi ve web sitesi uygulaması vardır. Bildirimler ve destek talepleri hesaba aittir. Bir hesap en fazla 100 mağaza oluşturabilir. Mevcut kayıtlar ilk mağazasında kalır.
Yeni çalışma alanı faturaları pricingMode="universal" ve USD taban fiyat kullanır. Any, kart, alipay, sbp ve kriptoyu içerir; bir satıcı bir alt küme seçebilir. Kartlar ve Alipay USD tahsil eder. SBP, Rusya Merkez Bankası USD/RUB referans kurunu kullanarak RUB tahsil eder. Kripto, açık fatura kuralı 1 USD = 1 USDT kapsamında USDT tahsil eder. Bu bir fatura dönüştürme kuralıdır, piyasa USDT kotasyonu değildir. Ağ geçidi, transferden önce seçilen coin'in kurunu, tam transfer tutarını ve talimatlarını sağlar.
Referans kuru ve her iki tutar oluşturma sırasında dondurulur. RUB dönüştürmesi içeren faturalar 24 saat içinde sona erer. Referans kuru alınamazsa, oluşturma FX_UNAVAILABLE ile başarısız olur; uydurulmuş veya bayat yedek kur kullanılmaz. Sahip yanıt tutarı ve kotasyonlar USD muhasebe para birimini kullanır. quotes[method].settlement, yerel tahsil kotasyonunu içerir. Genel ödeme sayfası, seçilen tahsil para birimini currency içinde, orijinal fiyatı baseAmountMinor/baseCurrency içinde ve referans kurunu fx içinde gösterir. Bir ödeme gönderildikten sonra yöntemi değiştirilemez; bir faturanın tek ağ geçidi işlemi vardır.
Amaçlanan mağaza içinde bir API anahtarı oluşturun ve sunucunuzdan Authorization: Bearer <key> gönderin. Mağaza bağlaması değişmezdir; X-Kevmi-Store, anahtara başka bir mağazaya erişim izni veremez. Tarayıcı oturumları X-Kevmi-Store: <storeId> seçer; atlanırsa ilk mağaza seçilir. all değeri yalnızca GET /api/account/dashboard ve GET /api/payment-links tarafından kabul edilir. Değişiklikler seçili bir mağaza, Origin ve X-CSRF-Token gerektirir. Hesap kimlikleri ve mağaza kimlikleri farklı tanımlayıcılardır.
Uyumluluk için, pricingMode="universal" içermeyen API istekleri yerel fiyatlandırmayı ve orijinal para birimi kısıtlamalarını korur. Mevcut faturalar asla yeniden hesaplanmaz. Analizlerdeki onaylanmış tahsilatlar, doğrulanmış ödemelerden kaydedilmiş fatura giderlerinin düşülmesiyle elde edilir; bunlar çekilebilir bakiye değildir. Eski fatura para birimleri ayrı kalır ve ödemeler destek ile düzenlenir. Bir siparişi yalnızca sunucu API'si, olay geçmişi veya imzalı bir webhook üzerinden payment.fulfillmentReady=true ve payment.status="succeeded" durumunu kontrol ettikten sonra yerine getirin.