Anda dapat mengatur langganan melalui Pay.sh dengan menyiapkan klien Pay di perangkat Anda atau dengan menyiapkan server Pay. Instal Pay dengan:
brew install pay
atau
npm install -g @solana/pay
Verifikasi instalasi dengan:
pay --version
Toolchain akan menyiapkan alamat Anda secara otomatis. Jalankan perintah berikut untuk mengatur dan mengisi ulang dompet Anda:
pay setup
Langganan sebagai klien
Pengguna berlangganan endpoint API yang dibatasi langganan dengan memanggil pay
seperti biasa. API bertanggung jawab untuk mengirimkan detail langganan dalam
Respons 402 Status awal. Pay menangani langganan secara otomatis, termasuk
pemanggilan instruksi pada Solana SPL Subscriptions Program.
Pengguna dapat mengelola langganan mereka menggunakan perintah berikut:
pay subscriptions # default: list + show available subcommandspay subscriptions list # same, scriptablepay subscriptions list --network mainnetpay subscriptions list --json
Anda dapat mempelajari lebih lanjut tentang mengelola langganan sebagai pengguna di Pay.sh > Menggunakan Pay > Dokumentasi Kelola Langganan.
Mengelola langganan sebagai penyedia (demo)
Server Pay memungkinkan konfigurasi pelanggan dan langganan mereka untuk setiap endpoint. Berikut adalah contoh endpoint yang menggunakan pay yang dapat Anda coba dengan proyek Anda:
# monthly.ymlname: Subscriptions Examplesubdomain: subscriptions-exampletitle: "Subscription Example"description: "Demo Subscriptions"category: ai_mlversion: v1routing:type: respondoperator:currencies:usd: ["USDC", "USDT", "CASH"]network: "localnet"fee_payer: truechallenge_binding_secret: d858d9104afd728f58a1f73d806dd75d8f32ebd37c9707145816b490e8631d41# insert your own challenge_binding_secret here. use `openssl rand -hex 32`endpoints:- method: GETpath: "api/v1/pro/feed"resource: "pro-feed"description: "Pro feed — monthly subscription, 30-day billing period."subscription:period: "30d"price_usd: 9.99currency: USDCplan_id_numeric: 1
Pay menangani langganan menggunakan atribut subscription: dalam spesifikasi
YAML endpoints-nya. Ini berbeda dengan atribut metering: untuk endpoint
berbayar per penggunaan.
Memulai server pada contoh di atas membuat endpoint bernama api/v1/pro/feed
yang mengharuskan pengguna melakukan pembayaran berulang sebesar 9,99 USDC
setiap 30 hari.
Anda dapat mencobanya dengan menjalankan perintah berikut:
pay server start monthly.yml
Menjalankan perintah ini akan meminta Anda untuk membuat rencana. Ini akan membuat rencana dan memperbarui file yml. Jika Anda akan menggunakannya kembali, ingat alamat rencana tersebut dan gunakan dalam konfigurasi Anda saat melakukan perubahan.
Anda dapat menguji apakah langganan berfungsi dengan menjalankan perintah berikut sebagai klien di terminal lain:
# 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
Anda akan melihat status OK sebagai respons seperti ini:
{ "status": "ok" }
Anda dapat mempelajari lebih lanjut tentang pengelolaan langganan di server Pay melalui Pay.sh > Building with Pay > Subscriptions > YAML Specification docs.
Is this page helpful?