dxp-ux

(0 reviews)

Notifications (TMF-681)

  1. This use case creates a communication entity to send Email and SMS.
  2. It is implemented for 'PR' and 'PA'.

POST /communicationMessage

URL
https://[localhost]:[port]/dxp-ux/v1/PA/communicationMessage
URL PARAMS
nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
businessIdstring2 letter ISO 3166 country code (TT, BB, JM, PA, PR etc.) identifying the business unit.Y (PA, PR)
namevaluedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
client_idstringThe client_id identifying the channel.Y (PA, PR)
client_secretstringPassword associated with the client_id.Y (PA, PR)
X-Correlation-IDstringIdentifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction.Y (PA, PR)
QueryParams
namevaluedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
notificationTypestringBusiness notification type.N/A (PR), Y(PA-RomingPurchaseConfirmation-Success)
Data Model
Request Data Model
nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
statestringCommunication message state type. Possible values [ initial, inProgress, completed, cancelled, failed ]Y (PA, PR)
priorityobjectSender of the communication message.N/A (PR), Y(PA-PrepaidAdvanceBalance)
messageTypestringThe type of message, such as: SMS, Email, Mobile app push notificationY (PA, PR)
senderobjectSender of the communication message.Y (PA, PR)
sender.phoneNumberstringPhone number of the sender, if the communication type is SMS.Y (PR), N(PA)
sender.namestringname of the sender, if the communication type is SMS.N/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
receiver[]arrayReceivers of the communication message.Y (PA, PR)
receiver[].phoneNumberstringPhone number of the receiver, if the communication type is SMS.Y (PA, PR)
receiver[].'@type'stringtype of the receiver, if the communication type is SMS.N/A (PR), Y(PA-PrepaidAdvanceBalance)
contentstringThe content of the communication messageY (PA, PR), N/A (PA-RomingPurchaseConfirmation-Success)
characteristic[]arrayAny additional characteristic(s) of this messageN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
characteristic[].namestringName of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
characteristic[].valueanyValue of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
characteristic[].'@type'stringtype of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
@typestringtype of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance)
receiver subRequest - dataModel
fieldtypedescriptionrequired(mandatory-Y, optional-N, Not applicable- N/A)examples
phoneNumberstringPhone number of the receiver, if the communication type is SMS.Y (PA, PR){ "phoneNumber": "9393130477" }
@typestringtype of the receiver, if the communication type is SMS.N/A (PR), Y(PA-PrepaidAdvanceBalance){ "@type": "LogicalResource" }
characteristic subRequest - dataModel
fieldtypedescriptionrequired(mandatory-Y, optional-N, Not applicable- N/A)examples
namestringName of the characteristicN/A (PR), Y(PA){"name": "$Parameter1", "value": "Mr. Jones"}
valuestringValue of the characteristicN/A (PR), Y(PA){"name": "$Parameter1", "value": "Mr. Jones"}
@typestringtype of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance){"@type": "PARAMETER"}
Response Data Model
nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
statestringCommunication message state typeY (PA, PR)
priorityobjectSender of the communication message.N/A (PR), Y(PA-PrepaidAdvanceBalance)
messageTypestringThe type of message, such as: SMS, Email, Mobile app push notificationY (PA, PR)
idstringUnique identifier of Communication MessageY (PA, PR)
senderobjectSender of the communication message.Y (PA, PR)
sender.phoneNumberstringPhone number of the sender, if the communication type is SMS.Y (PR), N(PA)
sender.namestringname of the sender, if the communication type is SMS.N/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
receiver[]arrayReceivers of the communication message.Y (PA, PR)
receiver[].phoneNumberstringPhone number of the receiver, if the communication type is SMS.Y (PA, PR)
receiver[].'@type'stringtype of the receiver, if the communication type is SMS.N/A (PR), Y(PA-PrepaidAdvanceBalance)
characteristic[]arrayAny additional characteristic(s) of this messageN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
characteristic[].namestringName of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
characteristic[].valueanyValue of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
characteristic[].'@type'stringtype of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance, PA-RomingPurchaseConfirmation-Success)
@typestringtype of the characteristicN/A (PR), Y(PA-PrepaidAdvanceBalance)
receiver subResponse - dataModel
fieldtypedescriptionrequired(mandatory-Y, optional-N, Not applicable- N/A)examples
phoneNumberstringPhone number of the receiver, if the communication type is SMS.Y (PA, PR){ "phoneNumber": "9393130477" }
@typestringtype of the receiver, if the communication type is SMS.N/A (PR), Y(PA-PrepaidAdvanceBalance){ "@type": "LogicalResource" }
Key Considerations :
Key Considerations for PR:
  1. The Paytm team will manage email and SMS templates.
  2. We are assuming that there won't be a large payload for P0 notifications and attachment.
  3. Both application/json & application/zip request payload is supported.
  4. P0 notifications will be customer-specific and will be sent one at a time.

"SMS"

  1. For "SMS", the message is sent from Mavenir.
  2. Mavenir doesn't accept special characters in "content" field (Example: á, é, ñ).
  3. Mavenir will send SMS to only one reciever.phonenumber at a time.
  4. Mavenir will send SMS with the same name sent from input request field "sender.name". If we wont receive sender.name from input request, ESB will send default value as "Liberty".
  5. There is no format and length validation on reciever.phoneNumber in ESB.
  6. Mavenir doesn't accept spaces and special characters in case of Phone Number, expected phoneNumber format "1++"countryCode"++PhoneNumber". Example: 1787XXXXXX.

"Email"

  1. For "Email", ESB is integrated with AWS SES Service.
  2. Sender email(from email address) should configured in AWS SES, same configured email should be passed. Example: For eCommerce LCPR "shop-noreply@libertypr.com" is configured.
  3. The payload.content type should be "JSON" string.
Key Considerations for PA:

General SMS Key points:

  1. The SMS is sent from Mavenir.
  2. Mavenir doesn't accept accent / special characters in "content" field (Example: á, é, ñ).
  3. Mavenir will send SMS to only one reciever.phonenumber at a time.
  4. Mavenir will send SMS with the same name sent from input request field "sender.name". If we won't receive sender.name from input request, ESB will send default value as "Liberty".
  5. Mavenir doesn't accept spaces and special characters in case of "sender.name", expected "sender.name" format Example: MasMovil.
  6. There is no format and length validation on reciever.phoneNumber in ESB.
  7. Mavenir doesn't accept spaces and special characters in case of Phone Number, expected phoneNumber format "1++"countryCode"++PhoneNumber".
  8. In case of any dynamic parameters in the template, the request need to be sent by adding notification_type (queryParameter) and characteristics in request payload accordingly.
  9. "state" should be sent as "initial" in the request.

roamingPlanPurchase-purchaseConfirmation:

  1. For Roaming Purchase Confirmation SMS usecase when the purchase is successful, the queryParam 'notificationType 'should be 'ROAMING_PURCHASE_CONFIRMATION' and characterstic 'ProductName' should be sent in input payload request (refer the example 'PA-MiAPP-Purchase-Confirmation-SMS-Success-Request').
  2. When the plan purchase can not be completed, Static failure message should be sent in the input request payload (payload.content).
  3. Sender name should always need to be sent as 'MasMovil'.
  4. For purchase confirmation SMS notification success usecase, the SMS content value will be 'Su paquete <ProductName> ha sido activado. Disfruta tu viaje!'
  5. For purchase confirmation SMS notification error usecase, the SMS content value will be
    'Error de transaccion
    Hubo un error y no pudimos completar la transaccion. Puedes volver a intentarlo o cambiar el metodo de pago'

prepaidAdvanceBalanceAndPlans:

  1. For prepaidAdvanceBalanceAndPlans characteristic[] array is dynamic and will be sent from input request

/communicationMessage/send:

URL

https://[localhost]:[port]/dxp-ux/v1/CR/communicationMessage/send

Base URI Parameter

NameTypeM/ODescription
businessIdstringMbusinessId string M Business unit identifier. Example: "CR”

Headers

NameTypeM/ODescription
channelIdstringOChannel to identify the business group.

Security Headers

NameTypeM/ODescription
client_idstringMClient Id value for Client Id Enforcement policy. Environment Specific Value. Eg: 6f0ed16a7b494d76b2d60e05bc3b3332
client_secretstringMClient secret value for Client Id Enforcement policy. Environment Specific Value, eg: e4CD4D43449846aA9D8Cb9c43f

QueryParams

NameTypeM/ODescription
notificationTypestringMBusiness notification type. Example: "B2B_PLACE_ORDER_CUSTOMER"
Data Model: CR B2B
Field NameM/ONotes
SubjectMFor B2B_PLACE_ORDER_CUSTOMER: Su orden de Liberty ha sido solicitada For B2B_PLACE_ORDER_AGENT: Web B2B Venta - Empresa: Ex: Web B2B Venta - Empresa: LLA For B2B_PLACE_LEAD_CUSTOMER: Su solicitud de contacto con Liberty ha sido recibida For B2B_PLACE_LEAD_AGENT: Web B2B Lead - Empresa: Ex: Web B2B Lead - Empresa: LLA
receiver.emailMThe recipients email address
sender.emailMSenders email address
TypeMEmail. Currently only supported
CharacteristicMIs the array object with name value pairs.
"name": "CUSTOMER_NAME", "value": "david"MM for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_ORDER_CUSTOMER/ B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER
"name": "PHONE", "value": "9999-9999"M (Format should be : XXXX-XXXX (8 digits in 2 groups of 4 digits separated by a Hyphen))M for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_ORDER_CUSTOMER/ B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER
"name": "COMPANY", "value": "LLA"MM for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_ORDER_CUSTOMER/ B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER
"name": "ID_NUMBER", "value": "9876543210"M (Format should be: XXXXXXXXXX (10 digits with no separation))M for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_ORDER_CUSTOMER/ B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER
"name": "EMAIL", "value": "fname.lname@gmail.com"MM for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_ORDER_CUSTOMER/ B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER
"name": "PRODUCT_NAME1", "value": "Triple Play Full"MM for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_ORDER_CUSTOMER/ B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER
"name": "PRODUCT_SUPERCATEGORY_NAME1", "value": "3P-Bundles"MM for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_ORDER_CUSTOMER/ B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER
"name": "REQUEST_URL", "value":"https://libertycr.com/es/home-empresas? u_content=GoogleAds&utm_medium=cpc&utm_source= google.com&utm_campaign=CRC_B2B_LAUNCH"MM for notificationType= B2B_PLACE_ORDER_AGENT/ B2B_PLACE_LEAD_AGENT
"name": " MESSAGE", "value":"Lorem ipsum dolor sit amet consectetur adipisicing elit. Incidunt consequatur ad impedit. At nostrum aspernatur non totam, voluptatem quis. Blanditiis, debitis pariatur non vel deserunt dolorum voluptate aliquid perspiciatis possimus?"MM for notificationType= B2B_PLACE_LEAD_AGENT/ B2B_PLACE_LEAD_CUSTOMER

Reviews