Developers
A REST API built for embedded treasury at scale.
Idempotent endpoints, HMAC-signed webhooks, full sandbox environment, and client libraries for Node, Python, and Ruby. Virtual account provisioning, sub-ledger operations, KYB submission, and multi-rail payment initiation — all through a single versioned REST API.
const mss = require('mainstreetspine-node'); const client = new mss.Client({ apiKey: process.env.MSS_API_KEY }); const account = await client.virtualAccounts.create({ platform_id: 'plt_8xHQ2mNk', entity_ref: 'smb_glenwood-hvac', type: 'checking' }); console.log(account.account_number); // → '826041200412'
API Overview
Five resource groups. One consistent API.
01 / virtual-accounts
Virtual Accounts
Create, read, and manage virtual account numbers for platform entities. Balance queries, transaction history, account status.
02 / payments
Payments
Initiate ACH, RTP, and FedNow transfers. Rail selection, idempotency keys, payment status polling.
03 / kyb
KYB Onboarding
Submit business verification requests. Poll status, handle exceptions, retrieve KYB decision details.
04 / ledger
Sub-Ledger
Query ledger entries, create manual journal entries, retrieve account statements, reconciliation exports.
05 / webhooks
Webhooks
Register webhook endpoints, manage event subscriptions, view delivery logs, configure retry settings.
06 / platforms
Platform Config
Manage platform-level settings, API keys, sandbox/live environment switching, revenue share reporting.
Quickstart
From API keys to first virtual account in 15 minutes.
Get API Keys
Request pilot access. We provision sandbox API keys within one business day of approval.
Install SDK
npm install mainstreetspine-node or pip install mainstreetspine. Initialize with your API key.
Create a Platform
POST /v1/platforms — register your SaaS platform as the parent entity in our system.
Provision a Virtual Account
POST /v1/virtual-accounts — your first sandbox account number is ready in under 5 minutes.
SDKs
Client libraries for your stack.
Node.js
mainstreetspine-node v1.4.2
Python
mainstreetspine v1.3.0
Ruby
mainstreetspine-ruby v1.2.1
REST API
Any HTTP client
Webhooks
Real-time event notifications for every state change.
Register a webhook endpoint. We'll POST signed JSON events to your server within 200ms of each state change. Automatic retry with exponential backoff on failed deliveries.
Sandbox environment included.
All pilot partners get access to a full-featured sandbox with simulated ACH and RTP settlement, KYB verification flows, sub-ledger posting, and webhook delivery. Test your entire integration before a single live transaction touches the rails.
Request API Access