الأموال الواردة
قبول المدفوعات
طلب الدفع على الهاتف، ورمز QR الديناميكي، والصندوق والدفع برقم الفاتورة (C2B)، والفواتير، والأوامر الدائمة، والطلبات بين الشركات.
7 دقائق قراءة
في هذه الصفحة
طلب الدفع
يرسل POST /partner/stk طلب دفع إلى هاتف العميل. يوافق العميل برقمه السري على جهازه الخاص، وتصلك النتيجة عبر webhook.
| الحقل | مطلوب | الوصف |
|---|---|---|
payer_msisdn | نعم | هاتف الدافع بالصيغة الدولية، مثل 254708374149. |
amount | نعم | مبلغ موجب بعملة الحساب. |
reference | لا | مرجع طلبك أو فاتورتك، ويُعاد إليك في webhook. |
callback_url | لا | يحل محل webhook الافتراضي لهذا الخصم وحده. |
idem | لا | مفتاح منع التكرار. تعيد المحاولة بالمفتاح نفسه الخصم الأصلي. |
دورة حياة الخصم
| الحالة | المعنى | الحدث |
|---|---|---|
pending | أُرسل الطلب، في انتظار العميل. | charge.created |
authorised | تمت الموافقة، جارٍ التسوية. | |
completed | انتقلت الأموال. يحمل transaction مرجع دفتر الأستاذ. | charge.completed |
declined | رفض العميل الطلب. | charge.declined |
expired | لا رد قبل expiry. | charge.expired |
failed | تعذر الإكمال (مثل عدم كفاية الرصيد). |
استعلم عبر GET /partner/status?charge_ref=… إذا تأخر webhook، ولا تفترض النجاح أبدًا من الاستجابة pending.
منع التكرار
قد تنتهي مهلة الشبكات. إذا لم تعرف هل أُنشئ الخصم أم لا، فأعد المحاولة بقيمة idem نفسها: ستحصل على الخصم الأصلي بدل طلب ثانٍ. استخدم مفتاحًا واحدًا لكل محاولة دفع، مثل order-9-attempt-1.
رمز QR الديناميكي (امسح لتدفع)
يعيد POST /partner/qr صورة PNG بترميز base64 يمسحها العملاء في تطبيقهم. اعرضها على شاشة أو إيصال أو فاتورة.
{ "amount": 100, "kind": "buygoods", "recipient": "400200", "reference": "INV-1001" }قيمة kind هي buygoods (صندوق) أو paybill أو send (إلى رقم هاتف). وتكون recipient افتراضيًا رقمك المختصر.
الصندوق والدفع برقم الفاتورة (C2B)
يمكن للعملاء أيضًا الدفع إلى رقمك المختصر من تطبيقهم أو عبر USSD. حدد وجهة التأكيدات باستخدام POST /partner/c2b/register، وبعدها تصلك كل دفعة كحدث c2b.confirmation.
في بيئة الاختبار، حاكِ دفعة:
curl -s https://pesa-bridge.com/api/bridgepay/v1/partner/c2b/simulate \
-H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{"msisdn":"254708374149","amount":250,"bill_ref":"ACC-001"}'الفواتير
ينشئ Bill Manager فواتير ببنود وضرائب. اضبط "send": true لإرسال طلب دفع إلى العميل فورًا، أو أرسله لاحقًا باستخدام POST /partner/bills/send.
{
"customer_name": "Jane Doe",
"customer_msisdn": "254708374149",
"tax_pct": 16,
"send": true,
"items": [{ "description": "Consulting", "quantity": 2, "unit_price": 5000 }]
}طرق أخرى لتحصيل المدفوعات
| نقطة النهاية | ما تفعله |
|---|---|
POST /partner/standingorder | دفعة متكررة من عميل إلى رقمك المختصر، ويفوضها العميل في تطبيقه. |
POST /partner/b2b/express | طلب دفعة من شركة أخرى (من صندوق إلى صندوق). لا تنتقل الأموال حتى توافق. |
POST /partner/loyalty/pay | قبول نقاط الولاء عند الدفع، وتتلقى قيمتها نقدًا. |
GET /partner/balance | رصيد حساب التحصيل لديك. |