Transactional messages are those that you can send to customers to keep them up-to-date on a transaction they have made with you, such as a purchase, appointment, or other booking.
Attentive’s APIs allow you to send any transactional update event to Attentive and then send a personalized text message to each customer.
This guide walks through the steps required to start sending transactional messages using Attentive’s APIs. You will need support from a developer to implement the APIs. Note that each section includes an expected result ( ✅ ) after a step is completed.
|Note: This solution isn't intended for Shopify or Recharge. If you're looking to use Shopify or Recharge to work with transactional messages, see the articles for Shopify or Recharge.|
Step 1: Design and implement transactional opt-in unit
The Telephone Consumer Protection Act (TCPA) mandates that each person must provide consent to receive transactional messages.
You should collect a customer’s phone number during checkout, and we recommend that you collect this consent through a checkbox within the checkout flow.
You will need to design and implement a transactional opt-in unit yourself, and this opt-in unit can be pre-checked.
Note: You must send a screenshot of the transactional opt-in unit to your Client Strategy Manager or the White Glove team (email@example.com) for review prior to implementation. Our team will review the opt-in unit with compliance in mind.
The following image is an example transactional opt-in checkbox:
✅ You should now have a transactional opt-in unit that has been reviewed by legal
Note: Once your transactional opt-in unit is reviewed by our legal team, we'll provide you with the unique SignUpSourceID that you'll need in your API call in Step 5.
Step 2: Create a custom app
A custom app is required to generate an API key in order to use any of our APIs. You can use the /me endpoint to test that you are authenticating correctly.
You should treat your API key as a password and keep it secure. If it is accidentally shared, other users may be able to send messages to customers on your behalf.
✅ You should now have access to make calls to Attentive's APIs
Step 3: Send Attentive transactional events
The Custom Events API allows you to send Attentive the transactional events that you’d like to message your customers about.
The Attentive API documentation site provides comprehensive documentation on each of our APIs. Our APIs were built with ease of use in mind and should be a low development lift to implement.
Each event that is sent can trigger a unique automation. Each property about an event can be inserted dynamically into a message. See the following table for example events and event properties:
|Example Events||Example Event Properties|
✅ You should now be sending events to Attentive through the Custom Events API
Step 4: Build transactional journeys
From the Journeys tab, select Create Journey and then choose Custom Journey. From here you should see a list of all of your triggers, including any custom events:
After selecting your trigger, select Notify subscribers about a transaction. You can view more information on the difference between transactional and promotional journeys:
Add any specific event properties as a dynamic macro to your message, such as an order status link or an order number.
✅ You should now be ready to send transactional messages with Attentive
Step 5: Send Attentive transactional subscribers
Use the Subscribers API to programmatically opt-in customers who want to receive transactional messages.
You'll need the unique SignUpSourceID we provided you in Step 1 for your API call.
The customer will be opted in to transactional messages if:  the customer entered their phone number and  the transactional opt-in unit was checked at the time of purchase.
✅ You should now be collecting transactional subscribers
Step 6: Test API implementation
In order to test that the implementation is working as expected, we recommend that you make an API call with your own phone number that's an active SMS subscriber.
To test your custom transactional journey: