Menambahkan dukungan 3DS1 dan 3DS2

3DS1 dan 3DS2 tersedia untuk integrasi Reservasi Menyeluruh Pusat Bantuan Actions. Anda dapat menerapkan salah satu (atau kedua) autentikasi tersebut untuk integrasi Anda.

3DS1 atau 3DS2 akan memenuhi persyaratan Strong Customer Authentication PSD2, tetapi ada beberapa perbedaan utama:

  • 3DS1: Anda dapat memutuskan untuk memicu 3DS1 untuk transaksi saat Anda menerima sinyal bahwa tagihannya merupakan penipuan.
    • Penerapan 3DS1 memerlukan perubahan pada server pemesanan Anda.
  • 3DS2: 3DS2 hanya akan digunakan untuk transaksi yang menerapkan PSD2 (bank pengakuisisi dan bank pelanggan berada di EEA).
    • Penerapan 3DS2 memerlukan perubahan pada feed penjual Anda.

Menerapkan 3DS2

Penerapan 3DS2 mengharuskan Anda menambahkan kolom tambahan ke feed penjual dalam pesan TokenizationConfig. Jika semua pembayaran masuk ke akun yang sama, Anda akan mengulangi nilainya dalam setiap entri penjual. Jika pembayaran masuk ke akun yang berbeda-beda, nilai di setiap entri penjual harus ditujukan untuk akun yang memperoleh dana dalam transaksi.

Perubahan pada Feed Penjual

  • merchant_of_record_name: Nama Entitas Pemroses Kartu (MOR). Nama yang terlihat oleh pengguna ini akan ditampilkan dalam tantangan 3DS2.
  • payment_country_code: Negara tempat transaksi akan diproses, dalam format ISO 3166-1 alpha-2.
  • Pesan CardNetworkParameters: Pesan ini diulang dengan nilai khusus untuk jaringan yang berbeda-beda (Hanya diperlukan untuk Visa dan American Express)
    • card_network: Jaringan (Visa, American Express) yang menerapkan nilai ini
    • acquirer_bin: Nomor Identifikasi Bank dari bank pengakuisisi yang digunakan untuk memproses kartu.
    • acquirer_merchant_id: ID penjual yang ditetapkan oleh pengakuisisi ke penjual untuk digunakan dalam otorisasi transaksi (untuk transaksi Visa dan American Express).

Dengan menambahkan kolom ini ke feed penjual, Anda akan menerima kriptogram 3DS2 dalam unparsed_payment_method_token yang diterima oleh server pemesanan Anda setiap kali PSD2 berlaku untuk transaksi. Anda harus meneruskan unparsed_payment_method_token dan kriptogram tersematnya ke partner pemrosesan sesuai dengan spesifikasi mereka.

Menerapkan 3DS1

Perubahan pada Server Pemesanan

Kami akan membuat permintaan CreateBooking dan jika Anda menentukan 3DS1 diperlukan untuk transaksi, tampilkan Booking Failure dari metode CreateBooking Anda, dan tentukan PAYMENT_REQUIRES_3DS1 sebagai penyebabnya. Dalam respons kegagalan tersebut, Anda juga harus menentukan pesan ThreeDS1Parameters dalam pesan PaymentFailureInformation:

  • acs_url = URL tempat memuat formulir yang akan ditampilkan kepada Pengguna untuk autentikasi.
  • pa_req = Permintaan PaymentAuthentication. Untuk diposting ke formulir ACSUrl.
  • transaction_id = ID yang digunakan oleh penyedia ACS. Untuk diposting ke formulir ACSUrl.
  • md_merchant_data = Data untuk Actions Center yang akan dibagikan kepada penyedia ACS jika disediakan.

Selanjutnya, kami akan mengirim ulang permintaan CreateBooking asli dengan pa_response yang terletak dalam pesan PaymentInformation. Kolom pa_response akan berisi payload yang ditampilkan kepada kami dari penyedia ACS, dan kolom ini harus digunakan oleh Anda untuk mengotorisasi transaksi dengan pemroses Anda.

Berikut adalah diagram yang mendeskripsikan alur 3DS1:

Gambar 1: Diagram proses 3DS1
Gambar 1: Diagram proses 3DS1