Skip to content

Endpoint bạn triển khai ​

Cake ACS gọi ba endpoint trên nền tảng của bạn trong quá trình xác thực. Trang này mô tả những điểm chung; trang riêng của từng endpoint mô tả các trường cụ thể của nó.

POST {your_base_url}/step_up
POST {your_base_url}/initiate_action
POST {your_base_url}/validate

Cả ba đều dùng Content-Type: application/json và kỳ vọng một response JSON với HTTP 200.

Các trường chung ​

Mọi request đều mang theo các trường này. Hãy echo lại cả bốn giá trị trong response — ACS dùng chúng để khớp phản hồi của bạn với phiên xác thực đang diễn ra.

TrườngKiểuMô tả
ProcessorIdstringĐịnh danh ACS đang gọi. Được thống nhất trong quá trình onboarding
IssuerIdstringĐịnh danh bạn. Được thống nhất trong quá trình onboarding
TransactionIdstringDuy nhất cho mỗi lần xác thực, không đổi xuyên suốt cả ba endpoint
StepupRequestIdstringDuy nhất cho mỗi phiên challenge, không đổi qua các lần gửi lại

Hai trường phiên bản cũng được gửi trên mọi request:

TrườngVí dụMô tả
MessageVersion2.2.0Phiên bản EMV 3-D Secure mà merchant đang sử dụng
RDXMessageVersion2.2.4Phiên bản của hợp đồng giao tiếp này

Giá trị Status ​

Trường Status trong response của bạn là thứ ACS dựa vào để hành động. Ý nghĩa cụ thể khác nhau tùy endpoint — xem trang tương ứng — nhưng hình thức thì giống nhau:

StatusÝ nghĩa
SUCCESSThao tác đã hoàn tất
RETRYChưa xong; hỏi lại sau. Chỉ có ý nghĩa với /validate
REJECTEDChủ thẻ bị từ chối
FAILWITHFEEDBACKBị từ chối, kèm lý do để hiển thị
BLOCKEDBị từ chối; thẻ hoặc tài khoản đang bị khóa
FAILUREBị từ chối vì lý do khác
ERRORNền tảng của bạn không thể xử lý request

Timeout ​

ACS áp dụng một timeout cho mỗi lệnh gọi. Nếu endpoint của bạn không trả lời kịp, ACS sẽ xử lý y hệt như một response ERROR.

WARNING

Không có cơ chế thử lại (retry). Xác thực được quyết định dựa trên câu trả lời đầu tiên — hoặc lần timeout đầu tiên. Hãy trả về ERROR nhanh thay vì giữ kết nối mở; một kết nối bị giữ sẽ tiêu tốn thời gian còn lại của chủ thẻ trong cửa sổ challenge.

Xác thực (Authentication) ​

Các request từ ACS đến nền tảng của bạn không được ký ở tầng ứng dụng. Chúng được bảo vệ ở tầng mạng bởi các dải IP nguồn đã trao đổi trong quá trình onboarding. Chiều ngược lại — OOB callback của bạn — có được ký; xem Bảo mật.

Dữ liệu chủ thẻ ​

Request /step_up chứa toàn bộ PAN, vì nền tảng của bạn cần nó để nhận diện chủ thẻ. Đây là endpoint duy nhất mang theo nó. Hãy coi request này nằm trong phạm vi PCI DSS: không log body, và không lưu trữ PAN bên ngoài môi trường dữ liệu chủ thẻ hiện có của bạn.

Developers