Skip to main content
Wavix customers can connect to our SMPP gateway to send and receive SMS messages and delivery reports (DLRs). Wavix supports SMPP protocol version 3.4.

SMPP bind parameters

You can connect to Wavix SMPP host using the following parameters:
ParameterMandatoryDescription
system_idYesYour SMPP connection username
passwordYesYour SMPP connection password
host/IP addressYesAlways use smpp.wavix.net
portYesUse 11337 as the primary port. Use 11338 for the encrypted SSL/TLS endpoint.
The length of the password required depends on your SMPP library rather than the SMPP v3.4 protocol itself. It is advised to use a library that enables a setup with a password length greater than 8 characters.

IP restrictions

Access to the Wavix SMPP service is limited to pre-registered IP addresses. Be sure to share your IPs in advance to ensure access.

Supported PDUs

Wavix supports the following PDUs:
  • bind_transmitter
  • bind_receiver
  • bind_transceiver
  • unbind
  • submit_sm
  • deliver_sm
  • enquire_link
  • generic_nack
Each request to our system gets an acknowledgment, as defined in the SMPP v3.4 standard.

Submitting messages via SMPP

Submit messages using the submit_sm PDU, and include content in either the short_message or message_payload field. If the request is successful, Wavix returns the submit_sm_resp with a success status (ESME_ROK) and a non-null message ID. If the request fails, the response includes an error code.

Character sets, message class, and data coding

Wavix supports the following data coding schemes:
  • GSM 03.38 (default). To use GSM 03.38 encoding, set data_coding to 0.
  • Unicode. To use UCS2 encoding, set data_coding to 0x08. The message is expected in UTF-16 Big Endian format.

Message originators and destination

Set the source_addr_ton and source_addr_npi fields based on your Sender ID type:
  • Alphanumeric: set the source_addr_ton to 5 and source_addr_npi to 0
  • Numeric: set the source_addr_ton to 1 and source_addr_npi to 1
The destination phone number must be in international E.164 format. Set the dest_addr_ton and dest_addr_npi fields to 1.

Concatenated messages

You can send messages longer than 160 characters (GSM 03.38) or 70 characters (UCS2). Such messages are automatically concatenated and appear as a single message on the recipient’s device. To send long messages, use one of these supported methods:
  • Use the message_payload field of the submit_sm PDU. Recommended method.
  • Use optional sar_msg_ref_num, sar_segment_seqnum, and sar_total_segments TLVs of the submit_sm PDU.
  • Use a UDH for concatenation with 8-bit or 16-bit reference numbers and set esm_class to 0x40.

Delivery reports

Delivery reports are sent in the short_message field of the deliver_sm PDU. Each delivery report includes these TLVs:
  • receipted_message_id – the message ID assigned by Wavix.
  • message_state – the current status of the message delivery.
  • user_message_reference – A message reference number set by the customer, if included in the submit_sm request.
  • network_error_code – A Wavix-specific error code, provided only when message_state is REJECTD.

Delivery report format

id:{message_id} sub:{message_sub} dlvrd:{message_dlvrd} submit date:{message_submit_date} done date:{message_done_date} stat:{message_stat} err:{message_err}

Delivery statuses

The delivery report can show one of the following message statuses:
StatusDescription
ENROUTESubmitted for delivery (interim)
DELIVRDSuccessfully delivered (final)
UNDELIVCouldn’t be delivered (final)
REJECTDRejected by a carrier, mobile device, or Wavix (final)
EXPIREDMessage validity period has expired (final)

Wavix-specific error codes

To help you troubleshoot your SMPP transaction, here’s what each error code means.

Throughput and throttling

By default, each account is limited to 20 requests per second (RPS). We recommend setting the SMPP window size (maximum number of open requests) to 10 for optimal performance. To maintain a stable connection, send the enquire_link request every 30 seconds.