Prerequisites
Before you start, make sure you have:Merchant account at dashboard.eventop.xyz
At least one subscription plan created
API key from the dashboard
Solana wallet address (we can help you create one)
Step 1: Install SDK (Optional)
If you’re using Node.js, install our SDK for easier integration:Other languages (Python, PHP, Ruby)
Other languages (Python, PHP, Ruby)
SDKs for other languages are coming soon. For now, use direct HTTP requests to our API (see API Reference).
Step 2: Configure API Client
Node.js/TypeScript
Direct HTTP (Any Language)
Step 3: Create Subscription Endpoint
Create an endpoint on your server that generates checkout sessions.Step 4: Add Subscribe Button to Frontend
Update your pricing page or subscription form to call your backend endpoint.Step 5: Setup Webhook Endpoint
Create an endpoint to receive subscription events.Step 6: Add Webhook URL to Dashboard
- Go to dashboard.eventop.xyz
- Navigate to Settings → Webhooks
- Click Add Endpoint
- Enter your webhook URL:
https://yourdomain.com/webhooks/eventop - Select events to receive (or select “All events”)
- Copy the webhook secret (you’ll need this for signature verification)
- Save
Step 7: Create Success/Cancel Pages
Create pages where users land after checkout.Success Page
Cancel Page
Step 8: Test End-to-End
1
Switch to Devnet Mode
In your code, set
environment: 'devnet' and use devnet API keys.2
Create Test Plan
In the dashboard, create a test subscription plan (e.g., $0.01/month).
3
Test Checkout Flow
- Click subscribe button on your site
- Complete checkout in the Eventop app (devnet mode)
- Verify you’re redirected back to success page
4
Verify Webhook
Check your server logs to confirm webhook was received and processed correctly.
5
Check Dashboard
View the subscription in your merchant dashboard to verify it was created.
Step 9: Go Live
Once testing is complete:1
Switch to Mainnet
Update
environment: 'mainnet' and use mainnet API keys.2
Update Merchant Wallet
Use your production Solana wallet address (mainnet).
3
Create Production Plans
Set up your real subscription plans with actual pricing.
4
Update Webhook URL
Ensure your production webhook endpoint is configured.
5
Test with Small Amount
Do a final test with a small real payment to verify everything works.
6
Monitor
Watch your dashboard and logs for the first few subscriptions.
Common Issues
Webhook not received
Webhook not received
Troubleshooting:
- Verify your webhook URL is publicly accessible
- Check that you’re returning 200 status code
- Look for errors in Dashboard → Webhooks → Logs
- Test with webhook.site first
- Ensure no firewall is blocking requests from our IPs
Signature verification fails
Signature verification fails
Troubleshooting:
- Double-check you’re using the correct webhook secret
- Ensure you’re hashing the raw request body (not parsed JSON)
- Verify you’re using SHA256 HMAC
- Check for trailing newlines in the secret
User stuck on checkout page
User stuck on checkout page
Possible causes:
- User doesn’t have the Eventop app installed
- User’s subscription wallet has insufficient balance
- Session expired (30 min TTL)
- Network issues
Subscription not showing in dashboard
Subscription not showing in dashboard
Troubleshooting:
- Check if using correct API key for the environment
- Verify merchant wallet address matches
- Look for errors in webhook logs
- Confirm transaction succeeded on Solana explorer