Proyek ini bertujuan untuk memberikan pembungkus PHP yang mudah digunakan dan terkini untuk API M-Pesa Mozambik.
Versi target M-PESA API: V1X
Instal Menggunakan Komposer:
composer require abdulmueid/mpesa
Muat konfigurasi dari file.
$ config = abdulmueid mpesa Config:: loadFromFile ( ' /path/to/config.php ' );Lihat File Konfigurasi Sampel di Folder Contoh.
Buat transaksi menggunakan konfigurasi.
$ transaction = new abdulmueid mpesa Transaction ( $ config );Jalankan operasi API dan lulus parameter yang sesuai.
Memulai pengumpulan pembayaran C2B.
$ c2b = $ transaction -> c2b (
float $ amount ,
string $ msisdn ,
string $ reference ,
string $ third_party_reference
);Memulai pembayaran B2C.
$ b2c = $ transaction -> b2c (
float $ amount ,
string $ msisdn ,
string $ reference ,
string $ third_party_reference
);Memulai pembayaran B2B.
$ b2b = $ transaction -> b2b (
float $ amount ,
string $ receiver_party_code ,
string $ reference ,
string $ third_party_reference
);Memulai pembalikan.
$ reversal = $ transaction -> reversal (
float $ amount ,
string $ transaction_id ,
string $ third_party_reference
);Meminta transaksi.
$ query = $ transaction -> query (
string $ query_reference ,
string $ third_party_reference
);Periksa respons
Semua transaksi mengembalikan objek TransactionResponse . Objek memiliki metode publik berikut:
getCode() - Mengembalikan kode respons yaitu INS-0
getDescription() - Mengembalikan deskripsi.
getTransactionID() - Mengembalikan ID transaksi.
getConversationID() - Mengembalikan ID percakapan.
getTransactionStatus() - Mengembalikan status transaksi. Hanya dihuni saat memanggil transaksi query() .
getResponse() - Mengembalikan objek JSON respons penuh seperti yang diterima dari server M -PESA. Baik untuk men-debug masalah atau perilaku tidak berdokumen dari M-PESA API.
Dalam skenario khas, kode untuk memeriksa transaksi yang berhasil harus sebagai berikut:
$ c2b = $ transaction -> c2b (...);
if ( $ c2b -> getCode () === ' INS-0 ' ) {
// Transaction Successful, Do something here
}Repo ini menyediakan tes unit untuk memvalidasi objek dan interaksinya dengan M-PESA.
Untuk menjalankan tes,
phpunit.xml dan tambahkan kredensial/parameter yang diperlukan seperti yang disediakan oleh M-PESA.phpunitSemua tes menggunakan 1MT sebagai jumlah pengujian.
Perpustakaan ini dirilis di bawah lisensi MIT. Lihat file lisensi untuk detailnya.