Bắt đầu quy trình chuyển hướng

Tổng quan

Mục đích của quy trình Bắt đầu chuyển hướng là chuyển hướng người dùng đến đơn vị tích hợp thanh toán và cung cấp đủ thông tin để hoàn tất khoản thanh toán. Nhà tích hợp sẽ chuyển hướng người dùng đến giao diện web của nhà phát hành để chuyển tiếp thông tin do Google cung cấp. Sau đó, người dùng có thể làm theo hướng dẫn của nhà phát hành để hoàn tất khoản thanh toán. Thao tác này sẽ kích hoạt quy trình Hoàn tất chuyển hướng.

Cách quy trình này hoạt động

Người dùng có hai cách để chọn tổ chức phát hành mà họ sẽ sử dụng làm Phương thức thanh toán (FOP).

  1. Người dùng chọn nhà phát hành trong Giao diện người dùng (UI) của Google.
  2. Người dùng chọn trình tích hợp trong giao diện người dùng của Google và chọn trình phát hành trong giao diện người dùng của trình tích hợp.

Người dùng chọn nhà phát hành trong giao diện người dùng của Google

Trong trường hợp này, người dùng chọn một nhà phát hành khi chọn phương thức FOP trên giao diện người dùng của Google, nên trường issuerId của đối tượng formOfPayment trong RedirectRequest sẽ chứa giá trị nhận dạng riêng biệt do Google tạo đại diện cho công ty phát hành đó. Xin lưu ý rằng nếu bên tích hợp thanh toán và công ty phát hành là cùng một pháp nhân, thì Google sẽ tạo một issuerId cho bên tích hợp thanh toán. Yêu cầu chuyển hướng sử dụng phương thức GET HTTPS, với các thông số được mã hoá trong URL.

Bắt đầu quy trình chuyển hướng (đã chọn công ty phát hành)

Sơ đồ trình tự sau đây cho thấy sự tương tác giữa trình duyệt của người dùng, Google, đơn vị tích hợp và nhà phát hành khi người dùng chọn một nhà phát hành trong giao diện người dùng của Google:

Bắt đầu quy trình chuyển hướng với nhà phát hành đã chọn

Dưới đây là danh sách các đối tượng trong sơ đồ trên:

  • Người dùng: Đây là người muốn thanh toán.
  • Giao diện người dùng Google: Giao diện web hoặc ứng dụng của Google, nơi khách hàng thực hiện một khoản thanh toán.
  • Máy chủ Google: Máy chủ phụ trợ tại Google tạo yêu cầu chuyển hướng.
  • Đơn vị tích hợp thanh toán: Đơn vị tích hợp chuyển tiếp người dùng và yêu cầu chuyển hướng đến công ty phát hành.
  • Tổ chức phát hành: Tổ chức phát hành nơi người dùng có tài khoản.

Đối với quy trình Bắt đầu chuyển hướng, chúng tôi đã giả định rằng người dùng đang ở trên tài sản của Google (giao diện người dùng Google) và đang chọn một phương thức thanh toán. Đây là nơi mọi thứ bắt đầu.

  1. Người dùng chọn tổ chức phát hành cụ thể mà họ muốn sử dụng để thanh toán. Đây là yếu tố kích hoạt quy trình Bắt đầu chuyển hướng.
  2. Giao diện người dùng của Google gọi Máy chủ Google (máy chủ phụ trợ) để tạo một yêu cầu chuyển hướng mới.
  3. Máy chủ Google tạo một yêu cầu chuyển hướng.
  4. Yêu cầu chuyển hướng được gửi đến giao diện người dùng Google.
  5. Giao diện người dùng của Google chuyển hướng người dùng đến máy chủ của trình tích hợp.
  6. Trình tích hợp sẽ xử lý yêu cầu chuyển hướng của Google và tạo một yêu cầu chuyển hướng dành riêng cho nhà phát hành.
  7. Trình tích hợp chuyển hướng người dùng đến giao diện web của nhà phát hành.
  8. Người dùng xác thực trong giao diện web của nhà phát hành.
  9. Người dùng làm theo hướng dẫn trên màn hình để hoàn tất giao dịch thanh toán.

Người dùng chọn trình tích hợp trong giao diện người dùng của Google

Trong trường hợp này, người dùng chọn trình tích hợp trong giao diện người dùng của Google, vì vậy trường formOfPayment của RedirectRequest (Lệnh chuyển hướng) sẽ được đặt thành noneChosen vì chỉ có nhà phát hành mới được coi là FOP hợp lệ. Trình tích hợp phải cung cấp một giao diện người dùng cho phép người dùng chọn một trong các nhà phát hành đã được Google phê duyệt. Yêu cầu chuyển hướng sử dụng phương thức GET HTTPS, với các thông số được mã hoá trong URL.

Bắt đầu quy trình chuyển hướng (đã chọn trình tích hợp)

Sơ đồ trình tự sau đây cho thấy sự tương tác giữa trình duyệt của người dùng, Google, trình tích hợp và nhà phát hành khi người dùng chọn một trình tích hợp trong giao diện người dùng của Google:

Bắt đầu quy trình chuyển hướng bằng trình tích hợp đã chọn

Dưới đây là danh sách các đối tượng trong sơ đồ trên:

  • Người dùng: Đây là người muốn thanh toán.
  • Giao diện người dùng Google: Giao diện web hoặc ứng dụng của Google, nơi khách hàng thực hiện một khoản thanh toán.
  • Máy chủ Google: Máy chủ phụ trợ tại Google tạo yêu cầu chuyển hướng.
  • Đơn vị tích hợp thanh toán: Đơn vị tích hợp nơi người dùng chọn tổ chức phát hành.
  • Tổ chức phát hành: Tổ chức phát hành nơi người dùng có tài khoản.

Đối với quy trình Bắt đầu chuyển hướng, chúng tôi đã giả định rằng người dùng đang ở trên tài sản của Google (giao diện người dùng Google) và đang chọn một phương thức thanh toán. Đây là nơi mọi thứ bắt đầu.

  1. Người dùng chọn đơn vị tích hợp (không phải công ty phát hành cụ thể) để thanh toán. Đây là yếu tố kích hoạt quy trình Bắt đầu chuyển hướng.
  2. Giao diện người dùng của Google gọi Máy chủ Google (máy chủ phụ trợ) để tạo một yêu cầu chuyển hướng mới.
  3. Máy chủ Google tạo một yêu cầu chuyển hướng.
  4. Yêu cầu chuyển hướng được gửi đến giao diện người dùng Google.
  5. Giao diện người dùng của Google chuyển hướng người dùng đến giao diện web của trình tích hợp.
  6. Trình tích hợp sẽ xử lý yêu cầu chuyển hướng của Google.
  7. Trình tích hợp hiển thị các nhà phát hành hiện có với người dùng.
  8. Người dùng chọn tổ chức phát hành cụ thể mà họ muốn sử dụng để thanh toán.
  9. Trình tích hợp tạo một yêu cầu chuyển hướng dành riêng cho nhà phát hành.
  10. Trình tích hợp chuyển hướng người dùng đến giao diện web của nhà phát hành.
  11. Người dùng xác thực trong giao diện web của nhà phát hành.
  12. Người dùng làm theo hướng dẫn trên màn hình để hoàn tất giao dịch thanh toán.

Các phương pháp hay nhất và những điểm cần cân nhắc khác

Biện pháp an toàn

URL yêu cầu chuyển hướng sẽ bao gồm một trường callbackUrl chưa mã hoá và một trường redirectRequest đã mã hoá. Cả hai trường này đều sẽ chứa requestId cho giao dịch hiện tại. Nhà cung cấp nên xác thực rằng requestId là giống nhau trong cả callbackUrl và tải trọng đã mã hoá để xác minh rằng sự liên kết với nhau.