Latest 1.0.4
Homepage https://github.com/homedirectvn/PayGateSDK-iOS
License MIT
Platforms ios 6.0, requires ARC
Authors

PayGateSDK-IOS

PayGateSDK cho IOS cung cấp cách thức đơn giản nhất để quản lý user và cho phép tích hợp thanh toán cho ứng dụng của bạn trên hệ thống Paydirect. SDK cung cấp giải pháp cho các hình thức thanh toán. PayGateSDK hỗ trợ IOS từ 7.0 trở lên. Chi tiết về phương thức kết nối xin liên hệ [email protected]

Các bước tích hợp SDK:

  1. Cài đặt PayGateSDK SDK

  2. Cấu hình SDK

  3. Tích hợp

1. Cài đặt PayGateSDK

Có nhiều cách khác nhau để tải PayGateSDK vào project Xcode của bạn. Bạn có thể dùng CocoaPods hoặc tự tải framework cùng các thư viện khác liên quan vào project.

A.Cocoapod

Cocoapods là cách nhanh nhất và đơn giản để tải và cập nhật PayGateSDK trên ứng dụng IOS. Chỉ cần cập nhật vào Podfile và gọi lệnh pod install với dòng dưới đây:

pod '‘PayGateSDK‘'

Hướng dẫn sử dụng bạn có thể tham khảo tại link sau:
https://guides.cocoapods.org/using/using-cocoapods.html

PayGateSDK đã được chúng tôi cập nhật trên Cocoapods thông qua đường link sau:
https://cocoapods.org/?q=PayGateSDK

B. Tải PayGateSDK

Bạn có thể tải PayGateSDK ngay từ repo git được đề cập ở trên. Kéo thả thư mục PayGateSDK.framework và PayGateSDK.bundle vào project của bạn.

Tick vào checkbox: “Copy items into destination group’s folder (if needed)”.

2. Cấu hình SDK

SDK được khởi tạo thông qua class PayGateSDK. Có thể gọi PayGateSDK qua PayGateClient.

#import <PayGateSDK/PayGateSDK.h>

Trước khi sử dụng SDK, ta gọi các hàm cài đặt Client (chỉ gọi duy nhất 1 lần):
Đối với ứng dụng đang ở trạng thái sandbox:

PayGateClient *payGateClient = [[PayGateClient alloc] initWithSandbox];

Đối với ứng dụng đang ở trạng thái publish:

PayGateClient *payGateClient = [[PayGateClient alloc] initWithPartnerCode: partnerCode password:password secretKey:secretKey];

3. Tích hợp dịch vụ thẻ

Trong PayGateSDK chúng tôi sẽ tích hợp 2 dịch vụ đó là Topup và Buy Card.
PayGateSDK cung cấp class PDTopupPhoneViewController và PDBuyCardViewController đóng gói toàn bộ giao diện của hình thức thanh toán dịch vụ thẻ. Để tích hợp đến các chức năng cần thiết trong dịch vụ, bạn chỉ cần gọi đến các hàm tương ứng được cung cấp sẵn trong class PayGateClient.

Topup Service

PDTopupPhoneViewController * pdTopupPhoneViewController = [[PDTopupPhoneViewController alloc] initWithPayGateClient:self.payGateClient transRef:[NSString randomTransRef]];

    pdTopupPhoneViewController.delegate = self;

    [self presentViewController:pdTopupPhoneViewController
                       animated:YES completion:nil];

BuyCard Service

P PDBuyCardViewController * pdBuyCardViewController = [[PDBuyCardViewController alloc] initWithPayGateClient:self.payGateClient transRef:[NSString randomTransRef]];

    pdBuyCardViewController.delegate = self;

    [self presentViewController:pdBuyCardViewController
                       animated:YES completion:nil];

Giá trị transRef lần lượt là các tham số tài khoản, và mã giao dịch trên hệ thống của quý khách.

goài ra trong class PayGateClient bạn cũng có thể sử dụng các hàm tương ứng như sau :

Hàm gọi đến dịch vụ mua thẻ từ các nhà cung cấp

/**
 *  topup API
 *
 *  @param PDVendor     Vendor
 *  @param price        Card's price
 *  @param quantity     Number of cards want to buy
 *  @param transId      Transaction id, generate from parter
 *  @param resultBlock  block to handle result
 */
- (void)buyCardWithVendor:(PDVendor)vendor
                    price:(NSNumber * _Nonnull)price
                 quantity:(NSNumber * _Nonnull)quantity
                  transId:(NSString * _Nonnull)transId
                completed:(_Nonnull PayGateBuyCardResultBlock)resultBlock;

Lấy trạng thái giao dịch

/**
 *  get Transaction Status/Code
 *
 *  @param transRef    Transaction reference id
 *  @param resultBlock block to handle resutl
 */
- (void)getTransactionResult:(NSString * _Nonnull)transId
                   completed:(_Nonnull PayGateTransactionResultBlock)resultBlock;

Lấy thông tin chi tiết thẻ

/**
 *  get cards Infomation
 *
 *  @param transRef    Transaction reference id
 *  @param resultBlock block to handle resutl
 */
- (void)getCard:(NSString * _Nonnull)transId

Lấy danh sách các nhà cung cấp

/**
 *
 *  @return List of supported Vendors
 */
+ (NSArray * _Nonnull) supportVendors;

Latest podspec

{
    "name": "PayGateSDK",
    "version": "1.0.4",
    "summary": "PayGateSDK-iOS",
    "homepage": "https://github.com/homedirectvn/PayGateSDK-iOS",
    "license": "MIT",
    "authors": {
        "Homedirect": "[email protected]"
    },
    "platforms": {
        "ios": "6.0"
    },
    "source": {
        "git": "https://github.com/homedirectvn/PayGateSDK-iOS.git",
        "tag": "1.0.4"
    },
    "vendored_frameworks": "Framework/PayGateSDK.framework",
    "resources": "Framework/PayGateSDK.bundle",
    "requires_arc": true
}

Pin It on Pinterest

Share This