يتوفّر كلّ من 3DS1 و3DS2 للدمج التام بين الأطراف للحجوزات في مركز الإجراءات. ويمكنك تطبيق أحد هذين الإجراءين (أو كليهما) لإجراء عملية الدمج.
سيستوفي إمّا الإصدار 3DS1 أو 3DS2 متطلبات المصادقة القوية للعميل بموجب PSD2، ولكن هناك بعض الاختلافات الرئيسية:
- 3DS1: يمكنك اختيار تشغيل 3DS1 لإجراء معاملة عندما تكون لديك إشارات بأنّ الرسوم احتيالية.
- يتطلب تنفيذ نموذج 3DS1 إجراء تغييرات على خادم الحجز.
- 3DS2: سيتم استخدام 3DS2 فقط للمعاملات التي تنطبق عليها توجيهات PSD2 (يكون مصرف التحصيل ومصرف العميل في المنطقة الاقتصادية الأوروبية).
- يتطلب تطبيق 3DS2 إجراء تغييرات على خلاصة التاجر.
تنفيذ النموذج الثلاثي الأبعاد 2
يتطلب تنفيذ 3DS2 إضافة حقول إضافية إلى خلاصة التاجر في رسالة TokenizationConfig
. إذا
تمّ تحويل جميع الدفعات إلى الحساب نفسه، سيتمّ تكرار القيمة في كلّ
إدخال للتاجر. إذا تم إرسال الدفعات إلى حسابات مختلفة، يجب أن تكون القيم في كل إدخال تاجر مخصصة للحساب الذي تحصل فيه على الأموال
ضمن المعاملة.
تغييرات في خلاصة التاجر
merchant_of_record_name
: اسم الجهة المسؤولة عن معالجة الدفعات (MOR) سيتم عرض هذا الاسم المرئي للمستخدم في اختبارات 3DS2.payment_country_code
: البلد الذي ستتم معالجة المعاملة فيه، بتنسيق ISO 3166-1 alpha-2.- رسالة
CardNetworkParameters
: يتم تكرار هذه الرسالة مع القيم الخاصة بالشبكات المختلفة (مطلوب فقط لبطاقات Visa وAmerican Express).card_network
: الشبكة (Visa أو American Express) التي تنطبق عليها هذه القيمacquirer_bin
: رقم تعريف المصرف الخاص بمصرف التحصيل والذي يُستخدَم لمعالجة البطاقةacquirer_merchant_id
: معرّف التاجر الذي عيّنه التاجر للتاجر لاستخدامه في تفويض المعاملات (للمعاملات مع Visa و American Express)
عند إضافة هذه الحقول إلى خلاصة التاجر، ستتلقّى رمز تشفير 3DS2 ضمن unparsed_payment_method_token
الذي يتلقّاه خادم الحجز في كل مرة تنطبق فيها PSD2 على المعاملة. وعليك
إرسال unparsed_payment_method_token
وكلمة المرور المشفّرة المضمّنة إلى شريك المعالجة وفقًا
للمواصفات المحدّدة له.
تنفيذ النموذج ثلاثي الأبعاد 1
التغييرات على خادم الحجز
وسنقدِّم طلب CreateBooking
وإذا تبيّن لك أنّ 3DS1 ستكون مطلوبة لإجراء المعاملة، سيتم عرض السمة
Booking Failure
من طريقة CreateBooking
وتحديد السبب
PAYMENT_REQUIRES_3DS1
كسبب. في استجابة الخطأ هذه،
ستحتاج أيضًا إلى تحديد الرسالة ThreeDS1Parameters
ضمن رسالة PaymentFailureInformation
:
acs_url
= عنوان URL المطلوب تحميل نموذج منه لعرضه على المستخدم للمصادقة.pa_req
= طلب Paymentمصادقة. لنشره في نموذج ACSUrltransaction_id
= معرّف يستخدمه موفّر خدمة ACS. لنشره في نموذج ACSUrlmd_merchant_data
= بيانات "مركز الإجراءات" التي يمكن مشاركتها مع موفّر خدمة ACS إذا توفّرت.
بعد ذلك، سنعيد إرسال طلب
CreateBooking
الأصلي الذي يتضمّن رمز pa_response
ضمن
رسالة PaymentInformation. سيحتوي الحقل pa_response
على الحمولة التي يتم إرجاعها إلينا من موفّر خدمة ACS،
ويجب أن تستخدمها للسماح بالمعاملة مع معالج البيانات.
وإليك رسم بياني يصف تدفق 3DS1: