Prodamus (KZ)
Prodamus nasıl bağlanır
Prodamus’u bağlamak için ödeme formu URL’si ve gizli anahtar gerekir.
Ödeme formu URL’si kayıt sonrası verilir, örneği şöyledir: demo.payform.ru.
Gizli anahtar kişisel panelden alınabilir; ayrıca bildirimlerin (notification) gönderileceği URL adresini de orada belirtmek gerekir.

Bunun nasıl yapılacağına dair ayrıntılı kılavuz
Bildirimler için adres: https://chatter.mavibot.ai/prodamus_callback/result
Bu adresi ayarlarda iki yerde belirtmek gerekir.
Ayarların ana sayfasında ödeme formunun çalışma modunu seçebilirsiniz: ödemesiz demo modu veya ödeme kabul etme modu.

Bildirimler için adresi ödeme sisteminin ayarlarında iki yerde belirtmek gerekir: «Formu ayarla» sekmesinde — tek seferlik (normal) ödemeler için ve «Abonelikler» sekmesinde — abonelik ödemeleri için.

Bildirimler için adres: https://chatter.mavibot.ai/prodamus_callback/result
Abonelik ödemeleriyle çalışmayı ayarlamak için «Abonelikler» sekmesine gidip bildirimler için adresi belirtin:
https://chatter.mavibot.ai/prodamus_callback/result

Dikkat! URL adresini girdikten sonra mutlaka «Kaydet» düğmesine basın.
Prodamus’u bağlamak için «Ekayring» bölümüne geçmek gerekir.

Sonrasında yukarıda belirtilen verileri forma girmek yeterlidir:

Önemli! Ödeme formu URL’sini belirtirken https:// eklemeyin.
Böylece bağlantı tamamlandı. Şimdi bu işlevselliğin nasıl kullanılacağına bakalım.
Ödeme bağlantısı nasıl oluşturulur
«Öde» işlevli buton
Ödeme bağlantısı, «Öde» işlevine sahip butonda oluşturulabilir.
Şimdi bu butonun tüm olası parametrelerini inceleyelim.
Prodamus için «Öde» butonunun zorunlu parametreleri
Ödeme bağlantısı oluşturmak için buton ayarlarında zorunlu parametreleri belirtmek gerekir: «Tutar», «Ürün adı» ve ayrıca «Ödenen içerik» parametresi — eğer kendi online kasanız yoksa ve Prodamus’tan fiş almak istiyorsanız.
Sipariş sayfasına geçtiğinizde ürün ve fiyat bilgisi önceden gösterilir, müşteri yalnızca iletişim bilgilerini girer.
Buton ayarlarında kullanıcının Email’i ve/veya telefonu belirtilirse, sipariş sayfasında ödeyenin iletişim bilgileri ve ürün ile fiyat bilgisi gösterilir.

«Metin» alanı – bu metin, ödeme bağlantılı butonda mesajda gösterilir.
«Fonksiyon» alanı – ödeme bağlantısı veren buton oluşturmak için «Öde» fonksiyonunu seçiyoruz.
«Ödeme sistemi» alanı – proje ile bağlı ödeme sistemleri listede gösterilir. Eğer projeye hiçbir ödeme sistemi bağlanmamışsa, bu buton türü kullanılamaz.
«Ürün adı» alanı (zorunlu) – ürünün gerçek adını belirtmek gerekir. Örneğin: «Telefon» değil, «Xiaomi akıllı telefon, model …». Not: ürün adında çift tırnak kullanılamaz; bunları kaldırın veya tek tırnakla değiştirin.
«Tutar» alanı (zorunlu) – ürünün fiyatını belirtiyoruz.
«Ek bilgiler» menüsü – bu düğmeye tıkladığınızda bağlantı oluşturmak için ek alanlar açılır:
Sipariş açıklaması
Ruble cinsinden indirim
Alıcının Email değişkeni
Alıcının telefon numarası değişkeni
Bağlantının geçerlilik süresi
Abonelik için ürün ID’si (otomatik ödeme oluşturmak için)
Ödenen içerik
«Tıklama bildirimi» onay kutusu – ödeme bağlantısına geçişi izlemek için işaretlenebilir. Bu durumda butona tıklandığında, Salesbot’taki müşteri sohbetine bağlantıya geçildiğine dair bir mesaj gelir.

Bu mesaja göre botun sonraki çalışma mantığı ayarlanabilir. Birçok ödeme sistemi, 54-FZ gerekliliklerine uygun olarak gerekli olan bulut tabanlı online kasaları destekler.
Vergi dairesiyle sorun yaşamamak için, seçilen ödeme sisteminin sitesinde fiş düzenleme özelliklerini okuyun.
İşte «Öde» butonundaki bağlantı üzerinden gidildiğinde açılan ödeme sayfası böyle görünür:

Ödeme bağlantısı oluşturmak için ek ayarlar

«Sipariş açıklaması» alanı – bu alana girilen bilgi ödeme sayfasında Ek bilgiler alanında gösterilir.
«İndirim» alanı – burada indirim tutarını ruble veya ruble ve kuruş olarak belirtebilirsiniz. Kuruş göstermek için ayırıcı olarak noktayı kullanın: 50.99 Ödeme sayfasında Ödenecek tutar alanında indirim dikkate alınarak gösterilir ve ana ürün fiyatı üzeri çizili olur.
«Alıcının Email değişkeni» alanı (zorunlu değil, telefon numarası verilmişse) – burada kullanıcının (müşterinin) Email’i belirtilir. Email’in saklandığı değişken de kullanılabilir, örneğin: #{email}
«Alıcının telefon numarası değişkeni» alanı (zorunlu değil, Email verilmişse) – burada alıcının telefon numarasını içeren değişken kullanılabilir, format: 79000000000, örneğin: #{phone}
Mutlaka Email ve/veya telefon olmalıdır.
«Bağlantının geçerlilik süresi» alanı – tarihi gg.aa.yyyy ss:dd formatında belirtebilirsiniz (örneğin, 25.01.2021 11:00) veya bağlantının bitiş süresini değişken ile ayarlayabilirsiniz. Örneğin: #{link_expired}
«Abonelik için ürün ID’si» alanı – otomatik ödeme oluşturmak için ürün ID değerini girin. Abonelik oluşturmak için abonelik ürünü oluşturmak gerekir. Ayrıntılı kılavuz: Prodamus aboneliklerini oluşturma ve ayarlama Abonelik için ürün ID’si verilirse, ödeme tutarı dikkate alınmaz. Ürün bilgisi Prodamus panelindeki ürün kartından alınır. Ödemede belirtilen telefon numarası, aboneliği yönetmek için gerekli olacaktır. Abonelik için ürün ID’si verilirse, başarılı ödeme olduğunda callback’te bu ürünün ID’si iletilir.
«Ödenen içerik» alanı (koşullu zorunlu) – bu veriler, kendi online kasanız yoksa Prodamus üzerinden ödemeyi faturalamak için gereklidir. Bu alana satın alma açıklaması, fiyatı ve içeriğe bağlantı yazılır.
Örneğin: «Saç örgüsü örme» kursu, fiyatı 3000 ruble, kurs sayfasına bağlantı: https://nbu.su/krasota/master-po-pleteniyu-kos/?yclid=13602995275739430911
«Öde» işlevli buton
Bağlantının geçerlilik süresini belirtirseniz şu durum meydana gelir: Kullanıcı ödeme bağlantısını geçerlilik süresi içinde (yani bağlantının süresi henüz dolmadan) isterse ve sohbet içindeyse, ödeme yapması mümkün olmaz ve ona şu mesaj gösterilir:
Bağlantının geçerlilik süresi mevcut tarihten sonra olmalıdır, aksi halde müşteri bu bağlantı ile ödeme yapamaz.
2. Kullanıcı bağlantıyı isterken, eğer şu anda aktif değilse
Bu durumda buton просто görünmez. Müşterinin değişkenlerinde "error_payment_button" değişkeni oluşur ve değeri şu olur:
"Hata: Bağlantının geçerlilik süresi mevcut tarihten sonra olmalıdır".
Kullanıcının ödemeyi doğru şekilde yapabilmesi için böyle bir durumu ayrıca işlemeniz önerilir.
Şu şekilde bir koşul bloğu oluşturun:
Şu mesaj gelirse:
error_payment_button == "Hata: Bağlantının geçerlilik süresi mevcut tarihten sonra olmalıdır"
O zaman şu metni gösterin: "Üzgünüz, ödemeyi zamanında yapamadınız, ödeme bağlantısı geçersizdi".


«Öde» fonksiyonlu buton kullanıldığında otomatik oluşturulan müşteri değişkenleri
Kullanıcı «Öde» butonu olan bloğu aldığı anda, müşteri için otomatik olarak değişkenler oluşturulur:
Sistem müşteri değişkeni __payments – bu değişken tutarı ve oluşturulan bağlantının kimliğini saklar ve ödeme sisteminden gelen hook’u tanımlamak için gereklidir.
Sistem müşteri değişkeni __payments-ı silmek veya değiştirmek mümkün değildir!
error_payment_button müşteri değişkeni buton oluşturulurken hata oluşursa otomatik olarak oluşturulur.
Bu değişkene hata metni veya ödeme sisteminden gelen hata yanıtı yazılır.
Değişkenlerin değerleri bir sonraki bloğa geçildiğinde geçerli olur.
Sonuç nasıl işlenir
Başarılı ödeme
Başarılı ödeme yapıldıktan sonra botta OTOMATİK olarak CALLBACK gelir; bu, ödeme sisteminin gizli anahtarının ilk 10 karakterinden, _success kelimesinden ve ödeme tutarından oluşur.
Şemayı ayarlamada kullanmak için onu sadece kopyalamanız yeterlidir.
Örneğin: ovg58keefc_success 44, burada:
ovg58keefc– ödeme sisteminin gizli anahtarının ilk 10 karakteri_success– isteğin işlenme sonucu (başarılı ödeme)44– ödeme tutarı
Kullanıcı, ödeme sisteminden gelen callback’leri (bildirimleri) GÖRMEZ. Bunlar yalnızca «Müşteriler» sekmesinde gösterilir ve operatöre görünür.
Kullanım örneği: 1. adım. «Öde butonlu» bloğa «Öde» işlevli butonları ekliyoruz. 2. adım. Bu bloktan «Başarılı ödeme» bloğuna geçiş yapan Bağlantı koşulu alanında callback’i gösteriyoruz. Aynı şekilde, «Başlangıç koşulu» bloğunun koşulunda başarılı ödeme callback’i belirtilirse, çalışma benzer şekilde gerçekleşir.
Önemli: «Tam eşleşme» veya «Anahtar kelimelere göre» seçimini yapın.
❗️Eğer ödemeyi tam koşula göre belirtilen okta kontrol etmeye karar verirseniz, şemanızın mantığını dikkatlice düşünün. Müşteri callback’li koşula sahip bloğu terk ederse, bloğa geçiş olmaz. Böyle bir kontrol yöntemini yalnızca müşteri hunideki yerini değiştirmediyse kullanmak daha iyidir.
Müşterinin bloklar arasında hareket ettiği şemalarda callback’i «Başlangıç koşulu» bloğunda gösterme seçeneğini kullanmak daha uygundur.

Otomatik aboneliği olan ürünler için başarılı ödeme
Başarılı ödeme yapıldıktan sonra botta OTOMATİK olarak CALLBACK gelir; bu, ödeme sisteminin gizli anahtarının ilk 10 karakterinden, _success kelimesinden ve abonelik ürününün ID’sinden oluşur.
Örneğin: 214009eefc_success 618117, burada:
009eefc– ödeme sisteminin gizli anahtarının ilk 10 karakteri_success– isteğin işlenme sonucu (başarılı ödeme)618117– abonelik ürününün ID’si

Hatalı ödeme
Ödeme gerçekleştirilirken hata oluşursa botta OTOMATİK olarak CALLBACK gelir; bu, ödeme sisteminin gizli anahtarının ilk 10 karakterinden, _fail kelimesinden ve ödeme tutarından oluşur.
Örneğin: ovg58keefc_fail 44, burada:
ovg58keefc– ödeme sisteminin gizli anahtarının ilk 10 karakteri_fail– isteğin işlenme sonucu (ödeme gerçekleşmedi veya hata oluştu)44– ödeme tutarı
Bu, ödeme sistemine bağlıdır. Tüm ödeme sistemleri ödeme hatası hakkında callback göndermez.
Buton ayarlarında belirtilen tutar, müşterinin ödediği tutardan farklıysa, botta OTOMATİK olarak CALLBACK gelir. Bu, ödeme sisteminin gizli anahtarının ilk 10 karakterinden, _different_amounts kelimesinden ve ödemenin benzersiz ID’sinden oluşur.
Örneğin: ovg58keefc_different_amounts 123456, burada:
ovg58keefc– ödeme sisteminin gizli anahtarının ilk 10 karakteri_different_amounts– isteğin işlenme sonucu (ödeme tutarı bağlantıdaki tutardan farklı)123456– ödemenin benzersiz ID’si
Hesaplayıcıdaki get_prodamus_payment_url fonksiyonu
get_prodamus_payment_url fonksiyonuÖdeme bağlantısı oluşturmak için Hesaplayıcı bloğundaki get_prodamus_payment_url fonksiyonunu kullanabilirsiniz.
Hesaplayıcı alanında değişkene bu fonksiyonun değerini atıyoruz: get_prodamus_payment_url.
Değişkenin adını siz seçersiniz. Ekran görüntülerinde değişken adlandırma örnekleri verilmiştir.
Bu değişkene ödeme bağlantısı yazılır. Değişkeni mesajda bağlantı olarak gösterebilir veya «Öde» metni olan butona yerleştirebilirsiniz.
Ödeme bağlantısı örneği: https://payform.kz/7p3JR8/
Örnek 1:

your_variable = get_prodamus_payment_url(amount, product_name, expired, customer_phone, customer_email, discount, description, extra_params, products_for_receipt)
Fonksiyon parametreleri:
amount
Ödeme tutarı – tam sayı veya noktalı sayı olarak verilebilir. Örneğin: 25 veya 52.5. (zorunlu parametre)
product_name
Ürün adı (zorunlu parametre)
expired
Ödeme bağlantısının geçerlilik süresi – gg.aa.yyyy formatında (örneğin, 25.01.2021).
Ayrıca, Hesaplayıcı alanında şöyle belirtebilirsiniz:
expired = current_date + 2 (bağlantı 2 gün boyunca 00:00’a kadar geçerli olur).
Kesin zamanı da belirtebilirsiniz: gg.aa.yyyy ss:dd (örneğin, 25.01.2021 12:23).
Standart değişkenler de kullanılabilir, örneğin bağlantının geçerliliğini 30 dakikaya ayarlamak:
Bu parametreyi atlamak istiyorsanız, yerine tek tırnak, çift tırnak veya None değerini verebilirsiniz.
customer_phone
Alıcının telefon numarası – zorunlu değildir, eğer customer_email parametresi verilmişse.
Bu parametreyi atlamak istiyorsanız, yerine tek tırnak veya çift tırnak verebilirsiniz.
customer_email
Alıcının Email adresi – zorunlu değildir, eğer customer_phone parametresi verilmişse.
Bu parametreyi atlamak istiyorsanız, yerine tek tırnak veya çift tırnak verebilirsiniz.
discount
İndirim miktarı – parametre tam sayı veya noktalı sayı olarak verilebilir: 25 veya 63.5.
Bu parametreyi atlamak istiyorsanız, yerine tek tırnak veya çift tırnak verebilirsiniz.
description
Ürün açıklaması (belirtilmezse, otomatik olarak 'Fatura ödeme order_id' doldurulur).
Bu parametreyi atlamak istiyorsanız, yerine tek tırnak veya çift tırnak verebilirsiniz.
extra_params
Ek parametreler, bu fonksiyonda olmayan parametreler. Kullanılabilir ek parametreler, ödeme sisteminin API’si ile çalışma dokümantasyonunda görülebilir: Prodamus REST API
Örneğin:
Bu parametreyi atlamak istiyorsanız, yerine tek tırnak/çift tırnak veya None değerini verebilirsiniz.
products_for_receipt
50 ila 4000 karakter arasında bir string formatında "sipariş açıklaması - fiyat - satın alınan kaynağa bağlantı".
Örneğin:
“‘Sazan Yakalama’ kursu, fiyatı 4999 ruble, kurs sayfasına bağlantı: https://www.lovilescha.ru/courses/poimai_kilogram/"
Bu parametre, kendi online kasanız yoksa Prodamus üzerinden ödemeyi faturalamak için gereklidir.
extra_params = {"payments_limit": "3"}
products_for_receipt = "‘Sazan Yakalama’ kursu, fiyatı 4999 tenge, kurs sayfasına bağlantı: https://www.lovilescha.ru/courses/poimai_kilogram/"
link_prodamus_url = get_prodamus_payment_url( 4999, '‘Sazan Yakalama’ kursu', '27.03.2023 17:00', '79167777771', '[email protected]', 20, 'Pazardaki en iyi kurs', extra_params, products_for_receipt
Bu örnekte:
extra_params– ek parametreler (örneğin, ödeme limiti).products_for_receipt– fişte gösterilecek ürün bilgisi.get_prodamus_payment_urlfonksiyonu üzerinden ödeme bağlantısı oluşturulur.
Eğer blokta birden fazla bağlantı alma fonksiyonu varsa ve hata oluşursa, hata değeri error_payment_func değişkenine yazılır.
Hata, son fonksiyon üzerinden Hesaplayıcı’da yazılır.
payment_sum değişkeni ve ek parametreler ile bağlantı oluşturma
payment_sum değişkeni ve ek parametreler ile bağlantı oluşturmaDikkat: payment_sum değişkenine değer son değişkenden verilir, yani zorunlu olmayan değişkenlerden sonra: payment_description, product_name vb.
Ödeme bağlantısı oluşturmak için Hesaplayıcı alanında payment_sum değişkeninin değerini ayarlamak yeterlidir.
Bundan sonra otomatik olarak prodamus_pay_url değişkeni oluşur.
Ödeme bağlantısı örneği: https://payform.ru/7p3JR8/
Bu değişkeni mesajda bağlantı olarak gösterebilir veya «Öde» metni olan butona yerleştirebilirsiniz.
payment_sum değişkenini tanımlamadan önce şu zorunlu olmayan değişkenleri belirtebilirsiniz:
product_name
Ürün adı (belirtilmezse, otomatik olarak "Fatura ödeme order_id" doldurulur) – aşağıdaki ekran görüntüsünde nerede gösterildiği belirtilmiştir.
payment_description
Ürün açıklaması (belirtilmezse, otomatik olarak 'Fatura ödeme order_id' doldurulur) – aşağıdaki ekran görüntüsünde nerede gösterildiği belirtilmiştir.
discount_value
İndirim miktarı (örneğin, discount_value = 25 veya discount_value = 50.25)
customer_phone
Alıcının telefon numarası – başka bir parametre verilmişse zorunlu değildir.
customer_email
Alıcının Email adresi
link_expired
Ödeme bağlantısının geçerlilik süresi – gg.aa.yyyy formatında (örneğin, 25.01.2021).
Ayrıca, Hesaplayıcı alanında şöyle belirtebilirsiniz:
link_expired = current_date + 2 (bağlantı 2 gün boyunca 00:00’a kadar geçerli olur).
link_expired
Ayrıca kesin zamanı da belirtebilirsiniz, format: gg.aa.yyyy ss:dd (örneğin, 25.01.2021 12:23).
Standart değişkenler de kullanılabilir, örneğin bağlantının geçerlilik süresini 30 dakikaya ayarlamak:
time = current_time + 30 link_expired = "#{current_date} #{time}"
currency
Ödeme para birimi, varsayılan olarak "rub".
Tam argüman listesi:
rubusdeurkzt
Bu parametre küçük harflerle verilmelidir.
payment_title
Ödeme başlığı (127 karaktere kadar). Belirtilmezse, otomatik olarak şu metinle doldurulur:
“Fatura ödeme payment_id” (payment_id – MaviBot’taki sipariş kimliği).
payment_description
Ödemenin kısa açıklaması (127 karaktere kadar)
locale
Ödeme sayfasının dili – en-US, fr-XC vb. formatta belirtilir. Varsayılan değer – ru-RU.
Tam listeye şu bağlantıdan bakabilirsiniz
products_for_receipt
50 ila 4000 karakter arasında bir string formatında "sipariş açıklaması - fiyat - satın alınan kaynağa bağlantı".
Örneğin:
“‘Sazan Yakalama’ kursu, fiyatı 4999 tenge, kurs sayfasına bağlantı: https://www.lovilescha.ru/courses/poimai_kilogram/"
Bu zorunlu parametre, kendi online kasanız yoksa Prodamus üzerinden ödemeyi faturalamak için gereklidir.
payment_sum
(zorunlu) ödeme tutarı
discount_value, customer_phone, customer_email ve link_expired değişkenleri abonelikler için de geçerlidir.

Uygulama örneği. İlk blokta ödeme tutarını ayarlıyoruz:

Sonraki adımda gerekli yerde prodamus_pay_url bağlantısını çıkartıyoruz:

prodamus_available_payment_methods değişkeni payment_sum tanımlanmadan önce belirlenir.
Olası değerler:
AC
RF’de çıkarılmış kart ile ödeme
ACkz
Kazakistan kartı ile ödeme
ACf
RF hariç BDT ülkeleri kartları ile ödeme
ACEURNMBX
Rusya ve Belarus hariç tüm ülkelerin EUR kartı ile ödeme
SBP
Kart bilgisi girmeden hızlı ödeme. Rusya kartları için
QW
Qiwi cüzdan
PC
Юmoney
GP
Ödeme terminali
sbol
Sberbank Online
invoice
Fatura ile ödeme
installment
Prodamus üzerinden taksit
installment_5_21
Prodamus üzerinden 3 aylık taksit
installment_6_28
Prodamus üzerinden 6 aylık taksit
installment_10_28
Prodamus üzerinden 10 aylık taksit
installment_12_28
Prodamus üzerinden 12 aylık taksit
installment_0_0_3
Tinkoff üzerinden 3 ay taksit
installment_0_0_4
Tinkoff üzerinden 4 aylık taksit
installment_0_0_6
Tinkoff üzerinden 6 aylık taksit
installment_0_0_10
Tinkoff üzerinden 10 aylık taksit
installment_0_0_12
Tinkoff üzerinden 12 aylık taksit
installment_0_0_24
Tinkoff üzerinden 24 aylık taksit
installment_0_0_36
Tinkoff üzerinden 36 aylık taksit
credit
Tinkoff üzerinden kredi
vsegdada_installment_0_0_4
“Vsegdada” üzerinden 4 aylık taksit (available_payment_methods ile çalışmaz)
vsegdada_installment_0_0_6
“Vsegdada” üzerinden 6 aylık taksit
vsegdada_installment_0_0_10
“Vsegdada” üzerinden 10 aylık taksit
vsegdada_installment_0_0_12
“Vsegdada” üzerinden 12 aylık taksit
vsegdada_installment_0_0_24
“Vsegdada” üzerinden 24 aylık taksit
vsegdada_installment_0_0_36
“Vsegdada” üzerinden 36 aylık taksit
sbrf_installment_0_0_6
Sberbank üzerinden 6 aylık taksit
sbrf_installment_0_0_10
Sberbank üzerinden 10 aylık taksit
sbrf_installment_0_0_12
Sberbank üzerinden 12 aylık taksit
sbrf_installment_0_0_24
Sberbank üzerinden 24 aylık taksit
sbrf_installment_0_0_36
Sberbank üzerinden 36 aylık taksit
otp_installment_0_0_6
«OTP Bank» üzerinden 6 aylık taksit
otp_installment_0_0_10
«OTP Bank» üzerinden 10 aylık taksit
otp_installment_0_0_12
«OTP Bank» üzerinden 12 aylık taksit
otp_installment_0_0_24
«OTP Bank» üzerinden 24 aylık taksit
otp_installment_0_0_36
«OTP Bank» üzerinden 36 aylık taksit
mts_installment_0_0_6
«MTS Bank» üzerinden 6 aylık taksit
mts_installment_0_0_10
«MTS Bank» üzerinden 10 aylık taksit
mts_installment_0_0_12
«MTS Bank» üzerinden 12 aylık taksit
mts_installment_0_0_24
“MTS Bank” üzerinden 24 ay taksit
mts_installment_0_0_36
“MTS Bank” üzerinden 36 ay taksit
monetaworld
Rusya hariç dünya bankalarının kartları
sbrf_bnpl
Sber üzerinden taksit
Birden fazla değeri dikey çizgi ile bölmeye izin verilir. Örneğin:
prodamus_currency — tutarı belirli bir para biriminde göstermeye olanak tanıyan başka bir ek parametredir.
Olası para birimleri:
kzt— tenge içineur— euro içinusd— dolar için
Böylece, bağlantıda belirtilen tutar seçilen para biriminde olur.
Callback payment_callback alındığında currency ve currency_sum parametrelerine dikkat etmek gerekir; bunlarda para birimi ve tutar belirtilir.
Belirtilmezse, ödeme yöntemleri olmayan sayfaya yönlendirilir. Ödeme yöntemleri desteklenerek eklenebilir. Eklenen yöntemleri sayfa ayarlarından veya ödeme bağlantısını açarak görebilirsiniz.


Sonuç nasıl işlenir
Başarılı ödeme
Önemli: Başarılı ya da başarısız ödemeden sonra bot’a callback’ler gelir; bunların yardımıyla ödemenin başarıyla yapılıp yapılmadığını belirleyebilirsiniz.
Callback’ler sistemde kullanıcıdan gelen mesajlar gibi görünür, ancak kullanıcı bunları gönderemez. Gizli anahtar ve durumun birleşimi şeklindedirler. Örneğin:
veya
Başarılı ödemeden sonra prodamus_payment_completed değişkeni otomatik olarak True değerini alır.
Not: Callback’ler biraz gecikmeli gelir, bu nedenle kullanıcıya bağlantıyı gönderdikten sonra şu mesajı göndermek daha iyidir:
“Ödeme yaptıktan sonra ödemenin başarıyla tamamlanmasını bekleyin.”
Callback yapısı
Ödeme butonu aracılığıyla veya Hesaplayıcı’daki fonksiyonla oluşturulan bağlantılar için ödemeden sonra bot’a otomatik olarak bir callback gelir. İçeriği şöyledir:
Örneğin:
ovg58keefc— ödeme sisteminin tam gizli anahtarı_success– isteğin işlenme sonucu (başarılı ödeme)
Pratik kullanım
Başarılı ödemeyi koşullu blok üzerinden işleyip kullanıcıya uygun mesajı gösterebilirsiniz.

Karşılaştırma tipi "Full match" / "Tam eşleşme" olmalıdır
Yeniden ödeme yapmak için mutlaka payment_sum değişkenini sıfıra eşitleyip daha önce oluşturulan bağlantıyı silmek gerekir. Ardından payment_sum değişkenine yeni bir değer vererek güncellenmiş bağlantıyı alabilirsiniz.
Aboneliği devre dışı bırakma/yeniden etkinleştirme
Ayrıca Prodamus sisteminde aboneliğin etkinleştirildiği veya durdurulduğu ile ilgili bildirimler vardır:

“Aboneliği kullanıcı devre dışı bıraktı” — abonelik manuel olarak durdurulduysa (örneğin abonelikten vazgeçildiğinde). Bu bildirim, mevcut ödenmiş dönem bitmeden önce gelebilir. Yapılacak işlem sizin kararınıza bağlıdır: yok sayma, izlemeye alma veya kullanıcıyı geri kazanmaya çalışma.
“Aboneliği kullanıcı yeniden etkinleştirdi” — abonelik geri yüklendi. Bu bildirim, kullanıcı mevcut ödenmiş dönem bitmeden önce aboneliği geri yüklerse gelebilir. Yapılacak işlem sizin kararınıza bağlıdır: yok sayma veya izleme listesinden çıkarma.
“Aboneliği devre dışı bırakma” — birkaç başarısız ödemeden sonra abonelik durdurulduysa.
Callback’ten değerleri kaydetme
Başarılı ödeme bildirimi alındıktan sonra payment_callback değişkenine Prodamus’tan bir callback yazılır; bunun içinde tüm ödeme verileri bulunur. Bu verileri kaydedip istediğiniz şekilde kullanabilirsiniz.
Callback örneği:
Bağlantı oluştururken product_name ve payment_description değişkenlerini belirtebilirsiniz. O zaman callback geldiğinde bunları şu şekilde alabilirsiniz:

Dikkat: payment_sum değişkenine son değer verilir; bu değer zorunlu olmayan değişkenlerden sonra gelir: payment_description, product_name.
Tutarı şu şekilde alabilirsiniz:
Mevcut callback’ler
Temel başarılı ödeme callback’lerine ek olarak, sohbet içinde kullanıcı tarafından görülmeyen mesajlar şunlardır:
callback’ler
Abone aboneliği devre dışı bıraktı (daha fazla bilgi burada)
Abone aboneliği yeniden etkinleştirdi (daha fazla bilgi burada)
Abonelik tamamlandı
Başarısız ödeme - açıklamalı not (yukarıdaki ekranda)
Yaklaşan tahsilat bildirimi - yaklaşan tahsilatın tarih ve saati
Durumlu taksit başvurusu
Müşteriyle diyalogdaki callback örnekleri
Abone aboneliği devre dışı bıraktı
Abone aboneliği yeniden etkinleştirdi
Abonelik tamamlandı
Başarısız ödeme - Yetersiz bakiye.
Başarısız ödeme - Kartın süresi dolmuş.
Başarısız ödeme - Kart limiti aşılmış.
Başarısız ödeme - Kart kayboldu
Başarısız ödeme - Sistem hatası
Başarısız ödeme - İşlem reddedildi. Kartı veren bankayla iletişime geçin.
Başarısız ödeme - İşlem, kartı veren banka tarafından reddedildi.
Başarısız ödeme - İşlem banka tarafından reddedildi.
Yaklaşan tahsilat bildirimi - gg.aa.yyyy ss:dd
Taksit başvurusu onaylandı
Taksit başvurusu iptal edildi
Taksit başvurusu reddedildi
İsteğe bağlı olarak kullanıcıya herhangi bir mesaj gönderimini yapılandırabilirsiniz. Örneğin, otomatik ödeme başarısız olduğunda mesaj gönderme.
Başarısız ödeme için belirli bir nedene yönelik mesaj cevap bloklarını şu şekilde yapılandırabilirsiniz:

Tüm başarısız ödemeler için, nedenine bakılmaksızın, mesaj göndermek üzere şu şekilde yapılandırabilirsiniz:

Tüm callback’lerde, metinde “Ödeme başarısız” ifadesi varsa, kullanıcıya sizin belirlediğiniz metinle bir mesaj gönderilir.
Abonelik ödemesi nasıl yapılır
Abonelik nasıl oluşturulur
Abonelik oluşturmak için öncelikle abonelik ürünü oluşturmak gerekir. Ayrıntılı kılavuz: Abonelik nasıl oluşturulur ve ayarlanır
Ardından abonelik ürününün ID’sini kopyalarız. Örneğin, aşağıda nereden alınacağı gösterilmiştir:
Abonelik ödeme bağlantısı oluşturmak için, prodamus_subscription değişkenine abonelik ürününün ID’sini atanması gerekir. Bundan sonra otomatik olarak prodamus_pay_url değişkeni oluşur.

Türkçe çeviri (resmî üslup):
prodamus_pay_url değişkeni ekranda bağlantı olarak gösterilebilir veya “Öde” metinli bir butona yerleştirilebilir. Bağlantı örneği: https://payform.kz/7p3JR8/
Sonucun işlenmesi tek seferlik ödeme ile aynı şekilde yapılır (yukarıda okuduğunuz gibi).
Başarılı abonelikten sonra kullanıcıya, ödeme sırasında girilen customer_phone değişkeni eklenir. Telefon numarası aboneliği yönetmek için gereklidir.
Eğer customer_email verilmezse, aboneliği yönetmek için customer_phone gerekir.
get_prodamus_subscription_url fonksiyonu ile abonelik bağlantısı nasıl oluşturulur
get_prodamus_subscription_url fonksiyonu ile abonelik bağlantısı nasıl oluşturulurÜrün için abonelik ödeme bağlantısı oluşturmanın başka bir yöntemine bakalım.
Prodamus panelinden bir abonelik ürünü oluşturulur. Detaylı kılavuza şu bağlantıdan ulaşılabilir: Abonelik nasıl oluşturulur ve ayarlanır
Ardından abonelik ürününün ID’sini kopyalarız. Örneğin, aşağıda nereden alınacağı gösterilmiştir:
Ürün aboneliği için ödeme bağlantısı almak amacıyla Hesaplayıcı’da şu fonksiyonu belirtiriz
get_prodamus_subscription_url(subscription_id, product_name, expired, customer_phone, customer_email, discount, description, extra_params, products_for_receipt)
Örnek 1: Abonelikli ürün için ödeme bağlantısı

link = get_prodamus_subscription_url(subscription_id, product_name, expired, customer_phone, customer_email, discount, description, extra_params, products_for_receipt)
Fonksiyonun parametreleri:
subscription_id
Abonelik ürününün ID’si — Prodamus panelinden kopyalanabilir (zorunlu parametre).
product_name
Ürünün adı (zorunlu parametre).
expired
Ödeme bağlantısının geçerlilik süresi — gg.aa.yyyy formatında (örneğin, 25.01.2021).
Ayrıca “Hesaplayıcı” alanında da gösterilebilir:
expired parametresi tam zamanla da belirtilebilir; format: gg.aa.yyyy ss:dd (örneğin, 25.01.2021 12:23).
Standart değişkenler de kullanılabilir; örneğin bağlantının geçerlilik süresini 30 dakikaya ayarlamak için:
Bu parametreyi atlamak istiyorsanız, yerine tek veya çift tırnak ya da None değerini verebilirsiniz.
customer_phone
Ödeme yapan kişinin telefon numarası – zorunlu değildir, eğer customer_email parametresi verilirse.
Bu parametreyi atlamak istiyorsanız, yerine tek veya çift tırnak verin.
customer_email
Ödeme yapan kişinin e-posta adresi – zorunlu değildir, eğer customer_phone parametresi verilirse.
Bu parametreyi atlamak istiyorsanız, yerine tek veya çift tırnak verin.
discount
İndirim miktarı — parametre tam sayı veya ondalık sayı olarak verilebilir: 25 veya 63.5.
Bu parametreyi atlamak istiyorsanız, yerine tek veya çift tırnak verin.
description
Ürün açıklaması — belirtilmezse, varsayılan olarak 'Fatura ödeme order_id' doldurulur.
Bu parametreyi atlamak istiyorsanız, yerine tek veya çift tırnak verin.
extra_params
Ek parametreler, bu fonksiyonda bulunmayan parametreler. Olası ek parametreleri ödeme sistemi API dokümantasyonunda görebilirsiniz: Prodamus REST API kılavuzu
Örnek:
Bu parametreyi atlamak istiyorsanız, yerine tek/çift tırnak veya None değerini verebilirsiniz.
products_for_receipt
50–4000 karakterden oluşan bir metin, format: "sipariş açıklaması - fiyat - satın alınan kaynağa bağlantı"
Örnek: “Kefal Balıkçılığı Kursu” kursu, fiyatı 4999 tenge, kurs sayfasına bağlantı: https://www.lovilescha.ru/courses/poimai_kilogram/.
Bu parametre zorunludur; kendi çevrimiçi kasanız yoksa, ödemeleri Prodamus üzerinden fişleştirmek için gereklidir.
extra_params = {"payments_limit": "3"}
products_for_receipt = "Kurs ‘Kefal Balıkçılığı Kursu’, aylık abonelik fiyatı 2000 tenge, kurs sayfasına bağlantı: https://www.lovilescha.ru/courses/poimai_kilogram/"
link_prodamus_sub = get_prodamus_subscription_url(618988, 'Kurs ‘Kefal Balıkçılığı Kursu’', '27.03.2023 17:02', '79167777771', '[email protected]', 20, 'Piyasadaki en iyi kurs', extra_params, products_for_receipt)
Blokta birden fazla fonksiyonla bağlantı alma sırasında hata olursa, hata değeri error_payment_func değişkenine yazılır.
Hata, son fonksiyon üzerinden Hesaplayıcı’da yazılır.
Abonelik durumu nasıl yönetilir
Bu yöntem yalnızca gerçek abonelikler içindir; demo modunda kart bağlantısı yoktur.
Aboneliği yönetmek için mutlaka customer_phone veya customer_email parametrelerinden biri verilmelidir.
Kullanıcıyı abonelikten çıkarmak için bir blok oluşturup aşağıdaki fonksiyonu çağırmak gerekir: delete_subscription_prodamus
Parametre örnekleri:
url— ödeme formunun URL’si, oluşturucudaki ayarlardan alınırsecret_key— ayarlardan alınan gizli anahtarid_subscription— abonelik ürününün ID’sicustomer_phone— abonelik sahibinin telefonuswitcher— abonelik yönetimi:0— aboneliği durdurma,1— aboneliği yeniden etkinleştirmeprofile_id— Prodamus sistemindeki profil ID’si
Not:
Eğer profil ID gelirse, profile_id değişkenine kaydedilir.
profile_id fonksiyona customer_phone veya customer_email yerine verilerek abonelik durdurulabilir.
Örnek: abonelik bloklarının ayarlanması

Dikkat edin, fonksiyon status döndürür; bunu kaydedip kendi istediğiniz şekilde işleyebilirsiniz. Aboneliği başarıyla durdurduğunuzda veya yeniden etkinleştirdiğinizde status = ok olur.
Aboneliği yönetme fonksiyonu
prodamus_subscription_switch_status(subscription_id, switcher, customer_phone, customer_email, profile_id) Parametreleri:
subscription_id – abonelik ürününün ID’si
switcher – abonelik yönetimi: 0 – aboneliği durdur, 1 – aboneliği yeniden etkinleştir
customer_phone – abonelik sahibinin telefonu; customer_email belirtilmişse zorunlu değildir
customer_email – abonelik sahibinin e-posta adresi; customer_phone belirtilmişse zorunlu değildir
profile_id – Prodamus sistemindeki profil ID’si

Türkçe çeviri (resmî üslup):
Örnek 1: customer_phone parametresi verilmiş, customer_email atlandığında:
Örnek 2: customer_email parametresi verilmiş, customer_phone atlandığında:
Fonksiyon tüm işlemler başarıyla tamamlanırsa ok döndürür veya hata olması durumunda hata açıklamasını döndürür.
Abonelik indirimlerini yönetme
Bu fonksiyon, abonelikteki sonraki ödemeler için indirim tutarını belirler. İndirim sınırlı veya sınırsız ödeme sayısı için verilebilir.
Parametreleri:
subscription_id— aboneliğin ID’sidiscount— ondalık sayı, noktadan sonra iki basamak hassasiyetle; değeri sıfırdan büyük olmalı ve aboneliğin temel ücretini aşmamalıdırcustomer_phone— müşterinin telefon numarası, format:+79999999999(zorunlu değil, eğercustomer_emaildeğişkeni varsa; ilk ödemeden sonra oluşur)num— indirim uygulanacak ödeme sayısı (zorunlu değil; belirtilmezse indirim tüm ödemelere uygulanır)profile_id— Prodamus sistemindeki profil ID’si
İstek başarıyla tamamlanırsa, fonksiyon 'ok' döndürür; hata oluşursa, fonksiyon hata açıklamasını döndürür.
İndirim tutarı ve aralık, yalnızca fonksiyon yeni değerlerle tekrar çağrılırsa üzerine yazılır!
Örnekler:
1. Tüm sonraki otomatik ödemeler için 1₽ indirim vermek (telefon numarası belirtilmez, çünkü otomatik olarak customer_phone değişkeninden alınır; indirim tutarı varsayılan olarak aboneliğin tüm süresine uygulanır):
2. Sonraki 3 ödeme için 2₽ indirim verme örneği (telefon numarası boş tırnaklarla verilir, çünkü otomatik olarak customer_phone değişkeninden alınır):
3. İndirimi ondalık olarak gösterme örneği (ayırıcı nokta olmalıdır, değerler tırnaksız yazılır); telefon numarası değişken üzerinden verilebilir.

r = prodamus_subscription_discount(#{prodamus_subscription}, 10.25, #{customer_phone}, 3)
Abonelik için bir sonraki ödeme tarihini nasıl ayarlarsınız
Bu yöntemle abonelikte bir sonraki ödeme tarihini ileri alabilirsiniz. Tarih yalnızca mevcut ayarlanmış sonraki ödeme tarihinden “geleceğe” doğru ileri alınabilir; böylece kulüpteki katılım süresi artırılabilir.
Örneğin, bu abonelere bonus olarak uygulanabilir.
Bunun için aşağıdaki fonksiyonu kullanmak gerekir:
Parametreleri:
subscription_id— aboneliğin tanımlayıcısıdate— gg.aa.yyyy ss:dd veya gg.aa.yyyy biçiminde tarih; yalnızca gg.aa.yyyy verilirse saat 00:00 olurcustomer_phone— zorunlu değil; belirtilmezse,customer_phonedeğişkeninden alınır; bulunamazsa fonksiyon çalışmazprofile_id— Prodamus sistemindeki profilin ID’si
Parametreler Prodamus’a nasıl gönderilir
Gerekli parametreleri (örneğin aboneliğin başlangıç tarihi, taksitli ödemeyi devre dışı bırakma vb.) Prodamus sistemine göndermek için değişken adının başına prodamus_ ön ekini ekleyin.
Sonrasında ödeme bağlantısı oluştururken, bu değişkendeki parametreler otomatik olarak ödeme sistemine gönderilir.
Ödeme nasıl test edilir
Sadece ödemeyi test ediyoruz!
Entegrasyonu ve ödeme hunilerini ayarlarken hesabınızdan para çekilmemesi için test kartlarını kullanabilirsiniz.
Önce ödeme sayfanızı DEMO moduna geçirin ⤵ “Kaydet” düğmesine basmayı unutmayın.

Test ödemesi yapmak için test hesapları kullanılabilir.
Sberbank test kartları:
MIR Kart numarası: 2202 2050 0001 2424 Geçerlilik tarihi: 05/35 Arka yüz doğrulama kodu (CVV): 669
MasterCard Kart numarası: 5469 9801 0004 8525 Geçerlilik tarihi: 05/26 Arka yüz doğrulama kodu (CVV): 041 3‑D Secure doğrulama kodu: 111111
Visa Kart numarası: 4006 8009 0096 2514 Geçerlilik tarihi: 05/26 Arka yüz doğrulama kodu (CVV): 941 3‑D Secure doğrulama kodu: 111111
❗️Test hesaplarıyla ödeme yapıldığında, tüm ayarlanmış huniler ve entegrasyonlar normal ödemedeki gibi çalışır❗️
Form test edildi
Gerçek ödemeleri kabul etmek için formun çalışma moduna geçmesi gerekir. Yani demo modu anahtarını açık kırmızı duruma getirmek gerekir.
Last updated