Xendit

Xendit is an Indonesian-based payment solution provider that covers several Southeast Asian countries. It allows businesses to accept credit cards as well as several local payment methods.

Note

  • Credit card payments are processed through Odoo, while all other payment methods are handled via Xendit’s website.

  • Xendit supports card payment tokenization, provided the customer has requested Merchant Initiated Transaction (MIT) from Xendit Support.

Configuration on the Xendit Dashboard

  1. Create a Xendit account if necessary and log in to the Xendit Dashboard.

  2. Check your account mode in the top left corner of the page. Use the Test Mode to try the integration without charging your customers. Switch to Live Mode once you are ready to accept payments.

  3. Navigate to Configuration: Settings in the left part of the application page. In the Developers section, click API Keys.

  4. Click Generate Secret Key. In the popup box, enter any API key name, select Write for the Money-in Products permission and None for all other permissions then click Generate key.

  5. Confirm your password to display your API key. Copy or download the key and save this information securely for later. This is the only time the API key can be viewed or downloaded.

  6. Once completed, scroll down the page to the Webhooks section to generate the webhook token.

  7. Under Webhook verification token, click View Webhook Verification Token, then confirm your password to display the token. Save it for later.

  8. In the Webhook URL section, configure the webhook fields as described in Webhook configuration below.

  9. To allow recurring payments for credit cards, go to Configuration: Payment Channels in the left part of the application page. Then, hover your mouse over the Visa, Mastercard, JCB, Amex channel, click View Details, and enable Recurring Payments by toggling the related switch.

Webhook configuration

Important

Xendit replaced its previous single, per-event webhook field with separate v3 event groups. If your Xendit account was connected to Odoo before this change, successful payments and saved cards may no longer update automatically until the new fields described below are configured.

  1. Log in to the Xendit Dashboard and navigate to Configuration: Settings.

  2. In the Developers section, click Webhooks.

  3. Enter your Odoo database’s URL, followed by /payment/xendit/webhook (e.g., https://example.odoo.com/payment/xendit/webhook), in the following fields:

    • Payment Status

    • Payment Token Status

  4. Click Test and save next to each of those fields.

Note

Both fields must point to the same webhook URL: Odoo uses a single endpoint to process notifications for both token and payment status updates.

Configuration on Odoo

  1. Navigate to the payment provider Xendit and change its state to Enabled.

  2. Fill in the Secret Key and Webhook Token fields with the information saved at the step Configuration on the Xendit Dashboard.

  3. Configure the rest of the options to your liking.

See also

Online payments