- Add Stripe payment provider with Checkout Session flow - Payment provider abstraction layer (EasyPay + Stripe unified interface) - Stripe webhook with proper raw body handling and signature verification - Frontend: Stripe button with URL validation, anti-duplicate click, noopener - Active timeout cancellation: query platform before expiring, recover paid orders - Singleton Stripe client, idempotency keys, Math.round for amounts - Handle async_payment events, return null for unknown webhook events - Set Checkout Session expires_at aligned with order timeout - Add cancelPayment to provider interface (Stripe: sessions.expire, EasyPay: no-op) - Enable stripe in frontend payment type list
16 lines
281 B
YAML
16 lines
281 B
YAML
services:
|
|
app:
|
|
image: sub2apipay:latest
|
|
container_name: sub2apipay
|
|
ports:
|
|
- '8087:3000'
|
|
env_file: .env
|
|
networks:
|
|
- sub2api-network
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
sub2api-network:
|
|
external: true
|
|
name: sub2api-star_sub2api-network
|