Configuring ExpertTexting with WordPress WPSMS


Configure ExpertTexting with WordPress WPSMS Plugin

WordPress is a free and open-source content management system that have thousands of plugins developed that you can add to WordPress.

WPSMS is one plugin that adds the ability to send SMS on different triggers within the wordpress.

You can go ahead and download the plugin on your WordPress and follow the instructions thereon to configure using ExpertTexting SMS Gateway with your wordpress.

Once plugin has been installed, you should see SMS menu in your left menu bar.

Configuring ExpertTexting with WordPress WPSMS

Click on the settings option to see General Tab, Enter your number in international format without + or 00 in the Admin mobile number field, We have used our ET number as the admin number for all alerts by wordpress.

Configuring ExpertTexting with WordPress WPSMS

Press save changes and click Gateway tab.

From the gateway list, select if it is not already selected.

Configuring ExpertTexting with WordPress WPSMS

You are required to fill in following details from your ET Account on the settings page.

Option Details Where to find ?
API username This is same as your ET account username. Your ET Username
API password This is same as your ET account password. Your ET Password
Sender Number In most cases set this to DEFAULT to use default settings by ET, If you have a dedicated number or SenderID activated on your ET account

you can use it here instead of DEFAULT.

API Key API Key as generated from your ET Customer Portal, Profile or Account Settings option Where is my API Key ?

Your Settings page should look like this with your Configurations.

Configuring ExpertTexting with WordPress WPSMS

Hit Save Changes on the bottom of the page, If the integration is successful you should see this.

Configuring ExpertTexting with WordPress WPSMS

Successful integration would show your current ET account balance in Result request field.

If you still donot see Active status, please feel free to reach out to our support team by sending an email to from your registered email address and our team will be able to assist you further.

Happy Texting 🙂

ExpertTexting does not maintain or is associated with WP SMS or its development. “WP SMS” which is an open source software maintained by third party developers and available as free and professional version.


TLS Upgrade

TLS v1.2 Upgrade – What you Need to Know.

ExpertTexting uses HTTPS to securely exchange sensitive data such as credit cards/Paypal payments  processing and allowing API Access for integration purposes. To encrypt these communications, we use the Transport Layer Security (TLS) protocol.

TLS 1.2 is one of the most secure versions of SSL/TLS protocol that is designed to prevent eavesdropping, tampering, or message forgery. ExpertTexting now requires TLS 1.2 in order to ensure the continuous security adhere to industry best practices.

What’s Required:

All API Customers must update their software, browser and hardware to support security protocol TLS v1.2.

Why do we need to make this change?

The PCI Security Council sets the rules on which technologies are acceptable for use in transmitting cardholder data. They have explicitly identified TLS 1.0 & TLS 1.1 as no longer being a strong form of encryption because they are vulnerable to many known attacks.

This is not an action ExpertTexting is taking alone. EVERY website that transmits or processes credit card data will be making this change. If you are using an insecure or unsupported browser or API client, you will find that all secure websites will stop working very soon.

From March 01  2018, the ExpertTexting API and it’s web portal will require TLS v1.2 in order to ensure the continuous security adherence to industry’s best practices.

Browser Support

Most browsers have supported TLS 1.2 for several years.

The following browsers DO NOT support TLS 1.2 and will no longer work.

  • Google Chrome 29
  • Firefox 26
  • Internet Explorer 10
  • Safari 8
  • iOS 4
  • Android 4

How do I upgrade my integration from TLS 1.0 to TLS 1.2


JAVA support

Version = JDK/JRE 7 Client                    (Yes, but support for TLS v1.2 must be enabled manually)
Version = JDK/JRE 7 Server & above   (Yes, TLS v1.2 is enabled by default)
Version = JDK/JRE 6 or below               (Not supported)

Open SSL support

Your Open SSL version must be 1.0.1 or higher.


  • .NET 4.6: TLS 1.2 is used automatically. No changes are necessary.
  • .NET 4.5: The SecurityProtocolType needs to be changed to Tls12 (using the SecurityProtocol Setter), add the following line above the first request.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
  • .NET 4.0: TLS 1.2 is supported, but there’s no named SecurityProtocolType enumeration. Use (SecurityProtocolType)3072.
  • .NET 3 and below: Must be upgraded to 4.5


TLS 1.1 and TLS 1.2 are supported since OpenSSL 1.0.1

Forcing TLS 1.1 and 1.2 are only supported since curl 7.3.4

Reference URL for CURL Options:

If you are using older versions of PHP or OPENSSL use following command to update packages.

yum update nss curl openssl

After the updates you should see that cURL is working with TLS greater than 1.0. Simple test code:


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, “”);
curl_setopt($ch, CURLOPT_SSLVERSION, 6); // TLS 1.2
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);$tlsVer = json_decode($response, true);
echo “<h1>Your TSL version is: <u>” . ( $tlsVer[‘tls_version’] ? $tlsVer[‘tls_version’] : ‘no TLS support’ ) . “</u></h1>”;

In case the workaround doesn’t work, please try to update your Operating System to the newer version.


Ruby uses the system openssl. OpenSSL v0.9.8 will no longer work, but later versions work without any changes required.

In-case you still need any support with the upgrade, Get in touch with our support team at



Availability of Rest API

With many new features being added to ExpertTexting, one of the latest addition is the REST API that allows other apps and platforms to interact with ExpertTexting. It’s a revolutionary addition that will help developers build custom applications and integrate systems with ExpertTexting.

ExpertTexting API exposes a set of RESTful endpoints that enable your application to send messages and GET information such as message status, query account balance, read unread message etc.

Click Here for Rest API Documentation.


Sample code

API Sample Code


As requested, sample code for the api is now available, download them now, It is available for the following languages at the moment.


If it still does not fulfill your needs, Check out how to use it as HTTP Request.


Happy Texting !!


Sending OTP and Alerts using ShortCode

How to send OTP , Alerts using ShortCode

Sending OTP, Alerts, Notification is frequently required service.

Alerts / Notification campaigns are used to set a pre-defined template with dynamic variables which can later be used via Rest API. These variables are defined dynamically i.e. add “@{“ before your variable word and add “}” after it. For example: @{phonenumber}, @{number}, @{code} are all valid variables.

How to create it ?


Sending OTP and Alerts using ShortCode


That’s It, Just submit the details and after approval you will be able to use it,.

Each Campaign is provided with a campaign key which is private and unique for all campaigns and will be required as parameter for HTTP Rest Calls.

Upon creating alert/notification campaign, you will get an API URL which will have parameters for all the custom variables you defined in the message text. You will use this API to run this campaign.
For example: you entered the following text in the message of your campaign:

“Hello @{name}, your mobile verification code is @{code}

The API URL will look like :

You will have to replace all the variables (words that begin and end with “{ }”) in the above URL with the actual data before accessing the URL.

Just call our HTTP Rest API and with required parameters and our Intelligent system does the rest.


Happy Texting 🙂


SMS Reseller

How it Works?

Step 1: Request to convert your account to Reseller account by sending an email at
Step 2: You’ll get a reply from Sales team for account updgrade, Now you can see Sub-Accounts option under your ET Account area.
Step 3: Create New accounts by using Sub-Accounts options
Step 4: You can give sub-accounts to your customer and ask them to login at website GlobalBulkSMS.Net

Current Available features:

1 – Custom Pricing – You can set custom pricing/rates for your customer by using Price List option with each sub account
2 – Add funds – You can add as many virtual credit to your customer account. (your customer will be billed as per your price list, and you’ll be billed as ET rates for same message)

Reseller – FAQs

1. How billing will be done?
Answer: You’ll be charged as per ET rates given to you, and your customer will be charged from virtual credit as per your price list you set up for specified destination.
2. What if my Main account balance ended up?
Answer: All the messages your customer execute from sub-account will be FAILED.
3. What if my customer account balance ended up?
Answer: All the messages your customer execute from his account will be FAILED.
4. How can i collect/receive payments from my Customer?
Answer: You can collect payments from your customer by any mean.
5. Is there any fee associated with Reseller Main Account?
Anwer: When ever your account is upgraded to Reseller account, it’ll be 7-day free trial, afterwards you’ll be billing as USD $10.00 per month for each sub-account. It’ll be waived if your sub-account volume exceeds 100k text messages per month.

ExpertTexting SMS API in PHP

Using ExpertTexting SMS API in PHP

Many of our customers have been asking for integration with PHP. Here is sample code and class files for your easy integration .


To start with lets write a base class with basic functionality which performs the following tasks.

  1. Send SMS
  2. Send Multilingual (Unicode) SMS
  3. Query Balance

Please make sure to replace the variables in bold with your experttexting account details and the sms details before using this example.

class experttexting_sms{
public $base_url_SendSMS= ‘’;
public $base_url_SendSMSUnicode= ‘’;
public $base_url_QueryBalance=’’;

public $username= ‘Your UserName Here’;

public $password= ‘Your Password Here’;

public $apikey= ‘Your API Key Here’;

public $msgtext= ”;

public $from= ”;

public $to= ”;
function send(){
$fieldstring = “Userid=$this->username&pwd=$this->password&APIKEY=$this->apikey&MSG=$this->msgtext&FROM=$this->from&To=$this->to”;

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$res = curl_exec($ch);
return $res;


function sendUnicode(){
$fieldstring = “Userid=$this->username&pwd=$this->password&APIKEY=$this->apikey&MSG=$this->msgtext&FROM=$this->from&To=$this->to”;

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$res = curl_exec($ch);
return $res;


function QueryBalance(){
$fieldstring = “Userid=$this->username&pwd=$this->password&APIKEY=$this->apikey”;

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$res = curl_exec($ch);
return $res;






require_once(‘expt.php’); // Include SMS base class file. download from the URL above

$expertTexting= new experttexting_sms(); // Create SMS object.

$expertTexting->from= ‘SENDERID’; // Sender of the SMS – PreRegistered through the Customer Area.
$expertTexting->to= ‘Receiver Number’; // The full International mobile number of the without + or 00
$expertTexting->msgtext= ‘SMS text’; // The SMS content.
//echo $expertTexting->send(); // Send SMS method.

echo $expertTexting->sendUnicode(); // Send Multilangual SMS method.

//echo $expertTexting->QueryBalance(); // Query Your Account Balance method.