Finda Pro · 中控商品目录
从收银台选一个商品开始支付。
本页 前端零商品配置:所有商品 / 价格 / 币种 / 订阅周期 / 价格 ID 都来自
中控 /api/products?site_id=1(x-api-key)。
中控后台「商品管理」改一下,前端刷新就同步 —— 改完无需发布。
站点:demo
· 区域:US
· 主币种:USD
共 2 个可支付商品(按渠道展开)
- 勾选任一商品 → 填邮箱 → 点「支付」
- 订阅必填邮箱(Stripe Checkout 预填)
- 无真实支付平台?用「模拟成功」按钮走 webhook
商品目录(中控后台维护)
点选一个商品 → 下方表单自动按所选商品的 price_id / mode / trial 调中控 create-order
· 站点 site_id=1
点击「支付」→ 业务站后端用所选商品的 price_id / mode / trial + 邮箱调中控
POST /api/create-order(x-api-key)→ 拿 order_no →
跳订单页自动 PayHub.checkout 弹窗 → 平台支付 → 成功回调显示 platform_subscription_id。
对接链路(中控商品目录)
- 中控后台:
商品管理 /admin/product录入商品(name/price/currency/mode/price_id/trial/recurring)→ 关联到某个支付账号 - 网站绑定:
网站管理把账号绑到 site(site_channel_binds) - 业务站首页加载:调
GET /api/products?site_id=xxx(x-api-key)→ 中控按 B2 展开返回items[](每个账号各展开为独立项) - 前端渲染:把
items渲染为商品卡片网格(name + price + currency + channel + mode + trial/price_id) - 用户点选:高亮所选卡片 → 填邮箱(订阅必填)→ 点「支付」
- 业务站后端:用所选商品的 price_id / mode / trial_period_days + 邮箱 → 调中控
POST /api/create-order - 中控:校验 key/IP/权限 → 落库
hub_orders(含 mode/price_id/trial_period_days)→ 返回order_no - 业务站:302 跳
order.php?order_no=…&pop=1→ 订单页自动PayHub.checkout弹窗 - 中控:收银台 → 平台(订阅:试用 + 续费)→ 成功/取消 → postMessage 给 SDK → 弹窗关闭 + onSuccess 回调
- 中控:收平台 webhook → 订单置 paid + 订阅落
platform_subscription_id→ POST 业务站callback_url