用途:把已发布的 Kelviq 套餐转化为收入,面向新客户创建结账流程,面向既有订阅者做订阅管理与客户门户。
依赖与设置:需要 kelviq MCP 工具(@kelviq/mcp-server,KELVIQ_SERVER_API_KEY)。.mcp.json 片段与使用 KELVIQ_ENV=sandbox 的沙箱测试见 kelviq 技能的 Setup 部分。
收款方式:kelviq:checkout_create_session 返回托管结账 URL,由客户自行填写支付信息,这是默认销售路径。kelviq:subscription_create 在会话外扣款且受组织开关限制,多数组织会收到“off-session charging is not enabled”错误,仅当确认该组织已启用时才用。
结账参数:checkout_create_session 必填 planIdentifier、successUrl、chargePeriod,可选 discountCode、metadata。若传入的 email 已属于既有客户,Kelviq 会复用该客户,不要假设新 customerId 一定生成新客户记录。
新客销售:customerId 由调用方定义,Kelviq 不提供客户列表/检索 API,没有 ID 就向用户索取。调用 checkout_create_session 后把 URL 交给客户,完成后用 subscription_list 按 customerId 确认订阅。
免费套餐升级:免费套餐是一次性收费(ONE_TIME),不是循环订阅;从免费转付费要走 checkout_create_session,而非 subscription_update。
订阅管理:改套餐/计费周期/功能用 subscription_update;传 trialEnd 可立即结束试用或改到新 ISO 8601 日期;传 paymentBehavior: "activate_on_payment" 可在支付待定时保持当前订阅有效。列出订阅用 subscription_list 按 customerId 过滤。取消用 subscription_cancel,cancellationType 为 IMMEDIATE | CURRENT_PERIOD_ENDS | SPECIFIC_DATE(后者需 cancellationDate),取消前复述并让用户确认。门户用 portal_session_create 并取返回的 signedPortalUrl,单独用 customerPortalUrl 不认证客户;令牌会过期,每次请求重新生成。
文档:字段级问题先读 kelviq:docs_read,包括 product-catalog/subscriptions、checkout/checkout-configuration、customer-portal/overview、product-catalog/discounts。