Module tích hợp thanh toán ZaloPay
vào ứng dụng React Native
Phần mới TíT xin nói về cách dùng ZaloPay cho thanh toán tiền(bài này nói về tích hợp ở chế độ sanbox nha mn). Docs thì m.n có thể đọc ở trang https://docs.zalopay.vn/v1/docs/apptoapp/overview.html
- Luồng chính
- Thuật ngữ
End-User: người mua hàng có sử dụng tài khoản ZaloPay.
Merchant: người bán hàng, cá nhân hoặc đơn vị kinh doanh, cung ứng dịch vụ hoặc/và sản phẩm.
ZaloPay: nền tảng thanh toán điện tử giúp Merchant tích hợp nhiều hình thức thanh toán để bán hàng cho End-User tiện hơn.
- Sơ đồ
Bước 2: Merchant gửi yêu cầu tạo đơn thanh toán (API Tạo đơn hàng) sang cho ZaloPay. ZaloPay trả thông tin đơn hàng về cho Merchant.
Bước 3: App của Merchant gọi thanh toán bằng thông tin zp_trans_token trả về, SDK sẽ mở app ZaloPay/Zalo để End-User thực hiện thanh toán. Trong trường hợp máy người dùng không có ZaloPay và Zalo, merchant sử dụng SDK để redirect đến App Store/Google Play Store của ZaloPay hay Zalo tương ứng.
Bước 4: End-User thanh toán hoàn tất, app ZaloPay/Zalo sẽ mở lại App của Merchant để hiển thị kết quả giao dịch.
- Cách tích hợp trên Android và IOS
👉👉👉Về phần cài thì TíT hướng dẫn đối với AppToApp nha.
💭Nếu không thể mở app zaloPay sanbox thì có thể do zdpk của zalopay k còn sử dụng ở v2 nữa nên mn hãy chuyển qua v5(ZPDK_v5.1.2.zip) nhé
☝ IOS
- Để test được đầu tiên phải cài ZaloPay SanBox: https://stcstg.zalopay.com.vn/ps_res/ios/enterprise/sandboxmer/6.8.2/install.html
đây là link(Phần mềm và hướng dẫn chạy được app), m.n làm theo là được nha.👏
- Trong file Info.plist m.n thêm cho TíT đoạn code để cấu hình cho phép khởi tạo ZaloPay từ app👇👇(zp-redirect-1412 thì số 1412 có thể setup lại tuỳ nha không bắt buộc)
- Tạo 2 file như này cho TíT đối với ios nha 👌👌
💥 ZaloPayBridge.h
💥 ZaloPayBridge.m
- Sau đó ở khởi tạo zpdk và xử lý trao đổi dữ liệu với ZaloPay
- Sau đó thêm zpdk vào ios nha
✌ Android
- Trong file zip zalopaydk mà mn đã tải ở trên, có folder android chứa file .aar
- Đầu tiên m.n hãy tạo folder android/zpdk-release. Trong folder này chứa file .aar và 1 file nữa là build.gradle có nội dung như sau👇👇
- Tiếp theo, cần include zpdk vào file android/settings
và file android/app/build.gradle ở phần dependencies
- Tiếp theo tạo module zalopay (😈lưu ý đổi lại thông tin cho đúng với project của m.n nha😈). Trong folder java/com/tên-project tạo mới folder zalopaymodule, trong folder này chứa 2 file:
💥 ZaloPayBridge.java
💥 ZPModule.java
- Tiếp theo là import module vừa tạo vào MainApplication.java
Thêm packages vào hàm getPackages
Khởi tạo môi trường ở chế độ sanbox (trong hàm onCreate nha)
- Tạo intent ở file MainActivity.java