This application requires Frappe and ERPNext v10.0, v11.0 (not tested on higher versions).
bench get-app mautic https://github.com/DOKOS-IO/mautic/bench install-app mauticbench restart && bench migrate
In Mautic:
- in the Configuration > API Settings, enable API and HTTP Basic Auth then Save & Close
- in the API Credentials, create new API credentials for OAuth2:
- enter a name to identify your ERPNext instance
- enter the redirect URI like this
{https://your.erpnext.site}?cmd=mautic.mautic.doctype.mautic_settings.mautic_settings.mautic_callback&grant_type=authorization_code&response_type=code,:- make sure to use the correct protocol (
httporhttps) given your frappe hostname and SSL configuration - (of course) adapt the domain name
- do not leave any trailing
/at the end of your domain name - you can add more URI by separating them by a
, - make sure to always have a
,at the end or Mautic will not use the URI⚠️
- make sure to use the correct protocol (
- Save & Close
In ERPNext:
- enable Mautic
- add your API credentials:
- enter the link to your Mautic instance, without any trailing slash:
https://your.mautic.site - copy the "Public Key" from Mautic to the Client ID
- copy the "Secret Key" from Mautic to the Client Secret
- enter the link to your Mautic instance, without any trailing slash:
- save
- click on "Allow Mautic Access" (you should be redirected to your Mautic instance)
- login as administrator
- when prompted, accept the application to connect to Mautic
The application is scheduled to run hourly by default.
Verify that your scheduler is enabled (bench enable-scheduler).
Your ERPNext and Mautic sites need to have SSL certificates.
Basic Mapping
| Source | Flow | Target |
|---|---|---|
| Name | --> | Segment Name |
| Description | --> | Segment Description |
Basic Mapping
| Source | Flow | Target |
|---|---|---|
| Company Name | --> | Customer Name |
| Company Website | --> | Customer Website |
Post Processing
If no address called "CustomerName-Mautic" exists, a new one is created.
Else the existing one is updated.
Basic Mapping
| Source | Flow | Target |
|---|---|---|
| Contact First Name | --> | Contact First Name |
| Contact Last Name | --> | Contact Last Name |
| Contact Email | --> | Contact Email ID |
| Contact Segment | --> | Contact Segment |
Post Processing
If the contact in Mautic is linked to an organization, the contact in ERPNext is linked to the corresponding Customer or Lead (company_name field).
Else a new Lead is created and linked to the contact.
Basic Mapping
| Source | Flow | Target |
|---|---|---|
| Customer Name | --> | Company Name |
| Customer Website | --> | Company Website |
Basic Mapping
| Source | Flow | Target |
|---|---|---|
| Contact Salutation | --> | Contact Title |
| Contact First Name | --> | Contact First Name |
| Contact Last Name | --> | Contact Last Name |
| Contact Email ID | --> | Contact Email |
| Contact Phone | --> | Contact Phone |
| Contact Mobile No | --> | Contact Mobile |
| Contact Linked Customer | --> | Contact Company |
Pre Processing
If the contact is not linked to a customer or a lead, it is not sent to Mautic. If the contact's email address is "Guest", it is not sent to Mautic.
GPLv3