Frappe

Frappe is an open-source framework that powers an entire ecosystem of business applications, including ERPNext, Frappe CRM, Frappe HR and many more. Through its built-in SMS Settings DocType, the framework ships with a generic HTTP SMS gateway integration that is available across every Frappe-based app. seven can be wired up through it without any additional module.

Set up SMS sending

The following steps configure the SMS gateway shipped with Frappe so that messages are delivered through the seven HTTP API. The configuration is system-wide and applies to every app on the Frappe instance (e.g. ERPNext, Frappe CRM).

  1. 1

    Open SMS Settings

    In the Frappe instance, search for SMS Settings in the global search bar.

  2. 2

    Enter the gateway URL

    In the SMS Gateway URL field, enter:

    https://gateway.seven.io/api/sms
    
  3. 3

    Map the parameters

    • Message Parameter: text
    • Receiver Parameter: to
  4. 4

    Add static parameters

    Add the following rows under Static Parameters:

    ParameterValueHeader
    X-Api-KeyYour API key from the seven customer area
    from(optional) sender ID of your choice, e.g. seven
  5. 5

    Save and test

    Save the settings and send a test message to a phone number in international format (e.g. 491771783130) via SMS Center in ERPNext.

Sending from the apps

Once configured, SMS delivery can be used as follows in the various Frappe apps:

ERPNext

  • Manual sending via the SMS Center
  • Bulk sending from list views (e.g. contacts, customers, suppliers)
  • Automated alerts via Notification rules with channel SMS

Frappe CRM

Frappe CRM does not include a dedicated SMS button in its UI. Sending is wired up via the standard Frappe Notification DocType:

  1. Create a Notification and set the Document Type to CRM Lead or CRM Deal
  2. Define the trigger event (e.g. New, Value Change, Days Before/After)
  3. Set Channel to SMS
  4. In the Receiver field, point to the phone number field on the lead/deal (e.g. mobile_no)
  5. The message body supports Jinja placeholders such as {{ doc.lead_name }}
Last updated: 2 days ago