feat(payment): tighten gateways and implement Epay

Keep only balance, Alipay, WeChat, PayPal, Stripe, Epay, and card-pass
channels; remove placeholder aggregators. Add dual-channel Epay gateway
with MD5 notify/return, register cashier methods, and gate card-pass
redeem behind the payment channel switch.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-26 12:59:28 +08:00
co-authored by Claude Fable 5
parent aa4bdfb5c4
commit 723dd180e4
11 changed files with 470 additions and 264 deletions
+2 -2
View File
@@ -82,8 +82,8 @@ function aksrt_get_pay_types(): array {
if (!function_exists('aksrt_list_cash_payment_methods')) {
function aksrt_list_cash_payment_methods(bool $logged_in = true): array {
$ids = $logged_in
? ['balance', 'alipay', 'wechatpay', 'paypal', 'stripe']
: ['alipay', 'wechatpay', 'paypal', 'stripe'];
? ['balance', 'alipay', 'wechatpay', 'paypal', 'stripe', 'epay_alipay', 'epay_wxpay']
: ['alipay', 'wechatpay', 'paypal', 'stripe', 'epay_alipay', 'epay_wxpay'];
if (!class_exists('\AKSRT\Payment\Gateway')) {
// No gateway manager → no real methods (avoid dead balance/alipay stubs).