feat: integrate CREEM web payment for credits purchase
Replace abandoned iOS App Store route with CREEM Merchant of Record payment integration for web-based credits purchase. Backend changes: - Add CreemClient for CREEM API communication - Add CreemService for checkout creation and webhook handling - Add creem_transactions table for payment tracking - Fix webhook payload parsing (id, order.id, customer.id structure) - Integrate with existing points ledger system Frontend changes: - Display dynamic prices from CREEM API - Support decimal price formatting (e.g., $1.00) - Add checkout flow with redirect to CREEM hosted page
This commit is contained in:
+15
-2
@@ -5,6 +5,7 @@
|
||||
# 运行时配置
|
||||
############
|
||||
ERYAO_RUNTIME__ENVIRONMENT=dev
|
||||
ERYAO_RUNTIME__DEBUG=true
|
||||
ERYAO_RUNTIME__LOG_LEVEL=INFO
|
||||
ERYAO_RUNTIME__SQL_LOG_QUERIES=false
|
||||
ERYAO_RUNTIME__TRUSTED_PROXY_IPS='["127.0.0.1", "172.18.0.1"]'
|
||||
@@ -105,9 +106,21 @@ ERYAO_TEST__CODE=123456
|
||||
# Apple IAP 配置
|
||||
############
|
||||
ERYAO_APPLE_IAP__BUNDLE_ID=com.meeyao.qianwen
|
||||
# Apple IAP 环境识别。auto 表示以后端验签后的 Apple transaction environment 为准。
|
||||
ERYAO_APPLE_IAP__ENVIRONMENT=auto
|
||||
# Server API 密钥(可选,用于主动查询交易状态)
|
||||
ERYAO_APPLE_IAP__SERVER_API_KEY_ID=
|
||||
ERYAO_APPLE_IAP__SERVER_API_PRIVATE_KEY=
|
||||
ERYAO_APPLE_IAP__SERVER_API_ISSUER_ID=
|
||||
# 沙盒测试账号(仅用于手动测试,不用于后端验证)
|
||||
ERYAO_APPLE_IAP__SANDBOX_TESTER_EMAIL=
|
||||
ERYAO_APPLE_IAP__SANDBOX_TESTER_PASSWORD=
|
||||
# Server Notifications V2 URL(在 App Store Connect 中配置)
|
||||
# 格式: https://<your-domain>/api/v1/payments/apple/notifications
|
||||
ERYAO_APPLE_IAP__SERVER_NOTIFICATIONS_URL=
|
||||
|
||||
############
|
||||
# CREEM Payment 配置
|
||||
############
|
||||
ERYAO_CREEM__API_KEY=
|
||||
ERYAO_CREEM__WEBHOOK_SECRET=
|
||||
ERYAO_CREEM__BASE_URL=https://test-api.creem.io
|
||||
ERYAO_CREEM__SUCCESS_URL=https://yourdomain.com/store?payment=success
|
||||
|
||||
Reference in New Issue
Block a user