GatewayAPI

Beskrivelse

Send SMS notifications for WooCommerce orders, create SMS campaigns, manage contacts, and add two-factor authentication – powered by GatewayAPI.com.

📝 Description

GatewayAPI for WordPress is a powerful SMS plugin that combines WooCommerce transactional SMS notifications with a high-performance campaign and contact management system.

The plugin allows you to automatically send SMS messages when WooCommerce orders change status, as well as create and send personalized SMS campaigns to large contact lists.

You can also add an extra layer of security to your WordPress site with SMS-based two-factor authentication, helping protect your login process with verification codes sent directly to your mobile device.

Version 2 is a complete rewrite of the plugin, with a strong focus on performance, reliability, and modern WordPress standards.

All SMS messages are delivered via GatewayAPI.com, one of Europe’s leading SMS gateways.

⭐ Hovedfunktioner

🛒 WooCommerce SMS Notifications

  • Send automatic SMS messages based on WooCommerce order status changes
  • Separate message templates for customer and internal recipients
  • Fully configurable per order status
  • Supports all standard WooCommerce order statuses

🔐 Two-Factor Authentication

  • Add an extra layer of security to your WordPress login
  • SMS-based verification codes sent automatically during login
  • Can be limited to specific roles and phone countries
  • Works with standard WordPress authentication
  • Uses GatewayAPI’s reliable SMS delivery

📢 SMS Campaigns & Broadcasts

  • Send SMS campaigns to large contact lists
  • High throughput and stable delivery using Action Scheduler
  • Designed to work reliably even on shared web hosting
  • Background processing

📇 Contact & List Management

  • Manage contacts directly in WordPress
  • Import and export contacts using CSV files
  • Store custom fields per contact
  • Reusable contact lists for campaigns
  • Use contact fields for mail-merged SMS content

✉️ Personalized Message Templates

  • Mail-merge support for campaigns and WooCommerce messages
  • Use dynamic placeholders such as customer data, order data, and custom fields
  • Supports both GSM and Unicode SMS
  • Configurable sender ID per message

🧩 Frontend Shortcodes

  • Signup: Allow users to subscribe to your SMS lists directly from your website.
  • Update Profile: Enable users to update their contact details and group subscriptions.
  • Unsubscribe: Provide a simple way for users to opt-out of SMS communications.
  • Send SMS: Enable SMS sending from the frontend (e.g. for internal tools).

🚀 Built for Reliability & Scale

  • Uses Action Scheduler (the same job system used by WooCommerce)
  • Non-blocking background processing
  • Suitable for very large campaigns (100,000+ recipients)
  • No PHP timeouts or long-running requests

⚠️ Coming from v1.x? Some features are gone

The following features are not part of this plugin anymore:

  • Receiving or processing incoming SMS messages
  • Contact Form 7-integration

These features had very low usage and were removed to simplify the plugin. If you need this, consider the legacy version of the plugin (any version before 2.0).

🌍 About GatewayAPI.com

  • Founded in 1999
  • One of Europe’s leading SMS providers
  • Kontorer i København, Odense og Aalborg i Danmark
  • Hundreds of millions of SMS messages delivered yearly
  • No subscriptions – pay only for what you send
  • Fast and reliable SMS delivery worldwide

🔧 Installation

  1. Create a free account at https://gatewayapi.com/
  2. Installér og aktivér plugin’et.
  3. Go to GatewayAPI Settings
  4. Add your API Token from your GatewayAPI.com account
  5. Play around! Send a test campaign or setup a WooCommerce Order hook

🚀 Kom godt i gang

🛍️ WooCommerce Notifications

After installation, you can enable SMS notifications per WooCommerce order status.
Each status can send messages to customers, internal recipients, or both.

Place a test order to confirm everything is working as expected.

📨 Campaign Messaging

You can create SMS campaigns without WooCommerce:

  • Import contacts via CSV or add them manually
  • Organize contacts into lists
  • Create a personalized SMS campaign

🔐 Two-Factor Authentication

To add SMS-based two-factor authentication to your WordPress site:

  • Go to GatewayAPI Settings Two-Factor
  • Enable two-factor authentication
  • Configure which user roles should use two-factor authentication
  • Optionally limit to specific phone countries for security
  • Set a grace period if needed

🧩 Shortcodes

The plugin provides shortcodes to integrate SMS features into your frontend.

📝 Common Attributes

  • action: (required) One of signup, update, unsubscribe, send_sms.
  • recaptcha: Set to 1 to enable Google reCAPTCHA (must be configured in settings).
  • embed_css: Set to 1 to embed basic styling for the form.
  • groups: Comma-separated list of group/tag IDs to target.
  • allowed_countries: Comma-separated list of country codes (e.g., 45,44).

➕ Signup Form

[gatewayapi action=”signup” groups=”1,2,3″]

🔄 Update Profile

[gatewayapi action=”update”]

❌ Unsubscribe

[gatewayapi action=”unsubscribe”]

✉️ Send SMS

[gatewayapi action=”send_sms” groups=”1″]

Security Warning: The send_sms action allows sending SMS messages from your frontend. This can be dangerous if left open to the public as it could be abused to send spam or drain your GatewayAPI credits.

We strongly recommend combining this with a security system, such as:
* Placing the shortcode on a password-protected page.
* Restricting access to specific user roles using a membership plugin.
* Always enabling recaptcha=”1″ to prevent automated abuse.

❓ Frequently Asked Questions

Can this plugin handle very large SMS campaigns?

Yes. Campaigns are processed using Action Scheduler, ensuring stable delivery, high throughput, and retries — even on shared hosting environments.

Does this plugin support personalized SMS messages?

Yes. You can use dynamic placeholders from contacts and WooCommerce orders to send fully personalized, mail-merged SMS messages.

Is WooCommerce required?

WooCommerce is only required for order-based SMS notifications.
Campaign messaging and contact management work without WooCommerce.

🔗 External services

This plugin connects to the GatewayAPI.com service to send SMS messages. This external service is required for the plugin’s primary functionality, which is delivering transactional and campaign SMS messages.

When sending an SMS, the plugin transmits the recipient phone number, message content, and related metadata (such as sender ID) to GatewayAPI.com. For WooCommerce notifications, order-related data may be used to generate the message content before it is sent.

No data is sent to GatewayAPI.com unless an SMS is actively being sent by the site administrator or triggered by configured WooCommerce events.

This service is provided by GatewayAPI ApS.

Privacy policy, terms and conditions, data processing agreement, and security certifications (including ISAE 3000 and ISAE 3402) are available at:
https://gatewayapi.com/security-and-compliance/

📋 Changelog

2.1.0

  • New feature: Shortcodes for signup, updating contact details, and unsubscription.
  • New feature: Shortcode for sending SMS from the frontend (use with caution and combine with security-system).
  • Bugfix: Contacts filtering by tag didn’t work.

2.0.8

  • The migration tool should now be available to all users of the 1.x-versions, as some were missing it.

2.0.7

  • Tool for easy and automatic migration of old contacts, contact fields and contact groups included.
  • Automatically migrates and uses old OAuth key.

2.0.5

  • Bugfix: For users upgrading from 1.x, a missing capability upgrade made the plugin unavailable until deactivate + reactivate.

2.0.4

  • Two-factor authentication has been re-added to the plugin.

2.0.2-2.0.3

  • No changes. These versions exist because we have been working on automating release processes.

2.0.1

  • Minor modifications to ensure best-practices as per WordPress guidelines.

2.0.0

  • Complete rewrite of the plugin!

1.8.3

  • Kompatibilitet op til WordPress 6.3.1.

1.8.2

  • Bugfix: Den indbyggede kortkode brugte som standard indlæggets titel som navn på den nye modtager. Nu er standardindstillingen ”, som forventet.

1.8.1

  • Bugfix: Den indbyggede kortkode til tilmelding fungerede ikke korrekt, når brugeren kunne vælge grupper.

1.8.0

  • Support til brug af vores GatewayAPI.eu-opsætning!
  • Fejlrettelse: 2FA-loginsikkerhed kunne mislykkes på PHP 7.4+.

1.7.6

  • Bugfix: Rettelse af, at GatewayAPI Shortcode for signup var stoppet med at gemme nogle metafelter siden 1.7.2.

1.7.5

  • Fejlrettelse: Standard landekode blev ikke anvendt korrekt i dropdowns for lande.

1.7.4

Kompatibilitet med Contact Form 7.

  • Bugfix: Tilmelding via Contact Form 7 fungerer igen (opgraderet til at være kompatibel med CF7’s nyere window.fetch-baserede tilgang til AJAX).
  • Bugfix: Bemærkninger i CF7-integration (PHP) og en skrivefejl, der forårsager en undtagelse i frontend JS på CF7-formularer.

1.7.3

Udgivelse af fejlrettelser.

  • Fejlrettelse: Gemning af modtageroplysninger ved hjælp af brugergrænsefladen og via Excel-importer virker igen korrekt.
  • Fejlrettelse: SMS Reply-funktionen virker igen.

1.7.2

Denne version styrker den overordnede sikkerhed takket være input fra en ekstern sikkerhedsrevision.

Vi anbefaler stærkt at opgradere til denne version, da den skærper sikkerheden i vores plugin, især på WordPress-installationer med flere brugere
som kan have brugere med lavere roller end redaktør.

  • Konsekvent brug af nonce’s i AJAX-anmodninger for at forhindre CSRF og forhindre eskalering af privilegier.
  • Enforce correct roles for various actions, preventing potential privilege escalation.
  • Forbedret sanitizing, validering og escaping af input og output.
  • Alle PHP-filer er nu sikret mod direkte adgang.
  • Refaktoriseret funktionspræfikser fra gwapi_, _gwapi_ og _gatewayapi_ til kun gatewayapi_.

1.7.1

  • Fejlrettelse: Meddelelser blev ikke sendt.

1.7.0

  • New: Notification module: Receive SMS-notifications when various actions occur in WordPress
    • BETA: Please get in touch if you have ideas/suggestions for improving this feature.
  • Nyt: Standard landekodefelt tilføjet (tidligere var alle landevælgere som standard +45/Danmark)
  • Nyt: Programmør-actions gwapi_form_subscribe og gwapi_form_unsubscribe tilføjet. Den første udløses når en ny modtager har tilmeldt sig via vores shortcode-formular og den anden når en modtager har afmeldt sig samme vej.
  • Optimering: Fjernet diverse ikke længere brugte tredjepartsafhængigheder.
  • Dansk oversættelse opdateret, inklusiv notifikationsmodulet.
  • Readme opdateret for at fortælle om notifikationsmodul og andre tekstforbedringer.

1.6.9

  • Nyt! Opret notifikationer automatisk for at give besked til modtagere via SMS, når en WP-action afvikles.

1.6.8

  • Fejlrettelse: Prefiks var ikke specificeret for alle instanser af db_table.

1.6.7

  • Fejlrettelse: Tidligere importerede modtagere blev ikke gen-importeret, hvis de var slettet.

1.6.6

  • Fejlrettelse: Når modtagere blev importeret, blev gruppemodtagere ikke korrekt genoptalt efter import var gennemført.

1.6.5

  • Forbedret: Import af modtagere optimeret.

1.6.4

  • Kompatibel med WordPress 5.5
  • Forbedret: Integration med kontaktformular 7 understøtter nu kortkode for obligatoriske felter
  • Tweak: Opdateret UI og beskrivelser.

1.6.3

  • Kompatibel med WordPress 5.4
  • Nye! Modtagergrupper kan nu som standard ikke markeres, når du bruger kortkode
  • Tweak: Mindre opdateringer til UI.

1.6.2

  • Tweak: The frontend forms now use regular SMS instead of Display SMS for two-factor, as requested by multiple users.
  • Bugfix: When using tags, the list of tags sent to GatewayAPI could end in a situation, with the same tag-data repeated.

1.6.1

  • Fjernet URL i to-faktor SMS, da den var unødvendig og gjorde at SMS’er blev blokeret af GatewayAPI’s nye link-scanner.

1.6.0

  • New! Custom encoding for SMS’es, allowing SMS’es with emojis and other special characters.
    • UI which detects what encoding should be used, always recommending the cheapest option (ie. most characters per SMS).
    • API-metoden gwapi_send_sms har nye argumenter for at indstille kodning.
    • Fuldt ud bagudkompatibel, falder tilbage på standard-kodning.
  • Kompatibel med WordPress 5.1

1.5.2

  • Kompatibel med WordPress 5.0.3.
  • Rettelse: Excel-eksport af modtagere virkede ikke med mindre “SMS-indbakker” var aktiveret.
  • Rettelse: Notitser ved Excel-eksport.

1.5.1

  • Opdateret den danske oversættelse (primært vedr. to-faktor-modul samt frontend-formularer).
  • Rettelse: Vores shortcode var ved en fejl blevet omdøbt. Vi understøtter nu både [gwapi] samt [gatewayapi].
  • Rettelse: To-faktor-modul gav fatal error på PHP 5. Rettede også generelle kode-notitser.
  • Rettelse: To-faktor-modul gav fatal error når man oprettede nye WordPress-brugere.

1.5.0

  • Nyt! To-faktor sikkerhedssystem til din WordPress! (valgfrit)
  • Nyt! Sortlist telefonnumre.
  • Forbedret: Søg efter modtager vha. telefonnummer virker.
  • Forbedring: Bedre understøttelse af 10.000+ modtagere + en progress-bar som viser løbende status for afsendelse.

1.4.2

  • Recipients:
    • Added option to blacklist phone numbers.
    • Tilføjet understøttelse for at søge i modtagerlisten efter telefonnummer (tidl. kun efter navn)
    • Tilføjet drop-down for modtagerliste, for filtrering efter gruppe.
  • Rettelse: Forbedret håndtering ved store modtagerlister (1.000+ modtagere i én afsendelse)

1.4.1

  • Rettelse: Liste over lande er nu altid korrekt bearbejdet, selv via JSON-fil (AJAX-baseret) ikke har korrekt mime-type.

1.4.0

Bemærk: v1.4.0 kan give problemer med dine gamle Contact Form 7-formularer, hvis de indeholder GatewayAPI-felter., da shortcode-syntax er blevet justeret for de fleste af vores felter. Det var nødvendigt aht. oprydning af inkonsistens. Venligst gen-tilføj GatewayAPI-felterne til dine Contact Form 7-formularer.

  • Contact Form 7:

    • Mulighed for at sende SMS’er via frontend.
    • Opdatering af modtager: Formular opdaterer nu kun felter som specifikt vedrører formular.
    • Oprydning og fejlrettelser, forbedret shortcode-syntaks.
  • Komplet brugervejledning til systemet (tilgængelig online).

  • Eksport af modtagere til Excel og CSV.

1.3.3

  • Contact Form 7: Tilføjet understøttelse af formularer som også indeholder et reCaptcha-felt.
  • Oprydning af koden

1.3.2

  • Fejlrettelse: Et menupunkt manglede i backend.

1.3.1

  • Ny brugerflade for at oprette automatiske handlinger. Understøtter pt. ‘autosvar’ baseret på keyword.

1.3.0

  • Understøttelse af at modtage SMS’er, inkl. en wizard til opsætning, samt indbakker.

1.2.3

  • Fejlrettelse: Den nye verifikations-SMS for Contact Form 7 havde en slåfejl som ødelagde verifikations-SMS’er.
  • Manglende oversættelser: Popup-beskederne relateret til verifikation var ikke oversat til dansk.

1.2.2

  • Bedre understøttelse af internationale telefonnumre: Prefikser automatisk 0’er i telefonnummeret.

1.2.1

  • User synchronization:
    • No longer requires a country code meta field, instead allowing a default country code when this value is missing.
    • Nu muligt at registrere en “engangs”-synkronisering.
  • Contact Form 7:
    • Now possible to send an SMS-reply on form success automatically.
    • SMS-validering ved tilmelding, før man kan logge ind.
    • Fejlrettelse: Validering virker nu for alle GatewayAPI-felter.

1.2.0

  • Contact Form 7: Integrationen understøtter nu tilmelding, opdatering og afmeld-formularerne i frontend. To-faktor nu muligt i opdaterings-flow.

1.1.6

  • Rettelse: Safari-problem med SMS-tegn-tæller.
  • Fejlrettelse: Skjult påkrævet felt gjorde Opsæt-siden ubrugelig.
  • Opdateret oversættelse af Dansk.

1.1.5

  • Understøttelse af automatisk synkronisering af WordPress-brugere til => modtagere (en-vejs) inkl. meta-felter og grupper.

1.1.4

  • Opdatere WordPress-pluginnets side

1.1.3

Fejlrettelser:
* Opsæt-siden indlæste ikke efter opdatering.
* Manglende CSS/JS.
* Et par kodenotitser løst.

1.1.2

  • Rettelse: Sidste skridt i tilmelding kunne fejl hvis bruger var gæst.

1.1.1

  • Fejlrettelse: Gæster fik ikke fornødent CSS og scripts.

1.1.0

Skærmbilleder

  • GatewayAPI authentication and general settings
  • SMS template editor with available placeholders
  • WooCommerce order status SMS configuration
  • Contact management and CSV import

Anmeldelser

17. august, 2018
This plugin add´s a really good feature with two factor authentication trough sms, very easy to setup and configure. Works without any app just simple sms so everybody can use it. Good feature is that you can also configure how often you need to verify login with sms.
3. september, 2016
Have tried several free and premium sms plugins for WordPress, this one was by far the most stable and feature rich
3. september, 2016
If you want to send SMS’es from WordPress and manage a list of recipients, perhaps even group them, then this plugin is excellent. It’s simple and it just works. Also a nice touch that you get €2 free of send-credit. Should get most people started as the GatewayAPI.com in general has some quite competitive pricing.
Læs alle 3 anmeldelser

Bidragsydere & udviklere

“GatewayAPI” er open source-software. Følgende personer har bidraget til dette plugin.

Bidragsydere

“GatewayAPI” er blevet oversat til 1 sprog. Tak til oversætterne for deres bidrag.

Oversæt “GatewayAPI” til dit eget sprog.

Interesseret i udvikling?

Gennemse koden, tjek SVN repository, eller abonner på udviklerloggen via RSS.