Connecting...
Dashboard
Create Payout
Payment History
Drivers
API Docs
Total Paid
$0.00
Pending Amount
$0.00
Completed Payments
0
Instant Payouts
0
Recent Payments
Driver Amount Rail Status Date
No recent payments
Idempotency Keys
Idempotency keys ensure safe retries. If a request fails or times out, retry with the same key to avoid duplicate payments. Keys expire after 48 hours.
Create Driver Payout
Idempotency Key
pay_load_12345_1706707200_abc123def
Save this key for retries. If the request fails, use the same key to retry safely.
JS
John Smith
john.smith@example.com
Active
MG
Maria Garcia
maria.garcia@example.com
Active
JW
James Wilson
james.wilson@example.com
Pending
Standard ACH
2-4 business days
Fee: ~$2.50 | Up to $1,000,000
Instant Payout
~30 seconds
Fee: 1% + $0.50 | Up to $10,000
Payment History
ID Driver Amount Rail Status Created Actions
No payments found
Active Drivers
JS
John Smith
john.smith@example.com
Active
MG
Maria Garcia
maria.garcia@example.com
Active
JW
James Wilson
james.wilson@example.com
Pending
RB
Robert Brown
robert.brown@example.com
Active
PayStream API Reference
POST /api/v1/payments

Create a new driver payout

Request (with idempotency)
curl -X POST https://paystream.finhub.workers.dev/api/v1/payments \ -H "Authorization: Bearer psk_demo_ovn_logistics_1234567890abcdef" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: pay_load_12345_1706707200_abc123def" \ -d '{ "recipientId": "drv_001", "amount": 50000, "currency": "USD", "description": "Load #12345", "rail": "standard", "metadata": { "loadId": "12345", "deliveryId": "del-67890" } }'
Response
{ "data": { "id": "pay_abc123xyz", "tenantId": "tenant_ovn_logistics", "recipientId": "drv_001", "amount": 50000, "currency": "USD", "description": "Load #12345", "rail": "standard", "status": "created", "urgency": false, "createdAt": "2026-01-30T10:00:00Z", "updatedAt": "2026-01-30T10:00:00Z" }, "meta": { "requestId": "req_abc123", "timestamp": "2026-01-30T10:00:00Z" } }
GET /api/v1/payments

List all payments

Request
curl -X GET https://paystream.finhub.workers.dev/api/v1/payments?limit=10&status=completed \ -H "Authorization: Bearer psk_demo_ovn_logistics_1234567890abcdef"
POST /api/v1/payments/:id/cancel

Cancel a pending payment

POST /api/v1/payments/:id/retry

Retry a failed payment

GET /api/v1/recipients

List all drivers (recipients)

Request
curl -X GET https://paystream.finhub.workers.dev/api/v1/recipients \ -H "Authorization: Bearer psk_demo_ovn_logistics_1234567890abcdef"
POST /api/v1/batches

Create a payment batch

Request (with idempotency)
curl -X POST https://paystream.finhub.workers.dev/api/v1/batches \ -H "Authorization: Bearer psk_demo_ovn_logistics_1234567890abcdef" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: batch_weekly_1706707200_xyz789" \ -d '{ "name": "Weekly Driver Payouts - Jan 30", "payments": [ {"recipientId": "drv_001", "amount": 50000, "description": "Load #1001"}, {"recipientId": "drv_002", "amount": 47500, "description": "Load #1002"}, {"recipientId": "drv_003", "amount": 52500, "description": "Load #1003"} ] }'

Idempotency Key Format

Recommended Format
{type}_{identifier}_{timestamp}_{random}
  • type: Operation type (pay, batch, driver)
  • identifier: Your reference ID (load ID, batch name, etc.)
  • timestamp: Unix timestamp for uniqueness
  • random: Random string for collision avoidance
Examples
// Payment for specific load pay_load_12345_1706707200_abc123def // Weekly batch batch_weekly_1706707200_xyz789 // Driver creation driver_ext_john_smith_1706707200_q456