Ödeme sistemi nasıl bağlanır

Ödeme sistemi Telegram'a entegre edilmiştir. Mesajlaşma uygulaması içinde ödeme almak için şunları yapmanız gerekir:

  • BotFather kullanarak botunuza bir ödeme sistemi bağlayın.
  • İstediğiniz bot ayarlarına gidin ve menüden "Ödemeler" seçeneğini seçin.

Mevcut bir ödeme sistemini bağlamak için talimatları izleyin ve sağlanan token'ı kopyalayın.

Müşteriye fatura nasıl kesilir

Telegram'da fatura göndermek için metodu kullanın ve gerekli parametreleri belirtin.

tg_send_invoice(provider_token, platform_id, title, description, currency, prices, photo_url, payload, protect_content, disable_notification, need_name, need_phone_number, need_email, reply_to_message_id, reply_markup, message_thread_id, provider_data)

ÖNEMLİ! Tüm parametreler, fonksiyonda belirtilen sırayla iletilmelidir. Belirli bir parametreyi belirtmeniz ve diğerlerini atlamanız gerekiyorsa, ihtiyacınız olmayan parametreler için boş değerler veya dokümantasyonda belirtilen değerleri bırakın.

Örnek:

need_name, need_phone_number veya need_email parametrelerinden herhangi biri etkinleştirilirse, kullanıcıdan ödemeyi tamamlamadan önce bu bilgiyi sağlaması istenecektir. Başarılı ödeme durumunda, veriler ilgili müşteri değişkenlerine kaydedilir.

Örnek:

Sonuç: ödeme öncesinde veri istenir.

Ödeme geri araması

Ödeme başarılı olursa, kullanıcının sohbetine aşağıdaki içeriğe sahip bir geri arama gönderilir:

tg_payment 1372995196 120.75 USD 2ff747b9-000f-5000-b000-16d7e3517aa9, burada

  1. course_pay - payload - orijinal fatura oluşturma isteğindeki payload;
  2. 1372995196 - faturanın orijinal olarak gönderildiği sohbet kimliği;
  3. 120.75 - toplam ödeme tutarı;
  4. USD - para birimi;
  5. 2ff747b9-000f-5000-b000-16d7e3517aa9 - satıcı sistemindeki ödeme kimliği.

Ayrıca, kullanıcının adı, telefon numarası ve/veya e-postası istendiyse, ilgili değişkenler müşteriye atanır:

tg_payment_name, tg_payment_phone ve tg_payment_email

Ödeme başarılı geri araması, kullanıcının botla olan doğrudan mesajlarına gönderilecektir.

Kullanıcının, ödeme yapılmadan önce botla mevcut bir sohbeti olmalıdır (yani botu başlatmış veya bot'a abone olmuş olmalıdır). Aksi takdirde bot, kullanıcıya doğrudan mesaj gönderemez.

Ödeme webhook'u alındıktan sonra, ödeme answerPreCheckoutQuery yöntemi aracılığıyla otomatik olarak onaylanacaktır. https://core.telegram.org/bots/api#answerprecheckoutquery

Ödeme düğmesi olan sabitlenmiş mesaj

Ödeme sistemini bağladıktan sonra mesaj sabitleme özelliğini kullanmanız gerekir.

tg_pin_chat_message(platform_id, message_id, disable_notification)

Örnek:

Adım 1:
prices = [["course", 100], ["VAT", 20.75]]

result=tg_send_invoice('381764678:TEST:129736', platform_id, 'Course on courses', 'Creating courses is easy', 'USD', prices, 'https://salebot.pro/promo.png', 'course_pay','0', '0', '1', '1', '1', '', '{"inline_keyboard": [[{"text":"Pay", "pay":"True"}]]}')

Adım 2:
Birinci adımın sonucunda, get() fonksiyonunu kullanarak message_id değerini çıkarmanız gereken bir yanıt alacaksınız.
res=get(result,'result')
m_id=get(res,'message_id')

Ardından mesajı sabitleyin: tg_pin_chat_message(#{platform_id}, #{m_id}, 1)

Örnek: minimum parametre seti

prices = [["super course", 100]]

result= tg_send_invoice('381764678:TEST:129736', platform_id, 'Course on courses', 'Creating courses is super easy', 'USD', prices)

Örnek: klavye

prices = [["course", 100], ["VAT", 20.75]]

tg_send_invoice('381764678:TEST:129736', platform_id, 'Course on courses', 'Creating courses is easy, 'USD', prices, 'https://mavibot.ai/promo.png', 'course_pay','0', '0', '1', '1', '1', '', '{"inline_keyboard": [[{"text":"Pay", "pay":"True"}], [{"text":"Another button", "callback_data": "Another button"}]]}')