Payments infra for the AI era
One API for in-store and online payments. PCI DSS 4.0 certified. LLM-ready documentation. Go from signup to a live terminal in under 5 hours.
Or point your agent at the whole platform
How can I help you integrate today?
Give your coding agent the docs.
The Surfboard docs run as an MCP server, so Claude Code, Codex or Cursor can read the API reference, the guides and the webhook payloads while it writes your integration. No copy-pasting from a browser tab, and no hallucinated field names. Wire it up below, or let your agent do it as part of the whole integration.
One command. Claude Code registers the server and starts it on demand.
claude mcp add surfboard-docs -- npx -y @surfboardpayments/surf-mcp Then just ask. Claude Code will call the server whenever it needs the API reference.
Add the server to ~/.codex/config.toml.
[mcp_servers.surfboard_docs]
command = "npx"
args = ["-y", "@surfboardpayments/surf-mcp"] Restart Codex and the Surfboard tools appear in its tool list.
Add it to ~/.cursor/mcp.json for every project, or .cursor/mcp.json for one.
{
"mcpServers": {
"surfboard-docs": {
"command": "npx",
"args": ["-y", "@surfboardpayments/surf-mcp"]
}
}
} Cursor picks it up on reload. Check Settings, MCP to confirm it is connected.
Commit .mcp.json at the root and every agent your team runs picks it up.
{
"mcpServers": {
"surfboard-docs": {
"command": "npx",
"args": ["-y", "@surfboardpayments/surf-mcp"]
}
}
} This is the file this very website uses, so the setup is not hypothetical.
Or hand the whole job to your agent
One fetch, and your agent runs the whole integration: install the Surfboard skills, connect this server, take Demo credentials from you, write the code, then prove it against Demo with a real payment. Every command it follows is published and validated by us. Wiring up the docs is one of the steps it runs, so this page happens either way — just without you running it.
Then ask it something
Everything is also readable without MCP: llms.txt for the map, and the hosted endpoint and OpenAPI specs if you would rather call the server over HTTP than run it.
From zero to live in four steps
No sales call and no approval queue. Sign up, take the keys, build against the sandbox, then flip the same integration to production when you are ready.
-
2 min
Create your account
Sign up at the Developer Portal and get the sandbox instantly. No approval process.
-
10 min
Get your API keys
Generate API credentials from the Console in seconds.
-
15 min
Build your integration
Use our SDKs and APIs to build and test payments, with the MCP server or the AI assistant to go faster.
-
Same day
Go live
Switch to production credentials and start processing real transactions.
Current record: 5 hours from signup to live terminal
One platform. Every payment channel.
Integrate once and get access to in-store terminals, online checkout, recurring billing, and more, all through a single API.
Accepting Payments
Tap to Pay on iPhone
Accept contactless payments on iPhone with the iOS SoftPOS SDK. No external hardware required.
Read guide →Android SoftPOS SDK
Turn Android devices into payment terminals with the Android SDK.
Read guide →CheckoutX SoftPOS
Dual-app setup: install CheckoutX on iOS or Android and hand off payments from your POS app, no SDK required.
Read guide →EMV Terminal
Integrate traditional card-present terminals through a unified API.
Read guide →Inter-App Integration
Integrate your POS app with CheckoutX via native app switch on terminals and Tap to Pay devices.
Read guide →Online Checkout
Payments & Orders
Create an Order
Create orders with line items, tax, and customer details. The starting point for payments.
Read guide →Capture a Payment
Finalize delayed-capture and pre-authorization payments when ready to charge.
Read guide →Cancel a Payment
Stop an in-progress payment before it completes.
Read guide →Void a Payment
Reverse a completed payment before settlement, avoiding refund fees.
Read guide →Refund an Order
Process full refunds by creating return orders with negative quantities.
Read guide →Partial Refund
Refund specific items or reduced amounts from a completed order.
Read guide →Partial Payments
Split an order across multiple payment methods or transactions.
Read guide →Server-to-Server API
Process payments entirely from your backend with tokenization and stored cards.
Read guide →Payment Lifecycle
Manage orders from creation through capture, void, cancel, and refund operations.
Read guide →Recurring Payments
Set up subscriptions and recurring charges with tokenization and stored card tokens.
Read guide →Terminals & Devices
Terminal & Device Management
Register, configure, and manage terminals and devices through the API.
Read guide →Receipts
Generate, email, and print receipts. Supports ESC/POS custom templates.
Read guide →Tips Configuration
Configure tip presets and custom amounts at merchant, store, and terminal levels.
Read guide →NFC Tag Reading
Read NFC and RFID tags on terminals for product identification at checkout.
Read guide →Multi-Merchant Terminals
Share a single terminal across multiple merchants for food courts, events, and more.
Read guide →Merchants & Stores
Merchant Onboarding
Create merchants, trigger KYB verification, and set up stores for in-store and online payments.
Read guide →Store Management
Create, update, and manage stores with domain verification and terminal association.
Read guide →Account & Service Providers
Manage user accounts, roles, and service provider integrations.
Read guide →Commerce & Operations
Gift Cards & Promotions
Create and manage gift cards and store promotions through the API.
Read guide →Product Catalog
Build product catalogs with variants, inventory tracking, and analytics.
Read guide →Settlements & Reporting
Fetch settlement reports, adjustments, and manage merchant charges.
Read guide →Webhooks & Notifications
Receive real-time event updates via webhooks, email, Slack, and SFTP.
Read guide →Configuration & Security
Payment Methods
Activate, deactivate, and manage payment methods like Swish, Klarna, AMEX, and more.
Read guide →Client Auth Tokens
Generate secure client-side tokens for frontend API access without exposing credentials.
Read guide →Partner Branding
Configure white-label colors, fonts, logos, and images for terminals and payment pages.
Read guide →Built for Builders
One API call. Order and payment, handled.
The Carbon API uses an orders-first workflow. Create an order, and the payment is initiated in the same call. No separate charge step, no two-phase orchestration. One POST, one response, done.
// Create order and initiate payment in one call
POST /merchants/:merchantId/orders
{
"terminal$id": "8386af3b0f71b80b04",
"orderLines": [
{
"id": "ITEM123",
"name": "Product",
"quantity": 1,
"amount": {
"total": 10000,
"currency": "752"
}
}
],
"controlFunctions": {
"initiatePaymentsOptions": {
"paymentMethod": "CARD",
"amount": 10000
}
}
}AI-Powered Development
Build integrations with AI
Surfboard publishes an MCP server and llms.txt so AI coding assistants can read our documentation natively. Point ChatGPT, Claude, or Cursor at our docs and generate working integration code in minutes instead of hours.
~ Ask Claude to integrate Surfboard
"Create an order with Surfboard's Carbon API
and handle the webhook response"
Latest product updates
View all updates-
04 Sept 2026
Carbon Platform v2026.9
Create Merchant now returns a prefilled web KYB link. Pass the corporate ID and a business description and Surfboard resolves the registry data, classifies the merchant, and works out which documents it needs. The merchant adds a bank account, the documents, and the signatures.
-
04 Sept 2026
Developer Docs v2026.9
The hosted MCP server and the site's API reference catch up with the npm package. 237 endpoints across 29 sections, six new sections, five new webhook events, and one version number read from one place.
-
31 Aug 2026
Carbon Platform v2026.8
Messages in both portals now come with email subscriptions. Add a shared mailbox on the Messages page and every Surfboard notice — settlements, integrations, maintenance — arrives as an email. Nothing is subscribed by default.
Next step
Start building today
Create a free developer account and get instant access to the sandbox. No sales call required.
Or ask developer support