Payment Intent API, automatic matching, hosted checkout pages, and multi-chain monitoring—all via REST API.Your wallets. Your funds. Our infrastructure.
Monitor payments across major blockchains








Need support for another blockchain? We add other chains on demand
Two approaches to crypto payments. One gives you control, one takes it away.
Flat fee. No custody. No percentage cuts.
Charged only when payment is confirmed and matched to an intent. Failed deliveries are free.
| Transaction Amount | Traditional Providers 2% fee | CryptoDirect $1.00 per payment |
|---|---|---|
| $1,000 | $20.00 | $1.00 |
| $10,000 | $200.00 | $1.00 |
| $50,000 | $1,000.00 | $1.00 |
| $100,000 | $2,000.00 | $1.00 |
| $500,000 | $10,000.00 | $1.00 |
Need high-volume pricing? Contact us
Your addresses, your control, our monitoring
Connect your existing Bitcoin, Ethereum, Litecoin, Solana, TRON, or other cryptocurrency addresses. You maintain full custody—we just monitor them for incoming payments.



When you need to receive a payment, call our API to create an intent. Specify the base amount (e.g., 100 USDT). We add a unique fractional amount to track this specific payment and return one of your addresses based on priority rules.
POST /v1/intents
{
"blockchain": "TRX",
"asset": "USDT",
"amount": 100,
"metadata": {
"order_id": "ORD-123"
}
}{
"success": true,
"intent": {
"id": "uuid-abc-123...",
"address": "THPVz...4Ahs",
"blockchain": "TRX",
"asset": "USDT",
"requested_amount": "100",
"expected_amount": "100.0046",
"status": "PENDING",
"expires_at": "2025-01-01..."
}
}Each payment intent includes a hosted, white-label checkout page. Customers select their payment method and scan the QR code.

When payment is confirmed, we send a webhook to your server with transaction details and basic security checks. Webhooks are retried automatically on failure with exponential backoff. Advanced onchain analysis results (including blacklist checks and risk scoring) are sent via a separate webhook once the deep analysis completes.
POST https://yourserver.com/webhook
Content-Type: application/json
X-Webhook-Signature: sha256=abc...
X-Webhook-Timestamp: 1704067200
{
"event_id": "evt-uuid-456...",
"type": "TRANSFER",
"timestamp": "2025-01-01T12:00:00.000Z",
"data": {
"address": "0xa6598f...faced90a",
"blockchain": "ETH",
"tx_hash": "0x6e4a01...75ad93a",
"amount": "6.000000000000000000",
"asset": "USDT_ETH",
"counter_address": "0xa6598f...faced90a",
"block_number": "24131878",
"confirmations": 14,
"transaction_type": "token",
"contract_address": null,
"intent": {
"id": "21dac6b1-352b-4355-8fcd-88b84f8cb647",
"requested_amount": "5.000000000000000000",
"expected_amount": "5.480000000000000000",
"received_amount": "6.000000000000000000",
"asset": "USDT",
"usd_amount": 5.99,
"usd_rate": 0.99881687,
"metadata": {
"order_id": "ORDER-12345",
"customer_id": "CUST-789"
},
"checks": {
"malicious": false,
"checked_at": "2025-12-31T10:01:24.015Z",
"blacklisted": false
}
}
}
}Once you receive the webhook, you can instantly process the payment in your application. The possibilities are endless—here are some common use cases.
// Express.js example
app.post('/webhook', async (req, res) => {
const { event_id, type, data } = req.body;
if (type === 'TRANSFER' && data.intent) {
const { intent } = data;
// Find the order by metadata
const order = await Order.findOne({
order_id: intent.metadata.order_id
});
// Verify USD amount is sufficient
if (intent.usd_amount < order.total) {
console.log('Insufficient payment!');
return res.status(200).json({ received: true });
}
// Mark order as paid
order.status = 'paid';
order.tx_hash = data.tx_hash;
order.paid_amount = data.amount;
await order.save();
// Trigger fulfillment
await fulfillOrder(order);
// Send confirmation
await sendEmail(order.customer_email, {
subject: 'Payment Confirmed',
template: 'payment-success'
});
}
// Always return 200 to acknowledge receipt
res.status(200).json({ received: true });
});Use your own wallets. Never give up custody of your funds.
Set priority rules for which addresses to use first. We handle the rotation automatically.
Support for Bitcoin, Ethereum, Litecoin, Solana, TRON, and other major blockchains.
Get instant QR codes for every payment intent. Perfect for in-person or online payments.
Real-time notifications when payments arrive. Integrate with your existing systems.
Advanced onchain analysis of incoming transactions. Addresses are checked against blacklists, sanctions lists, and malicious activity patterns. Deep analysis results sent via separate webhook.
Common questions about CryptoDirect
Complete payment infrastructure: Payment Intent API, automatic matching, hosted checkout pages, USD conversion, multi-chain monitoring, security screening, and unmatched transaction handling. Charged only when payment is confirmed and matched. Failed deliveries are free with automatic retries.
We're infrastructure, not a payment processor. You own the wallets, we provide the tools. Flat fees mean predictable costs regardless of transaction size—no percentages, no spread markup, no withdrawal fees.
Payment processors advertise 2-5% but real costs are 3-8% after spread markup (1-3%) and withdrawal fees ($5-20 each). They also take custody of your funds. CryptoDirect: $1.00 flat per payment, funds go directly to your wallets, zero custody.
We currently support Bitcoin, Ethereum, Litecoin, Solana, TRON, BNB Chain, and various stablecoins like USDT and USDC. Need support for another blockchain? Contact us—we add new chains on demand based on customer needs.
No! CryptoDirect is fully non-custodial. You use your own wallet addresses and maintain complete control over your funds at all times. We only monitor the blockchain for incoming payments and notify you via webhooks—we never have access to your private keys or funds.
When a payment arrives at one of your monitored addresses, we instantly send an HTTP POST request to your configured webhook URL with all transaction details. You can configure your webhook URL in the Settings page. We include security checks like malicious address detection in every webhook payload.
If your webhook endpoint returns an error or times out, we automatically retry delivery with exponential backoff. You can view all webhook attempts and their responses in the Webhooks page. We only charge for successful webhook deliveries.
Every incoming transaction undergoes advanced onchain analysis to check the sender address against blacklists, sanctions lists, and malicious activity patterns. This deep analysis runs asynchronously and may take anywhere from a few minutes to several hours depending on blockchain congestion and analysis depth. Once complete, you'll receive a separate webhook with detailed risk assessment results. Basic security checks are included in the initial payment webhook.
Questions? Want to discuss your use case? We're here to help.