For Developers

Built by engineers, for engineers

RESTful APIs, typed SDKs, webhooks, and a CLI that makes payment integration feel like writing any other code.

5-minute integration

checkout.tswebhooks.tsconfig.ts
1import { Meridian } from '@meridian/sdk'
2 
3const client = new Meridian({
4 apiKey: process.env.MERIDIAN_SECRET,
5 environment: 'production',
6})
7 
8const payment = await client.payments.create({
9 amount: 4999,
10 currency: 'usd',
11 payment_method: 'pm_card_visa',
12 metadata: { order_id: 'ord_123' },
13})
14 
15console.log(payment.id) // pay_4f8a...

Ship from your terminal

~/meridian-api
meridian payments create \
--amount 4999 \
--currency usd \
--method card
◼ Validating payment details...
◼ Running fraud checks...
├─ Velocity check
├─ Address verification
├─ 3D Secure
└─ Risk score: 0.12 (low)
◼ Processing with Meridian Gateway...
◼ Settlement queued (T+1)
┌─────────────────────────────────────┐
✓ Payment succeeded
ID: pay_4f8a2b1c9d3e
Amount: $49.99
Latency: 23ms
└─────────────────────────────────────┘

SDKs for every stack

Node.js
Python
Go
Ruby
PHP
Java
.NET
Rust

API features

Idempotency

Every endpoint supports idempotency keys. Retry safely without double-charging.

Webhooks

Real-time event notifications with automatic retries and delivery guarantees.

Sandbox

Full-featured test environment with simulated payment scenarios and edge cases.

Pagination

Cursor-based pagination on all list endpoints. No offset drift.

Versioning

Pin your integration to an API version. Upgrade on your schedule.

Rate Limits

Generous limits with clear headers. 429 responses include retry-after.