# SMPP SMSC Trunk

SMPP SMSC (Short Message Service Center) trunks let the DIDWW system act as an ESME (External Short Messaging Entity)
and connect to your SMSC server or application. This setup is mainly used to receive inbound SMS, but it also supports
outbound delivery for two-way communication.

**Create Trunk**

Create and configure a new SMPP SMSC Trunk.

[Create SMPP SMSC Trunk](#user-panel-sms-smpp-smsc-create)

**View Credentials**

View the configured System ID, password, host, and other details for your SMPP SMSC trunk.

[View Credentials](#user-panel-sms-smpp-smsc-credentials)

**Accept SMPP Bind Requests**

Configure your server to accept bind requests and verify the bind status.

[Accept SMPP Bind Requests from DIDWW](#user-panel-sms-smpp-smsc-bind)

**Edit Trunk**

Update the settings of an existing trunk.

[Edit SMPP SMSC Trunk](#user-panel-sms-smpp-smsc-edit)

**Delete Trunk(s)**

Remove one or more trunks from your account.

[Delete SMPP SMSC Trunk(s)](#user-panel-sms-smpp-smsc-delete)

---

## Create SMPP SMSC Trunk

### Step 1: Start Creating SMPP SMSC Trunk

In the user panel menu, navigate to **SMS > SMS Trunks**. Click the **Create New** button and select **SMPP SMSC** from
the dropdown menu.

[![Navigating to create a new SMPP SMSC Trunk.](../../_images/fig166.png)](../../_images/fig166.png)


**Fig. 1.** Navigating to create a new SMPP SMSC Trunk.

### Step 2: Configure SMPP SMSC Trunk

Enter the general information required to configure your SMPP SMSC trunk. Provide a unique friendly name, select the
**Server location**, enter the connection details of your SMSC, and optionally define a system type to categorize your
ESME binding.

#### General Settings

| Setting | Description |
| --- | --- |
| **Friendly name** | A unique name to identify this trunk. |
| **Server location** | The DIDWW SMPP server that connects and binds to your SMSC: **US, NY** or **NL, AMS**. |
| **Password** | A secure value used by the SMSC to authenticate the ESME during bind. |
| **Host** | The public hostname or IP address of your SMPP server. |
| **TX port** | Transmitter Port (when Transceiver Mode turned off) or Transceiver Port (when Transceiver Mode turned on). |
| **RX port** | Receiver Port is ignored when Transceiver Mode turned off. |
| **System type** | An optional parameter that categorizes the ESME binding   (e.g., "VMS" for voice mail system or "OTA" for over-the-air activation system). |
| **System ID** | Identifies the ESME to the SMSC at bind process. Used for authentication and to label the entity in the connection. |
| **Use SSL** | SSL encryption for the SMPP connection. |
| **Connection timeout** | Timeout between TCP Connection retries (seconds). |
| **Transceiver mode** | Defines how messages are exchanged between the ESME and the SMSC.  - Off (default): The trunk uses separate **Transmitter** (TX) and **Receiver** (RX) connections. - On: Combines both into a single **Transceiver** connection for two-way communication, using only the **TX port**.  Tip   - Leave this **off** if your system uses separate Transmitter and Receiver connections. - Turn it **on** if your system supports a single Transceiver connection. |

Important

DIDWW connects to your SMSC from the DIDWW SMPP server of the trunk's **Server location**. Your firewall must accept
connections from that server's IP address. See [Server locations and IP
addresses](technical-data/smpp-specification.html#smpp-endpoints).

[![The Create SMPP SMSC Trunk configuration page with Server location in the General section.](../../_images/fig23.webp)](../../_images/fig23.webp)


**Fig. 2.** The SMPP SMSC Trunk configuration page.

#### Source Address Settings

The **Source Address Settings** section controls which DID numbers can be used as the sender ID for outbound SMS.

Use the **Allow any DID(s) for SMS OUT** toggle to choose how sender IDs are assigned:

> - **Toggle on (default):** All DIDs with Outbound P2P SMS enabled in your account can be used as the sender ID.
> - **Toggle off:** You can specify which DIDs are allowed. To do this, select numbers from the **Available Source Addresses** list and add them to the **Allowed Source Addresses** list. Only the numbers you add will be available as sender IDs.

[![Selecting and allowing specific DIDs to be used as source addresses.](../../_images/gif19.gif)](../../_images/gif19.gif)


**Fig. 3.** Authorizing specific DIDs as sender IDs.

Note

When the **Allow any DID(s) for SMS OUT** toggle is turned off, the **Available Sender IDs** list shows only DIDs that
support outbound P2P SMS.

#### Trunk Group Configuration (Optional)

You may assign the trunk to an existing trunk group in order to enable failover or load-balancing. Within the trunk
group, you can also define the trunk's **priority**, which determines the order in which trunks will be used.

Note

The system attempts to contact the target SMS trunk with the highest-numbered priority first.

[![Trunk Group configuration section for SMPP SMSC Trunk.](../../_images/fig335.png)](../../_images/fig335.png)


**Fig. 4.** Trunk Group configuration section for SMPP SMSC Trunk.

### Step 3: Create the SMPP SMSC Trunk

Once you have entered all required fields, click **Create** at the bottom of the page to save the new trunk. DIDWW will
then use the credentials and server details you provided to initiate the bind process to your SMSC.

Note

After you create an SMPP SMSC trunk with valid details, DIDWW automatically starts the bind process.
Make sure your server is ready to accept connections by:

> - Running an SMPP service that can accept external bind requests.
> - Allowing inbound traffic from all DIDWW SMPP server [endpoints](technical-data/smpp-specification.html#smpp-outbound-sms-endpoints).

To confirm the connection, see [Check SMPP SMSC Bind Status](#user-panel-sms-smpp-smsc-status).
For complete technical details about the protocol, encoding, and supported features, see the [SMPP
Specifications](technical-data/smpp-specification.html#service-incoming-sms) guide.

### Step 4: Assign the SMPP SMSC Trunk to DIDs (Inbound SMS Only)

Note

You only need to assign DIDs if you want to receive inbound SMS. For outbound SMS, DID assignment is not required.

To receive SMS on this trunk, assign one or more DIDs that support inbound SMS. Messages sent to those DIDs are then
delivered to your SMPP connection. For detailed steps, see [Assign an SMS
trunk](../../phone-numbers/my-numbers/how-to-guides/assign-sms-trunk.html#assigning-sms-trunk).

---

## View Credentials

> 1. Navigate to **SMS > SMS Trunks** in the user panel.
> 2. Locate the SMPP SMSC trunk.
> 3. Click the [![Credentials button](../../_images/key.png)](../../_images/key.png)
>    key icon in the **Credentials** column to open the credentials window.

[![The credentials button in the SMS Trunks list.](../../_images/credentials_button1.png)](../../_images/credentials_button1.png)


**Fig. 5.** Credentials button.



---

## Accept SMPP Bind Requests from DIDWW

Configure your server to accept incoming SMPP bind requests from DIDWW, which connects to your SMSC as an ESME using the
credentials you defined in the trunk.



### Before You Begin

> 1. Make sure you have an SMPP SMSC trunk configured in the DIDWW User Panel. If you don't have one yet, see [Create an SMPP SMSC Trunk](#user-panel-sms-smpp-smsc-create).
> 2. Verify your server is running an SMPP service capable of accepting external bind requests.
> 3. Make sure your firewall accepts connections from the IP address of the trunk's **Server location**. See [Server locations and IP addresses](technical-data/smpp-specification.html#smpp-endpoints).

Note

- After the trunk is created with valid details, DIDWW automatically begins the bind process. No further action is required to initiate the connection.
- For full technical details about the protocol, encoding, and other details, see the [SMPP Specifications](technical-data/smpp-specification.html#service-incoming-sms) guide.

### Mandatory SMPP SMSC Bind Parameters

When you create an SMPP SMSC trunk, you provide DIDWW with the connection details and credentials for your SMSC server.
DIDWW will use these parameters when attempting to bind as an ESME.

> | Parameter | Description |
> | --- | --- |
> | **system\_id** | The System ID that your SMSC requires for authentication. |
> | **password** | The password that your SMSC requires for authentication. |
> | **host** | The public hostname or IP address of your SMSC server. |
> | **port** | The TCP port your SMSC listens on (default: `2775`). |
> | **system\_type** | (Optional) A categorization value for the binding, such as "VMS" (voice mail system) or "OTA" (over-the-air activation). |

### Check SMPP SMSC Bind Status

After configuring your server, you can verify the connection status in the User Panel:

> 1. Navigate to the **SMS > SMS Trunks** list page.
> 2. Find the trunk and click the [![Actions button](../../_images/three_dots_action_button1.png)](../../_images/three_dots_action_button1.png)
>    button.
> 3. Select **Check Status** from the dropdown menu.

[![Accessing the Check Status option for an SMPP SMSC Trunk.](../../_images/fig436.png)](../../_images/fig436.png)


**Fig. 5.** Checking the trunk status.



---

## Edit SMPP SMSC Trunk

> 1. In the user panel menu, navigate to **SMS > SMS Trunks**.
> 2. Locate the trunk you wish to edit and click the [![Actions button](../../_images/three_dots_action_button1.png)](../../_images/three_dots_action_button1.png)
>    button next to it.
> 3. Select **Edit** from the dropdown menu.
> 4. On the **Edit SMPP SMSC Trunk** page, modify the settings as needed.
> 5. Click **Submit** to apply your changes.

To change which DIDWW SMPP server location connects to your SMSC, select a different **Server location** and click
**Submit**. DIDWW then binds to your SMSC from the new location. Your SMSC connection details stay the same.

Important

Before you save a new **Server location**, make sure your firewall accepts connections from the IP address of the new
location. See [Server locations and IP addresses](technical-data/smpp-specification.html#smpp-endpoints).

[![Edit option for SMPP SMSC Trunk.](../../_images/actions_edit.png)](../../_images/actions_edit.png)


**Fig. 6.** Edit option for SMPP SMSC Trunk.



---

## Delete SMPP SMSC Trunk(s)

You can delete a single SMPP SMSC trunk or multiple trunks at once by using batch actions.

*Delete a Single Trunk*

1. Navigate to the **SMS Trunks** list page.
2. Locate the trunk you wish to remove and click the [![Actions button](../../_images/three_dots_action_button1.png)](../../_images/three_dots_action_button1.png)
   button next to it.
3. Select **Delete** from the dropdown menu.
4. In the confirmation pop-up window, click **Delete** to permanently remove the trunk.

[![Delete option for SMPP SMSC Trunk.](../../_images/actions_delete1.png)](../../_images/actions_delete1.png)


**Fig. 7.** Delete option for SMPP SMSC Trunk.


*Delete Multiple Trunks*

1. Navigate to the **SMS Trunks** list page.
2. Select the trunks you wish to delete by checking the boxes next to them.
3. At the bottom of the page, click **Batch Actions** and select **Delete Trunks**.
4. In the confirmation pop-up window, click **Delete** to permanently remove the selected trunks.

[![Batch delete option for SMPP SMSC Trunks.](../../_images/delete_batch_actions.png)](../../_images/delete_batch_actions.png)


**Fig. 8.** Batch delete option for SMPP SMSC Trunks.

---

## Related Resources

**Assign an SMS trunk**

Learn how to assign your newly created trunk to DID numbers to receive inbound messages.

[Assign an SMS trunk](../../phone-numbers/my-numbers/how-to-guides/assign-sms-trunk.html#assigning-sms-trunk)

**SMPP Specifications**

Review detailed protocol information, including encoding and concatenation.

[SMPP Specifications](technical-data/smpp-specification.html#service-incoming-sms)

**Sender ID Verifications**

Register sender IDs for Application-to-Person (A2P) messaging.

[Sender ID Verifications](../sender-id-verifications/index.html#user-panel-sms-campaign)

On this page
