پشتیبانی 3DS1 و 3DS2 را اضافه کنید

هر دو 3DS1 و 3DS2 برای ادغام سرتاسر قرارهای مرکز اقدامات شما در دسترس هستند. شما می توانید یکی (یا هر دو) را برای ادغام خود اجرا کنید.

3DS1 یا 3DS2 نیازهای تأیید اعتبار مشتری قوی PSD2 را برآورده می کند، اما برخی از تفاوت های کلیدی وجود دارد:

  • 3DS1 : زمانی که سیگنال‌هایی مبنی بر تقلبی بودن شارژ دارید، می‌توانید تصمیم بگیرید که 3DS1 را برای یک تراکنش فعال کنید.
    • اجرای 3DS1 به تغییراتی در سرور رزرو شما نیاز دارد.
  • 3DS2 : 3DS2 فقط برای تراکنش هایی که PSD2 اعمال می شود (بانک خریدار و بانک مشتری در منطقه اقتصادی اروپا هستند) استفاده می شود.
    • اجرای 3DS2 به تغییراتی در فید تاجر شما نیاز دارد.

پیاده سازی 3DS2

اجرای 3DS2 مستلزم آن است که فیلدهای اضافی را در پیام TokenizationConfig به فید تاجر خود اضافه کنید. اگر همه پرداخت‌ها به یک حساب انجام شود، ارزش را در هر ورودی تاجر تکرار می‌کنید. اگر پرداخت‌ها به حساب‌های مختلف انجام شود، ارزش‌های موجود در هر ورودی تاجر باید برای حسابی باشد که وجوه را در معامله به دست می‌آورد.

تغییرات در فید Merchant

  • 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 : شناسه تجاری که توسط خریدار برای استفاده در مجوز تراکنش (برای تراکنش های ویزا و امریکن اکسپرس) به تاجر اختصاص داده شده است.

با افزودن این فیلدها به فید تاجر خود، هر زمان که PSD2 برای تراکنش اعمال شود، رمزنگاری 3DS2 را در unparsed_payment_method_token دریافت خواهید کرد. شما باید unparsed_payment_method_token و رمزنگاری تعبیه شده آن را مطابق با مشخصات شریک پردازشی خود ارسال کنید.

پیاده سازی 3DS1

تغییرات در سرور رزرو

ما یک درخواست CreateBooking می‌کنیم و اگر تشخیص دادید که 3DS1 برای تراکنش مورد نیاز است، یک Booking Failure از روش CreateBooking خود برگردانید و PAYMENT_REQUIRES_3DS1 به عنوان علت مشخص کنید. در آن پاسخ شکست، شما همچنین باید پیام ThreeDS1Parameters را در پیام PaymentFailureInformation مشخص کنید:

  • acs_url = URL که از آن فرمی برای ارائه به کاربر برای احراز هویت بارگیری می شود.
  • pa_req = یک درخواست احراز هویت پرداخت. برای ارسال به فرم ACSUrl.
  • transaction_id = شناسه ای که توسط ارائه دهنده ACS استفاده می شود. برای ارسال به فرم ACSUrl.
  • md_merchant_data = داده هایی برای Action Center برای به اشتراک گذاری با ارائه دهنده ACS در صورت ارائه.

سپس درخواست اصلی CreateBooking را با pa_response که در پیام PaymentInformation قرار دارد، دوباره ارسال می کنیم. فیلد pa_response حاوی محموله‌ای است که از یک ارائه‌دهنده ACS به ما بازگردانده می‌شود و شما باید از آن برای تأیید تراکنش با پردازنده‌تان استفاده کنید.

در اینجا نموداری است که جریان 3DS1 را توصیف می کند:

شکل 1: نمودار فرآیند 3DS1
شکل 1: نمودار فرآیند 3DS1