seven.io/craft

Send SMS and make text-to-speech calls via seven

Maintainers

Package info

github.com/seven-io/craft

Documentation

Type:craft-plugin

pkg:composer/seven.io/craft

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 1

Open Issues: 1

v1.0.0 2021-04-20 09:08 UTC

This package is auto-updated.

Last update: 2026-04-28 12:11:42 UTC


README

seven logo

seven SMS & Voice for Craft CMS

Send SMS and text-to-speech messages from Craft CMS and Craft Commerce via the seven gateway.

MIT License Craft 3.1.5+ PHP 7.2+ Packagist

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

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.

License

MIT