Hướng dẫn tích hợp API thanh toán thẻ cào

Ngày đăng: 15-02-2019 Đã xem: 14390

*Quản lý tích hợp API và tự tạo mã KEY kết nối tại đây

HƯỚNG DẪN API ĐỔI THẺ CÀO V2

Tài liệu hướng dẫn API đổi thẻ cào kiểu POSTMAN

Link tải về mẫu PHP tích hợp
 

Instructions for integrating API to change cards in English (bản hướng dẫn bằng Tiếng Anh)
 

  • GỬI THẺ

1.1  Hệ thống API mới cam kết không nuốt thẻ, không làm LAG web đối tác khi có số lượng thẻ lớn cùng một lúc

1.2  Các đinh nghĩa:

  • https://naptudong.com là website cung cấp api tẩy thẻ chậm mà bạn muốn kết nối.
  • partner_idpartner_key được cấp từ chăm sóc khách hàng SĐT/Zalo 0971330331 hoặc tự đăng ký tại đây

1.2 Thông tin cấu hình kết nối

Bạn mở file config.php và điền giá trị, ở ví dụ này chúng tôi có giá trị được cấp như sau:

        $url = 'https://naptudong.com/chargingws/v2';

        $partner_id = '7908566351';

        $partner_key = '9da6fab8bb728a5b024b3126f53a90ef';

1.3 Thông tin gửi mã thẻ qua api gồm:

telco

Telco có định dạng IN HOA: VIETTEL, VINAPHONE, MOBIFONE, ZING, GATE, VCOIN, VIETNAMOBILE, GARENA

Bắt buộc

code

Mã nạp

Bắt buộc

serial

Seri thẻ

Bắt buộc

amount

Mệnh giá thẻ

Bắt buộc

partner_id

Mã kết nối api do bên website cấp

Bắt buộc

sign

Mã hóa bảo mật  (chú ý: chỉ nhà mạng in hoa, các ký tự khác là in thường, làm đúng theo thứ tự)

- Chuẩn mã hoá MD5, thứ tự mã hóa chữ ký: partner_key + code + command + partner_id + request_id+serial+telco 

Bắt buộc

command

Lệnh. 

Đổi thẻ -> command = charging

Check thẻ -> command = check

Bắt buộc

request_id

Mã đơn hàng của bên bạn. Mã này là duy nhất và nên từ 15 ký tự trở nên để tránh trùng trên hệ thống

bắt buộc

 

Ví dụ thông tin gửi lên như sau:

$datapost['telco'] = 'VIETTEL';

$datapost['code'] = '9999999999999';

$datapost['serial'] = '6666666666';

$datapost['amount'] = '100000';

$datapost['request_id'] = '1234';

$datapost['partner_id'] = '15857545515';

$datapost['command'] = 'charging';

$datapost['sign'] = '34fkdsjhgdsfl34238dfdjh34dfd2e';

 

Lưu ý command là lệnh gửi đến hệ thống

Đổi thẻ -> command = charging

Sau khi gửi lên thành công, hệ thống sẽ trả về cho bạn kết quả ở dạng Json như sau:

stdClass Object

(

    [status] => 99

    [message] => Thẻ đã gửi thành công và đang chờ xử lý

    [code] => 9999999999999

    [serial] => 10001796141928

    [telco] => VIETTEL

    [declared_value] => 100000

    [value] =>

    [receive_amount] =>

    [request_id] => 817633220

    [trans_id] => 64

    [sign] =>

)

 

1.4 Các trạng thái

Ở đây chỉ đưa ra các trạng thái chính, còn các trạng thái khác là thông báo lỗi.   

Status

            ///99 = CHỜ

    /// 1 = THẺ ĐÚNG

    /// 2 = THẺ SAI MỆNH GIÁ

    /// 3 = THẺ LỖI

    /// 4 = BẢO TRÌ

  • - Mẫu log thực tế các trạng thái:
  • + Thẻ chờ:
  • {"status":99,"message":"Th\u1ebb \u0111ang ch\u1edd x\u1eed l\u00fd","request_id":"43950","declared_value":20000,"value":null,"amount":12600,"code":"816815546262524","serial":"10002136142286","telco":"VIETTELAUTO","trans_id":269767,"callback_sign":"1974535b6f38716f49b1cc3d1bed1b9c"}
  • + Thẻ đúng:
  • {"status":1,"message":"Th\u1ebb \u0111\u00fang","request_id":"32051","declared_value":50000,"value":50000,"amount":36500,"code":"614874611547206","serial":"10001197841955","telco":"VIETTELAUTO","trans_id":269752,"callback_sign":"1ddeae26472328327ed7ef944be34daf"}
  • + Thẻ sai mệnh giá: Khai mệnh giá 20k, thực tê mệnh giá 10k
  • {"status":2,"message":"Th\u1ebb sai m\u1ec7nh gi\u00e1","request_id":"890676711","declared_value":20000,"value":"10000","amount":4410,"code":"716527274724352","serial":"10003945623426","telco":"VIETTELAUTO","trans_id":269629,"callback_sign":"1fd0f2b14ff39e612ee411b4968df077"}
  • + Thẻ lỗi: Là mã thẻ sai hoặc đã sử dụng
  • {"status":3,"message":"Th\u1ebb l\u1ed7i","request_id":"75860","declared_value":50000,"value":0,"amount":0,"code":"213220993383378","serial":"10002043319423","telco":"VIETTELAUTO","trans_id":269627,"callback_sign":"bfcb25c8e10844ee98bbad4a48ba24f5"}
  • + Bảo trì: lỗi hệ thống hoặc nhà mạng lỗi
  • {"status":4,"message":"B\u1ea3o tr\u00ec","request_id":"355498359","declared_value":50000,"value":0,"amount":0,"code":"940210495104805","serial":"10004940041805","telco":"VIETTELAUTO","trans_id":269781,"callback_sign":"32452065db9c2099aa7376386d91d3d0"}

declared_value  : là mệnh giá bạn khai báo cho chúng tôi

value: là mệnh giá thực mà chúng tôi kiểm tra được

  • CALL BACK
    Chữ ký bảo mật: md5( partner_key+card_code+card_serial )

Hệ thống cung cấp cho bạn một tiện ích trả kết quả tẩy thẻ thông qua hình thức POST. Sau khi admin xử lý thẻ thành công, hệ thống sẽ post thông tin kết quả về website của bạn gồm các dữ liệu như sau:

        array(

            'status'] = 1;

            'message'] = 'Thẻ đúng',

            'value'] =  '100000',

            'amount'] = '65000',

            'code'] = '76532234',

            'serial'] = '123567',

             'request_id' = '324234',

            'telco'] = 'VIETTEL',

        )

 

Bạn phải gửi cho admin Naptudong.com đường dẫn nhận kết quả call back để admin gắn vào hệ thống. Ví dụ: http://websitecuaban.com/callback.php

callback_sign là chữ ký xác nhận chính chủ được nhận kết quả. Cách tạo sign đã có hướng dẫn trong file code mẫu callback.php

Trạng thái:

1 => Thẻ đúng

2 => Thẻ đúng nhưng sai mệnh giá

3 => Thẻ không dùng được

99 => Thẻ chờ xử lý

- Mã KEY nhà mạng và định dạng thẻ cào

VIETTEL mã thẻ 15 số, seri 14 số

VINAPHONE mã thẻ 14 số, seri 14 số

MOBIFONE mã thẻ 12 số, seri 15 số

Vcoin (VTC) Mã thẻ 12 ký tự, seri 12 ký tự

GATE mã thẻ 10 ký tự, seri 10 ký tự

ZING mã thẻ 9 ký tự, seri 12 ký tự

 

Xin cảm ơn!