seven.io / craft
Send SMS and make text-to-speech calls via seven
Requires
- craftcms/cms: ^3.1.0
- sms77/api: ^2.3.0
This package is auto-updated.
Last update: 2026-04-28 12:11:42 UTC
README
seven SMS & Voice for Craft CMS
Send SMS and text-to-speech messages from Craft CMS and Craft Commerce via the seven gateway.
Features
- SMS Messaging - Send single messages via control panel or programmatically; bulk-send to Craft Commerce customers
- Voice Messaging - Place text-to-speech calls, with XML mode and JSON-response toggle
- Craft Commerce Integration - Bulk messaging with country-based filtering and automatic phone-number extraction
- Advanced Options - Delay, flash SMS, performance tracking, custom labels, foreign IDs
Prerequisites
- Craft CMS 3.1.5 or newer
- (Optional) Craft Commerce 2.x for bulk messaging
- A seven account with API key (How to get your API key)
Installation
Composer
cd /path/to/craft-project
composer require seven.io/craft
./craft install/plugin seven
Plugin Store
Install seven from the Craft Plugin Store.
Configuration
Open Settings > seven in the Craft control panel:
| Field | Description |
|---|---|
| API Key | Your seven API key (required) |
| From | Default sender ID. Up to 16 characters |
Usage
Control Panel
- seven SMS - Send single or bulk SMS
- seven Voice - Place single or bulk voice calls
For bulk Commerce messaging, leave the recipient field empty and pick countries to filter.
Programmatic SMS
use Seven\Craft\Plugin; $sms = Plugin::getInstance()->getSms(); $sms->params ->setTo('+4901234567890') ->setText('Your message') ->setFrom('YourCompany') ->setDelay('2024-12-31 23:59') ->setFlash(true) ->setLabel('campaign-2024') ->setPerformanceTracking(true); $success = $sms->send();
Programmatic Voice
use Seven\Craft\Plugin; $voice = Plugin::getInstance()->getVoice(); $voice->params ->setTo('+4901234567890') ->setText('Hello there') ->setFrom('YourCompany') ->setXml(false) ->setJson(true); $success = $voice->send();
Available parameters
SMS (SmsParams): setTo, setText, setFrom, setDelay, setFlash, setForeignId, setJson, setLabel, setPerformanceTracking
Voice (VoiceParams): setTo, setText, setFrom, setXml, setJson
Error handling
send() returns true for success (API response 100) or false on failure. Detailed errors are logged via Craft's error handler.
Support
Need help? Feel free to contact us or open an issue.