SuperAPI AI 工具集

shoplazza-billing

编程与开发

查看项目

更新于 10-29 16:12

技能介绍

shoplazza-billing 是 Shoplazza CLI 的计费模块,面向需要向商家收取应用使用费用的应用开发者。它只在命令行中提供对计费域的封装,没有额外的快捷指令;使用前需先阅读同目录的 shoplazza-common/SKILL.md,其中定义了访问层级、输出信封(.data)、--dry-run、--jq、schema、api rest、鉴权与配置档以及安全协议等跨域通用机制,本模块不重复这些内容。

主要能力分为三类费用和交易记录查询。一次性费用:billing one-time create/get/list/transactions,创建时 body 为 application_charge,包含 name、price、return_url,其中 price 为字符串。循环订阅费用:billing recurring create/get/list/update/cancel/transactions,创建时 body 为 recurring_application_charge,price 为数字,可选 trial_days、capped_amount、terms。按量费用:billing usage create/get/list,需以父级循环费用的 charge_id 作为路径参数,body 为 usage_charge,包含 description 和 price(数字)。此外 billing transactions get 可获取单条应用费用交易。

使用方式上,写操作涉及真实资金,必须先执行 --dry-run 预览,并向用户复述金额与类型(一次性 X 元、每月 X 元订阅、在某个循环费用下按量 X 元,或取消某个具体订阅的名称、价格、状态),等待用户确认后再执行。缺少必填字段时须询问用户,不得编造金额。创建成功后,一次性费用返回 confirm_url,循环费用返回 confirmation_url,需将该审批链接交给用户,并说明商家在 Shoplazza 后台打开并批准前不会扣款;按量费用无需审批,直接挂在已批准的循环费用下计费。取消订阅前应先用 recurring get 查看名称、价格、状态,以识别已取消的费用。

权限方面,计费端点由应用安装本身授权,不依赖店铺 OAuth 授权范围,因此不要运行 auth login --domain billing,以免以 0 权限登录替换授权、影响其他域。若遇到 401/403,应检查登录状态是否缺失或过期。

限制与注意事项包括:price 类型因费用而异,一次性为字符串,订阅与按量为数字;jq 取审批链接时字段名不同,一次性为 confirm_url,循环为 confirmation_url;平台只接受与应用 listing 中定价方案匹配的价格,任意金额会被 422 拒绝,且 CLI 无 listing/方案端点,需在合作方后台调整方案后原样重跑,不得尝试其他价格;循环创建若返回无字段信息的 400,可携带 capped_amount 重发一次以暴露具体 422 信息,但这是诊断手段而非修复。此外,billing transactions 指应用向商家收取的费用记录,与买家订单支付交易(属于 shoplazza-orders 的 orders transactions)不同,退款亦归 orders 模块。各命令参数、body 与响应可通过 shoplazza schema billing.<group>.<cmd> 查询,命令级标志可用 --help 查看。