fadhila36/pakasir-sdk
Composer 安装命令:
composer require fadhila36/pakasir-sdk
包简介
Laravel Package for Pakasir Payment Gateway
README 文档
README
Sebuah SDK Laravel modern, modular, dan type-safe untuk mengintegrasikan layanan gerbang pembayaran (payment gateway) Pakasir ke aplikasi Anda.
SDK ini mendukung QRIS, Virtual Account multi-bank (BNI, BRI, CIMB, Permata, dll), serta PayPal dengan kalkulasi biaya (fee) otomatis, timeout/retry otomatis, logging, Laravel Events, dan sistem verifikasi Webhook terproteksi.
⚡ Fitur Unggulan
- Laravel 13+ & PHP 8.3+ Ready dengan standard strict typing (
declare(strict_types=1)). - Data Transfer Objects (DTO): Semua respons API dipetakan secara type-safe ke objek DTO untuk autocompletion penuh di IDE Anda.
- Webhook Spoofing Protection: Metode
verifyWebhook()secara otomatis memverifikasi payload dan melakukan double-check query langsung ke server Pakasir. - Enterprise Connection Handling: Konfigurasi timeout, retry attempts, dan delay secara otomatis pada koneksi API.
- Laravel Events Support: Trigger event seperti
TransactionCreated,PaymentCompleted,TransactionCanceled, danWebhookReceivedsecara instan. - Out-of-the-box Notifications: Kirim tagihan tautan pembayaran menggunakan Laravel Notification dengan template siap pakai.
📦 Instalasi
Pastikan server Anda menggunakan PHP 8.3+ dan aplikasi Anda berbasis Laravel 11.0 s/d 13.0+.
Jalankan perintah Composer berikut untuk menginstal:
composer require fadhila36/pakasir-sdk
🛠️ Konfigurasi
- Publikasikan file konfigurasi package ke aplikasi host Anda:
php artisan vendor:publish --provider="Fadhila36\Pakasir\PakasirServiceProvider" --tag="config"
- Atur kredensial proyek Pakasir Anda di file
.env:
PAKASIR_PROJECT=slug-proyek-anda PAKASIR_API_KEY=api-key-rahasia-anda PAKASIR_TIMEOUT=30 PAKASIR_RETRY_ATTEMPTS=3 PAKASIR_LOGGING_ENABLED=true
🚀 Penggunaan Cepat
1. Membuat Transaksi Pembayaran
Gunakan PaymentMethod Enum untuk kenyamanan autocompletion dan validasi otomatis:
use Fadhila36\Pakasir\Enums\PaymentMethod; use Fadhila36\Pakasir\Facades\Pakasir; // Membuat transaksi QRIS secara instan $transaction = Pakasir::createPayment( paymentMethod: PaymentMethod::QRIS, orderId: 'INV-' . time(), amount: 50000, redirectUrl: 'https://websitekamu.com/invoice/complete' // Opsional ); // Respon berupa DTO yang type-safe & IDE Friendly echo $transaction->paymentUrl; // Tautan ke pembayaran echo $transaction->paymentNumber; // Kode QRIS atau nomor VA echo $transaction->totalPayment; // Nominal + Fee
2. Memproses & Memverifikasi Webhook Secara Aman
Untuk menghindari eksploitasi webhook palsu, gunakan fitur verifyWebhook() yang akan memvalidasi data dan memverifikasi langsung ke server resmi Pakasir:
use Fadhila36\Pakasir\Facades\Pakasir; use Fadhila36\Pakasir\Exceptions\WebhookValidationException; public function handleWebhook(Request $request) { try { // Ambil nominal tagihan asli dari database Anda $expectedAmount = $order->amount; // Verifikasi & Double-Check ke server Pakasir secara otomatis $webhookData = Pakasir::verifyWebhook($request->all(), $expectedAmount); // Jika lolos verifikasi, ubah status transaksi di DB Anda $order->update([ 'status' => $webhookData->status->value, // e.g., 'completed' 'completed_at' => $webhookData->completedAt, ]); return response()->json(['status' => 'ok']); } catch (WebhookValidationException $e) { // Log & tolak jika webhook mencurigakan atau tidak valid return response()->json(['message' => $e->getMessage()], 400); } }
💰 Pilihan Metode Pembayaran (PaymentMethod)
SDK menyediakan Enum lengkap dengan kalkulasi biaya (fee) dan validasi nominal minimum terintegrasi:
| Method | Enum Case | Code | Estimasi Fee |
|---|---|---|---|
| All Methods | PaymentMethod::ALL |
all |
- |
| QRIS | PaymentMethod::QRIS |
qris |
0.7% - 1% |
| PayPal | PaymentMethod::PAYPAL |
paypal |
1% (min 3k) |
| BNI VA | PaymentMethod::BNI_VA |
bni_va |
Rp3.500 |
| BRI VA | PaymentMethod::BRI_VA |
bri_va |
Rp3.500 |
| CIMB Niaga VA | PaymentMethod::CIMB_NIAGA_VA |
cimb_niaga_va |
Rp3.500 |
| Maybank VA | PaymentMethod::MAYBANK_VA |
maybank_va |
Rp3.500 |
| Permata VA | PaymentMethod::PERMATA_VA |
permata_va |
Rp3.500 |
| BNC VA | PaymentMethod::BNC_VA |
bnc_va |
Rp3.500 |
| ATM Bersama VA | PaymentMethod::ATM_BERSAMA_VA |
atm_bersama_va |
Rp3.500 |
| Sampoerna VA | PaymentMethod::SAMPOERNA_VA |
sampoerna_va |
Rp2.000 |
| Artha Graha VA | PaymentMethod::ARTHA_GRAHA_VA |
artha_graha_va |
Rp2.000 |
📖 API Reference
1. createPayment()
Membuat transaksi baru secara realtime di server Pakasir.
Pakasir::createPayment( string|PaymentMethod $paymentMethod, string $orderId, int|float $amount, ?string $redirectUrl = null ): TransactionCreateResponse;
2. detailPayment()
Mengambil status detail transaksi terkini dari server Pakasir.
Pakasir::detailPayment(string $orderId, int|float $amount): TransactionDetailResponse;
3. cancelPayment()
Membatalkan tagihan transaksi yang sedang aktif/pending.
Pakasir::cancelPayment(string $orderId, int|float $amount): TransactionDetailResponse;
4. simulationPayment()
Melakukan simulasi pembayaran sukses (khusus mode Sandbox/testing).
Pakasir::simulationPayment(string $orderId, int|float $amount): TransactionDetailResponse;
5. verifyWebhook()
Memparse dan memvalidasi keabsahan data webhook masukan.
Pakasir::verifyWebhook(array $payload, int|float $expectedAmount): WebhookPayload;
📜 Lisensi
Didistribusikan di bawah lisensi MIT License. Lihat dokumen LICENSE untuk informasi lebih lanjut.
fadhila36/pakasir-sdk 适用场景与选型建议
fadhila36/pakasir-sdk 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 85 次下载、GitHub Stars 达 2, 最近一次更新时间为 2026 年 01 月 26 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「php」 「sdk」 「laravel」 「API-Client」 「indonesia」 「payment-gateway」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 fadhila36/pakasir-sdk 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 fadhila36/pakasir-sdk 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 fadhila36/pakasir-sdk 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Alfabank REST API integration
Zero-dependency raw PHP DNS resolver, domain-ownership verification, and intoDNS/MxToolbox-style diagnostics. Queries authoritative nameservers directly over sockets — never trusts the recursive cache for ownership checks.
Laravel package for Accurate Online API integration.
A lightweight plain-PHP framework for database-backed CRUD APIs.
bughq error tracking - PHP SDK
Shared RCX Laravel DataTables UI and configuration helpers.
统计信息
- 总下载量: 85
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 27
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-01-26
