เขียนระบบตัดบัตร TrueMoney ด้วยภาษา PHP

หลังจากที่ผมได้เขียนบทความ เขียนระบบ TrueWallet API ไปแล้วรอบนี้ก็จะมาเขียนเรื่องการตัดบัตรทรูมันนี้กันบ้าง โดยใช้ PHP 7+ เหมือนเดิม ผมก็ได้ไปเจอ sourc code ใน github เหมือนเดิมเลยแต่ตัวนี้จะเป็นระบบตัดบัตรทรู เขาได้เขียนเป็น class ไว้ให้เราได้ใช้แล้ว ง่ายๆเลย เวลาเติมไปแล้วเนี้ยมันเก็บไว้ที่ไหนมันก็จะเอาไปเก็บที่ TrueWallet ของเราที่ Login นั้นละครับ และ เขาจะมีให้ Login ได้สองแบบ ซึ่งต่างจากอันก่อนที่มีแค่ email อย่างเดียว

$wallet = new TrueWallet('YOUR EMAIL','YOUR PASSWORD','email');
OR
$wallet = new TrueWallet('YOUR PHONENUMBER','YOUR PIN','mobile');

ส่วนคนที่จะเขียนคนเนี้ยผมว่าจะต้องมีความรู้เรื่อง PHP OOP , Json อะไรพวกนี้มาด้วยนะครับ ใครที่มีความรู้พวกนี้แล้วผมว่าคงเข้าใจไม่ยากหรอก

เดียวจะให้ดูคำสั่งต่างๆละ response success นั้นๆนะครับ

 

Login GetToken

echo $wallet->GetToken();

Response Success

{
 "code": "20000",
 "namespace": "TMN-PRODUCT",
 "titleTh": "",
 "titleEn": "",
 "messageTh": "คุณสามารถเช็ครายการย้อนหลัง\nได้ที่เมนูประวัติการทำรายการ\n[APR-20000]",
 "messageEn": "คุณสามารถเช็ครายการย้อนหลัง\nได้ที่เมนูประวัติการทำรายการ\n[APR-20000]",
 "originalMessage": "",
 "developerMessage": "",
 "data": {
 "addressList": [
 ],
 "occupation": "",
 "accessToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
 "profileImageStatus": "",
 "tmnId": "",
 "lastnameEn": "",
 "currentBalance": "",
 "thaiId": "",
 "firstnameEn": ,
 "kycVerifyStatus": "",
 "hasPin": "",
 "title": "",
 "profileType": "",
 "forceKyc": "",
 "email": "",
 "birthdate": "",
 "mobileNumber": "",
 "hasPassword": "",
 "fullname": "",
 "imageURL": ""
 }
}

Get Profile

$token = json_decode($wallet->GetToken(),true)['data']['accessToken']; 
echo $wallet->Profile($token);

Response Success

{
	"code": "20000",
	"namespace": "TMN-PRODUCT",
	"titleTh": "",
	"titleEn": "",
	"messageTh": "คุณสามารถเช็ครายการย้อนหลัง\nได้ที่เมนูประวัติการทำรายการ\n[APR-20000]",
	"messageEn": "คุณสามารถเช็ครายการย้อนหลัง\nได้ที่เมนูประวัติการทำรายการ\n[APR-20000]",
	"originalMessage": "",
	"developerMessage": "",
	"data": {
		"addressList": [],
		"occupation": "",
		"profileImageStatus": "",
		"tmnId": "",
		"lastnameEn": "",
		"currentBalance": "",
		"thaiId": "",
		"firstnameEn": "",
		"kycVerifyStatus": "",
		"hasPin": "",
		"title": "",
		"profileType": "",
		"forceKyc": ,
		"email": "",
		"birthdate": "",
		"mobileNumber": "",
		"hasPassword": "",
		"fullname": "",
		"imageURL": ""
	}
}

Topup

$token = json_decode($wallet->GetToken(),true)['data']['accessToken']; 
echo $wallet->Topup('เลขบบัตรทรูมั่นนี่',$token);

Response Success

{
	"amount": "",
	"serviceFee": "",
	"cashcardPin": "",
	"createDate": "",
	"sourceFee": "",
	"totalAmount": "",
	"transactionId": "",
	"remainingBalance": ""
}

หากใครสงสัยว่าเติมไปแล้วจะโดนหักเปอร์เซ็นไหม แน่นอนครับหักอยู่แล้วละ 14% นะครับ

โหลด class.truewallet.php

อันดับแรกก็สร้างไฟล์ index.php แล้ว include ไฟล์ class.truewallet.php เข้ามาทำงานนะครับ แล้วก็ใส่บัตรทรูก็จบแล้วครับแค่นี้ง่ายๆไม่ยากเลย

<?php
include 'class.truewallet.php';
$wallet = new TrueWallet('YOUR EMAIL','YOUR PASSWORD','email');
$token = json_decode($wallet->GetToken(),true)['data']['accessToken'];
echo $wallet->Topup('12345678901234',$token);
//12345678901234 คือเลขบัตรทรูมันนี้นะครับ
 ?>

ถ้าเลขบัตรไม่ถูกมันก็ได้จะ response แบบนี้

 
   "code":"-1002",
   "namespace":"TCC",
   "titleTh":"ไม่สามารถทำรายการได้",
   "titleEn":"ไม่สามารถทำรายการได้",
   "messageTh":"กรุณารอสักครู่ แล้วทํารายการใหม่อีกครั้ง ",
   "messageEn":"กรุณารอสักครู่ แล้วทํารายการใหม่อีกครั้ง ",
   "originalMessage":"Can't topup wallet",
   "developerMessage":null,
   "data": 

   }
}

ถ้ามันได้มันก็จะขึ้นแบบนี้

{
	"amount": "",
	"serviceFee": "",
	"cashcardPin": "",
	"createDate": "",
	"sourceFee": "",
	"totalAmount": "",
	"transactionId": "",
	"remainingBalance": ""
}

แนะนำเว็บ Format JSON นะครับ https://jsonformatter.curiousconcept.com/

หากใครที่เป็นมือใหม่ PHP เนี้ยแนะนำให้ไปศึกษา PHP OOP JSON มาก่อนนะ แล้วจะเขียนเว็บให้คนอื่นใช้ได้นะ

Facebook Comments

Leave a Comment