oxydaid/tokopay 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

oxydaid/tokopay

最新稳定版本:1.1.0

Composer 安装命令:

composer require oxydaid/tokopay

包简介

Laravel Tokopay Payment Gateway Integration

README 文档

README

Latest Version License

Integrasi tidak resmi (unofficial) Payment Gateway Tokopay untuk Laravel.
Menyediakan service sederhana untuk membuat transaksi, mengecek status order, generate signature, validasi webhook, dan tersedia Facade agar lebih mudah digunakan.

✨ Fitur

  • 🔑 Generate signature otomatis
  • 🛡️ Validasi signature untuk webhook Tokopay
  • 💳 Create transaction (POST /v1/order/)
  • 🔍 Check order status (GET /v1/order)
  • ⚡ Ringan, tanpa dependensi tambahan
  • 🛠️ Mendukung Laravel Facade (Tokopay::)

📦 Instalasi

Anda dapat menginstal paket ini melalui Composer:

composer require oxydaid/tokopay

⚙️ Konfigurasi

Publikasikan file konfigurasi:

php artisan vendor:publish --tag=config --provider="Oxydaid\\Tokopay\\TokopayServiceProvider"

Atur kredensial Tokopay Anda di file .env:

TOKOPAY_MERCHANT_ID=your_merchant_id
TOKOPAY_SECRET_KEY=your_secret_key
TOKOPAY_BASE_URL=https://api.tokopay.id

🚀 Penggunaan

1. Membuat Transaksi

use Tokopay;

$refId = 'INV12345';
$signature = Tokopay::generateSignature($refId);

$data = [
    'merchant_id'    => config('tokopay.merchant_id'),
    'kode_channel'   => 'QRIS',
    'reff_id'        => $refId,
    'amount'         => 160000,
    'customer_name'  => "Joko Susilo",
    'customer_email' => "joko.susilo98@gmail.com",
    'customer_phone' => "082277665544",
    'redirect_url'   => route('payment.success'),
    'expired_ts'     => 0,
    'signature'      => $signature,
];

$response = Tokopay::createTransaction($data);

2. Cek Status Order

$response = Tokopay::checkOrderStatus(
    config('tokopay.merchant_id'),
    config('tokopay.secret_key'),
    'INV12345',
    160000,
    'QRIS'
);

3. Webhook Signature Validation

use Illuminate\Http\Request;
use Tokopay;

public function handleWebhook(Request $request)
{
    if (! Tokopay::validateSignature($request->reff_id, $request->signature)) {
        return response()->json(['status' => false, 'message' => 'Invalid signature'], 400);
    }

    // Signature valid → update status transaksi sesuai $request->input('status')

    return response()->json(['status' => true]);
}

Webhook harus merespons JSON berikut agar dianggap sukses:

{ "status": true }

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-09-20