ÖdemelerAbonelikler

Pay.sh ile

Pay.sh aracılığıyla abonelikler kurabilirsiniz; bunun için cihazınıza bir Pay istemcisi veya bir Pay sunucusu kurmanız yeterlidir. Pay'i şu komutla yükleyin:

brew install pay

veya

npm install -g @solana/pay

Kurulumu şu komutla doğrulayın:

pay --version

Araç zinciri adresinizi sizin için ayarlayacaktır. Cüzdanınızı kurmak ve bakiye yüklemek için aşağıdaki komutu çalıştırın:

pay setup

İstemci olarak abonelikler

Kullanıcılar, aboneliğe dayalı API uç noktalarına normal şekilde pay çağırarak abone olur. Abonelik ayrıntılarını ilk 402 Status yanıtında göndermek API'nin sorumluluğundadır. Pay, aboneliği Solana SPL Abonelikler Programı üzerindeki talimat çağrıları dahil olmak üzere otomatik olarak yönetir.

Kullanıcılar aboneliklerini aşağıdaki komutlarla yönetebilir:

pay subscriptions # default: list + show available subcommands
pay subscriptions list # same, scriptable
pay subscriptions list --network mainnet
pay subscriptions list --json

Aboneliklerinizi kullanıcı olarak yönetme hakkında daha fazla bilgiye şu bağlantıdan ulaşabilirsiniz: Pay.sh > Pay'i Kullanma > Abonelikleri Yönetme belgeleri.

Sağlayıcı olarak abonelikleri yönetme (demo)

Pay sunucuları, her uç nokta için abone ve abonelik yapılandırmasına olanak tanır. Aşağıda, projenizde deneyebileceğiniz ve pay kullanan bir uç nokta örneği verilmiştir:

# monthly.yml
name: Subscriptions Example
subdomain: subscriptions-example
title: "Subscription Example"
description: "Demo Subscriptions"
category: ai_ml
version: v1
routing:
type: respond
operator:
currencies:
usd: ["USDC", "USDT", "CASH"]
network: "localnet"
fee_payer: true
challenge_binding_secret: d858d9104afd728f58a1f73d806dd75d8f32ebd37c9707145816b490e8631d41
# insert your own challenge_binding_secret here. use `openssl rand -hex 32`
endpoints:
- method: GET
path: "api/v1/pro/feed"
resource: "pro-feed"
description: "Pro feed — monthly subscription, 30-day billing period."
subscription:
period: "30d"
price_usd: 9.99
currency: USDC
plan_id_numeric: 1

Pay, abonelikleri kendi endpoints YAML özelliğindeki subscription: niteliği aracılığıyla yönetir. Bu, kullandığın kadar öde uç noktaları için kullanılan metering: niteliğinden farklıdır.

Yukarıdaki örnekte sunucuyu başlatmak, api/v1/pro/feed adlı ve her 30 günde bir kullanıcıdan 9,99 USDC yinelenen ödeme talep eden bir uç nokta oluşturur.

Aşağıdaki komutu çalıştırarak deneyebilirsiniz:

pay server start monthly.yml

Bu komutu çalıştırdığınızda bir plan oluşturmanız istenecektir. Bu işlem bir plan oluşturur ve yml dosyasını günceller. Daha sonra tekrar kullanacaksanız plan adresini not edin ve değişiklik yaparken yapılandırmanızda bu adresi kullanın.

Aboneliklerin çalışıp çalışmadığını, başka bir terminalde istemci olarak aşağıdaki komutları çalıştırarak test edebilirsiniz:

# First call — activates the subscription, $9.99 USDC charge settles.
pay --sandbox curl http://127.0.0.1:1402/api/v1/pro/feed
# Same call within 30 days — no payment prompt, just the response.
pay --sandbox curl http://127.0.0.1:1402/api/v1/pro/feed

Yanıt olarak aşağıdaki gibi bir OK durumu görmelisiniz:

{ "status": "ok" }

Pay sunucusunda abonelikleri yönetme hakkında daha fazla bilgi edinmek için Pay.sh > Pay ile Geliştirme > Abonelikler > YAML Spesifikasyonu belgelerine başvurabilirsiniz.

Is this page helpful?

İçindekiler

Sayfayı Düzenle
© 2026 Solana Vakfı. Tüm hakları saklıdır.