# Wayforpay

{% hint style="info" %}

* التسجيل السريع وتأكيد التاجر
* تسجيل التاجر للأفراد الذين لا يملكون موقعًا إلكترونيًا
* نسبة موحّدة للأفراد والكيانات القانونية – 2.5%
* إتاحة Google Play و ApplePay
  {% endhint %}

### **كيفية الربط**

لربط نظام الدفع wayforpay، ستحتاج إلى 3 قيم:

1. اسم دخول التاجر
2. المفتاح السري للتاجر
3. اسم نطاق موقع التاجر الإلكتروني.

انتقل إلى حسابك الشخصي -> إعدادات المتجر **<https://m.wayforpay.com/mportal/merchant/list>**

<figure><img src="/files/3ed5a8f93633fac20a15ae8c0a6de558777d6d27" alt="" width="563"><figcaption></figcaption></figure>

انسخ البيانات وانتقل إلى الإعدادات في Mavibot.

افتح قسم "التحصيل"، واختر wayforpay.

<figure><img src="/files/5d1048f331bc98f54395219007792020e538c03a" alt=""><figcaption></figcaption></figure>

تحتاج إلى إدخال البيانات المستلمة في النموذج الذي يفتح:

<figure><img src="/files/00dc8d00909a3893e63de3764f7ea26c69103794" alt=""><figcaption></figcaption></figure>

لإنشاء رابط دفع، تحتاج إلى تعيين قيمة **payment\_sum** متغير (على سبيل المثال، 150 أو 100.55، وإذا كان المبلغ كسريًا، فيُفصل المبلغ بنقطة):

<figure><img src="/files/f5c9a291c28ec1f031f3587c1146f845ca9028de" alt=""><figcaption></figcaption></figure>

مباشرة بعد ذلك، سيظهر المتغير **wayforpay\_pay\_url** هذا المتغير. يمكن عرض هذا المتغير في الرسالة مع رابط أو وضعه على الزر بالنص "Pay":

الخيار 1. رابط الدفع في الزر:

<figure><img src="/files/52e647d5194675a784973d76fceeafc476a0864a" alt=""><figcaption></figcaption></figure>

الخيار 2. رابط الدفع موجود في حقل url الخاص بالمرفق:

<figure><img src="/files/1f850f986fad64ae59310b6f6a471a8590dee7a1" alt=""><figcaption></figcaption></figure>

يبدو الرابط كما يلي:

<https://secure.wayforpay.com/invoice/id1bbb2ad0375>

{% hint style="warning" %}
افتراضيًا، <mark style="color:red;">USD (دولارات)</mark> مُعيّن، وإذا كنت بحاجة إلى عملة أخرى، فعليك ضبط قيمة متغير العملة.
{% endhint %}

كذلك، قبل تعيين قيمة **payment\_sum** المتغير، يمكنك تعيين المتغيرات الاختيارية التالية لتكوين الدفع.

**currency** - هي العملة الافتراضية للطلب، UAH (القيم الممكنة هي USD وEUR وRUB)

**session\_timeout** - مدة صلاحية الرابط بالثواني، والقيمة الافتراضية هي 3600 (ساعة واحدة)

**product\_name** - اسم المنتج

**language** - لغة صفحة الدفع، والقيمة الافتراضية هي UA (القيم الممكنة هي RU وEN)\
\
**buyer\_name** - اسم العميل

**buyer\_email** - بريد العميل الإلكتروني

**buyer\_first\_name** - اسم العميل

**buyer\_last\_name** - اسم عائلة العميل

هكذا يكون لدى صفحة الدفع رابط.

![مثال على إنشاء رابط دفع](https://lh6.googleusercontent.com/Qsm1KH-AI7U8pv_6AjddIF3rWTlidd-TCKepv0LtbxbpEHBL72YbrQ-Yzb-UvI64-ih_XVqb9kjVCRcix6B5rWFK-AWgNLEbHgsaLCZvMHXoH7xHmSrnsZz-qKB0wHH67M0u8gyR)

لننشئ رابطًا للدفع بمبلغ 1 <mark style="color:red;">USD</mark> وبمدة صلاحية ساعتين:

<figure><img src="/files/3d2315ca129e420d3cd45e9fe3004fd842182260" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**انتبه:** \
\- أولًا، حدّد المعلمات الاختيارية  **product\_name** إلخ.\
\- وأخيرًا، عيّن قيمة الـ **payment\_sum** .
{% endhint %}

يرجى ملاحظة أننا نضبط أولًا المتغيرات للإعدادات، ثم payment\_sum. يمكن ضبط المتغيرات في وقت أبكر ضمن السلسلة، وليس في كتلة واحدة، وهذا مثال.

بعد ذلك، في الكتلة التالية، نعرض **wayforpay\_pay\_url** المتغير، الذي يحتوي على رابط (على سبيل المثال، رابط في النص):

<figure><img src="/files/ec03f7cb184b189ba8bb8e5cf79bca2c54e1df77" alt=""><figcaption></figcaption></figure>

سيعمل الروبوت على النحو التالي:

<figure><img src="/files/122128866e2bf762f239c5fbdbd27ff9dde9d2fa" alt="" width="563"><figcaption></figcaption></figure>

### كيفية معالجة النتيجة

بعد نجاح الدفع، سيتم إرسال callbacks إلى البوت، والتي ستُعلمك بأن الدفع قد تم بنجاح. سترى هذه callbacks في النظام كرسائل من المستخدم، حتى لا يتمكن المستخدم من إرسالها، وهي تتكون من أول 10 أحرف من المفتاح السري واللاحقة \_success، على سبيل المثال:  **flk3409ref\_success**

<figure><img src="/files/30305794ffe7db8fa6b7e93007547ae986feabe9" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
هذه callbacks غير مرئية للمستخدم، وتُعرض فقط للمشغّل.
{% endhint %}

يجب أن يكون نوع المقارنة "Complete Match"

كما أنه بعد نجاح الدفع، يتم تعيين المتغير wayforpay\_payment\_completed إلى True.

على سبيل المثال، يمكنك معالجة الدفع الناجح داخل كتلة شرطية وعرض الرسالة المناسبة للمستخدم:

<figure><img src="/files/f6cf4c853c2736eb53523191e5c503aaf1dac6c2" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/f23f4e2d046c350cbf2a7827849ba60833b54284" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
إذا كنت لا تريد إخراج العميل من المخطط الرئيسي للـ chatbot، فاستخدم كتلة "Non state with a condition". لا يمكنك الانتقال إلى هذه الكتلة، لذلك لن يتم إخراج العميل من المسار الرئيسي بعد الدفع وسيتلقى إشعارًا بنجاح الدفع.

وإذا كنت بحاجة إلى متابعة القمع مع تفاعل على الدفع الناجح، فاستخدم كتلة "شرط البدء"، ثم سينتقل العميل من كتلة الدفع إلى كتلة "شرط البدء"، ومن خلالها يمكنك متابعة القمع.
{% endhint %}

{% hint style="success" %}
تتوفر معلومات أكثر عن الكتل الشرطية في المقال الذي يحمل الاسم نفسه
{% endhint %}

بعد إكمال الدفع، ستتم إضافة المتغير **wayforpay\_callback\_data** سيتم إضافة متغير إلى العميل يحتوي على بيانات استجابة نظام الدفع للمعاملة المكتملة. يمكنك استخراج البيانات المطلوبة من القاموس الناتج باستخدام **get** .

## دوال للعمل مع الحاسبة

### للدفعات المتكررة

wayforpay\_recurrent\_payment(amount, currency, session\_timeout, product\_name, language, buyer\_name, buyer\_email, regular\_date\_next, regular\_date\_end, regular\_count, regular\_mode) - ينشئ رابطًا لدفع متكرر.&#x20;

<table><thead><tr><th width="303.85546875">المعامل</th><th>الوصف</th></tr></thead><tbody><tr><td>amount</td><td>مبلغ الدفع</td></tr><tr><td>currency</td><td>العملة. الافتراضي: UAH (القيم الممكنة: USD، EUR، RUB). معلمة اختيارية.</td></tr><tr><td>session_timeout</td><td>مدة صلاحية الرابط بالثواني. الافتراضي: 3600 (ساعة واحدة). معلمة اختيارية.</td></tr><tr><td>product_name</td><td>اسم المنتج. معلمة اختيارية.</td></tr><tr><td>language</td><td>لغة صفحة الدفع. الافتراضي: UA (القيم الممكنة: RU، EN). معلمة اختيارية.</td></tr><tr><td>buyer_name</td><td>اسم العميل. اسم اختياري.</td></tr><tr><td>buyer_email</td><td>بريد العميل الإلكتروني. معلمة اختيارية.</td></tr><tr><td>regular_date_next</td><td>تاريخ المعاملة الآلية التالية. الافتراضي: بعد شهر واحد من إنشاء الرابط. معلمة اختيارية.</td></tr><tr><td>regular_date_end</td><td>تاريخ انتهاء المعاملة الآلية. الافتراضي: بعد سنة واحدة من إنشاء الرابط. يمكن حذفها إذا تم تحديد المعلمة regular_count. معلمة اختيارية.</td></tr><tr><td>regular_count</td><td>عدد المعاملات الآلية. إذا تم تحديده، فسيتم تجاهل المعلمة regular_date_end. معلمة اختيارية.</td></tr><tr><td>regular_mode</td><td>فترة الدفع المتكرر. معلمة اختيارية. القيم الممكنة: <br>- once - دفعة لمرة واحدة<br>- daily - يوميًا<br>- weekly - أسبوعيًا<br>- quarterly - كل 3 أشهر بعد تاريخ أول دفعة<br>- monthly - شهريًا<br>- bimonthly - مرة كل شهرين<br>- halfyearly - مرة كل 6 أشهر<br>- yearly  - مرة كل سنة</td></tr></tbody></table>

### إلغاء الدفع المتكرر

wayforpay\_delete\_recurrent() - يلغي الدفعات التلقائية المستقبلية للعميل. يعيد "Ok" عند التنفيذ بنجاح.

<figure><img src="/files/31ccd66bbd64134272115206419bed602550612e" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
يمكنك أيضًا استخدام كتلتي "Starting trigger" و"State" (يستخدم المثال كتلتي "Non-state with condition" و"Non-state").

إذا كنت لا تريد إزالة العميل من مسار الـ chatbot الرئيسي، فاستخدم كتلة "Non-state with condition" — لا يمكن الدخول إلى هذه الكتلة يدويًا، لذلك سيبقى العميل في المسار الرئيسي بعد الدفع مع تلقي إشعار بنجاح الدفع.

إذا كنت بحاجة إلى متابعة المسار بناءً على نجاح الدفع، فاستخدم كتلة "Starting trigger". في هذه الحالة، سينتقل العميل من كتلة الدفع إلى كتلة "Starting trigger condition"، ومنها يمكنك متابعة المسار.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/ar/aldfa/wayforpay.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
