定制 ipaymu-v2/laravel 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ipaymu-v2/laravel

最新稳定版本:v1.0.4

Composer 安装命令:

composer require ipaymu-v2/laravel

包简介

package ipaymu v2

README 文档

README

Ini adalah paket Composer untuk integrasi iPaymu v2 dengan Laravel.

Instalasi

composer require ipaymu-v2/laravel

Penggunaan

Pertama, pastikan Anda telah mengonfigurasi variabel lingkungan yang diperlukan di file .env aplikasi Laravel Anda seperti yang dijelaskan di bagian "Konfigurasi".

Anda dapat menginstansiasi kelas IpaymuV2 dan menggunakan metode-metodenya:

use IpaymuV2\Laravel\IpaymuV2;

$ipaymu = new IpaymuV2();

Mendapatkan Saldo (getBalance)

Metode ini digunakan untuk mendapatkan saldo akun iPaymu Anda.

use IpaymuV2\Laravel\IpaymuV2;

$ipaymu = new IpaymuV2();
$balance = $ipaymu->getBalance(); // Akan menggunakan IPAYMU_VA dari .env
// Atau dengan VA spesifik:
// $balance = $ipaymu->getBalance('your_specific_va');

if (isset($balance['status']) && $balance['status'] == 'success') {
    echo "Saldo Anda: " . $balance['data']['balance'];
} else {
    echo "Gagal mendapatkan saldo: " . ($balance['message'] ?? 'Terjadi kesalahan');
}

Membuat Halaman Pembayaran (createPaymentPage)

Metode ini digunakan untuk membuat halaman pembayaran iPaymu.

use IpaymuV2\Laravel\IpaymuV2;

$ipaymu = new IpaymuV2();

$product = ['Nama Produk 1', 'Nama Produk 2'];
$qty = [1, 2];
$price = [10000, 5000]; // Harga per unit

$name = 'Nama Pembeli';
$email = 'pembeli@example.com';
$phone = '08123456789';
$callback = 'https://your-app.com/ipaymu/notify'; // URL notifikasi dari iPaymu

$paymentPage = $ipaymu->createPaymentPage($product, $qty, $price, $name, $email, $phone, $callback);

if (isset($paymentPage['status']) && $paymentPage['status'] == 'success') {
    echo "URL Pembayaran: " . $paymentPage['data']['url'];
    // Redirect pengguna ke URL ini
} else {
    echo "Gagal membuat halaman pembayaran: " . ($paymentPage['message'] ?? 'Terjadi kesalahan');
}

Membuat Pembayaran Langsung (createDirectPayment)

Metode ini digunakan untuk membuat pembayaran langsung melalui metode pembayaran tertentu.

use IpaymuV2\Laravel\IpaymuV2;

$ipaymu = new IpaymuV2();

$product = ['Nama Produk'];
$qty = [1];
$price = [15000];

$name = 'Nama Pembeli';
$email = 'pembeli@example.com';
$phone = '08123456789';
$callback = 'https://your-app.com/ipaymu/notify'; // URL notifikasi dari iPaymu
$method = 'va'; // Contoh: 'va', 'qris', 'cstore'
$channel = 'bca'; // Contoh: 'bca', 'mandiri', 'indomaret', 'alfamart'

// Catatan: Untuk 'returnUrl' dan 'notifyUrl' yang menggunakan fungsi `route()` Laravel,
// Anda perlu menyediakan URL yang valid dari aplikasi Anda.
// Contoh: route('your.return.route') atau 'https://your-app.com/return-url'

$directPayment = $ipaymu->createDirectPayment($product, $qty, $price, $name, $email, $phone, $callback, $method, $channel);

if (isset($directPayment['status']) && $directPayment['status'] == 'success') {
    echo "Pembayaran Langsung Berhasil. Data: ";
    print_r($directPayment['data']);
    // Lanjutkan dengan proses pembayaran sesuai respons
} else {
    echo "Gagal membuat pembayaran langsung: " . ($directPayment['message'] ?? 'Terjadi kesalahan');
}

Catatan Penting untuk URL Callback/Return

Beberapa metode (seperti createDirectPayment dan edcNotify) dalam paket ini secara internal menggunakan placeholder untuk returnUrl atau notifyUrl yang awalnya mungkin menggunakan fungsi route() Laravel.

Penting: Anda harus memastikan untuk menyediakan URL yang valid dan dapat diakses secara publik dari aplikasi Laravel Anda saat memanggil metode-metode ini. Fungsi route() hanya berfungsi dalam konteks aplikasi Laravel yang lengkap dan tidak dapat dieksekusi di dalam paket ini.

Lisensi

Paket ini dilisensikan di bawah lisensi MIT.

Konfigurasi

Untuk menggunakan paket ini, tambahkan variabel lingkungan berikut ke file .env aplikasi Laravel Anda:

IPAYMU_HOST=
IPAYMU_VA=
IPAYMU_SECRET=

Pastikan untuk mengganti nilai-nilai ini dengan kredensial iPaymu Anda yang sebenarnya.

统计信息

  • 总下载量: 5
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-11-14