# BTCPay Server Modülü

https://docs.wisecp.com/tr/btcpay-server-modulu

BTCPay Server mağazanızı bağlayarak kripto para ödemelerini kabul edin, onayları ve iade isteklerini WISECP'ten takip edin.

## Ekrana Erişim

**Ayarlar → Finansal → Ödeme Ağ Geçitleri → Tüm Modüller** yolundan **BTCPay Server** kartına tıklayın: `{admin}/modules/payment?module=BTCPayServer`

## Ekranda Neler Var

Form mağazayı bağlar ve ödeme sayfasını yönetir. Müşteri kendi sunucunuzda ödeme yapmak için **BTCPay Server ile Devam Et** butonuna tıklar. Modül webhook veya tarayıcı dönüşünden sonra ödeme durumunu sorgular.

İade isteği sunulur; kart saklama, otomatik ödeme, WISECP aboneliği, taksit ve ayrı capture yoktur. BTCPay Server'ın kendi abonelik özellikleri bu modülle WISECP'e bağlanmaz.

## Başlamadan Önce

Erişilebilir HTTPS BTCPay Server, mağazayı yönetebilen hesap ve yapılandırılmış cüzdan gerekir. Mağazada kullanacağınız zincir üstü veya Lightning yöntemlerini açın; düğüm eşitlemesini, kurları ve iade bakiyesini kontrol edin.

Sandbox seçeneği ve bağlantı testi butonu yoktur. Ayrı WISECP test sistemi ve BTCPay testnet sunucusu/mağazası kullanın. Sunucu sürümü, modülün güncel Greenfield fatura ve iade API'sini desteklemelidir.

## Alanlar

- **Sunucu Adresi**: Zorunlu; varsayılanı boş. Sunucunun /api/v1 içermeyen HTTPS kök adresi; örneğin https://btcpay.example.com.
- **API Anahtarı**: Zorunlu; varsayılanı boş. Aşağıdaki izinleri taşıyan ve bu mağazayla sınırlandırılan Greenfield anahtarı.
- **Mağaza Kimliği**: Zorunlu; varsayılanı boş. Mağazanın ayar sayfasından/adresinden kimliğini kopyalayın. API anahtarının erişebildiği mağazayla eşleşmeli.
- **Webhook Gizli Anahtarı**: Varsayılanı boş; imzalı bildirimler için doldurun. Boşken imza kontrolü atlanır, ancak fatura yine API'den sorgulanır.
- **Onay Hızı**: Varsayılanı Mağaza Ayarını Kullan. Seçenekler: En Hızlı, Onay Beklemez; Bir Onay; İki Onay; Altı Onay. En hızlı seçimde bile RBF işlemi bir onay gerektirir.
- **Fatura Ömrü (Dakika)**: İsteğe bağlı; boşken mağaza ayarı kullanılır. Değiştirmek için pozitif dakika girin. Görünen 15 bir örnektir, varsayılan değildir.
- **Ödeme Yöntemleri**: İsteğe bağlı; boşken mağazanın etkin yöntemleri sunulur. Sınırlamak için tam kimlikleri virgülle ayırın; örneğin BTC-CHAIN, BTC-LN.
- **Otomatik Geri Dön**: Varsayılanı açık. Ödeme sayfasından otomatik dönüş ister. Dönüş, ödeme onayının yerine geçmez.

**Durum** modülü etkinleştirir. Ortak komisyon, dönüşüm, sınırlar ve ülke ayarları [Ödeme Modülleri](https://docs.wisecp.com/tr/odeme-modulleri) rehberindedir. Bildirimler için **Callback URL** değerini kopyalayın; **Success URL** ve **Failed URL** sonuç adresleridir.

## İşlemler

### Mağazayı Bağlama

1. BTCPay Server'da **Account → Manage Account → API Keys** bölümünü açın. Hedef mağazayla sınırlı bir anahtar oluşturup kaydedin.
2. Fatura oluşturma/görüntüleme erişimi verin. İade için aşağıdaki tam izinlerle pull payment oluşturma ve yönetme erişimini de ekleyin. Oluşan anahtarı kopyalayın.
3. WISECP'te **Sunucu Adresi**, **API Anahtarı** ve **Mağaza Kimliği** değerlerini girin. **Durum** seçeneğini açın, ödeme sayfası seçeneklerini belirleyip **Değişiklikleri Kaydet** butonuna tıklayın.
4. **Ödeme Ağ Geçitleri → Başlangıç → Etkin Modül Seçimi** alanında BTCPay Server'ı seçip **Değişiklikleri Kaydet** butonuna tıklayın. Yöntem belirlediğiniz sınırlar içinde sunulur.

### Webhook Tanımlama

1. WISECP'ten tam **Callback URL** değerini kopyalayın. İlgili BTCPay mağazasında **Settings → Webhooks** bölümünü açıp bu adres için webhook oluşturun.
2. **InvoiceSettled**, **InvoiceProcessing**, **InvoiceExpired** ve **InvoiceInvalid** dahil fatura olaylarını etkinleştirin. Otomatik yeniden teslimi açık tutup webhook'u kaydedin.
3. Gizli anahtarını WISECP'teki **Webhook Gizli Anahtarı** alanına kopyalayıp **Değişiklikleri Kaydet** butonuna tıklayın. Bu alana API anahtarını girmeyin.
4. Test ödemesinden sonra BTCPay Server'da webhook teslimlerini inceleyin. Sağlayıcı durumu **Settled** olduğunda WISECP'in ilgili faturaya ödemeyi kaydettiğini doğrulayın.

### Ödemeyi Test Etme

1. Ödenmemiş test faturasını ilgili müşteri olarak açıp BTCPay Server'ı seçin. **BTCPay Server ile Devam Et** butonuna tıklayıp test sunucusunun ağında ödeme yapın.
2. Sağlayıcı faturasını, tutarı ve para birimini WISECP ile karşılaştırın. **New** ve **Processing** ödemeyi açık bırakır; yalnız **Settled** kapatır.
3. Süre dolmasını, kesilen tarayıcı dönüşünü ve eksik ödemeyi deneyin. Tekrarlamadan önce onayları bekleyin; sonradan tamamlanan geç ödeme faturayı yine kapatabilir.
4. Başarılı testlerden sonra ana ağ sunucusunu, mağazayı, API ve webhook anahtarlarını girin. **Değişiklikleri Kaydet** butonuna tıklayıp canlı webhook'u doğrulayın; sonraki ödemeler gerçek para kullanır.

### İade Oluşturma ve Tamamlama

1. Ödenmiş faturayı açın: `{admin}/invoices/detail?id={fatura}`. **Özet → Durumu Değiştir** bölümünde **İade Edildi → Ödeme altyapısı ile iade** seçip **Durumu Güncelle** butonuna tıklayın.
2. Modül, birleşik ödemeler dahil bu faturanın tahsil edilmiş payı için pull payment ister. BTCPay Server'da iadeyi bulun; talep sayfasının bağlantısını müşteriye verin.
3. Müşteri iade adresini girerek talepte bulunur. BTCPay Server'ın **Payouts** bölümünde ödemeyi seçip **Actions → Approve and send** işlemini kullanın.
4. Cüzdanınızın gerektirdiği imzalama ve yayımlamayı tamamlayın; ödemenin **completed** durumuna ulaştığını doğrulayın. WISECP'in iade durumu paranın ulaştığını tek başına kanıtlamaz.

Özel tutarlı kısmi iade veya fazla ödeme iadesi için BTCPay Server'da **Invoices → Details → Issue a refund** yolunu kullanın. Yöntem ve tutarı seçin, talep bağlantısını paylaşın ve ödemeyi tamamlayın. Gerçek tutarı ayrıca takip edin; aynı iadeyi WISECP'ten yeniden başlatmayın.

## Dikkat Edilecekler

> **İade İkinci Adım Gerektirir**
> 
> Başarılı iade isteği anında para aktarmaz, talep açar. Ağ ücretleri ve kurlar kripto tutarını değiştirebilir. Zaman aşımından sonra yeniden denemeden önce mevcut talepleri doğrulayın.

> **Teslimden veya Yeni Tahsilattan Önce Doğrulayın**
> 
> Eksik ödeme ödenmemiş kalır; fazla ödeme ek WISECP bakiyesi oluşturmaz. Sağlayıcıdaki ödenen tutarı ve durumu karşılaştırın. Hızlı onay seçenekleri ek ödeme riski taşır.

## Gerekli Yetkiler

WISECP ayarları **Modüller → Ödeme Altyapıları** (`MODULES_PAYMENT_SETTINGS`), iadeler **Faturalandırma → Düzenleme** (`INVOICES_OPERATION`) yetkisini gerektirir.

Güncel API, `btcpay.store.cancreateinvoice` ve `btcpay.store.canviewinvoices` ister. İade için `btcpay.store.cancreatepullpayments`, mevcut talepleri bulmak için `btcpay.store.canmanagepullpayments` gerekir. Dördünü seçili mağazayla sınırlayın. Operatör ayrıca webhook yönetimi ve ödeme onaylama/imzalama erişimi taşımalı; modül bunları otomatik yönetmez.

## İlgili Makaleler

- [Ödeme Modülleri](https://docs.wisecp.com/tr/odeme-modulleri)
- [Fatura Detayı Genel Görünüm](https://docs.wisecp.com/tr/fatura-detayina-genel-bakis)
- [BTCPay Server API ve Yetkileri](https://docs.btcpayserver.org/API/Greenfield/v1/)
- [BTCPay Server İadeleri](https://docs.btcpayserver.org/Refund/)
