Separate service messages from marketing
A booking confirmation, a reminder for an existing appointment and a promotional campaign serve different purposes. Document those purposes separately. Do not assume that providing a phone number to book an appointment automatically gives permission for unrelated promotions.
Inqloop records WhatsApp marketing consent as opted in or opted out on the customer profile and exposes that state in customer filters. Campaign preparation requires an approved template and an opt-in check. This supports a consistent process, but the business remains responsible for the lawful basis and wording it uses.
Keep evidence with the customer record
- Record the exact wording the customer saw, the source, date and time of the choice.
- Do not preselect marketing permission or bundle it into terms that are necessary to make a booking.
- Keep the phone number and consent record tied to the same customer identity.
- When permission changes, retain the event history instead of silently overwriting the old state.
- Restrict access to exporting or changing consent records to staff who need it.
Respect conversation and template constraints
In the shared inbox, free-form replies depend on the active WhatsApp customer-service window. Outside that window, the product requires an approved template rather than allowing unrestricted free text. Template approval is a platform requirement; it is not evidence that every recipient consented to a campaign.
Keep confirmations and reminders factual. For marketing campaigns, select only customers with the appropriate opt-in, state the sender clearly and give a simple way to stop future messages.
Make opt-out immediate and testable
Train staff to recognise opt-out language even when it does not match one exact keyword. Update the customer record promptly, exclude opted-out contacts from future marketing selections, and acknowledge the change without adding another promotion. Test the process from inbound message to campaign audience; a policy is ineffective if an exported list can bypass it.