بيئة الاختبار

بيئة الاختبار والوضع المباشر: الفروق

يشغّل وضع الاختبار الكود نفسه الذي يشغّله الوضع المباشر. إليك كل فرق مقصود، مع قيمته وسببه.

فتح بصيغة Markdown
في هذه الصفحة
  1. ما يختلف
  2. ما لا يختلف
  3. الاختبار والمباشر لا يختلطان أبدًا

وضع الاختبار ليس نسخة مقلّدة من AdProMaxPay: إنه واجهة API نفسها، والتحقق من صحة البيانات نفسه، وآلة الحالات نفسها، والأحداث نفسها، وإشعارات الـ webhook نفسها. مزوّدو خدمات الدفع وحدهم تجري محاكاتهم، حتى لا تتحرك أي أموال حقيقية. الطلب الذي ينجح في وضع الاختبار ينجح في الوضع المباشر، والطلب المرفوض في الوضع المباشر مرفوض في وضع الاختبار.

الفروق أدناه مقصودة. كل واحد منها يجنّبك الانتظار، أو إنفاق أموال حقيقية.

ما يختلف

وضع الاختبارالوضع المباشرالسبب
الأمواللا تتحرك أي أموال؛ ولا يصل شيء إلى أي بنكمدفوعات حقيقيةبيئة الاختبار للبناء
المفاتيحapx_sk_test_… وapx_pk_test_…، منذ التسجيلapx_sk_live_… وapx_pk_live_…، بعد تفعيل حسابكوضعان، ومجموعتا بيانات
صفحة الدفع بالبطاقةصفحة محاكاة تحمل علامة TEST، ولا تقبل إلا بطاقات الاختبارصفحة الدفع الآمنة لشريكنا في البطاقاتلا تدخل بطاقة حقيقية وضع الاختبار أبدًا
3-D Secureصفحة محاكاة تختار فيها الموافقة أو الفشلبنك عميلكلتختبر النتيجتين
رموز الدفع النقديتُسدَّد عبر محاكاة الدفع أو أدوات الاختبار المساعدة؛ ولا يقبلها أي وكيلتُسدَّد نقدًا لدى وكيل دفع شريكلا نقد حقيقي من أجل اختبار
فحص حالة الدفع النقديكل 10 ثوانٍ، وفورًا بعد دفع محاكىكل دقيقتينيتأكد الاختبار في ثوانٍ
توفّر الأموالبعد 120 ثانية من نجاح الدفعةبعد فترة الحجز المحددة عند تفعيل حسابكترى دورة الرصيد كاملة في اختبار واحد
رسومناقيمة مؤقتة تُقتطع من كل دفعة ناجحة: 2.5% للبطاقة و3% للدفع نقدًاالرسوم المعلنة مع التفعيليتحرك رصيد الاختبار كما يتحرك الرصيد المباشر؛ وهذه الأرقام ليست أسعارنا
استرداد المدفوعات بالبطاقةيكتمل في ثوانٍقد يبقى pending مدة أطول ريثما تنفّذه شبكة البطاقاتالمزوّد المحاكى يرد فورًا
أدوات الاختبار المساعدةمتاحةمرفوضة: 403، test_mode_onlyلا معنى لمحاكاة دفعة في الوضع المباشر
حدود المعدل، في الدقيقةكل الطلبات 600، عمليات الكتابة 150، إنشاء الدفعات 60، البحث 30كل الطلبات 1,200، عمليات الكتابة 300، إنشاء الدفعات 120، البحث 30تحصل حركة الوضع المباشر على الحصة الأكبر
السقف اليومي10,000 طلب و1,000 عملية إنشاء دفعة في اليوم، بتوقيت المغرب؛ ثم 429، test_daily_cap_reachedلا يوجديحمي بيئة الاختبار المشتركة
سجلات الطلباتتُحفظ 30 يومًاتُحفظ 90 يومًاحركة الاختبار قصيرة العمر

حدود المعدل هذه هي القيم الافتراضية؛ وقد تختلف حدودك. تعرض صفحة حدود API في لوحة التحكم القيم المطبّقة عليك، وتتيح لك طلب المزيد: انظر حدود المعدل.

ما لا يختلف

  • التحقق من صحة البيانات: الحقول نفسها، والفحوص نفسها، ورموز الأخطاء ورسائلها نفسها.
  • الحدود الدنيا: 100.00 MAD للدفع نقدًا و1.00 MAD للبطاقة، في الوضعين. تُرفض دفعة نقدية بمبلغ 50.00 MAD في وضع الاختبار تمامًا كما تُرفض في الوضع المباشر.
  • مدد الصلاحية: تدوم صفحة الدفع بالبطاقة نحو 30 دقيقة؛ ورمز الدفع النقدي نحو ثلاثة أيام (يحددها حقله expires_at)؛ وجلسة الدفع (checkout session) 24 ساعة ما لم تحدد مدة أقصر.
  • عدم التكرار (idempotency): المفاتيح الإلزامية نفسها، والردود المعادة نفسها طوال 24 ساعة.
  • الأحداث والـ webhook: الأنواع نفسها، والمحتوى نفسه، والتوقيعات نفسها، وإعادة المحاولة نفسها.
  • الحالات: تمر نية الدفع (payment intent) بالحالات نفسها، وتنجح مرة واحدة.
  • الاسترداد: يمكن استرداد المدفوعات بالبطاقة؛ ولا يمكن استرداد المدفوعات النقدية، في الوضعين.

الاختبار والمباشر لا يختلطان أبدًا

  • مفتاح الاختبار لا يرى إلا كائنات الاختبار؛ ومفتاح الوضع المباشر لا يرى إلا كائنات الوضع المباشر. قراءة كائن اختبار بمفتاح الوضع المباشر تعيد resource_missing، مع تلميح إلى أن الكائن موجود في الوضع الآخر.
  • تنتمي نقاط استقبال الـ webhook إلى وضع واحد. أنشئ نقاط الاستقبال للوضع المباشر عند انتقالك إليه.
  • تحمل كائنات الاختبار "livemode": false؛ وكائنات الوضع المباشر "livemode": true.