Hãy để tôi mở rộng những gì họ đang nói một chút với giải thích của tôi:
Với thư viện di động của chúng tôi, chúng tôi gánh vác trách nhiệm tuân thủ PCI bằng cách loại bỏ sự cần thiết phải gửi dữ liệu thẻ trực tiếp vào máy chủ của bạn. Thay vào đó, thư viện của chúng tôi gửi dữ liệu thẻ trực tiếp đến máy chủ của chúng tôi, nơi chúng tôi có thể chuyển đổi chúng thành mã thông báo.
Điều đó có nghĩa là thường nhận được số thẻ tín dụng và dự kiến sẽ lưu trữ để sử dụng sau này (ví dụ: khách hàng nhập mã vào trang tài khoản của bạn để họ có thể bị tính phí hàng tháng), nhưng điều đó khiến bạn bắt buộc phải tuân thủ các tiêu chuẩn PCI, có thể là một nhức đầu. Stripe giúp bạn giảm gánh nặng này - họ sẽ lưu trữ thẻ tín dụng và nếu bạn muốn tính phí sau này, bạn chỉ có thể cung cấp cho họ mã thông báo mà họ tạo ra đại diện cho thẻ tín dụng đó.
Ứng dụng của bạn sẽ nhận lại mã thông báo và sau đó có thể gửi mã thông báo đến điểm cuối trên máy chủ của bạn để xử lý thanh toán, thiết lập thanh toán định kỳ hoặc chỉ lưu để sử dụng sau này.
này được giải thích một phần hơn nữa, https://stripe.com/docs/mobile/android#using-tokens
Sử dụng thẻ thanh toán, tuy nhiên nó được thu thập, đòi hỏi phải có một cuộc gọi API từ máy chủ của bạn sử dụng khóa API bí mật của bạn. (Đối với mục đích bảo mật, bạn không bao giờ nên nhúng khóa API bí mật của bạn trong ứng dụng của bạn.)
(Điều này đã được đề cập bởi drhr.)
Vì bạn cần chìa khóa bí mật để làm cho API gọi nó sẽ cần được thực hiện từ máy chủ của riêng bạn, vì vậy bạn cần một máy chủ.
Lưu ý: Tôi chưa sử dụng Stripe mà tôi nhớ lại, tôi chỉ đang cố gắng chia sẻ việc đọc tài liệu của mình.
P.S. Tôi nghĩ câu hỏi thứ hai của bạn là riêng biệt, nhưng một số tùy chọn phổ biến và dễ dàng để lưu trữ một ứng dụng web Java là Heroku và AppEngine. Đối với một cái gì đó như thế này tuy nhiên bạn có thể đi với một cách tiếp cận Serverless ví dụ sử dụng AWS Lambda https://aws.amazon.com/lambda (google có tương đương trong giai đoạn Alpha https://cloud.google.com/functions/)
Firebase đang chạy trên máy chủ, có. Nó chỉ là một chuỗi mã thông báo. Bạn có thể lưu trữ nó bất cứ nơi nào. –
@ cricket_007 vì vậy tất cả các tài liệu có nghĩa là im sẽ lưu trữ mã thông báo? có vẻ như im sẽ tính phí từ máy chủ - không chỉ lưu trữ nó? – Isaac
Có lẽ tôi cũng hiểu nhầm. Tôi không thực sự biết cách thức hoạt động của Stripe. Tuy nhiên, nếu bạn cảm thấy thoải mái với Java, ApacheTomcat, Servlets và JAX-RS là nhiều từ khóa hơn bạn có thể tìm kiếm –