A phone showing a casino offer text message standing between two server racks, joined by glowing API links

The mobile-first SMS gateway for iGaming

Seamlessly integrate our powerful bulk SMS API into your existing platform and CRM.

RESTful API

CRM Plugins

Omnichannel Ready

24/7 Developer Support

Quick-start code snippets

The sandbox is free and self-serve, with no sales conversation in front of it. Issue yourself a key, send one of the bodies below, and read the receipt. Every state a live handset can produce, failures included, is reproducible there.

  • Idempotency honoured for twenty four hours
  • Channel resolved per handset, SMS fallback built in
  • Same payload and same error codes in both environments
Quick-start code snippets
$mr = new MessageReach($_ENV['MR_KEY']);

$msg = $mr->messages->send([
  'sender'   => 'LUXPLAY',
  'to'       => '+35799xxxxxx',
  'template' => 'free_spins_v4',
  'channel'  => 'sms',
  'vars'     => ['spins' => 50, 'expires' => '00:00'],
]);

echo $msg->id;      // msg_01K4TQ8V
echo $msg->state;   // queued
Five SDKsPHP, Node, Python, Go and Java, each tracking the live release and installed the way that language expects.
Scoped keysPer environment and per route class, so a marketing key cannot send transactional traffic or the reverse.
OpenAPI 3.1A complete machine-readable spec on every version bump, ready to scaffold a client in whatever your team writes.

164

markets reachable over direct binds

22k

messages per second at peak on one key

99.97%

gateway uptime, rolling twelve months

180 ms

median gateway accept time

What the gateway does for you

The things that are hard about operator messaging are routing, consent and peak load. All three live on our side of the wire so they cannot become your incident.

Bulk sends that do not queue behind anyone

Throughput is provisioned per key with a burst allowance you set yourself, so a jackpot minute on another account never becomes your backlog.

One message object, three channels

Send as SMS, upgrade to RCS where the handset supports it, and fall back automatically. Same payload, same receipt, same reporting.

Licence-aware routing

Your licence footprint sits on the key itself. A number in a country you are not cleared for never reaches a carrier; it comes back 409 instead of vanishing.

Consent that the gateway enforces

Consent is held per number, with where it came from and when. No message is built without a lookup, and a player who texts STOP falls out of the next campaign.

Quiet hours from the destination

The player's own country sets the clock, not wherever your account is registered. Anything caught by a closed window waits and goes out when it opens.

Reporting down to the segment

Ask what a campaign cost per market, per class and per segment, then pull the numbers yourself over whatever dates you name.

Connectors maintained by us

PylonhouseAperia CRMSpoolworksCrestlineLedgerbayOrbiterPrismstackTallyroomPylonhouseAperia CRMSpoolworksCrestlineLedgerbayOrbiterPrismstackTallyroom

Operators already running on it

My retention team never opens a messaging console any more. They build the segment where they always did, and the handset decides whether it gets a rich card or a plain text.
Signe Halvorsen, Retention leadSigne HalvorsenRetention lead, three-brand casino group, Nordics
We inherited nine operator brands with nine sender names and nine sets of paperwork. Handing the registrations over was the first week in two years nobody chased a network by email.
Kwabena Asante, Director of platform servicesKwabena AsanteDirector of platform services, sportsbook supplier, Accra and London
Players reply to marketing messages. They always did, we just never saw it. Those replies now land threaded against the send, and two of my agents work nothing else.
Nico Salvatierra, Mobile product ownerNico SalvatierraMobile product owner, live casino operator, LatAm

Questions we get asked first

Stelios Andreou and the integration team answer these themselves. If yours is not here, the same people are on the other end of the contact form.

How fast can we be live?

Ten minutes gets a test message onto a phone. What holds a launch up is never the code, it is getting your sender name cleared on each network, and that takes three days to four weeks by market.

Whose carrier connections are we sending over?

Ours. Every message hands off straight to the operator, with no reseller sitting in the middle, which is why a failure comes back in the carrier's own wording rather than a guess.

Can we keep our existing sender identity?

Keep it. Whatever name players already recognise in their thread, we file it and renew it in each market, and the console shows where every application sits so nothing goes quiet on you.

Who keeps up with the regulators in each country?

We track each market's rulebook and roll the changes out for you. If something you send today would stop being allowed next month, a warning event lands first, ahead of the failures.

Is there an SDK or is it raw HTTP?

Either. There are libraries for PHP, Node, Python, Go and Java, plus a public OpenAPI file if you would rather roll your own. Plenty of teams just post JSON and skip all of it.

How do you handle inbound and STOP?

A reply comes back on the subscription you already listen on, tied to the message that prompted it. STOP and its local variants are caught before they reach you, suppressing the player within a second even while your service is down.

Send your first message today

Grab a free sandbox key and watch every delivery state land in the console. For live traffic MessageReach clears sender registration in each market and runs the binds.