From 8d8cd44ea5958b3a11f1a29a25e6bcc13cd8804b Mon Sep 17 00:00:00 2001 From: idevakk <219866223+idevakk@users.noreply.github.com> Date: Sun, 7 Dec 2025 09:16:48 -0800 Subject: [PATCH] feat(payment): add comprehensive OxaPay sandbox and payment configuration options Add sandbox API keys, callback URL configuration, and additional payment options including currency, lifetime, fee settings, underpayment coverage, auto withdrawal, and mixed payment support to the OxaPay provider seeder. --- database/seeders/PaymentProviderSeeder.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/database/seeders/PaymentProviderSeeder.php b/database/seeders/PaymentProviderSeeder.php index 19e1d21..0665ef3 100644 --- a/database/seeders/PaymentProviderSeeder.php +++ b/database/seeders/PaymentProviderSeeder.php @@ -112,11 +112,19 @@ class PaymentProviderSeeder extends Seeder 'configuration' => [ 'class' => 'App\\Services\\Payments\\Providers\\OxapayProvider', 'merchant_api_key' => env('OXAPAY_MERCHANT_API_KEY', 'merchant_...'), + 'sandbox_merchant_api_key' => env('OXAPAY_SANDBOX_MERCHANT_API_KEY', 'merchant_sb_...'), 'payout_api_key' => env('OXAPAY_PAYOUT_API_KEY', 'payout_...'), - 'webhook_url' => env('OXAPAY_WEBHOOK_URL', env('APP_URL') . '/webhook/oxapay'), + 'sandbox_payout_api_key' => env('OXAPAY_SANDBOX_PAYOUT_API_KEY', 'payout_sb_...'), + 'callback_url' => env('OXAPAY_CALLBACK_URL', env('APP_URL') . '/webhook/oxapay'), 'success_url' => env('APP_URL') . '/payment/success', 'cancel_url' => env('APP_URL') . '/payment/cancel', 'sandbox' => env('OXAPAY_SANDBOX', true), + 'currency' => env('OXAPAY_CURRENCY', 'USD'), // string + 'lifetime' => env('OXAPAY_LIFETIME', 30), // integer · min: 15 · max: 2880 + 'fee_paid_by_payer' => env('OXAPAY_FEE_PAID_BY_PAYER', 1), // number · decimal · max: 1 + 'under_paid_coverage' => env('OXAPAY_UNDER_PAID_COVERAGE', 2.5), // number · decimal · max: 60 + 'auto_withdrawal' => env('OXAPAY_AUTO_WITHDRAWAL', false), // boolean + 'mixed_payment' => env('OXAPAY_MIXED_PAYMENT', false), // boolean ], 'supports_recurring' => false, 'supports_one_time' => true,