Documentation
Set up LiteShop Xendit payments
What you need
- A Xendit account (test and/or live)
- LiteShop Xendit plugin installed and active
- Admin access to Commerce → Settings → Xendit
1. API key
- In Xendit: Settings → Developers → API Keys → Generate secret key.
- Set Money-in / Invoices to WRITE. Leave most other features on NONE (Transaction READ is optional).
- Paste the secret into LiteShoper. Use
xnd_development_…with sandbox checked, orxnd_production_…for live.
2. Webhook
- Copy the webhook URL from the Xendit settings page in LiteShoper.
- In Xendit Webhooks, paste it under INVOICES → Invoices paid (only this event is required).
- Copy the callback verification token into LiteShoper. Webhooks are rejected without it.
3. Channels & fees
Enable only channels you activated in Xendit. For each channel you can set:
- Percent or fixed fee
- Who pays: buyer or merchant
- For fixed fees in another currency: fee currency + Auto FX
4. Go live checklist
- Test a full paid order in sandbox
- Confirm the order status updates after webhook (and after return from Xendit)
- Switch to a production secret key, uncheck sandbox, re-check webhook URL/token on the live Xendit dashboard
Troubleshooting
- Xendit not on checkout: Enable must be on, and both secret key + callback token must be saved.
- Paid at Xendit, unpaid in store: callback token missing or wrong webhook event — fix token; return URL can still sync the invoice.
- Sandbox/live mismatch: development keys with live mode (or the reverse) will fail — match key prefix to the sandbox checkbox.