Sending invoice-related events to Odoo CRM

Link copied to clipboard

PortaBilling is integrated with the Odoo customer relationship management (CRM) system. Odoo CRM helps automate sales actions, communicate with customers and streamline operations.

Through this integration, PortaBilling automatically notifies Odoo CRM about invoice-related events and changes in customer status. CSPs can use this information to manage customer interactions via Odoo – particularly, for sending invoice notifications and payment reminders via SMS messages or emails.

Usually, CSPs who use PortaBilling require PortaSIP to send SMS notifications. This integration allows CSPs to use the Odoo CRM to do this.

This integration uses a customized version of the Odoo API. Certain functions may not be available in the standard version. If you're using the standard Odoo CRM, contact your Odoo team for more details.

PortaBilling notifies Odoo about the following events:

  • Invoice is generated
  • Unpaid/partially paid invoice becomes overdue
  • Customer service becomes:
    • Suspended / Suspension is removed
    • Limited / Limitation is removed
  • Commitment is terminated

PortaBilling sends the corresponding data to Odoo via the API. The communication between Odoo and PortaBilling is minimized as it only happens when such an event takes place in PortaBilling. This approach allows to minimize the load on both systems.

EXAMPLE

Customer John Doe is charged $30 per month for Internet service. When his monthly invoice is generated, PortaBilling notifies Odoo by provisioning the invoice number and the amount due. Odoo then sends an SMS notification to John Doe, reminding him to pay for the Internet on time. This eliminates the need to check the self-care web interface. If the invoice is overdue, John Doe receives another notification.

If John Doe stops paying for the Internet service, PortaBilling suspends his account for non-payment and blocks the service, and notifies Odoo about the suspension. Odoo then sends an SMS message alerting John that the service has been blocked due to the overdue invoice.

Once John pays off his overdue invoice, PortaBilling immediately removes the suspension to resume Internet service and notifies Odoo CRM that the customer’s service is now active again. Odoo CRM updates John’s record and sends an SMS informing him that service has resumed.

PortaBilling can also notify Odoo CRM of the reason for commitment termination, such as overdue invoices, account closure, or manual operation by admin. It helps service providers to configure Odoo CRM to send more informative notifications to customers depending on the reason for commitment termination. If the commitment is automatically terminated due to non-payment, Odoo sends the customer an SMS message or email about commitment termination with a corresponding notification, "Disconnected due to debt".

Benefits
Link copied to clipboard
  • CSPs can send payment reminders to customers via Odoo, thereby improving the payment collections process.
  • CSPs can notify customers of commitment termination with the proper reason.

Configuration

Link copied to clipboard

To enable data provisioning to the Odoo CRM, do the following:

  1. Request from Odoo:
    • API_Access_Key – the Odoo administrator’s authorization key for the Odoo CRM API.
    • API_URL – the Odoo CRM API endpoint.
  2. On the Configuration server, create an ESPF instance (if it is already configured, proceed to step 3). Check the ESPF configuration handbook for more details.
  3. On the PortaBilling interface:
    • Create Odoo CRM handler. For this, navigate to Infrastructure > Event handlers, click Add, and fill in the details:
      1. Name – type the event handler name, e.g., “Odoo CRM”.
      2. Type – select Odoo::CRM.
      3. Leave the Enabled toggle enabled.
      4. Click Save&Edit details. OdooCRM handler
    • Configure the Odoo CRM handler:
      1. Open the Configuration panel and fill in the details:
        • Concurrency – leave the default number of the concurrent task processing.
        • OdooCRM.API_Access_Key – specify the authorization key to access the OdooCRM API.
        • OdooCRM.API_URL – specify the IP address or hostname of the Odoo CRM API endpoint to which requests will be sent.
      2. Open the Event subscriptions panel and subscribe the event handler to the required events. Check the ESPF configuration handbook for more details. Configure the integration with the Odoo CRM system

On this page

Docs for
What's new
Admin manuals
Handbooks
UI help
Developers documentation