Rehberler
Tarif: Telegram botu
Bot komutlarını, bir rolü ya da özel bir grubu sat. Her kullanıcı kendi faturasını alır; imzalı bir webhook erişimi açar.
Bot parayı görmez. /buy komutunda kullanıcıya kendi fatura bağlantısını gönderir; sunucun invoice.fulfilled'ı duyar ve erişimi açar. Her ücretli komut Perly Pay'e sorar, bu yüzden yeniden başlatmadan sonra hiçbir şey kaybolmaz. Discord'da da aynı, rol üzerinden.
sell-bot-access skill'i uygular. Çalıştırılabilir örnek, eklenti deposundaki examples/telegram-bot (MIT).Nasıl çalışır
- 1
Ürün ve fiyat
Tek seferlik ya da ömür boyu — "sonsuza dek" için, süreli — geçiş kartları için, abonelik — faturayla yenilenen üyelik için.
- 2
Her sohbet kullanıcısına bir müşteri
external_id: "tg:<user id>". E-postayı yalnızca abonelikler için sor: yenilemeler oraya gider. - 3
/buy
metadataiçinde sohbet kimliğiyle bir fatura, butonla gönderilir. Idempotency anahtarı sayesinde kullanıcı başına günde bir fatura. - 4
Erişimi aç
invoice.fulfilledgeldiğinde sohbet kimliğinimetadata'dan al ve yanıtla: mesaj, tek kullanımlık davet, rol. - 5
Ücretli komutlar
entitlements.check({ customer_external_id: "tg:<id>", product }).
Örneği çalıştır
- 1
Kur
examples/telegram-botiçindenpm install(Node 20.12+). - 2
Anahtar
.env.exampledosyasını.envolarak kopyala ve test anahtarını (sk_test_…)PERLY_PAY_SECRET_KEYiçine yaz. - 3
Hazırla
npm run setupsenin anahtarınla bir ürün ve fiyat oluşturur ve.enviçin kimliklerini yazdırır. - 4
Çalıştır
README'sinde dediği gibi
npm start(ya danpm run dev). - 5
Cüzdansız öde
Bota
/buyyaz, Pay'i aç ve Simulate payment'a bas: bot "Payment confirmed" der ve/secretyanıt verir.
Tuzaklar
- Herkes için tek bir ortak ödeme bağlantısı: kimin ödediği görünmez. Her kullanıcıya, sohbet kimliğiyle bir fatura.
- Kullanıcı "Ödedim"e bastığında erişim açmak. Erişimi yalnızca webhook ya da
entitlements.checkaçar. - Erişimi botun belleğinde tutmak. Yeniden başlatınca kaybolur; Perly Pay'e sor.