Auto-Convert
Auto-Convert automatically swaps your incoming XMR payments to stablecoins or BTC when a charge is confirmed. This eliminates price volatility without any manual steps.
How It Works
- A charge is confirmed on-chain (10 confirmations)
- A swap is created via an aggregator to convert XMR to your chosen currency
- XMR is sent to the swap provider
- Stablecoins (or BTC) arrive at your configured wallet address
If the swap fails for any reason, the normal XMR payout happens instead — funds are sent to your Monero payout address as a fallback.
Supported Currencies
| Currency | Networks |
|---|---|
| USDT | TRC20, Polygon, BSC, ERC20, Solana |
| USDC | Ethereum, Solana |
| BTC | Bitcoin |
Setup
- Go to Settings → Auto-Convert in your dashboard
- Select your target currency and network
- Enter your wallet address for that currency
- Enable Auto-Convert
All future confirmed charges will be automatically converted.
Fees
- No platform fee — self-hosted means you keep 100%
- ~1% swap fee — covers exchange spread and network fees (varies by provider)
Only the swap provider's fee applies to auto-converted payments.
Webhook
When an auto-conversion swap is initiated, a
swap.auto_created webhook event fires.
See Webhooks for payload details.
API
Configure Auto-Convert
PUT /api/merchants/auto-swap
Requires JWT authentication (Bearer token).
Request Body:
{
"enabled": true,
"currency": "usdttrc20",
"address": "TXyz123..."
}
Currency values:
usdttrc20,usdtpolygon,usdtbsc,usdterc20,usdtsolusdcerc20,usdcsolbtc
Example:
curl -X PUT https://your-server.com/api/merchants/auto-swap \
-H "Content-Type: application/json" \
-H "Authorization: Bearer eyJhbGci..." \
-d '{
"enabled": true,
"currency": "usdttrc20",
"address": "TXyz123..."
}'
To disable, send {"enabled": false}.