Create Your Account
Register as a Seller
Visit card2crypto.cc/register and create your accountRequired Information:
- Email address
- Business name
- Shop/website URL
- Estimated monthly volume
Wait for Approval
Your application will be reviewed by our team within 24-48 hours. You’ll receive an email notification once approved.
Create Your Shop
Once approved, log in and create your shop to generate production API credentials.You can only create ONE shop per account. Your API keys are production-ready immediately.
Configure Crypto Addresses
Set up your Bitcoin and/or Litecoin withdrawal addresses in Settings to receive payouts.
Get Your API Key
Navigate to your Dashboard and copy your production API key:
c2c_live_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6...
Never expose your API key in client-side code or public repositories. Always use it server-side only.
Make Your First Payment
1. Create a Payment
Make a POST request to create a payment:
const response = await fetch('https://card2crypto.cc/api/v1/payments', {
method: 'POST',
headers: {
'Authorization': 'Bearer c2c_live_your_api_key_here',
'Content-Type': 'application/json'
},
body: JSON.stringify({
amount: 5000, // $50.00 in cents
currency: 'usd',
customer_email: 'customer@example.com',
description: 'Order #1234',
success_url: 'https://yoursite.com/success',
cancel_url: 'https://yoursite.com/cancel'
})
});
const payment = await response.json();
console.log(payment.checkout_url);
2. Redirect to Checkout
The API returns a checkout_url
. Redirect your customer to this URL:
window.location.href = payment.checkout_url;
The customer will see a checkout page where they can enter their card details.
3. Handle Webhooks
Set up a webhook endpoint to receive payment notifications:
const crypto = require('crypto');
app.post('/webhooks/card2crypto', (req, res) => {
// Verify signature
const signature = req.headers['x-card2crypto-signature'];
const payload = JSON.stringify(req.body);
const expectedSignature = crypto
.createHmac('sha256', process.env.WEBHOOK_SECRET)
.update(payload)
.digest('hex');
if (signature !== expectedSignature) {
return res.status(401).send('Invalid signature');
}
// Process webhook
const { event, payment } = req.body;
if (event === 'payment.completed') {
console.log(`Payment ${payment.id} completed!`);
// Update your database, send confirmation email, etc.
}
res.status(200).send('OK');
});
Test Your Integration
Use the Payment Testing Tool in your dashboard to quickly test payment creation without writing code.
All payments are live and real. Test with small amounts like $0.50 to verify your integration works correctly.
Next Steps