mcpField
P
polar-integration

polar-integration

github.com/bbssppllvv开发159 次安装20 周前更新
代码仓库

关于 polar-integration

polar-integration 是指导团队将 Polar 支付接入应用的开发技能,涵盖 SDK 与框架适配器、结账方式、Webhook、客户门户及相关计费流程。

主要功能

  1. 01指导配置多种 SDK 和框架
  2. 02设置身份验证与沙盒环境
  3. 03配置链接、API 或嵌入式结账
  4. 04通过 Webhook 处理支付事件
  5. 05集成客户门户与计费流程

适用场景

  1. 01在应用中接入 Polar 结账
  2. 02处理订阅和订单 Webhook
  3. 03为客户提供订阅门户
  4. 04在沙盒中测试支付流程

MCP 相关

技能的参考索引提及面向 Cursor、Claude 和 ChatGPT 等 AI Agent 的 Polar MCP 服务。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bbssppllvv/essential-skills --skill polar-integration

安装后在 Claude Code 中输入/polar-integration确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
references/
api-reference.md
authentication.md
benefits.md
checkout-api.md
checkout-embedded.md
checkout-links.md
custom-fields.md
customer-portal.md
customer-state.md
discounts.md
events-metering.md
license-keys.md
mcp.md
metrics.md
nextjs.md
oauth2.md
orders-subscriptions.md
products.md
python-sdk.md
refunds.md
sandbox.md
seat-based-pricing.md
supabase.md
sveltekit.md
trials.md
typescript-sdk.md
webhook-events.md
webhooks-delivery.md
webhooks-local.md

详细介绍

Polar 集成

Polar 是一个面向数字产品的支付平台,支持订阅、一次性购买、许可证、结账和 Webhook。本技能提供完整的集成指南。

集成工作流

1. 确定技术栈

确定项目使用的框架。Polar 为以下框架提供一流支持:

2. 安装依赖
npm install @polar-sh/sdk
# For Next.js projects:
npm install zod @polar-sh/nextjs
# For SvelteKit projects:
npm install zod @polar-sh/sveltekit
# For Supabase projects:
npm install zod @polar-sh/supabase
# For embedded checkout:
npm install @polar-sh/checkout
# For Python projects:
pip install polar-sdk

注意: Polar SDK 正在积极开发中。请锁定版本以避免不兼容变更: npm install @polar-sh/sdk@^0.46 / pip install polar-sdk~=0.28

3. 配置身份验证

设置环境变量:

POLAR_ACCESS_TOKEN=polar_at_xxx     # Organization Access Token from Polar dashboard
POLAR_WEBHOOK_SECRET=xxx            # Webhook signing secret

在 Polar 控制面板的组织设置中创建组织访问令牌。详情请参见 references/authentication.md。

对于沙盒/测试,在 SDK 配置中使用 server: "sandbox"。对于生产环境,使用 server: "production" 或省略该项。沙盒详情(测试卡、API URL、限制)请参见 references/sandbox.md。

4. 设置结账

根据需求选择方式:

方式使用场景
结账链接无需代码,可分享 URL
结账 API以编程方式控制、动态定价
嵌入式结账在网站内嵌显示,无需重定向

快速入门(Next.js):

// app/checkout/route.ts
import { Checkout } from "@polar-sh/nextjs";

export const GET = Checkout({
  accessToken: process.env.POLAR_ACCESS_TOKEN,
  successUrl: process.env.SUCCESS_URL,
  server: "sandbox",
});
// Use: GET /checkout?products=PRODUCT_ID

快速入门(SDK):

import { Polar } from "@polar-sh/sdk";

const polar = new Polar({
  accessToken: process.env.POLAR_ACCESS_TOKEN,
  server: "sandbox",
});

const checkout = await polar.checkouts.create({
  products: ["PRODUCT_ID"],
});
// Redirect user to checkout.url
5. 设置 Webhook

Webhook 会将支付事件(创建订单、取消订阅等)通知你的应用。

快速入门(Next.js):

// app/api/webhook/polar/route.ts
import { Webhooks } from "@polar-sh/nextjs";

export const POST = Webhooks({
  webhookSecret: process.env.POLAR_WEBHOOK_SECRET!,
  onPayload: async (payload) => {
    // Handle any event
  },
  onOrderCreated: async (payload) => {
    // Handle new order
  },
  onSubscriptionCreated: async (payload) => {
    // Handle new subscription
  },
});

快速入门(Express):

import express from "express";
import { validateEvent, WebhookVerificationError } from "@polar-sh/sdk/webhooks";

app.post("/webhook", express.raw({ type: "application/json" }), (req, res) => {
  try {
    const event = validateEvent(req.body, req.headers, process.env.POLAR_WEBHOOK_SECRET ?? "");
    // Process event
    res.status(202).send("");
  } catch (error) {
    if (error instanceof WebhookVerificationError) res.status(403).send("");
    throw error;
  }
});

在 Polar 控制面板中设置 Webhook:references/webhooks-setup.md 使用 polar listen 进行本地开发:references/webhooks-local.md 有关投递处理、重试和故障排除:references/webhooks-delivery.md

6. 设置客户门户(可选)

让客户访问他们的订单和订阅。

Next.js:

// app/portal/route.ts
import { CustomerPortal } from "@polar-sh/nextjs";

export const GET = CustomerPortal({
  accessToken: process.env.POLAR_ACCESS_TOKEN,
  getCustomerId: async (req) => "CUSTOMER_ID", // resolve from your auth
  server: "sandbox",
});

SDK:

const session = await polar.customerSessions.create({ customerId: "CUSTOMER_ID" });
// Redirect to session.customerPortalUrl

参见 references/customer-portal.md。

参考索引

需要了解特定主题的详细信息时,请加载以下文件:

SDK 和框架
身份验证
产品与定价
结账
Webhook
权益与许可证密钥
  • references/benefits.md — 权益类型(Credits、License Keys、File Downloads、GitHub、Discord、Custom)、授予生命周期、Webhook
  • references/license-keys.md — 许可证密钥验证、激活/停用、限制、可自定义品牌的前缀
事件与计量
订单与客户
Webhook 事件
指标与分析
客户状态与沙盒
API 参考
AI 集成
  • references/mcp.md — 面向 AI Agent(Cursor、Claude、ChatGPT 等)的 Polar MCP 服务

评论

支持 Markdown