AICodeDog
OEM Onboarding

10 分钟上线你的 AI 站

这份指南带你从零完成 OEM 白牌接入:自定义品牌、绑定域名、签发 API Key、配置分成结算。 所有改动在/admin 的控制台里可视化操作,不需要改代码。

接入流程总览

OEM 租户是一个独立的计费、品牌、用户池,与平台其他租户完全隔离。一次典型的接入按下面的顺序跑一遍即可。

  1. 01
    申请租户
    在 /admin/tenants 创建租户,拿到 tenant slug。
  2. 02
    上传品牌
    Logo · 主色 · 标语 · 合规文案一次填写。
  3. 03
    绑定域名
    加一条 CNAME 记录,等我们签发 SSL(通常 30s~2min)。
  4. 04
    签发 API Key
    给运营/开发者签发 Key,设置配额和 IP 白名单。
  5. 05
    开通分成
    填银行/USDT 收款信息,确认返佣费率。

1. 品牌自定义

/admin/tenants/[slug] 的「品牌」标签里配置。所有字段都可以随时修改并即时生效 —— 修改后缓存约 60 秒过期。

必填字段

字段约束示例
brandName1–100 字符AcmeAI
brandLogoUrlHTTPS · PNG/SVG · ≤ 512KBhttps://cdn.acme.ai/logo.svg
brandFaviconUrlHTTPS · ICO/PNG · 32×32 或 64×64https://cdn.acme.ai/favicon.ico
themePrimaryColor#RRGGBB#ff6a1a
brandTagline≤ 200 字符一把 Key 替掉五家账号
supportEmailRFC5321 合法邮箱[email protected]
termsUrl / privacyUrlHTTPS 绝对 URLhttps://acme.ai/terms

高级:自定义 HTML 注入

开启 customHeadEnabled 后可在页面 <head> 注入自定义 HTML, 用于放统计脚本、第三方客服小件等。注入内容会经过 CSP 白名单过滤,禁止 inline script, 所有 script 必须指向可公开访问的 HTTPS URL。

颜色对比度
themePrimaryColor 会同时用在按钮背景与白底上的文字链接上, 请保证它相对于白色和黑色的 WCAG AA 对比度均达标(≥ 4.5:1)。 我们的后台会在保存前跑一次对比度校验,不过关会拒绝。

2. 域名配置

每个 OEM 租户可绑定 1 个主域和最多 4 个别名域。我们自动签发 Let's Encrypt 证书并按 60 天滚动续期。

DNS 记录

在域名服务商后台添加下面这条 CNAME 记录:

DNS
类型 名称 值 TTL CNAME app.acme.ai tenant-acme.aicodedog.net 300

/admin/tenants/[slug]/domains 点击「校验」,系统会实时查询 DNS, 通过后 30 秒内颁发证书并标记为 verified

DNS 状态机

  • pending — 添加未校验
  • verifying — 正在查询 DNS
  • verified — CNAME 指向正确,SSL 正在签发
  • issued — 证书就绪,对外可访问
  • error — 检查 dns_error 字段看具体原因
根域(apex)限制
AICodeDog 不支持把裸根域(acme.ai)直接指到我们,因为 CNAME 不允许与其他记录并存。 正确做法:用 www.acme.aiapp.acme.ai,然后在 Cloudflare/Route53 用 301 把根域转到子域即可。

3. API Key

Key 是终端用户调用 LLM 的凭证。OEM 租户通常给每个开发者签发一条独立 Key,方便单独统计与吊销。

签发

bash
curl https://api.aicodedog.com/v1/keys \ -H "Authorization: Bearer $TENANT_ADMIN_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "name": "acme-prod-server", "user_id": "u_e3b0c...", "allowed_ips": ["203.0.113.0/24"], "expires_at": "2027-01-01T00:00:00Z" }'

响应里的 key 字段仅本次返回,形如sk-live-ac_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx。服务器只保留 SHA-256 哈希 —— 丢失无法找回,只能轮换。

在客户端里配置

Claude Code
Base URL: https://api.{你的域名}
通过 ANTHROPIC_BASE_URL
Cursor
Base URL: https://api.{你的域名}
通过 设置 → OpenAI Base URL
Windsurf
Base URL: https://api.{你的域名}
通过 设置 → Custom OpenAI Endpoint

轮换与吊销

/console/api-keys 点「轮换」会生成新 Key 并立即让旧 Key 作废; 「吊销」则永久停用 Key,不再可恢复。两种操作都会写入审计日志。

失败不扣费
任何 4xx/5xx 调用都不计入你的配额 —— 只有 2xx 才结算 token。 这一条在 OEM 合同里是硬约束,我们的计费会在 usage 表里校验。

4. 分成结算

OEM 的收入由三部分组成:售价差(你给用户的定价 − 平台进货价)、邀请返佣(用户邀请的下游消费的 30%,默认 12 个月衰减)、平台补贴(新客首月满减)。

结算周期

  • T+1 日 00:05 UTC 快照上一日 usage,生成 commission_records
  • T+7 日解锁退款/争议窗口,状态从 pendingavailable
  • 每月 15 日发起打款(银行卡 / USDT-TRC20),实际到账 1–3 个工作日

收款方式

方式最低金额手续费到账
Stripe Connect (Std)$502.9% + $0.30T+2
USDT TRC-20$100$1 固定1 hour
国内对公银行¥10000.5% · 最低 ¥5T+2

分成公式

formula
commission_cents = amount_cents × commission_rate × (1 - refund_ratio) # commission_rate 默认 0.300,可在 /admin/tenants/[slug] 覆盖 # refund_ratio 订单发生退款时等比扣回对应分成 # 保留小数末位采用 ROUND_HALF_EVEN(银行家舍入)避免累计偏差
反作弊
自我邀请、短 IP 周期内注册同指纹账号、刷付退款环形交易都会被anti_fraud_check() 拦截并置分成为 reversed。 请在正式运营前跑一次 自检清单
Ready to ship
需要我们帮你接入?

发邮件到 [email protected],附上你的域名和预计规模,我们 24 小时内回复。

立即开通租户