TAP Simulator creates a virtual environment for the Content Providers (CPs) to test the created applications before connecting with the real-world system. The applications can be tested with actual validations using the simulator.


Following are the software requirements need to install the TAP Simulator.

Other required libraries are bundled in the package.

Note: Distribution file will come as a zipped file and extract it to the destination folder.

Start Up the Simulator

Step 1: Extract the file

Step 2: Go to the bin folder of the extracted file

Step 3: Start the TAP using sdp-simulator.bat file placed in the bin folder.

Note: If the application is running on Linux, file should be used.

Linux – sh sdp-simulator console

Windows – sdp-simulator.bat console


TAP can be accessed from URL http://localhost:10001/

Note: An application with the respective NCS enabled, also has to be run with the simulator.

Stop the Simulator

Press Ctrl + C to stop the simulator

Using the Simulator

SDP clients can send requests to the SDP Simulator. Created applications can be used to send requests to the simulator.

Note: Although the simulator shows the MT message for SMS, user can test MT message alone (without MO), with any application which can send MT messages.

CAAS Request

Caas (Charging as a Service) enables applications to charge and to get account information from subscribers.

This simulator can set an initial balance for the account. Balance can be queried (in Query Balance) and also can be used in debit transactions (Direct Debit).

Query Balance

Application can send the “Query Balance” request to the simulator to retrieve the current balance of the particular subscriber”s account.

The application has to send the query balance request to following url


Figure 3.12

To set the balance, user needs to enter the required amount in the relevant text field and click on “Set Balance” . The amount will be set as the account balance.

Figure 3.13

In addition, the values set for Account type, Account Status are used in the Query Balance response.

Figure 3.14

To simulate error scenarios, the user has to select the appropriate status code from the “Status Code” list.

Field name Description Sample value
Set Balance Sets the initial Balance for the account.
Account Type Select the account type Pre paid, Post paid
Account Status Specify the account status Active, Blocked
Status Code Set the Status Code

Refer following for the sample request and response.

Figure 3.15

When Query Balance Request is sent, the response will send the current account balance along with other account related details. (Refer the figure above.)

In case of an error scenario, refer the following screens for the request and response.

Figure 3.16

Figure 3.17

Figures 3.16 and 3.17 show a sample response for an error in sending the Query Balance request.

Direct Debit

The application has to send the direct debit request to following url


Figure below shows a direct debit transaction of 100 units for an account with a balance of 1000 units.

Figure 3.18

Following is the response.

Figure 3.19

The transaction has been done successfully as the account had sufficient balance.

Following screen shows few more successful transactions.

Figure 3.20

Now the account has zero balance. In such scenario, if a transaction is attempted, it will be failed.

Following screen shows a sample of an error scenario with insufficient balance.

Figure 3.21

In case of an error scenario, refer the following screens for the request and response.

Figure 3.22

Figure 3.23

Response Error Codes

TAP can respond to a message sent by the client application. A response code will be sent to the destination phone number and the corresponding response shall be identified accordingly


TAP will send following error codes to the preconfigured phone numbers as given in the list.

For any other number TAP will send success response.

Phone Number Status Code Description
9900001 E1300 Default Error
9900002 E1301 App Not Available Error
9900003 E1302 SP Not Available Error
9900004 E1303 Invalid Host IP Error
9900005 E1304 App Not Found Error
9900006 E1305 Invalid App ID Error
9900007 E1306 Invalid Routing key Error
9900008 E1307 SP Not Found Error
9900009 E1308 Chrging Error
9900010 E1309 NCS Not Allowed Error
9900011 E1310 MO Not Allowed Error
9900012 E1311 MT Not Allowed Error
9900013 E1312 Invalid Request Error
9900014 E1313 Authentication Failed Error
9900015 E1314 NCS Not Available Error
9900016 E1315 App Connection Refused Error
9900017 E1316 MSISDN Not Allowed Error
9900018 E1317 TPS Exceeded Error
9900019 E1318 TPD Exceeded Error
9900020 E1319 AT Message Failed Error
9900021 E1320 SBL Fail Error
9900022 E1321 Sender Not Allowed Error
9900023 E1322 Recipient Not Allowed Error
9900024 E1323 HTTP Request Not Allowed Error
9900025 E1324 Invalid MSISDN Error
9900026 E1325 Insufficient Fund Error
9900027 E1326 Charging Not Allowed Error
9900028 E1327 Charging Operation Not Allowed Error
9900029 E1328 Charging Amount Too High Error
9900030 E1329 Charging Amount Too Low Error
9900031 E1330 Invalid Sender Address Error
9900051 E1350 Subscription Reg Blocked Error
9900052 E1351 Subscription Reg Already Registered
9900053 E1352 Subscription Reg SLA Error
9900054 E1353 Subscription Reg Charging Error
9900055 E1354 Subscription Unreg SLA Error
9900056 E1355 Subscription Unreg Blocked Error
9900057 E1356 Subscription Unreg Not Registered
9900061 E1360 Internal Error
9900062 E1361 System Error