If you see a message on any of the lightning components (SMS Inbox, 1:1 Messaging, or SMS Campaigns) that says, "No Access: You currently do not have access to use this component. Contact your System Administrator." follow these steps:
- Check that your user is assigned either the "Twilio Administrator" or "Twilio User" permission set. This section of the set up documentation shows how to provision these permission sets.
- If you are installing the app in a production Salesforce organization, be sure that your user has been assigned a license.
- If your user Twilio for Salesforce trial has expired, contact Twilio Sales to purchase a license. Note: upgrading your Twilio Account by adding a credit card will not provision a Salesforce license for you. Licenses can only be purchased through Sales at this time.
Twilio for Salesforce costs $15 per seat per month, plus any additional Twilio usage such as phone numbers, messaging, Studio executions, and Function runs. A 50% discount is available through Twilio.org's Impact Access Program (apply here).
You only need to purchase seat licenses for users who will be using the package's functionality. Users who do not need SMS do not need a seat license.
For projects that are primarily using an automated process (such as Process Builder or Flows), the number of licenses you need will be determined by who owns the process being executed. Process builder runs in system mode, so the sytem user would need a seat license. Flows run in user mode by default, so every user initiating the Flow would need a license.
Note that Flows initiated from process builder are run as a system user. This can help reduce the number of licenses you need, as only the system user needs a license.
Twilio for Salesforce licenses expire 30 days after installation. Currently, you must contact Twilio Sales in order to upgrade Twilio for Salesforce. Note that this is not the same as upgrading your Twilio Account; you need to both upgrade your account and contact Sales in order to have licenses provisioned.
You'll need to sign an order form to receive Twilio for Salesforce licenses. Licenses are typically provisioned within 24 hours Monday - Friday.
Yes, Twilio for Salesforce can be embedded as a visualforce component in Salesforce Classic. Note that the Lightning utility bar used by the SMS inbox does not exist in Classic, however the inbox can still be viewed as a visualforce page.
Twilio for Salesforce supports the Enterprise and Unlimited editions of Salesforce. Salesforce Essential and Professional editions are not supported.
Twilio for Salesforce's Lightning Components support messaging from Contacts, Leads, Person Accounts, and Cases. Other standard Salesforce objects and custom objects are currently unsupported.
By default, only messages with a record that the current user owns will appear in the SMS inbox. Additionally, administrators can configure SMS inbox message visability in the Twilio Configuration page so that users have the option to "view all" messages. This setting turns the SMS inbox into a feed of all messages coming into the organization.
Even if a user is unable to view messages in the SMS inbox, they will still be able to go directly to the record and send SMS there.
Currently Twilio for Salesforce only supports single-threaded conversations with a contact. Any person messaging from Salesforce will have the same number that was used to previously contact the customer.
The one exception to this rule is when "Personal Numbers" are enabled by an admin. In this case, a user with a personal number will send the outbound message from that number. Messages in the thread will display a "Sent from" and "Replied to" indicator, but the messages will remain in the same lightning component.
By default, visibility of the messages inherits from the record that the component is on. If the user can see the record, they will be able to see the SMS. It is not currently possible to have two users message the same contact and not see each other's messages.
It is possible to configure access to the SMS component on a per-user basis via the Twilio for Salesforce permission set.
Twilio for Salesforce makes one API call per outbound message. Additionally, we will make API calls to get messages from Twilio every 15 seconds when a contact is open, and every 15 minutes to check if there are any new messages across the entier organization.
If you are using an unlicensed and unlimited version of the package that you obtained during the beta period, Salesforce will count API calls made by the package towards your limits. If you are using a version of the app that has passed security review and is listed on the AppExchange, that version of Twilio for Salesforce will have "Ohana" status and will not count towards your API limits.
Twilio for Salesforce stores message data in a custom object (TwilioSF_Message__c). One record is created per message. Additionally, messages are sent to Twilio and retained in our message logs.
Twilio for Salesforce uses the Twilio Programmable SMS API, as well as the Twilio Studio API. Information sent to Twilio includes the following fields:
- From Number or Messaging Service SID
- To Number
- Message Body
- Attachment URL (optional)
Additionally, each request uses the Twilio Account SID, Twilio API Key SID, and Twilio API Key Secret to authenticate. These credentials are generated in your Twilio console.
The "Send to Studio" Process Builder Action allows custom parameters to be sent to Twilio only if configured by an administrator. These parameters can be used to provide additional information to a Twilio Studio IVR or Chat flow.
Twilio for Salesforce does not integrate with Salesforce Marketing Cloud.
Twilio for Salesforce's Lightning Components currently only support SMS, although voice calls can be made via Twilio's APIs via the APEX client.
This issue is frequently caused by an error in your process builder's trigger or criteria that is unrelated to Twilio for Salesforce. To debug this issue, first check to make sure you can send any SMS at all from Salesforce. The easiest way to check is to add the 1:1 SMS Component onto a lead or contact and send yourself and SMS.
If you don't receive an SMS, review the setup instructions. If you do receive an SMS, strip your process builder flow down to the most simple flow possible (for example, trigger an SMS when a contact is created with no criteria). If you are still not receiving an SMS, check that another action, such as sending an email, can be fired.
Twilio for Salesforce is currently only for SMS and does not support WhatsApp.
Currently Twilio for Salesforce only supports sending SMS to Contacts or Leads within a campaign, although you could use Apex along with Twilio's APIs to create a custom action for a list view.
If the package fails to install, Salesforce should send you an email that contains an error message detailing what went wrong. For example you might see the following:
1. Apex Classes(classes/Twilio_TestMember.cls) Missing feature
Installing this package requires the following feature and its associated permissions: Apex Classes
2. Apex Triggers(triggers/BulkMessageTrigger.trigger-meta.xml) Missing feature
Installing this package requires the following feature and its associated permissions: Apex Triggers
If the error message includes "Missing feature" it most likely means that you need to upgrade to a more advanced version of Salesforce. Twilio for Salesforce works in Salesforce Enterprise and up. If your package fails for another reason, please email firstname.lastname@example.org and include the error text in your email.
SMS inbox component
Supports sending and receiving images with MMS
Shows message delivery status
Tracks last message delivery status on contact
See campaign potential deliverability
Send images in campaigns
Schedule campaign messages for future sends
Now supports initiating outbound chatbots / Voice IVRs with Twilio Studio
Schedule messages to be archived
Set personal phone numbers for Salesforce users
Determine if everyone can see all messages in the inbox, or just ones on leads/contacts that belong to them
Opt-In Handling (New)
Define an opt-in keyword that a user can text: creates a record that the user opted in
Associate a campaign with the opt-in keyword