โครงการนี้มีจุดมุ่งหมายเพื่อให้เครื่องห่อหุ้ม PHP ที่ใช้งานง่ายและทันสมัยสำหรับ M-Pesa Mozambique API
รุ่นเป้าหมายของ M-PESA API: v1x
ติดตั้งโดยใช้นักแต่งเพลง:
composer require abdulmueid/mpesa
โหลดการกำหนดค่าจากไฟล์
$ config = abdulmueid mpesa Config:: loadFromFile ( ' /path/to/config.php ' );ดูตัวอย่างไฟล์การกำหนดค่าตัวอย่างในโฟลเดอร์ตัวอย่าง
สร้างธุรกรรมโดยใช้การกำหนดค่า
$ transaction = new abdulmueid mpesa Transaction ( $ config );ดำเนินการปฏิบัติการ API และผ่านพารามิเตอร์ที่เหมาะสม
เริ่มต้นคอลเลกชันการชำระเงิน C2B
$ c2b = $ transaction -> c2b (
float $ amount ,
string $ msisdn ,
string $ reference ,
string $ third_party_reference
);เริ่มต้นการชำระเงิน B2C
$ b2c = $ transaction -> b2c (
float $ amount ,
string $ msisdn ,
string $ reference ,
string $ third_party_reference
);เริ่มต้นการชำระเงิน B2B
$ b2b = $ transaction -> b2b (
float $ amount ,
string $ receiver_party_code ,
string $ reference ,
string $ third_party_reference
);เริ่มต้นการกลับรายการ
$ reversal = $ transaction -> reversal (
float $ amount ,
string $ transaction_id ,
string $ third_party_reference
);สอบถามธุรกรรม
$ query = $ transaction -> query (
string $ query_reference ,
string $ third_party_reference
);ตรวจสอบการตอบกลับ
ธุรกรรมทั้งหมดส่งคืนวัตถุ TransactionResponse วัตถุมีวิธีการสาธารณะต่อไปนี้:
getCode() - ส่งคืนรหัสตอบกลับเช่น INS-0
getDescription() - ส่งคืนคำอธิบาย
getTransactionID() - ส่งคืนรหัสธุรกรรม
getConversationID() - ส่งคืนรหัสการสนทนา
getTransactionStatus() - ส่งคืนสถานะการทำธุรกรรม มีเฉพาะเมื่อโทรทำธุรกรรม query()
getResponse() - ส่งคืนวัตถุ JSON ตอบกลับเต็มตามที่ได้รับจากเซิร์ฟเวอร์ M -PESA ดีสำหรับการดีบักปัญหาใด ๆ หรือพฤติกรรมที่ไม่มีเอกสารของ M-PESA API
ในสถานการณ์ทั่วไปรหัสเพื่อตรวจสอบการทำธุรกรรมที่ประสบความสำเร็จควรมีดังนี้:
$ c2b = $ transaction -> c2b (...);
if ( $ c2b -> getCode () === ' INS-0 ' ) {
// Transaction Successful, Do something here
}repo นี้ให้การทดสอบหน่วยเพื่อตรวจสอบวัตถุและการโต้ตอบกับ M-PESA
เพื่อเรียกใช้การทดสอบ
phpunit.xml และเพิ่มความต้องการข้อมูลรับรอง/พารามิเตอร์ตามที่จัดทำโดย M-PESAphpunitการทดสอบทั้งหมดใช้ 1MT เป็นจำนวนการทดสอบ
ห้องสมุดนี้เปิดตัวภายใต้ใบอนุญาต MIT ดูไฟล์ใบอนุญาตสำหรับรายละเอียด