Stripe - Tiêu chuẩn mới trong thanh toán trực tuyến

Tiêu chuẩn mới trong thanh toán trực tuyến

Stripe là nền tảng phần mềm tốt nhất cho hoạt động kinh doanh trên internet. Stripe hiện đang thực hiện xử lý hàng tỷ đô la mỗi năm cho các doanh nghiệp trên khắp thế giới. Stripe cung cấp SDK để có thể tích hợp trên các thiết bị chạy hệ điều hành AndroidIOS. Ngoài ra, nó còn cung cấp Stripe API để có thể được sử dụng bởi rất nhiều các ngôn ngữ như: Ruby, Python, Java, GO... (Stripe API )

Làm quen với Stripe

Đầu tiên, chúng ta cần tạo một tài khoản. Khi tài khoản được khởi tạo, nếu như chưa thực hiện verify các thông tin mà Stripe yêu cầu, thì account sẽ ở trạng thái testing Đăng ký tại đây. Sau khi tạo thành công 1 tài khoản, hãy login vào và tìm hiểu các tính năng mà Stripe cung cấp cho chúng ta. Màn hình sau khi login thành công sẽ như thế này: Các bạn để ý ở thanh menu bên tay trái, đó là các tính năng mà Stripe cung cấp để chúng ta có thể quản lý được các giao dịch, người dùng, và tài khoản của chúng ta. Payments : Bao gồm các danh sách giao dịch của người dùng qua tài khoản Stripe của chúng ta. API: Bao gồm các thông tin như version, Secret key và Publishable key...

Publishable key và Secret key là gì?

Publishable key

Đây là key mà Stripe cung cấp để sử dụng dành cho native khi sử dụng Stripe SDK. Nó được sử dụng để tạo ra được EphemeralKey dùng cho việc thêm card.

Secret key

Như cái tên của nó, nó là key mà chúng ta cẩn phải giữ kín. Với key này, chúng ta có thể thực hiện các giao dịch như thanh toán, xoá lịch sử giao dịch, refund...

Cơ chế hoạt động.

Stripe flow:

  1. App gửi credit card infomation lên Stripe.
  2. Stripe xử lý và trả về token.
  3. App gửi token cho back-end.
  4. Server giao tiếp với Stripe qua Stripe's API.
  5. Khi giao dịch xong thì Stripe trả về kết quả cho server.
  6. Server thông báo cho app ios kết quả của giao dịch.

Một số lưu ý

Không nên thực hiện charge trên native app, bởi vì khi thực hiện trừ tiền thì cần sử dụng publishable key và secrect key, nếu secrect key bị lộ thì nó có thể được dùng thực hiện các giao dịch charges, refunds, transfers... Secret API key nên được lưu trên server.

Thực hiện tạo customer và thanh toán với postman.

Tạo customer thông qua dashboard

Thông thường, việc tạo customer sẽ được thực hiện trên ứng dụng, hoặc webapp. Tuy nhiên, trong bài viết này, mình sẽ sử dụng luôn dashboard của Stripe để tiết kiệm thời gian. Đầu tiên, hãy chọn mục Customer ở thanh menu bên trái, và thực hiện theo các bước sau đây: Step 1 Step 2: Điền một địa chỉ email và mô tả (optional) Sau khi tạo thành công, chúng ta có một customer như này: Lưu ý: bạn cần phải biết được customer_id để có thể thực hiện thanh toán. Tiếp theo, bạn cần add thông tin card cho customer đó. Ở môi trường testing, Stripe cung cấp một số card để chúng ta có thể thực hiện thanh toán Card testing Sau khi add xong card, bạn sẽ thấy được thẻ được xuất hiện ở mục Cards:

Thanh toán thông qua postman

Tiếp theo, để thực hiện thanh toán như khi chúng ta gọi api thông qua back-end. Mình sẽ sử dụng Postman. Việc thanh toán này đã được Stripe hướng dẫn tại đây Method: Post URL: https://api.stripe.com/v1/charges Params:

  • amount: Số tiền cho giao dịch. (required)
  • currency: loại ngoại tệ. (required)
  • customer: id của customer. (required)
  • description: mô tả (optional) Header: Authorization: "Bearer ####" (### là secret key mà chúng ta lấy được khi tạo tài khoản). Sau khi thực hiện gọi api trên, bạn hãy vào lại Stripe dashboard và kiểm tra trong mục Payments:

Giao dịch đã được thực hiện thành công với thông tin của customer mà chúng ta vừa tạo ở bước trên. Bài viết tiếp theo mình sẽ giới thiệu về việc sử dụng Stripe để tạo lịch thanh toán cố định. Thanks


All Rights Reserved