Kā pieslēgt maksājumu pakalpojumu sniedzēju
Telegram ir iebūvēta maksājumu sistēma. Lai pieņemtu maksājumus Telegram, jums ir:
- Pieslēgt maksājumu pakalpojumu sniedzēju savam botam, izmantojot BotFather.
- Atvērt sava bota iestatījumus BotFather un izvēlēties Payments.


Izpildiet norādījumus, lai pieslēgtu kādu no pieejamajiem maksājumu pakalpojumu sniedzējiem, pēc tam nokopējiet ģenerēto pakalpojumu sniedzēja marķieri.



Kā nosūtīt rēķinu
Lai nosūtītu rēķinu Telegram, izmantojiet šādu funkciju:
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
)
| Parametrs | Apraksts |
|---|---|
| provider_token | Obligāts. Pakalpojumu sniedzēja marķieris, kas saņemts no BotFather pēc maksājumu pakalpojumu sniedzēja pieslēgšanas. |
| platform_id | Obligāts. Saņēmēja identifikators (lietotāja, grupas vai kanāla ID). |
| title | Obligāts. Produkta nosaukums (1–32 rakstzīmes). |
| description | Obligāts. Produkta apraksts (1–255 rakstzīmes). |
| currency | Obligāts. Maksājuma valūta (piemēram: EUR, USD, UAH). Skatiet atbalstīto valūtu sarakstu: https://core.telegram.org/bots/payments#supported-currencies |
| prices | Masīvs, kas apraksta rēķina vienības. Katra vienība satur nosaukumu un summu. Summas var būt veseli skaitļi vai decimālskaitļi. Piemērs: [["Product", 2000], ["VAT", 20.75], ["Packaging", 100]]
|
| photo_url | Produkta attēla URL. |
| payload | Pielāgots krava, kas tiek atgriezta maksājuma atzvanā. Noklusējums: tg_payment. |
| protect_content |
1 — aizsargāt saturu no kopēšanas un ekrānuzņēmumiem.0 — nav aizsardzības. |
| disable_notification |
1 — nosūtīt klusi.0 — nosūtīt ar paziņojumu. |
| need_name |
1 — pieprasīt klienta pilno vārdu.0 — nepieprasīt. |
| need_phone_number |
1 — pieprasīt klienta tālruņa numuru.0 — nepieprasīt. |
| need_email |
1 — pieprasīt klienta e-pasta adresi.0 — nepieprasīt. |
| reply_to_message_id | Ziņojuma ID, uz kuru atbildēt. Izmantojiet '', lai nosūtītu rēķinu kā atsevišķu ziņojumu. |
| reply_markup | Tastatūras konfigurācija. Pirmajai pogai jābūt pay tipam. |
| message_thread_id | Tēmas ID forumiem iespējotām supergrupām. |
| provider_data | JSON objekts ar pakalpojumu sniedzējam specifiskiem maksājumu datiem. Skatiet sava maksājumu pakalpojumu sniedzēja dokumentāciju par nepieciešamajiem laukiem. |
Svarīgi
Parametri jānorāda tieši tādā secībā, kā parādīts iepriekš.
Ja nepieciešams izlaist neobligātos parametrus, atstājiet tos tukšus vai norādiet noklusējuma vērtības, kas aprakstītas dokumentācijā.
Piemērs

Ja ir iespējots kāds no šiem parametriem:
need_nameneed_phone_numberneed_email
Telegram pirms maksājuma pieprasīs klientam norādīto informāciju.
Pēc veiksmīga maksājuma savāktā informācija tiek automātiski saglabāta attiecīgajos klienta mainīgajos.
Piemērs:

Maksājuma atzvans
Pēc veiksmīga maksājuma Telegram nosūta botam šādu atzvanu:
tg_payment 1372995196 120.75 USD 2ff747b9-000f-5000-b000-16d7e3517aa9
Kur:
-
tg_payment— krava vērtība, kas norādīta, veidojot rēķinu. -
1372995196— tērzēšanas ID, kurā rēķins sākotnēji tika nosūtīts. -
120.75— maksājuma summa. -
USD— maksājuma valūta. -
2ff747b9-000f-5000-b000-16d7e3517aa9— maksājuma ID, ko atgriezis maksājumu pakalpojumu sniedzējs.

Ja tika pieprasīta klienta informācija, automātiski tiks aizpildīti arī šādi klienta mainīgie:
tg_payment_nametg_payment_phonetg_payment_email

Maksājuma atzvans tiek nosūtīts uz lietotāja privāto tērzēšanu ar botu.
Lietotājam pirms maksājuma veikšanas jau ir jābūt sākušam sarunu ar botu. Pretējā gadījumā Telegram nevar piegādāt atzvanas ziņojumu.
Pēc maksājuma tīmekļa āķa saņemšanas MaviBot automātiski apstiprina maksājumu, izmantojot metodi
answerPreCheckoutQuery.
Rēķina ziņojuma piespraušana
Pēc maksājumu pakalpojumu sniedzēja pieslēgšanas varat piespraust rēķina ziņojumu.
Izmantojiet funkciju:
tg_pin_chat_message(platform_id, message_id, disable_notification)
| Parametrs | Apraksts |
|---|---|
| platform_id | Telegram tērzēšanas ID. |
| message_id | Piespraužamā ziņojuma ID. |
| disable_notification | Kontrolē, vai Telegram nosūta paziņojumu par piesprausto ziņojumu.1 — bez paziņojuma.0 — nosūtīt paziņojumu.Paziņojumi vienmēr ir atspējoti privātajās tērzēšanās un kanālos. |
Piemērs
1. solis
prices = [["Course", 100], ["VAT", 20.75]]
result = tg_send_invoice(
'381764678:TEST:129736',
platform_id,
'Course',
'Creating courses is easy',
'USD',
prices,
'https://salebot.pro/promo.png',
'course_pay',
'0',
'0',
'1',
'1',
'1',
'',
'{"inline_keyboard":[[{"text":"Pay","pay":"True"}]]}'
)
2. solis
Izvelciet message_id no atbildes:
res = get(result, 'result')
m_id = get(res, 'message_id')

Pēc tam piespraudiet ziņojumu:
tg_pin_chat_message(#{platform_id}, #{m_id}, 1)
Piemērs: minimālie nepieciešamie parametri
prices = [["Super course", 100]]
result = tg_send_invoice(
'381764678:TEST:129736',
platform_id,
'Course',
'Creating courses is super easy',
'USD',
prices
)

Piemērs: rēķins ar iekļauto tastatūru
prices = [["Course", 100], ["VAT", 20.75]]
tg_send_invoice(
'381764678:TEST:129736',
platform_id,
'Course',
'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"}]]}'
)
