https://ncpay.asia API

API chuẩn của https://ncpay.asia

Bước 1: user chọn nạp tiền bằng Ngân hàng
Bước 2: Gửi api listbank để lấy danh sách bank có sẵn, hiện thị cho user chọn
Bước 3: user chọn bank muốn nạp
Bước 4: gửi api regcharge nhận về thông tin tài khoản và mã lệnh
Mã lệnh sử dụng làm nôi dung chuyển khoản,mỗi mã lệnh chỉ được dùng 1 lần duy nhất. Thời gian sử dụng là 30phuts
Bước 5: Hiển thị thông tin ra cho người chơi nhìn thấy, và tiền hành nạp
Bước 6: Nhận kết quả
Với momo bỏ qua bước 2,3. User tạo lệnh chọn truyền là momo luôn

1.Lấy danh sách bankcode hỗ trợ nạp tiền

api này lấy danh sách ngân hàng hỗ trợ, để khách chọn khi nạp tiền về bank, danh sách này là thay đổi

Phương thức: GET

Url: https://ncpay.asia/autobank/listbank

Dữ liệu cần thiết khi gửi lên

key - Key lấy trong phần thông tin tài khoản

Kết quả trả về:

status - Trạng thái (1:Thành công, -1: Thất bại, status khác vui lòng xem msg)

msg - Thông báo mô tả

data - Danh sách ngân hàng. Ví dụ: [{"bank":"TECHCOMBANK","bank_code":"TCB"},{"bank":"BIDV","bank_code":"BIDV"},{"bank":"VIETCOMBANK","bank_code":"VCB"}]

Code mẫu:

				

				$urlsend = 'https://ncpay.asia/autobank/listbank';
			    $datasend['key'] = '';
			     $curl = curl_init();
			      curl_setopt_array($curl, array(
			      CURLOPT_URL => $urlsend . '?' . http_build_query($datasend),
			      CURLOPT_RETURNTRANSFER => true,
			      CURLOPT_ENCODING => "",
			      CURLOPT_MAXREDIRS => 10,
			      CURLOPT_TIMEOUT => 300,
			      CURLOPT_CONNECTTIMEOUT => 300,
			      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
			      CURLOPT_CUSTOMREQUEST => "GET",
			    ));
			    $response = curl_exec($curl);
			    echo $response;
			    curl_close($curl);
			    unset($curl);
			    $response = str_replace("\xEF\xBB\xBF",'',$response); 
			    $return = json_decode($response,true);
			   
				if($result['status'] == 1){
					echo "Thành công";
				}else{
					echo "Thất bại";
				}
				exit();
			


2.Tạo lệnh nạp tiền

Phương thức: GET

Url: https://ncpay.asia/autobank/regcharge

Dữ liệu cần thiết khi gửi lên

key - Key lấy trong phần thông tin tài khoản

type - Loại bank (MOMO:MOMO - BANK:BANK)

amount - Số tiền(bank từ 20M đến 50M, momo từ 10k đến 30M)

refcode - mã dối soát

signature - Chữ ký số ( Được mã hóa theo chuẩn: md5(privatekey+refcode).)=>privatekey trong phần thông tin tài khoản(nhấn nào nút gửi email để nhận privatekey đầy đủ)

urlcallback - url nhận kết quả callback phía đối tác

bankcode - mã bank code hỗ trợ nạp tiền(với momo thì bankcode=momo, với bank thì bankcode lấy ở api phía trên)

Kết quả trả về

status - Trạng thái (1:Thành công, -1: Thất bại, Status khác vui lòng xem msg)

msg - Thông báo mô tả

data - Thông tin banking nếu status = 1

data là mảng 2 chiều bao gồm:

bank_id - Mã giao dịch bank )

refcode - Mã giao dịch của bạn

bank - Tên ngân hàng

bank_account - Tài khoản ngân hàng

bank_name - Tên tài khoản

bank_account - Tài khoản ngân hàng

bank_code - Mã ngân hàng

code - Mã tin nhắn ( dùng làm nội dung khi chuyển khoản)

signature - Chữ ký số ( Được mã hóa theo chuẩn: md5(privatekey+bank_id) )

Code mẫu:

			
				$urlsend = 'https://ncpay.asia/autobank/regcharge';
			    $datasend['key'] = '';
			    $datasend['type'] = 'momo';
				$datasend['bankcode'] = 'momo';
			    $datasend['urlcallback'] = 'http://yourcallback.com';
			   	$datasend['amount'] = 10000;
			    $response = array();
			    $curl = curl_init();
			    curl_setopt_array($curl, array(
			    CURLOPT_URL => $urlsend . '?' . http_build_query($datasend),
			    CURLOPT_RETURNTRANSFER => true,
			    CURLOPT_ENCODING => "",
			    CURLOPT_MAXREDIRS => 10,
			    CURLOPT_TIMEOUT => 300,
			    CURLOPT_CONNECTTIMEOUT => 300,
			    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
			    CURLOPT_CUSTOMREQUEST => "GET",
			    ));

			    $responsere = curl_exec($curl);
			    curl_close($curl);
			    unset($curl);
			   $result = json_decode($responsere,true);

				if($result['status'] == 1){
					echo "Lấy thông tin bank thành công";
				}else{
					echo "Lấy thông tin bank thất bại";
				}
				exit();
			

3.Nhận kết quả callback

Đây là phần code bên đối tác

Phương thức: GET

Danh sách trả về:

status - Trạng thái (-1: Thất bại, 1:Thành công)

bank_id - Mã giao dịch bank

refcode - Mã giao dịch của bạn

type - Loại bank (momo - bank)

amount - Số tiền

code - Nội dung trả về

msg - Nội dung mô tả

signature - Chữ ký số ( Được mã hóa theo chuẩn: md5(privatekey+bank_id) )

LƯU Ý: Callback có thể gửi lại nhiều lần. Nhưng lệnh đúng thì chỉ trả 1 lần.

Code mẫu:

			if(isset($_GET['status'])){
				$data = array();
				if(isset($_GET['status'])){
					$status = $_GET['status'];
				}else{
					$status = -6;
				}
				if(isset($_GET['bank_id'])){
					$bank_id = $_GET['bank_id'];
				}else{
					$bank_id = 0;
				}
				
				if(isset($_GET['type'])){
					$type = $_GET['type'];
				}else{
					$type = '';
				}
				if(isset($_GET['amount'])){
					$amount = $_GET['amount'];
				}else{
					$amount = 0;
				}
				if(isset($_GET['refcode'])){
					$refcode = $_GET['refcode'];
				}else{
					$refcode = '';
				}
				if(isset($_GET['code'])){
					$code = $_GET['code'];
				}else{
					$code = '';
				}
				if(isset($_GET['msg'])){
					$msg = $_GET['msg'];
				}else{
					$msg = '';
				}
			
			
					if($status == -6){
						echo "Không lấy được kết quả trả về";
					}else{
						//Thành công
						if($status == 1){
							echo "Lệnh thành công";
						}else{
							//Thất bại
							echo "Lệnh thất bại";
						}

					}
				
			
			}else{
				echo "không nhận được kết quả";
			}