Thẻ test Stripe: Kiểm tra thanh toán US Checkout và 3D Secure

AI Router Oct 11, 2026

Trang thanh toán đã mở, sản phẩm và giá hiển thị chính xác. Điều bạn cần xác nhận tiếp theo không chỉ là nút thanh toán có thể bấm được hay không.

Khi thẻ bị từ chối, trang hiển thị gì? Người mua có thể chuyển sang thẻ khác và tiếp tục không? Nếu xác minh danh tính bị hủy giữa chừng, đơn hàng có bị đánh dấu nhầm là đã thanh toán không?

Dùng ba thẻ test Stripe để kiểm tra riêng biệt thành công, thất bại và xác minh danh tính. Sau mỗi lần gửi, hãy kiểm tra cả trang thanh toán lẫn bản ghi phía backend.

Bài viết này lấy ví dụ một trang thanh toán yêu cầu địa chỉ thanh toán tại Hoa Kỳ. Thao tác được thực hiện qua trình duyệt và không cần viết mã.

1. Mở trang thanh toán trong môi trường test

Truy cập Stripe Dashboard và dùng bộ chọn tài khoản để chuyển sang Sandbox, môi trường test. Mọi thao tác thanh toán trong vòng này đều được hoàn tất trong môi trường này và sẽ không di chuyển tiền thật. Tài liệu môi trường test của Stripe

Nếu bạn đã có link thanh toán test, hãy mở trực tiếp.

Nếu chưa tạo, hãy tạo link mới trong Payment Links ở môi trường test, chọn một sản phẩm và mức giá test, rồi mở trang thanh toán được tạo. Có thể tạo Payment Links qua Dashboard mà không cần xây dựng website. Tạo link thanh toán

Trước tiên hãy kiểm tra ba điều:

  • Sản phẩm có đúng không.
  • Số tiền và đơn vị tiền tệ có đúng không.
  • Trang có thuộc môi trường test bạn vừa chọn không.

Đừng vội nhập số thẻ ở bước này. Nếu chọn nhầm giá hoặc mở nhầm link, thì dù các bài test sau có hoàn tất cũng không kiểm tra đúng luồng bạn định triển khai.

2. Điền địa chỉ thanh toán tại Hoa Kỳ

Ở quốc gia thanh toán, chọn United States.

Mở trình tạo địa chỉ, chọn United States, đặt số lượng cần tạo là 1, rồi bấm tạo. Sao chép đường phố, thành phố, tiểu bang và mã ZIP vào biểu mẫu thanh toán.

Điền từng trường như sau:

Trường thanh toán Nội dung cần nhập Ví dụ
Address line 1 Địa chỉ đường phố 5322 N Union Street
Address line 2 Số căn hộ hoặc phòng, để trống nếu không có Để trống
City Thành phố North Walpole
State Tiểu bang tương ứng New Hampshire
ZIP code Mã ZIP 03609
Country Quốc gia United States

Nếu trường tiểu bang là menu thả xuống, chọn New Hampshire; nếu yêu cầu viết tắt hai chữ cái, nhập NH.

Số 0 đầu tiên trong mã ZIP 03609 phải được giữ nguyên. Đừng coi nó là số rồi viết thành 3609.

Dùng một địa chỉ email test mà bạn có thể truy cập để sau này kiểm tra thông báo. Sau khi điền địa chỉ, hãy giữ mẫu này và dùng cùng một địa chỉ cho cả ba vòng test.

Như vậy, khi kết quả thanh toán thay đổi, thứ đầu tiên bạn so sánh là số thẻ và hành động xác minh. Bạn không phải đồng thời điều tra xem thành phố, tiểu bang hay mã ZIP có bị đổi sai không.

3. Dùng thẻ thành công để kiểm tra toàn bộ luồng thanh toán

Trước tiên dùng bộ thông tin này:

Số thẻ: 4242 4242 4242 4242
Ngày hết hạn: 12/34
CVC: 123

Ngày hết hạn cần ở tương lai. Tháng/năm và CVC ở đây dùng cho bài test này; số thẻ tương ứng với kịch bản thanh toán thành công của Stripe. Tài liệu thẻ test

Bấm thanh toán và quan sát xem trang có vào trạng thái hoàn tất mong đợi không.

Sau đó quay lại đúng môi trường test, mở bản ghi thanh toán và tìm giao dịch bạn vừa thực hiện. Kiểm tra số tiền, đơn vị tiền tệ và trạng thái thanh toán. Có thể xem các khoản thanh toán từ Payment Links trong phần tổng quan thanh toán của Dashboard. Xem bản ghi thanh toán

Trong vòng này, hãy kiểm tra riêng hai điều:

Trạng thái thanh toán có đúng không, và các hành động tiếp theo trên trang có đúng không.

Ví dụ, nếu backend hiển thị thanh toán thành công nhưng trang hoàn tất không mở, trọng tâm xử lý sự cố nên là cấu hình trang sau thanh toán và đường dẫn chuyển hướng. Đừng nhập lại toàn bộ số thẻ và địa chỉ chỉ vì trình duyệt báo lỗi.

Ngược lại, việc trình duyệt hiển thị "Cảm ơn bạn đã mua hàng" không thể thay thế trạng thái thanh toán ở backend. Trang xác nhận và bản ghi thanh toán cần tương ứng với nhau.

Nếu link thanh toán được kết nối với luồng đơn hàng, email hoặc tải xuống, hãy kiểm tra cả các bước này:

  • Đơn hàng có hiển thị là đã thanh toán không.
  • Số tiền có khớp với trang thanh toán không.
  • Các thông báo đã cấu hình có được gửi không.
  • Mục tải xuống hoặc truy cập đã cấu hình có khả dụng không.

Các tính năng chưa được kết nối không cần kiểm tra, và không được coi việc thanh toán Stripe thành công là bằng chứng rằng những tính năng này đã hoàn thiện.

4. Dùng thẻ thất bại để kiểm tra thông báo lỗi và thử lại thẻ

Mở lại link thanh toán và bắt đầu một bài test mới.

Giữ nguyên địa chỉ, email và các điều kiện khác, chỉ đổi số thẻ thành:

4000 0000 0000 0002

Thẻ này mô phỏng tình huống thanh toán bị từ chối thông thường. Thẻ test bị từ chối

Sau khi bấm thanh toán, kiểm tra:

  1. Trang có hiển thị thông báo thất bại rõ ràng không.
  2. Ô nhập số thẻ có vẫn chỉnh sửa được không.
  3. Trang có vô tình vào trạng thái hoàn tất thanh toán không.
  4. Đơn hàng liên kết có bị đánh dấu nhầm là đã thanh toán không.

Thông báo thất bại không được chỉ nói "Đã xảy ra lỗi." Người mua ít nhất cần biết rằng thanh toán chưa hoàn tất và họ vẫn có thể tiếp tục.

Tiếp theo, trong trang thanh toán hiện tại, đổi số thẻ trở lại:

4242 4242 4242 4242

Gửi lại.

Bước này kiểm tra đường phục hồi sau thất bại. Thanh toán thành công ngay lần đầu không có nghĩa là sau một lần thất bại, nút, biểu mẫu và trạng thái đơn hàng vẫn đúng.

Nếu trang cứ quay sau lần thất bại đầu tiên, hãy ghi lại nơi nó bị kẹt. Kiểm tra thao tác thử lại trước; đừng đổi địa chỉ, đổi sản phẩm và làm mới mọi trang cùng lúc. Thay đổi nhiều điều kiện một lúc sẽ làm mất phép so sánh giá trị nhất.

5. Kiểm tra cả hai đường xác minh danh tính hoàn tất và bị hủy

Ở vòng thứ ba, dùng thẻ test 3D Secure phát hành tại Hoa Kỳ:

4000 0084 0000 0027

Quy tắc Radar mặc định của Stripe sẽ yêu cầu xác minh 3D Secure cho thẻ này. Tài liệu test 3D Secure

Bài test phải được thực hiện trên trang thanh toán do người mua mở. Tạo thanh toán trực tiếp trong Stripe Dashboard không thể thay thế luồng xác minh trên trình duyệt.

Trước tiên hoàn tất một lần xác minh và kiểm tra:

  • Giao diện xác minh có mở được không.
  • Có thể quay lại luồng thanh toán sau khi hoàn tất xác minh không.
  • Trang thanh toán và backend có hiển thị kết quả nhất quán không.

Sau đó bắt đầu bài test mới và hủy trong giao diện xác minh.

Sau khi hủy, kiểm tra xem trang có còn giữ điểm vào để tiếp tục thanh toán không, và đơn hàng có vẫn ở trạng thái chưa thanh toán không. Hoàn tất xác minh danh tính và hoàn tất thanh toán là hai điểm kiểm tra; không thể chỉ nhìn xem cửa sổ xác minh đã đóng chưa.

Nếu giao diện xác minh không xuất hiện, trước tiên hãy xác nhận bạn đã dùng đúng thẻ test, đã mở trang thanh toán của người mua, và kiểm tra xem quy tắc Radar có bị sửa không. Đừng coi việc đổi sang địa chỉ Hoa Kỳ là cách kích hoạt xác minh.

6. Nếu bị kẹt ở một bước, trước tiên xác định nó thuộc tầng nào

Lỗi thanh toán không nhất thiết là vấn đề số thẻ. Hãy chia nhỏ việc xử lý sự cố theo nơi xảy ra:

Triệu chứng Điều cần kiểm tra trước So sánh tiếp theo
Lỗi trường địa chỉ, không gửi được Quốc gia, tiểu bang, mã ZIP và các trường bắt buộc Giữ nguyên số thẻ và chỉ sửa trường bị lỗi
Thẻ thất bại bị từ chối Có dùng đúng số thẻ kịch bản thất bại không Chuyển sang thẻ thành công và kiểm tra thanh toán có phục hồi không
Thẻ thành công cũng thất bại Môi trường test, cấu hình trang, chi tiết lỗi backend Lặp lại cùng điều kiện với một trang thanh toán mới
Backend thành công, trang hoàn tất báo lỗi Chuyển hướng sau thanh toán hoặc cấu hình trang Kiểm tra riêng bản ghi thanh toán và trang đích
Vẫn hiển thị đã thanh toán sau khi hủy xác minh Cách xử lý trạng thái trong trang thanh toán và đơn hàng liên kết So sánh hai bài test: hoàn tất xác minh và hủy xác minh
Thanh toán đầu tiên được, thử lại sau thất bại không được Trạng thái phục hồi của biểu mẫu và nút Lặp lại trình tự "thẻ thất bại -> thẻ thành công"

Bảng này dùng để xác định bước kiểm tra tiếp theo; nó không có nghĩa là có thể xác định nguyên nhân chỉ từ một triệu chứng.

Ghi lại thông báo lỗi gốc, thời gian test và bản ghi thanh toán. Nếu ảnh chụp màn hình chỉ ghi "Đã xảy ra sự cố", sau này sẽ khó xác định vấn đề là xác thực địa chỉ, thẻ bị từ chối hay trang sau thanh toán.

7. Giữ bản ghi test có thể xem lại

Không cần viết báo cáo dài. Một bảng là đủ:

Kịch bản test Kết quả trên trang Kết quả backend Kết quả đơn hàng hoặc giao hàng liên kết
Thanh toán thành công Ghi lại nội dung thực tế hiển thị Ghi trạng thái thanh toán Kiểm tra các luồng tiếp theo đã kết nối
Thanh toán thất bại Ghi lại thông báo lỗi Kiểm tra chi tiết thất bại Xác nhận không bị đánh dấu là đã thanh toán
Đổi thẻ sau thất bại Kiểm tra có thể gửi lại không Kiểm tra khoản thanh toán mới Kiểm tra trạng thái có phục hồi đúng không
Hoàn tất xác minh danh tính Kiểm tra trang quay lại Kiểm tra trạng thái cuối cùng Kiểm tra các luồng tiếp theo đã kết nối
Hủy xác minh danh tính Kiểm tra điểm vào để tiếp tục thanh toán Kiểm tra trạng thái thực tế Xác nhận không bị đánh giá nhầm là đã thanh toán

Mỗi khi bạn sửa trang thanh toán, chuyển hướng sau thanh toán hoặc cách xử lý đơn hàng, hãy xem lại bằng bảng này.

Điều thực sự cần hoạt động từ đầu đến cuối là toàn bộ chuỗi: điền thông tin, gửi thanh toán, xử lý thất bại hoặc xác minh, xác nhận kết quả thanh toán, rồi hoàn tất thao tác đơn hàng tương ứng. Chỉ thấy một dòng "thanh toán thành công" là chưa đủ để cho thấy trang thanh toán đã sẵn sàng.