Actions Center Reservations End-to-End entegrasyonunuz için hem 3DS1 hem de 3DS2 kullanılabilir. Entegrasyonunuz için bunlardan birini (veya ikisini birden) uygulayabilirsiniz.
3DS1 veya 3DS2, PSD2'nin Güçlü Müşteri Kimlik Doğrulama şartını karşılar ancak aralarında bazı temel farklar vardır:
- 3DS1: Ödemenin sahtekarlık olduğuna dair sinyaller aldığınızda bir işlem için 3DS1'i tetiklemeye karar verebilirsiniz.
- 3DS1'i uygulamak için rezervasyon sunucunuzda değişiklik yapmanız gerekir.
- 3DS2: 3DS2, yalnızca PSD2'nin geçerli olduğu işlemler için kullanılır (alıcı banka ve müşterinin bankası AEA'dadır).
- 3DS2'yi uygulamak için satıcı feed'inizde değişiklikler yapmanız gerekir.
3DS2'yi uygulama
3DS2'nin uygulanması için TokenizationConfig
mesajı kapsamında satıcı feed'inize ek alanlar eklemeniz gerekir. Tüm ödemeler aynı hesaba gidiyorsa her satıcı girişinde bu değeri tekrarlarsınız. Ödemeler farklı hesaplara gidecekse her satıcı girişindeki değerlerin, işlem sırasında parayı alan hesap için olması gerekir.
Satıcı feed'inde yapılan değişiklikler
merchant_of_record_name
: Tescilli Satıcının (MOR) adı. Kullanıcılara gösterilen bu ad, 3DS2 mücadelelerinde gösterilir.payment_country_code
: İşlemin işlendiği ülke (ISO 3166-1 alpha-2 biçiminde).CardNetworkParameters
mesajı: Bu mesaj, farklı ağlara özgü değerlerle tekrarlanır (Yalnızca Visa ve American Express için gereklidir)card_network
: Bu değerlerin geçerli olduğu ağ (Visa, American Express)acquirer_bin
: Kartın işlenmesi için kullanılan kartı veren bankanın banka kimlik numarası.acquirer_merchant_id
: Alıcının, işlem yetkilendirmesinde (Visa ve American Express işlemleri için) kullanılması amacıyla satıcıya atadığı satıcı tanımlayıcısı.
Bu alanları satıcı feed'inize ekleyerek, PSD2 işlemi için geçerli olduğunda rezervasyon sunucunuz tarafından alınan unparsed_payment_method_token
içinde bir 3DS2 kriptogramı alırsınız. unparsed_payment_method_token
ve yerleşik kriptogramını, kendi spesifikasyonlarına göre işleme iş ortağınıza iletmeniz gerekir.
3DS1'i uygulama
Rezervasyon sunucusunda yapılan değişiklikler
Bir CreateBooking
isteğinde bulunacağız. İşlem için 3DS1'e ihtiyaç olduğunu belirlerseniz CreateBooking
yönteminizden bir Booking Failure
döndürün ve nedeni olarak PAYMENT_REQUIRES_3DS1
'i belirtin. Bu hata yanıtında, PaymentFailureInformation
mesajı içinde ThreeDS1Parameters
mesajını da belirtmeniz gerekir:
acs_url
= Kimlik doğrulama için kullanıcıya gösterilecek formun yükleneceği URL.pa_req
= PaymentAuthentication Request. ACSUrl formuna gönderilir.transaction_id
= ACS sağlayıcısı tarafından kullanılan bir tanımlayıcı. ACSUrl formuna gönderilir.md_merchant_data
= Actions Center'ın, sağlanırsa ACS sağlayıcısıyla paylaşacağı veriler.
Ardından, PaymentInformation mesajındaki pa_response
ile birlikte orijinal CreateBooking
isteğinin yeniden gönderilmesini sağlayacağız. pa_response
alanı, bir ACS sağlayıcısından bize döndürülen yükü içerir ve işlemi işleyicinizle yetkilendirmek için kullanmanız gerekir.
3DS1 akışını açıklayan bir şema aşağıda verilmiştir: