Rapyd

Rapyd Hosted Checkout, 100'den fazla ülkede kart ve yerel ödeme yöntemleri Rapyd'ın sayfasında; bakiye, ödeme Rapyd'dan imzalı istekle yeniden okunup doğrulanınca yüklenir.

Gereken bilgiler

Rapyd Client Portal'da (dashboard.rapyd.net) Developers → Credentials Details sayfasından:

  • access_key: erişim anahtarı.
  • secret_key: gizli anahtar.

Panelinizde Ayarlar → Ödemeler → Yöntem ekle → Rapyd seçin, iki değeri girin.

Sandbox: Client Portal'ın sağ üstündeki anahtarla sandbox ortamına geçin, oradaki anahtarları girin ve sandbox (test) modu kutusunu işaretleyin; panel sandboxapi.rapyd.net'e bağlanır. Sandbox ve canlı anahtarlar farklıdır.

Webhook (zorunlu)

Rapyd ödemenin bittiğini webhook ile bildirir. Client Portal → Developers → Webhooks sayfasında adres olarak şunu girin:

https://<panel-alan-adınız>/payments/rapyd/callback

En az Payment Completed olayını açın. Payment Failed, Payment Expired ve Payment Canceled olaylarını da açarsanız başarısız ödemeler panelde hemen görünür.

Panel webhook'un içeriğine güvenmez. Gövdeden yalnız ödeme numarasını (payment_…) okur, ardından o ödemeyi kendi anahtarlarınızla imzalı GET /v1/payments/{payment} isteğiyle Rapyd'dan yeniden çeker. Bakiye ancak Rapyd ödemeyi kapanmış (CLO) ve tahsil edilmiş (paid) olarak döndürürse ve ödemenin referansı bizim ödeme numaramızla eşleşirse yüklenir. Sahte bir webhook bu yüzden bakiye yükleyemez; uyuşmayan istek 400 ile reddedilir.

Akış

  1. Müşteri tutarı girer, Rapyd'ı seçer. Telefon numarası istenmez.
  2. Panel imzalı POST /v1/checkout ile bir ödeme sayfası açar: tutar panel para biriminde, merchant_reference_id bizim ödeme numaramız, capture: true, sayfa ömrü 60 dakika (paneldeki ödeme kaydıyla aynı). Müşteri Rapyd'ın sayfasına yönlendirilir; ülkeye göre kart, banka havalesi, e-cüzdan gibi yöntemler orada listelenir.
  3. Ödeme bitince müşteri panelin /payments/rapyd/return adresine döner; bu sayfa yalnız "Bakiye yükle"ye yönlendirir, bakiyeye dokunmaz.
  4. Rapyd webhook'u gönderir, panel ödemeyi yeniden okur ve sonucu uygular. Aynı ödeme aynı durumla ikinci kez gelirse yok sayılır; bakiye iki kez yüklenmez.

Durumlar

Rapyd ödeme durumu Paneldeki sonuç
CLO ve paid: true tamamlandı, bakiye yüklendi
CLO ve paid: false, ACT beklemede (3D Secure, tahsilat ya da banka havalesi bekleniyor)
CAN, ERR başarısız; Rapyd'ın hata mesajı ödeme notuna yazılır
REV başarısız (Rapyd geri aldı)
EXP süresi doldu

Ülke ve para birimi

Rapyd ödeme sayfası bir ülke ister; hangi yöntemlerin görüneceği buna göre belirlenir. Panel önce yöntemin extra.billing_country değerine (iki harfli ülke kodu) bakar; yoksa panel para biriminin ülkesini (TRY → TR, USD → US, EUR → DE…) gönderir. Müşterileriniz çoğunlukla başka bir ülkedeyse bu alanı doldurun.

Panelinizin para birimi, Rapyd hesabınızın o ülke için desteklediği bir birim olmalıdır. Tutarın ondalık hanesi para biriminin kuralına uyar (JPY, KRW gibi birimlerde tam sayı).

Sık sorunlar

  • "Ödeme başlatılamadı: UNAUTHENTICATED_API_CALL" ya da imza hatası: anahtarlar yanlış ortama ait (sandbox anahtarı canlıda ya da tersi) veya gizli anahtar eksik kopyalandı. Sunucu saati de 60 saniyeden fazla kaymamalıdır.
  • Ödeme yöntemi listesi boş: seçilen ülke ve para birimi için hesabınızda açık yöntem yok. extra.billing_country değerini ya da Rapyd hesap ayarlarınızı kontrol edin.
  • Ödeme başarılı ama bakiye yok: webhook adresi girilmemiş ya da Payment Completed olayı kapalı. Client Portal'daki webhook kayıtlarına bakın; panel 400 döndüyse ödemenin referansı bu panelin bir ödemesine ait değildir.
  • Ödeme "beklemede" kaldı: banka havalesi gibi yöntemlerde para gelene kadar bu normaldir; Rapyd tahsilatı tamamlayınca yeni bir webhook gönderir ve ödeme kendiliğinden tamamlanır.