WP Manifestindependent plugin directory
manifest / ecommerce / bgtel-sms-woocommerce

BG TEL SMS for WooCommerce

Send BG TEL SMS notifications when WooCommerce orders change status.

by BG TEL SMS · github.com/adnan-iz/bgtel-sms-woocommerce

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/adnan-iz/bgtel-sms-woocommerce/archive/refs/heads/main.zip

BG TEL SMS for WooCommerce sends SMS notifications through the official BG TEL SMS API when an order moves to a selected status.

The plugin supports asynchronous delivery, bounded retries, custom order statuses, international phone-number normalization, WooCommerce High-Performance Order Storage (HPOS), and duplicate-send protection.

Requirements

  • WordPress 6.2 or later
  • WooCommerce 8.0 or later
  • PHP 7.4 or later
  • A BG TEL SMS account with an account code, API key, and approved sender ID

Installation

  1. Download bgtel-sms.zip or clone this repository.
  2. If you cloned the repository, create a ZIP whose top-level directory is bgtel-sms.
  3. In WordPress, go to Plugins > Add New Plugin > Upload Plugin.
  4. Upload the ZIP, install it, and select Activate Plugin.
  5. Go to WooCommerce > BG TEL SMS to configure the integration.

See the user guide for configuration, testing, daily operation, and troubleshooting.

Features

  • Send notifications for any registered WooCommerce order status
  • Use transactional (T) or promotional (P) messages
  • Send text or Unicode messages
  • Insert order details with {order_id}, {status}, {total}, and {site_name}
  • Normalize local and international billing phone numbers
  • Queue delivery with WooCommerce Action Scheduler
  • Retry temporary failures up to two times after the initial attempt
  • Prevent repeat delivery for the same order and status after a successful send
  • Record results in order notes and the WooCommerce log
  • Test API credentials and view the current balance from the settings page

How delivery works

flowchart LR
    A["Order status changes"] --> B{"Status enabled and settings valid?"}
    B -- "No" --> C["Do nothing"]
    B -- "Yes" --> D["Queue delivery"]
    D --> E["Build message and normalize phone"]
    E --> F["Send through BG TEL SMS API"]
    F --> G{"Successful?"}
    G -- "Yes" --> H["Record order note and delivery state"]
    G -- "Temporary failure" --> I["Retry, up to 3 total attempts"]
    G -- "Permanent or final failure" --> J["Record order note and log entry"]

The plugin uses these API endpoints:

  • POST https://apipro.bgtelsms.com/balance
  • POST https://apipro.bgtelsms.com/onetomany

Security and privacy

  • Settings and credential tests require the manage_woocommerce capability.
  • The saved API key is not displayed again in the settings form.
  • API requests are sent over HTTPS.
  • Customer phone numbers are read from WooCommerce orders and are not copied into plugin-specific metadata.
  • Uninstalling removes the plugin settings but retains order notes and delivery metadata with the related orders.

WordPress stores the API key in the options table using its standard settings mechanism. Protect the WordPress database and restrict administrative access accordingly.

Documentation

Support

Before requesting support, review the order notes, WooCommerce > Status > Scheduled Actions, and WooCommerce > Status > Logs using the bgtel-sms source. Do not include API keys in screenshots, logs, or support messages.

License

Licensed under the GNU General Public License v2.0 or later.