If you’re already exploring OxaPay, chances are you’re looking for a reliable way to accept crypto payments on your website—without complexity, delays, or extra risk. This guide is built from real implementation experience and shows you exactly how to get started, whether you’re setting up a payment link, installing a plugin, or integrating the full API.
Before You Start: Pre-Integration Checklist
Before diving into the integration steps, make sure you have the following ready:
- A functional website (WordPress, SaaS, or custom backend).
- Admin access to install plugins or edit backend code.
- A business goal: are you accepting crypto for products, subscriptions, or donations?
- Your OxaPay account created and verified (no KYC/KYB needed).
- Optional: Developer access if you plan to use the API.
Make sure your platform and team are technically ready to support crypto transactions directly on your website, with or without developer involvement.
🧭 Tip: If you’re unsure which method to use (plugin or API), check the comparison table at the end.
Step 1: Create an OxaPay Account and Access Your API
Before integration begins, you’ll need a verified OxaPay account. Here’s what to do:
- Sign up at oxapay– No KYC/KYB required.
- Go to your Dashboard > API Settings.
- Copy your Merchant API Key and note your Callback Secret.
These credentials are the foundation of a secure connection between your website and OxaPay—and the first step toward being able to accept crypto payments on your website with full control.
🔒 Developer Tip:
For better security, rotate your API keys periodically and store them in environment variables—not in your codebase.

Step 2: Choose the Right Integration Method
OxaPay supports multiple ways to integrate crypto payments into your site. Choose based on your website type and technical capacity:
1. Plugin Integration (No Code Required)
Ideal for e-commerce and billing platforms like WooCommerce, WHMCS, and Blesta. OxaPay also supports additional platforms—explore all crypto payment plugins and integrations for your business.
How to do it:
- Install the plugin from OxaPay’s documentation page.
- Paste your API Key into the settings.
- Set your preferred coins and payment timeout.
- Done. You’re live.
⏱ Setup time: ~15 minutes
2. API Integration (For Developers)
If you’re running a custom platform, you’ll use OxaPay’s REST API to create invoices and handle transactions with full backend control.
Core endpoints you’ll use:
- POST /api/create-invoice
- GET /api/check-invoice
- Webhook: POST callback with HMAC verification
Basic flow:
- Your backend generates an invoice with amount, coin type, and redirect URL.
- OxaPay returns a unique payment address.
- Customer pays via wallet or QR code.
- OxaPay confirms the transaction and sends a signed webhook to your callback URL.
🧩 Integration usually takes around 80–150 lines of backend code.
Both methods are built to help you accept crypto payments on your website reliably—whether you’re using a plugin or building a fully custom backend. For a deeper look into how the API works and what you can build with it, see our full guide on the Crypto Payment API and Use Cases.
📦 Developer Corner – Sample Python Code
import requests
import hmac, hashlib
API_KEY = "your-api-key"
CALLBACK_SECRET = "your-secret"
invoice_data = {
"amount": 49.99,
"currency": "USDT",
"callback_url": "https://your-site.com/payment-callback"
}
response = requests.post("https://api.oxapay.com/api/create-invoice", json=invoice_data, headers={"Authorization": API_KEY})
print(response.json())
def verify_signature(data, signature):
return hmac.new(CALLBACK_SECRET.encode(), data.encode(), hashlib.sha256).hexdigest() == signature
📘 Callback Simplified:
Make sure your callback endpoint is publicly accessible and returns HTTP 200 OK.
You can log incoming POST
requests to verify the structure and test your signature validation logic.
Step 3: Customize Payment Behavior
You can adjust how OxaPay handles payments on your site:
- Auto Convert: Instantly convert received crypto to USDT .
- Invoice Timeout: Define how long invoices remain valid.
- Underpaid Recovery: Enable users to complete payments if they send less than required.
- Language and Branding: Customize payment page title, logo, and language.
These settings are accessible via the dashboard or API parameters during invoice creation.
Fine-tuning these options ensures your customers enjoy a consistent experience as they accept crypto payments on your website—aligned with your branding and operational needs.
⚙️ Advanced Tip for Developers:
To enforce branding dynamically, pass a custom_logo_url, language, and redirect_after field during invoice creation via API.
🔗 Interested in building a branded crypto checkout experience? Learn more in How to Create a Custom Payment Gateway.

Step 4: Test Your Integration Before Going Live
Always test your implementation using OxaPay’s sandbox environment:
- Create test invoices with dummy amounts.
- Simulate payment confirmations using test wallets.
- Validate that callbacks reach your server and trigger the correct logic (e.g., marking an order as paid).
🔐 Developer Tip:
Use the HMAC signature sent in each callback to verify authenticity using your callback secret. Log failed verification attempts to monitor potential misuse.
🛠 Troubleshooting Common Issues:
- Invoice Expired? Extend the timeout in settings or allow quick re-generation.
- Underpaid Transaction? Enable “Underpaid Recovery” so customers can complete the rest.
- No Callback Received? Ensure your server endpoint is public and accepts POST requests correctly.
🧪 Testing Tip:
You can simulate payments using test wallets like TronLink or MetaMask on test networks. OxaPay provides a dedicated sandbox mode for safe experimentation. Proper testing reduces failure rates and ensures your system is truly ready to accept crypto payments on your website under real-world conditions.
Step 5: Start Accepting Crypto on Your Website
Once testing is complete:
- Switch your invoices from sandbox to live mode.
- Monitor payment confirmations in the OxaPay dashboard.
- You’re now ready to accept crypto payments on your website—securely, in real time, and with full visibility through the OxaPay dashboard.
🌟 What Your Customers Experience
- A clean, mobile-friendly checkout screen.
- Real-time QR code and wallet address display.
- Countdown timer for invoice validity.
- Automatic confirmation on payment success.
✨ These visual and functional elements increase trust and reduce drop-offs.
💸 Your First Crypto Payment (Walkthrough)
Here’s what the flow looks like for your very first transaction:
- You create an invoice via plugin or API.
- Customer sees a fully customized payment page.
- They pay using their crypto wallet (scan QR or paste address).
- OxaPay confirms the transaction and updates your system via callback.
- You see the confirmation in your dashboard.
⚡ Most TRON- or BSC-based payments confirm in under 60 seconds.
🧩 Tips for Long-Term Success
- Enable auto-withdrawal to your exchange wallet or cold storage.
- Check transaction history weekly to reconcile invoices.
- Use underpaid tracking for improved recovery rate.
- Educate your support team on payment statuses and invoice expiry.
- Adjust branding and languages based on user location.
📊 Integration Method Comparison
Method | Setup Time | Complexity | Best For |
Plugin | ~15 min | Low | WooCommerce, WHMCS, Blesta |
REST API | 1–3 hours | Medium | SaaS, custom web apps, backend |
Conclusion: Built for Simplicity. Ready for Scale.
With OxaPay, you can accept crypto payments on your website without writing complex blockchain code or depending on third-party custodians. The process is fast, secure, and built to scale—from simple plugins to full API control.
🎯 Ready to go live?
Ready to go live? Get started with the OxaPay crypto payment gateway or dive into our API documentation to build a tailored solution for your business.