TelQ logo

SMS Testing Tool

Your online platform for verifying SMS delivery and SMS route features
to enhance your business messaging.

The main interface of TelQ SMS testing tool
Tooltips for the main interface of TelQ SMS testing tool

Testimonials of TelQ Customers

SMS Testing In Three Steps

1. Choose a route to test and create a test message matching your usual content.

2. Receive detailed data on delivery status, content & Sender ID reception, and more.

3. Use this data to choose the best routes, save valuable resources and improve your conversion rates.

TelQ Platform's Main Features

SMS testing

Test real SMS delivery

Send a test message to our local test numbers and check if it is delivered as expected. Compare the real receipt status from our handset with the delivery report of your SMS gateway supplier to identify fake delivery reports and ensure optimal SMS traffic routing.

Fake delivery detection - Identify fake delivery reports by comparing your supplier's DLRs with the real delivery status from our local test numbers.

MNP support - Send tests to ported numbers to see if your bulk SMS supplier correctly supports Mobile Number Portability.

Explore SMS testing tool features

How does TelQ work?​

How TelQ testing tool works

Why TelQ?

Extensive Test Number Coverage​

150 +
countries
1000 +
Networks
10000 +
test numbers

Learn more about our coverage and SMS test numbers

TelQ prices: Choose the best pricing model

You have an option to select prepaid or postpaid payment terms, depending on your needs.

Popular

Prepaid

0.30-0.60
  • No commitment & no expiration
  • Pay as you go
  • Price based on top-up amount
See our prices

Postpaid

0.25
  • €250 monthly commitment
  • Monthly invoices
  • Price based on the number of tests
See our prices
				
					use TelQ\Sdk\Models\Destination;
use TelQ\Sdk\Models\Tests;

// new Destination('mcc', 'mnc', 'ported from mnc')
$sendTests = Tests::fromArray([
    'destinationNetworks' => [
        new Destination('222', '36', '10'),
        new Destination('505', '01')
    ],
    'resultsCallbackUrl' => 'https://my-domain.com/telq-callback',
    'maxCallbackRetries' => 3,
    'testIdTextType' => 'ALPHA',
    'testIdTextCase' => 'MIXED',
    'testIdTextLength' => 6,
    'testTimeToLiveInSeconds' => 3600
]);
$tests = $api->sendTests($sendTests);
foreach ($tests as $test) {
    echo 'Id: ', $test->getId(), PHP_EOL;
    echo 'PhoneNumber: ', $test->getPhoneNumber(), PHP_EOL;
    echo 'TestIdText: ', $test->getTestIdText(), PHP_EOL;
    echo 'Error message: ', $test->getErrorMessage() ?: 'empty', PHP_EOL;
    echo 'Destination:', PHP_EOL;
    echo '    Mcc: ', $test->getDestinationNetwork()->getMcc(), PHP_EOL;
    echo '    Mnc: ', $test->getDestinationNetwork()->getMnc(), PHP_EOL;
    echo '    Ported from mnc: ', $test->getDestinationNetwork()->getPortedFromMnc() ?: 'empty', PHP_EOL;
    echo PHP_EOL;
}
				
			
				
					curl -X POST "https://api.telqtele.com/v2.1/client/tests" -H "accept: */*"
  -H "Content-Type: application/json" -d "{ \"destinationNetworks\": [ { \"mcc\": \"208\",
      \"mnc\": \"10\", \"portedFromMnc\": \"20\" } ] }"

# Example of body with all available parameters
{
  "destinationNetworks": [
    {
      "mcc": "206",
      "mnc": "10",
      "portedFromMnc": "20"
    },
    {
      "mcc": "716",
      "mnc": "06",
    }
  ],
  "resultsCallbackUrl": "https://some-callback-url.com/some-path",
  "testIdTextType": "ALPHA_NUMERIC",
  "testIdTextCase": "MIXED",
  "testIdTextLength": "6",
  "maxCallbackRetries": 1,
  "testTimeToLiveInSeconds": 200
}
				
			
				
					destinationNetworks = [
    {
        "mcc": "206",
        "mnc": "10",
        "portedFromMnc": "20"
    },
    {
        "mcc": "716",
        "mnc": "06"
    }
]

requested_tests = test_client.initiate_new_tests(
    destinationNetworks=destinationNetworks,
    resultsCallbackUrl="https://my-callback-url.com/telq_result",
    maxCallbackRetries=3,
    testIdTextType="ALPHA_NUMERIC",
    testIdTextCase="MIXED",
    testIdTextLength=7,
    testTimeToLiveInSeconds=3000
)
requested_tests = test_client.initiate_new_tests(destinationNetworks=destinationNetworks)
				
			
				
					List<Network> networks = new ArrayList<>();

  Network network_1 = Network.builder()
    .mcc("206")
    .mnc("10")
    .portedFromMnc("20")
    .build();

  Network network_2 = Network.builder()
    .mcc("716")
    .mnc("06")
    .build();

  networks.add(network_1);
  networks.add(network_2);

  int maxCallBackRetries = 1;
  String resultsCallbackUrl = "https://some-callback-url.com/some-path";
  int testTimeToLive = 200;
  String callBackToken = "peHWFdAXikjzmMgqPTwhpeHWFdAXikjzmMgqPTwhpeHWFdAXikjzmMgqPTwh";

  TestIdTextOptions testIdTextOptions = TestIdTextOptions.builder()
    .testIdTextType(TestIdTextType.ALPHA_NUMERIC)
    .testIdTextCase(TestIdTextCase.MIXED)
    .testIdTextLength(6)
    .build();

  TestRequest testRequest = TestRequest.builder()
    .networks(networks)
    .maxCallbackRetries(maxCallBackRetries)
    .callbackUrl(resultsCallbackUrl)
    .callbackToken(callBackToken)
    .testTimeToLive(testTimeToLive)
    .timeUnit(TimeUnit.MINUTES)
    .testIdTextOptions(testIdTextOptions)
    .build();

  List<Test> requestedTests = testClient.initiateNewTests(testRequest);
				
			

REST & SMPP API integration

REST API provides you with full flexibility to integrate SMS quality testing into your system. 

We also provide integration through SMPP and direct integration with the Alaris and Horisen SMS platforms.