Payments AI MoR Developer Docs
Welcome to the Payments AI MoR developer portal. Build merchant integrations with sandbox-first workflows, OpenAPI-driven API reference, and in-browser Try It.
What you can do here
- Follow the Quickstart to make your first sandbox API call in under 15 minutes
- Read the Merchant Public API guide for API-key routes (
/v1/public-api/...) - Connect Claude or Cursor via the MCP server (OAuth or User MCP Key)
- Receive signed events via Webhooks
- Browse the API Reference generated from TypeSpec contracts (Merchant Public API + buyer checkout)
- Use Try It on operation pages with sandbox
pai_test_*Merchant API Keys (live keys blocked by Safe Mode) - Copy AI Context for coding agents (Markdown bundle with OpenAPI + common errors)
- Look up Fix-It error guides linked from API
docUrlresponses
Auth surfaces
| Surface | Auth | Typical clients |
|---|---|---|
Merchant Public API (/v1/public-api/…) | Merchant API Key (pai_test_* / pai_live_*) | Integrations, scripts, agents |
Buyer checkout (/v1/checkout/…) | Public (no key) | Checkout SPA, embed script, custom elements UI |
Sandbox vs live
Sandbox and live are separate backends. API keys, products, plans, and hosts must all match:
| Environment | Key prefix | Base URL |
|---|---|---|
| Sandbox | pai_test_* | https://sandbox.managed.payments.ai/api |
| Live | pai_live_* | https://managed.payments.ai/api |
Creating a product with a live key and calling the sandbox API (or the reverse) will not resolve the plan. Generate sandbox keys in the dashboard developer tools.
Embedded Checkout uses the same axis: set environment to 'sandbox' or
'live' to match how you created the plan.
Buyer checkout (no API key)
Keyless routes under /v1/checkout/plans/{planId} — used by the hosted checkout page and embed script:
| Method | Path | Purpose |
|---|---|---|
GET | /v1/checkout/plans/{planId} | Plan metadata and customization |
POST | /v1/checkout/plans/{planId}/session | Whop iframe checkout session |
POST | /v1/checkout/plans/{planId}/confirm | Confirm a Whop Elements confirmation token |
GET | /v1/checkout/plans/{planId}/receipts/{receiptId} | Receipt totals after payment |
See Embedded Checkout for the elements payment flow. The embed mounts
payment fields only — product name and price come from GET /v1/checkout/plans/{planId} on
your page. Hosted checkout at /payment/{planId} shows those automatically.
Charging several items or a custom amount in one order is planned and not yet deployed.
Machine-readable artifacts
- Public OpenAPI (docs / Try It): openapi-public.json
- Agent index: /llms.txt