Essentials
API essentials
National Language Shift

National Language Shift

In addition to the standard SMPP 3.4 features, we support National Language Shift (NLI), which enables the use of language-specific characters. This functionality is available over SMPP (opens in a new tab), Broadcast, and HTTP API (opens in a new tab).

National Language Shift uses language-specific character sets that allow you to send special characters at the same cost as standard GSM-7 messages. The tables below list supported languages.

For example, Turkish characters such as ğ, Ğ, can be sent at the cost of a single GSM-7 character. Normally, these would require Unicode, reducing the message length to 70 characters, but with NLI and User Data Header (UDH), the limit is 155 characters.

Locking Shift vs. Single Shift

  • Locking Shift: Characters from the extended set do not reduce the message length (remains 155 characters).
  • Single Shift: Each extended character requires an escape character, which reduces the available message length by 1.
    • Example: In Spanish, the letter Ú is only available in the single shift set. If 3 such characters are used, the length reduces from 155 to 152 characters.
    • Example encoding: 1B551B is the escape character, 55 is Ú from the extended set.

Technical notes

  • Language selection is defined in the UDH using the Information-Element-Identifier (IEI) to specify single or locking shift.
  • The ESM class parameter must be set to 64.
  • Valid data coding values are 0 or 1.

Locking Shift example UDH

UDH length

IEI (Information Element Identifier)

IE length

Selected shift

03250101
Remaining UDH length in bytesNational Language Locking Shift Locking Shift - Turkish

Single Shift example UDH

UDH length

IEI (Information Element Identifier)

IE length

Selected shift

03240102
Remaining UDH length in bytesNational Language Single Shift Single Shift - Spanish

UDH Identifier reference

Below is a UDH reference for each language and here is a detailed character set reference for GSM 7 (opens in a new tab).

Language

Single Shift

Locking Shift

UDH Identifier

ReservedBasicBasic0x00
TurkishTurkishTurkish0x01
SpanishBasicSpanish0x02
PortuguesePortuguesePortuguese0x03
BengaliBengaliBengali0x04
GujaratiGujaratiGujarati0x05
HindiHindiHindi0x06
KannadaKannadaKannada0x07
MalayalamMalayalamMalayalam0x08
OriyaOriyaOriya0x09
PunjabiPunjabiPunjabi0x0A
TamilTamilTamil0x0B
TeluguTeluguTelugu0x0C
UrduUrduUrdu0x0D

Need assistance

Explore Infobip Tutorials

Encountering issues

Contact our support

What's new? Check out

Release Notes

Unsure about a term? See

Glossary
Service status

Copyright @ 2006-2025 Infobip ltd.

Service Terms & ConditionsPrivacy policyTerms of use