Karix supports different types of SMS campaign reports using the following data sources:
- Acoustic Campaign integration with SMPP
- Karix REST SMS API
- FTP server
On the Outgoing SMS Report page, you can search reports by specifying users, mobile numbers, or time durations. Currently, Acoustic Campaign supports only one-way messaging, which means there are no Incoming SMS Reports available via Karix.
Log in to the Karix portal
You must have your messaging account credentials as provided by our provisioning team to log in to the Karix portal.
Use the following URL to log in to Karix:
https://www.instaalerts.zone/lounge/sign_in.php.
On successfully logging in, you are directed to the home page of Karix Lounge.
Customer ID types in Karix reports
In reports generated in Karix, you will find a couple of ID attributes set for different purposes:
- MID is a unique ID generated by Karix to acknowledge the acceptance of a message submission.
- CustomerRefID is a unique reference ID set by the client application and passed on to Karix gateway.
- ACKID is an acknowledgment ID for the request received from the batch API.
These ID attributes will work differently depending on the report type and send method/integration you are using. When you are using Acoustic Campaign SMS SMPP integration to send SMS messages, the customerRefID column is blank.
SMS report types in Karix
Depending on the data source, you can generate different types of reports.
Report type | SMPP integration | Karix REST SMS API | FTP server |
Online transaction report | Yes | Yes | Yes |
Offline transaction report | Yes | Yes | Yes |
Delivery report | Yes | No | No |
Send_metadata | Yes | No | No |
Online and offline transaction reports and SMPP delivery reports are available for SMS messages that are sent using Karix gateway via an Acoustic Campaign integration with SMPP.
Access online SMS reports in Karix
To see outgoing SMS reports, go to Reports > SMS reports > View reports in Karix Lounge.
The SMS reports page displays the Outgoing SMS report that contains individual reports and consolidated reports:
- Individual reports can be seen by all users.
- Consolidated report is a graphical representation of the SMS messages sent by a user on a specific day or during a specific time frame.
- Only administrators can view reports of the SMS traffic created by users. Similarly, super administrators can view reports of the SMS traffic created by administrators.
Let's take a look at different report types and their content.
Note: When sending a campaign via transactional send, when you include the tag campaignName
this field it will show up in Karix reporting.
Online transaction report
You can download the online transaction report from Karix Lounge reporting portal, no matter which data source you are using.
Online transaction report For SMS sent using Karix REST SMS API
Header | Data type | Length | Short description |
Sender | Variable characters (varchar) | 15 | Sender ID for the transaction |
Destination | Bigint | 15 | Destination mobile number |
Submit date | Date | Message submitted date [DD-MM-YYYY] | |
Submit time | Time | Message sent time [HH:MM:SS] | |
Delivery date | Date | Message delivered date [DD-MM-YYYY] | |
Delivery time | Time | Message delivered time [HH:MM:SS] | |
Message | Text | 3000 | Message text triggered to the destination |
Status | Variable characters (varchar) | 100 | Denotes the status of the message (SUCCESS, FAILED, NDNCFAILED, EXPIRED). |
Reason | 100 | Denotes the reason for the status | |
MID | Bigint | 25 | Unique ID generated by Karix acknowledging the acceptance of submission |
Operator | Variable characters (varchar) | 200 | Denotes the MSIDN operator. |
Circle | 200 | Denotes the MISDN operator circle. | |
CustomerRefID | 50 | Unique reference ID set by the client while calling REST API. If not set, it will show as NULL. | |
Term operator | 200 | Denotes the terminating or ported operator of the MSIDN. | |
Term circle | 200 | Denotes the terminating or ported operator circle of the MSIDN | |
Tag1 | 100 | Tag parameter in API specified by the client, otherwise shown as NULL | |
Tag2 | 100 | ||
Tag3 | 100 | ||
Tag4 | 200 | ||
Tag5 | 200 | ||
msgtag | 50 | Campaign name specified by the client in msgtag parameter in API, otherwise shown as NULL | |
Country | 50 | Country of the MSIDN | |
ACKID | 25 | Acknowledgment ID for the request received from batch API |
Offline transaction report
Offline transaction report for SMS messages using Karix REST SMS API
Header | Data type | Length | Short description |
Sender | variable characters | 15 | Sender ID for the Transaction |
Destination | Bigint | 15 | Destination mobile number |
Submit Date | Date | Message submitted date [DD-MM-YYYY] | |
Submit Time | Time | Message sent time [HH:MM:SS] | |
Delivery Date | Date | Message delivered date [DD-MM-YYYY] | |
Delivery Time | Time | Message delivered time [HH:MM:SS] | |
Message | text | 3000 | Message text triggered to the destination |
Status | Variable characters (varchar) | 100 | Denotes the status of the message (SUCCESS, FAILED, NDNCFAILED, EXPIRED) |
Reason | 100 | Denotes the reason for the status | |
MID | Bigint | 25 | Unique ID generated by Karix acknowledging the acceptance of Submission |
Operator | Variable characters (varchar) | 200 | Denotes the MSIDN operator |
Circle | 200 | Denotes the MISDN operator circle | |
CustomerRefID | 50 | Unique reference ID set by Client, while calling REST API. If not set, this will be NULL | |
Term Operator | 200 | Denotes the terminating or ported operator of the MSIDN | |
Term Circle | 200 | Denotes the terminating or ported operator circle of the MSIDN | |
Tag1 | 100 | Tag1 parameter in API which a client can specify, if not, it will be NULL | |
Tag2 | 100 | Tag2 parameter in API which a client can specify, if not, it will be NULL | |
Tag3 | 100 | Tag3 parameter in API which a client can specify, if not, it will be NULL | |
Tag4 | 200 | Tag4 parameter in API which a client can specify, if not, it will be NULL | |
Tag5 | 200 | Tag5 parameter in API which a client can specify, if not, it will be NULL | |
msgtag | 50 | Campaign name which a client can specify in msgtag parameter in API, if not, it will be NULL | |
Country | 50 | Country of the MSIDN | |
Message Length | Int | 12 | Length of the full message |
Segments | Tinyint | 4 | Number of parts in a multi-part message |
ACK ID | Bigint | 25 | A unique ID generated by Kari acknowledging the acceptance for each file. |
Delivery report
A delivery report, DELIVER_SM PDU, is generated for SMS messages that are sent using Acoustic Campaign integration with SMPP. The SMSC delivery receipt is carried as the user data payload in the SMPP deliver_sm.
Sample PDU
Field | Value |
Destination TON | 00000001 International |
Destination NPI | 1 |
Source TON | 00000001 International |
Source NPI | 1 |
Source Address | The source generating the delivery receipt, or the mobile generates the Originated message |
Destination Address | The Destination mobile number or the source submits a message if it is a delivery receipt |
Protocol id | NULL |
Schedule delivery | NULL |
Validity period | NULL |
Registered delivery | NULL |
Replace if present flag | NULL |
Sm default message id | NULL |
Message Length | The length of the message in bytes |
Short message | The message content from the source or the delivery receipt |
Delivery receipt format – Deliver_sm
Karix provides for return of a delivery receipt via the deliver_sm PDU, which shows the delivery status of the message. The content of an SMSC delivery receipt goes into the short_message parameter of the deliver_sm operation.
Sample delivery receipt – SMPP
A sample delivery receipt looks as follows:
id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done date:YYMMDDhhmm stat:DDDDDDD err:E Text: . . . . . . . . .
The table below explains the meaning of the fields in the delivery receipt.
Fields in the delivery receipt
Field name | Size octets | Type | Description | ||
Id | 10 | C-octet length string (decimal) | The message ID (acknowledgement id) allocated to the message by the SMSC when originally submitted. | ||
Sub | 3 | Number of short messages originally submitted (padded with leading zeros if necessary). | |||
Dlvrd | 3 | Number of short messages delivered (padded with leading zeros if necessary). | |||
Submit date | 10 | C-Octet Fixed Length String | The time and date at which the SMS was submitted. The format is as follows: YYMMDDhhmm where: YY = last two digits of the year (00-99) MM = month (01-12) DD = day (01-31) hh = hour (00-23) mm = minute (00-59) | ||
Done date | 10 | The time and date at which the SMS reached its final state. | |||
Stat | 7 | The final status of the message. | |||
Err | 3 | This field can show a network-specific error code or an SMSC error code for the attempted delivery of the message. Refer to-SMSCv3.0 Error Codes document. | |||
Text | 20 | Octet String | The delivery status of Karix gateway. |
Final message states
Final message state | Description |
DELIVRD | Message is delivered to destination. |
EXPIRED | Message validity period has expired. |
DELETED | Message has been deleted. |
UNDELIV | Message is undeliverable. |
ACCEPTD | Message is in accepted state. |
UNKNOWN | Message is in invalid state. |
REJECTD | Message is in a rejected state. |
Custom TLV in SMPP
Tag | Name | Type | Max character length | Description | Report Mapping (Offline & Online) |
0x148D | Org_ID | String | 100 | Unique identifier of the Acoustic Campaign organization | n/a |
0x148E | Campaign_name | String | 200 | Name of the SMS campaign as specified by Acoustic client in Campaign | msgTag |
0x148F | Send_metadata | String | 200 | Additional metadata from Campaign that uniquely identifies the message | Tag4 |
Note: Org_id is used for mapping a Messaging account with interface by Karix, and is not available in reports. TLV is not included in the SMPP delivery receipt.
Send_metadata format
The send_metadata TLV contains a pipe-separated list of key value pairs, formatted as “key=value”. The available fields are as follows:
Key | Value type | Required | Max string length | Description |
m | Number | No | n/a | Acoustic Campaign SMS MailingID |
r | Number | Yes | n/a | Acoustic Campaign Recipient ID |
n | String | No | 100 | Acoustic Campaign SMS Name |
p | String | Yes | 40 | Acoustic Campaign SMS Program ID |
As an example, the value for a typical send_metadata TLV would be as follows:
m=123456|r=654321|n=my sms name|p=24557f01-bfd9-4def-a204-c9334677ae8d
Fields that are not required are omitted if a value is not provided. For example, if SMS Name is not available, the send_metadata would look like:
m=123456|r=654321|p=24557f01-bfd9-4def-a204-c9334677ae8d
Karix reports for SMS messages sent via FTP
Online and offline transaction reports are available for SMS messages sent via FTP. Offline reports are sent in CSV or XLSX format.
Note: Users who currently receive reports in CSV format will continue to receive the same format. As of May 8, 2020, new users will receive reports in XLSX format.
The maximum capacity is 500K records per XLSX file. The XLSX file name convention is Username_Date_SplitSeq.xlsx. In this example, multiple files are generated due to the record size:
- acmeadcbuae1_2020-05-06_0.xlsx
- acmeadcbuae1_2020-05-06_1.xlsx
- acmeadcbuae1_2020-05-06_2.xlsx
If you want to send SMS messages using Acoustic Campaign, you can generate a file that contains all SMS messages and upload it on the Karix FTP server. From there, the Karix gateway retrieves the input file and processes and sends all the requested SMS messages. After sending the SMS messages, you can view the send and delivery results from Karix online and offline reporting.
Send time-sensitive transactional SMS messages using Karix REST SMS API
Time-sensitive transactional SMS messages come in handy in different types of communications, including:
- One-time password
- Account balance
- Fraud alert
- Purchase confirmation
- Bill reminder
- Flight delay notification
To handle these types of messaging, consider using Karix REST SMS API. These messages will completely bypass Acoustic Campaign.
Error codes in Karix reports
You may encounter an error while sending SMS messages by using Karix gateway.
Table 1. Error codes and what they mean | ||||
Error_code | Category | Status | Reason | Status_flag |
-01 | Operator | FAILED | This status displays when the error code provided by the subscriber's terminating operator is not mapped with the existing status. | FAILED |
000 | Operator | Sub-SMSC | The message is on SMSC queue. That is the message has been inserted into the SMSC database but the status of the message is Yet to be received. | SUCCESS |
001 | Operator | DELIVRD | Successfully delivered. | SUCCESS |
002 | Operator | FAILED | The message is permanently failed due to CallBarred, Error in Destination Number, Error in TeleService Provider, or so on. | FAILED |
004 | Platform | NDNC_Failed | Failed Due to DND Registration. | REJECTED |
005 | Platform | Blacklist_Failed | Black-listed number. This list of numbers is provided by the Customer and includes numbers of CEO, and so on. A message never gets delivered to a number in the black list. | REJECTED |
5 | Operator | UnidentifiedSubscriber | Unknown Error | FAILED |
006 | Platform | WhiteList_Failed | This error is received when a Opt-In account send messages to a non-white listed number. | REJECTED |
007 | Platform | Internal Error | This error is shown when a number series in the correct number format is invalid. | REJECTED |
008 | Platform | Credits Out/Expired | This error is shown when the messages are rejected due to insufficient credits. | REJECTED |
009 | Platform | Night_Expiry | Promotional messages are blocked after 9 PM. | REJECTED |
031 | Operator | EXP-ABS-SUB | The message is rejected because there was no paging response,the IMSI record is marked detached, or the MS is subject to roaming restrictions. | FAILED |
032 | Operator | EXP-MEM-EXCD | Message rejected because the MS doesn't have enough memory. | FAILED |
033 | Operator | EXP-NW-FAIL | Message rejected due to network failure. | FAILED |
034 | Operator | EXP-NW-TMOUT | Message rejected due to network failure. | FAILED |
035 | Operator | EXP-SMS-TMOUT | Message rejected due to network or protocol failure. | FAILED |
036 | Operator | EXP-HDST-BUSY | The message is rejected because of congestion encountered at the visited MSC. | FAILED |
037 | Operator | EXP-MSG-Q-EXD | Message queue exceed when there are too many messages for one number. SMSC can deliver only a particular number of messages to a mobile number. If there are one more messages, they get this error code till the queue clears. | FAILED |
074 | Operator | SmscBufferFlushed | Unknown Error | FAILED |
076 | Operator | UserSpecificReason | Unknown Error | FAILED |
084 | Operator | RemoteNodeNotReachable | Unknown Error | FAILED |
099 | Platform | Night_Purge | Message Night Purged. | REJECTED |
506 | Platform | NDNC_Failed | NDNC_Failed | REJECTED |
507 | Platform | Promo_Blocked | Promotional messages blocked | REJECTED |
508 | Platform | Invalid senderid | Message sent without whitelisted sender ID. | REJECTED |
510 | Platform | Featurecd is null | Feature code is null | REJECTED |
511 | Platform | Kannel template not found | Kannel template not found | REJECTED |
512 | Platform | Message Expired | Message Expired | REJECTED |
513 | Platform | Decryption error | Decryption error | REJECTED |
514 | Platform | Global msg filtered | Global msg filtered | REJECTED |
515 | Platform | Spam_Blocked | Spam_Blocked | REJECTED |
516 | Platform | Mobile in Optout list | Filtered in optout | REJECTED |
517 | Platform | Message is duplicate | Same message submitted twice within configured time frame as per account configuration. | REJECTED |
518 | Platform | Senderid in global list | Global senderid blocked | REJECTED |
519 | Platform | Mobile in global list | Messages are blocked for MS due to multiple NDNC violations | REJECTED |
522 | Platform | Invalid_Dest | Mobile number is invalid or not correct | REJECTED |
524 | Platform | specific blockout drop | specific blockout drop | REJECTED |
525 | Platform | trai blockout purge | trai blockout purge | REJECTED |
526 | Platform | Message filtered in spam | Message filtered in spam | REJECTED |
527 | Platform | Account Suspended | Account Suspended | REJECTED |
528 | Platform | Account Deactivated | Account Deactivated | REJECTED |
529 | Platform | sms blockout drop | sms blockout drop | REJECTED |
530 | Platform | Country code range not available | Country code range not available | REJECTED |
531 | Platform | International invalid mobile length | International invalid mobile length | REJECTED |
535 | Platform | No HLR data found | No HLR data found | FAILED |
537 | Platform | INTERNATIONAL SERVICE DISABLED | International service is disabled for the account | REJECTED |
538 | Platform | WRONG UDH | WRONG UDH | REJECTED |
539 | Platform | WRONG Bin data | WRONG Bin data | REJECTED |
540 | Platform | Invalid smark link | REJECTED | |
541 | Platform | Concat message parts not received | Concat message parts not received | REJECTED |
542 | Platform | Invalid Request | Invalid Request | REJECTED |
543 | Platform | Timebound Request Exceeded | Timebound Request Exceeded | REJECTED |
544 | Platform | Internal Error | Internal Error | REJECTED |
999 | Operator | FAILED | Message failed, and final error is not updated by operator, or the error is not mapped. | FAILED |