Charge yang berhasil pada percobaan alternatif tetapi belum menyelesaikan 3DS, tidak akan ditanggung oleh pengalihan pertanggungjawaban. Sebagai pengecualian, charge alternatif dengan status attempt_acknowledged
pada payment_method_details.card.three_d_secure.result
akan berada dalam pengalihan pertanggungjawaban.
Jika ingin berhasil mencegah pembayaran yang tidak ditanggung oleh pengalihan pertanggungjawaban, Anda harus menggunakan Radar for Fraud Teams. Beberapa rekomendasi yang dapat dilakukan meliputi:
Minta 3D Secure pada semua charge melalui API dan periksa sumber 3D Secure. 3DS dapat diminta pada charge dengan menetapkan request_three_d_secure: any saat membuat pembayaran melalui API. Setelah selesai, mereka dapat menggunakan aturan Radar ini: Block if not :is_3d_secure: and not :is_off_session:
Ini memungkinkan charge langganan rutin (yang meminta pembebasan) tetap berhasil dan memastikan semua charge pada sesi terautentikasi. Jika merchant menerima Apple/Google Pay, mereka harus sedikit mengubah aturan menjadi: Block if not :is_3d_secure: and not :is_off_session: and :digital_wallet: != 'apple_pay'
and not (:digital_wallet: = 'android_pay' and :has_cryptogram:)
Ini wajib karena 3DS di kartu Apple Pay tidak diizinkan (Apple pay hanya mendukung pengalihan pertanggungjawaban di Eropa) dan untuk kartu Google Pay, kami mengizinkan 3DS jika kami juga mengirim kriptogram selama tokenisasi (itu sebabnya kami memeriksa :has_cryptogram:
).
Minta 3DS dengan Radar dan periksa sumber 3D Secure.Alih-alih meminta 3DS saat membuat pembayaran melalui API, Anda dapat meminta 3DS dengan memanfaatkan Radar. Anda dapat memilih atribut metadata kustom untuk ditetapkan pada semua charge yang memerlukan 3DS (misalnya, foo: bar
). Setelah selesai, aturan Radar berikut akan memeriksa metadata tersebut dan meminta 3DS: Minta 3D Secure if ::foo:: = 'bar'
Selanjutnya, Anda dapat menambahkan aturan Radar guna memeriksa 3DS berjalan untuk pembayaran yang cocok dengan ketentuan permintaan 3DS yang sama, yang digunakan sebelumnya. Block if ::foo:: = 'bar' and not :is_3d_secure:
Catatan: jika Anda memproses pembayaran Apple Pay atau Google Pay, aturan Radar harus tampak seperti: Block if ::foo:: = 'bar' and not :is_3d_secure: and :digital_wallet: != 'apple_pay' and not (:digital_wallet: = 'android_pay' and :has_cryptogram:)