API Reference
Complete API documentation for integrating cryptocurrency payments
API Reference
Complete API documentation for the ZEUSXPAY Merchant API.
Quick Links
- Create Transaction - Create a payment transaction
- Get Transaction - Retrieve transaction details
- List Transactions - Get all transactions for your project
- Transaction Statistics - Get analytics and stats
- Authentication - API key authentication guide
Authentication
All API endpoints require authentication using your Project API Key.
Getting Your API Key
- Log into your ZEUSXPAY dashboard
- Navigate to your project settings
- Copy your API Key (starts with
sk_live_orsk_test_)
Using Your API Key
Include your API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY_HERE Base URL
https://api.zeusxpay.io Create Transaction
Create a new payment transaction. Customers choose their preferred token on the payment page.
Endpoint: POST /api/transactions/create
Authentication: Required (API Key)
Request:
{
"amount": 99.99,
"customer_email": "customer@example.com",
"customer_name": "John Doe",
"order_id": "ORDER-12345",
"order_description": "Premium Subscription",
"success_url": "https://yoursite.com/success",
"cancel_url": "https://yoursite.com/cancel",
"expires_in_minutes": 60
} Response:
{
"success": true,
"transaction": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"transaction_number": "TXN-2024-001234",
"status": "created",
"amount_usd": 99.99,
"currency": "USD",
"payment_url": "https://zeusxpay.io/pay/550e8400-e29b-41d4-a716-446655440000",
"created_at": "2024-11-12T10:00:00Z",
"expires_at": "2024-11-12T11:00:00Z"
},
"payment_url": "https://zeusxpay.io/pay/550e8400-e29b-41d4-a716-446655440000"
} Get Transaction
Retrieve detailed information about a specific transaction.
Endpoint: GET /api/transactions/{id}
Authentication: Required (API Key)
Response:
{
"success": true,
"transaction": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"transaction_number": "TXN-2024-001234",
"status": "completed",
"amount_usd": 99.99,
"currency": "USD",
"transaction_hash": "0x...",
"completed_at": "2024-11-12T10:15:00Z"
}
} List Transactions
Get a paginated list of transactions for your project.
Endpoint: GET /api/transactions/project/{projectId}
Authentication: Required (API Key)
Query Parameters:
status- Filter by status (e.g., “completed”, “pending”)limit- Results per page (1-100, default: 50)offset- Pagination offset (default: 0)
Response:
{
"success": true,
"transactions": [...],
"pagination": {
"limit": 50,
"offset": 0,
"total": 150,
"has_more": true
}
} Transaction Statistics
Get aggregated statistics for your project.
Endpoint: GET /api/transactions/stats
Authentication: Required (API Key)
Query Parameters:
start_date- Start date (ISO format)end_date- End date (ISO format)testing_mode- Include test transactions (default: false)
Response:
{
"success": true,
"stats": {
"total_transactions": 150,
"total_volume_usd": 125000.0,
"completed_transactions": 142,
"conversion_rate": 94.67,
"by_status": {
"completed": 142,
"pending": 3,
"failed": 5
}
}
} Transaction Statuses
created- Transaction created, awaiting token selectionprepared- Token selected, payment details readypending- Awaiting customer paymentprocessing- Payment detected, processingconfirming- Waiting for blockchain confirmationscompleted- Payment confirmed and completedfailed- Payment failedexpired- Transaction expiredcancelled- Transaction cancelled
Error Handling
All endpoints return consistent error responses:
{
"success": false,
"message": "Error description"
} Common HTTP Status Codes:
200- Success400- Bad Request (validation error)401- Unauthorized (invalid or missing API key)403- Forbidden (project not active)404- Not Found500- Internal Server Error
Example Integration
// Create a payment transaction
async function createPayment(amount, orderId) {
const response = await fetch('https://api.zeusxpay.io/api/transactions/create', {
method: 'POST',
headers: {
Authorization: `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
amount: amount,
order_id: orderId,
success_url: 'https://yoursite.com/success',
cancel_url: 'https://yoursite.com/cancel'
})
});
const data = await response.json();
return data.transaction;
}
// Check transaction status
async function checkStatus(transactionId) {
const response = await fetch(`https://api.zeusxpay.io/api/transactions/${transactionId}`, {
headers: {
Authorization: `Bearer ${API_KEY}`
}
});
const data = await response.json();
return data.transaction;
} Additional Resources
- Webhooks Documentation - Set up webhook notifications
- Quick Start Guide - Get started in minutes
- Authentication Guide - Learn about API keys
Need Help?
- Check out our Quick Start Guide
- Review Authentication Setup
- Contact support: support@zeusxpay.io
