Skip to main content
Live Demo

30 Seconds to Your First Payment

Create a payment, send test funds, see it confirmed — no signup needed.

1
2
3
$100M+ settled·100+ merchants·No signup needed
PayRamDEMO
Step 1 · Add credit

Add Credit

Choose an amount to add to your demo account.

$
Merchant Dashboard

Take the keys. Test drive the dashboard.

This is what your self-hosted payment gateway looks like. Real-time deposits, multi-chain analytics, sweep status, webhook logs — all on your server, under your control.

No signup. No demo request form. Just click and explore.

Self-hosted·Self-custody·Your payment gateway
Recommended Integration

Add Funds is the fastest way to accept crypto.

Instead of building a checkout page, embed one button. Customer clicks "Add Credit," picks their amount, pays with crypto or card, and you get a webhook. No cart integration. No payment form. Works on any site.

🔘
Customer clicks
"Add Credit" on your site
📄
Deposit page opens
QR code + amount shown
💸
Customer pays
Crypto or card
🔔
Webhook fires
You fulfill the order
No cart needed
Works without any e-commerce integration
No keys on server
Smart contracts handle sweeping. Agent compromised? Funds safe.
Self-hosted
Your server, your wallet, your rules
Copy & Paste

Add PayRam to your site in 2 minutes.

Drop this script tag into any HTML page. It renders an "Add Credit" widget that connects to your PayRam server.

Widget Embed
<script src="https://payram.com/widget/payram-add-credit-v1.js" data-payram-url="https://your-payram-server.com" data-api-key="your-api-key" data-amounts="5,10,25" data-theme="dark" ></script>

Configuration

data-payram-url — your PayRam server URL
data-api-key — your API key
data-amounts — preset amounts (comma-separated)
data-theme — "dark" or "light"
data-customer-email — pre-fill email

What it renders

Amount input with quick-select chips
"Add Credit" button matching your theme
Opens deposit page on click
Works on any site — static HTML, React, WordPress
No dependencies, self-contained
For Developers

SDK & API Reference

Create payments programmatically. Use the payram npm package or call the REST API directly.

Node.js SDK
import { Payram } from 'payram' const payram = new Payram({ baseUrl: 'https://your-payram-server.com', apiKey: 'your-api-key', }) // Create a payment const payment = await payram.initiatePayment({ customerEmail: '[email protected]', customerId: 'cust_123', amountInUSD: 25, }) // payment.reference_id — track this // payment.url — redirect customer here

API Endpoints

POST /api/v1/payment — Create a payment
GET /api/v1/payment/:reference_id — Check status
POST /api/v1/deposit-address/reference/:id — Get deposit address
Auth: API-Key header
Webhooks

When the customer pays, you get this.

PayRam POST-requests your webhook URL with payment details. Verify, fulfill, done.

Webhook Payload
{ "event": "payment.confirmed", "reference_id": "ref_abc123xyz", "amount": 25.00, "currency": "USDC", "blockchain": "ETH", "txid": "0xabc123...", "confirmations": 1, "customer_email": "[email protected]", "customer_id": "cust_123", "status": "confirmed", "timestamp": "2026-03-31T10:15:30Z" }
Status Flow
Created → Confirming → Confirmed
Retry Policy
Auto-retry at 30m, 1h, 2h, 4h, 8h, 24h, 48h
Idempotent
Same reference_id won't fire duplicates

Ready to go live?

You just saw how it works. Deploy your own PayRam — self-hosted, self-custody, no signup. Accept crypto and card payments in 5 minutes.