Bỏ qua để đến nội dung

Kết nối Stripe

Hướng dẫn thao tác
Dành cho:
Quản trị viên không gian làm việc, Nhà xuất bản và marketer
Cần quyền:
payments:managenhạy cảm
Trong ứng dụng:
Kiếm tiền, rồi Kết nối Stripe

Kết nối tài khoản Stripe của bạn với ReputeCast bằng một khóa hạn chế Stripe (restricted key), để người đọc có thể trả tiền cho gói, quà tặng và sản phẩm số. Khóa hạn chế chỉ làm được những gì ReputeCast cần; khóa bí mật (sk_live_…, sk_test_…) sẽ bị từ chối vì chúng cấp toàn quyền truy cập tài khoản Stripe của bạn, kể cả việc rút tiền về ngân hàng.

  • Bạn cần quyền payments:manage (nhạy cảm). Xem những vai trò nào có quyền này trong Quyền và vai trò.
  • Bạn cần một tài khoản Stripe và quyền truy cập bảng điều khiển của tài khoản đó (Developers › API keys).
  • Địa chỉ công khai (public URL) của hệ thống phải truy cập được từ internet qua HTTPS, vì Stripe gửi sự kiện đến https://<your public URL>/hooks/stripe/<token>. Xem Reverse proxy và TLS.

Tạo khóa trong Stripe tại Developers › API keys › Create restricted key. Đặt các tài nguyên dưới đây và để mọi mục khác ở None. Trình hướng dẫn hiển thị cùng bảng này kèm nút Sao chép danh sách.

Tài nguyên Stripe Quyền truy cập Lý do
Customers Write Tạo và khớp khách hàng khi thanh toán
Checkout Sessions Write Mở trang thanh toán cho gói và quà tặng
Customer portal Write Quản lý thanh toán, và bước hủy
Products Write Một sản phẩm cho mỗi gói
Prices Write Giá của gói và quà tặng
Coupons Write Ưu đãi
Promotion codes Write Mã ưu đãi và phần thưởng giới thiệu
Subscriptions Write Đọc trạng thái; hủy khi thành viên nhóm yêu cầu
Invoices Read Thanh toán, lần thất bại và giá trị trọn đời
Charges Read Hoàn tiền và tranh chấp
Webhook endpoints Write Đăng ký webhook của ReputeCast
Events Read Bù sự kiện bị sót khi webhook không đến
Tax settings Read Cho biết Stripe Tax có đang bật không
  1. Mở Kiếm tiền và chọn Kết nối Stripe. Trình hướng dẫn có sáu bước: Nhà cung cấp, Khóa hạn chế, Kiểm tra, Webhook, Cài đặt và Hoàn tất.

    Bước 1/6, Chọn nhà cung cấp thanh toán: Stripe có sẵn với thuê bao, thanh toán một lần, dùng thử, phiếu giảm giá, cổng khách hàng, tính thuế và chế độ thử nghiệm; Paddle và Lemon Squeezy hiển thị Chưa có sẵn.
  2. Chọn Stripe rồi chọn Tiếp tục với Stripe.

  3. Dán khóa hạn chế. Khóa bắt đầu bằng rk_test_ kết nối chế độ thử nghiệm; rk_live_ kết nối chế độ chính thức. Hãy bắt đầu bằng khóa thử nghiệm: khi đó trang thanh toán chạy với thẻ thử nghiệm của Stripe và không tính phí. Khóa ở chế độ chỉ ghi: khóa được niêm phong khi lưu và không bao giờ hiển thị lại.

  4. Chọn Kiểm tra khóa. ReputeCast thực hiện một lệnh gọi vô hại cho mỗi quyền và hiển thị tên tài khoản, quốc gia, tiền tệ, chế độ và Stripe Tax có đang bật hay không. Chưa có gì được tạo trong Stripe. Nếu thiếu một quyền, hãy sửa khóa trong Stripe rồi chọn Kiểm tra lại.

  5. Chọn Đăng ký webhook. ReputeCast tạo endpoint trong tài khoản Stripe của bạn, đăng ký cho endpoint đó nhận 14 sự kiện và lưu khóa bí mật để ký, được niêm phong giống như khóa. Bạn không cần chờ sự kiện đầu tiên để tiếp tục.

  6. Chọn cài đặt thanh toán: tiền tệ (được cố định khi một gói đã có giá), giá đã gồm thuế hay được Stripe Tax cộng thuế khi thanh toán, và người đọc được làm gì trong cổng khách hàng của Stripe. Bạn có thể đổi các mục này sau trong Kiếm tiền, rồi Cài đặt, rồi Thanh toán.

  7. Hoàn tất trình hướng dẫn. Để nhận thanh toán thật sau này, hãy thêm khóa chính thức theo cùng cách. Khóa thử nghiệm vẫn được giữ cho thanh toán thử nghiệm, và các trang công khai chuyển sang khóa chính thức ngay khi khóa này được kết nối. Mỗi khóa có webhook riêng.

Các sự kiện Stripe mà ReputeCast đăng ký nhận
checkout.session.completed
checkout.session.async_payment_succeeded
customer.subscription.created
customer.subscription.updated
customer.subscription.deleted
customer.subscription.trial_will_end
invoice.paid
invoice.payment_failed
invoice.upcoming
charge.refunded
charge.dispute.created
charge.dispute.closed
customer.updated
customer.deleted

Chữ ký của mỗi sự kiện được xác minh, sự kiện gốc được lưu lại, Stripe nhận phản hồi 200 ngay lập tức và sự kiện được áp dụng ngay sau đó. Mỗi giờ, ReputeCast cũng hỏi Stripe về các sự kiện mà webhook bỏ sót, nên nếu máy chủ của bạn gián đoạn trong thời gian ngắn thì cũng không mất thanh toán nào.

  • Nhãn cạnh tiêu đề Kiếm tiền hiển thị Stripe, tên tài khoản Stripe của bạn và Chính thức hoặc Thử nghiệm.
  • Ở bước Webhook của trình hướng dẫn, Đã nhận sự kiện đầu tiên xuất hiện sau lượt thanh toán, gia hạn hoặc thanh toán thử nghiệm tiếp theo. Chọn Chạy một lượt thanh toán thử nghiệm để gửi ngay một sự kiện để tự gửi một sự kiện.
  • Trong Stripe › Developers › Webhooks, một endpoint cho địa chỉ công khai của bạn liệt kê 14 sự kiện.
  • “Đây là khóa bí mật” → bạn đã dán một khóa sk_…. Hãy tạo khóa hạn chế với 13 quyền ở trên.
  • Một quyền hiển thị là bị thiếu → sửa khóa trong Stripe, đặt tài nguyên đó ở mức quyền truy cập trong bảng, rồi chọn Kiểm tra lại.
  • “Stripe không gửi được sự kiện thử nghiệm” → Stripe không truy cập được địa chỉ công khai của bạn. Hãy kiểm tra DNS, TLS và proxy, rồi chọn Kiểm tra lại địa chỉ. Bạn cũng có thể thêm webhook thủ công: trong Stripe › Developers › Webhooks, thêm một endpoint tại địa chỉ mà trình hướng dẫn hiển thị, chọn 14 sự kiện và dán khóa bí mật để ký của endpoint đó vào trình hướng dẫn.
  • Kiếm tiền cảnh báo webhook không có tin → không có sự kiện Stripe nào đến trong 24 giờ trong khi có từ 50 thuê bao đang hoạt động trở lên. Dùng Đăng ký lại trong Kiếm tiền, rồi Cài đặt, rồi Thanh toán để tạo lại webhook. Trong lúc đó, lượt kiểm tra hằng giờ vẫn giữ trạng thái trả phí luôn cập nhật.