Developer Programs

Learn

Docs
Important notification about upcoming changes to the DMZ environment. Please read.

One-Way, ENS Generated OTP Verification

Enterprise SOAP API > Tutorials > > Out of Band Validate > One-Way, ENS Generated OTP Verification

An ENS publisher desires to send an OOB challenge to one of its recipient user’s e-mail addresses using an ENS-generated OTP as the verification value. The publisher elects to verify the recipient’s response to the OOB challenge in its own application user interface.

Publisher Completed Pre-requites

The publisher has previously completed the following pre-requisites:

  • Deployed its “Unrecognized User Alert” notification to ENS. The e-mail message body for this notification uses the <%$otpa%> system constant and format option in the location where the ENS-generated OTP will be substituted.
  • Added the recipient and subscription information in ENS, including:
    • The recipient’s and subscription information records.
    • Recipient’s “Han’s e-mail” and “Leia’s e-mail” contact ID’s and contact points in the recipient record.
    • Both contact ID’s assigned for the e-mail channel in the recipient’s subscription to the notification.

Publisher Use Case Options

This tutorial example applies the following four publisher options:

  1. Recipient-subscription integration level.
  2. One-way verification.
  3. ENS-generated OTP verification value.
  4. Published notification message body.

Steps

  1. Publisher presents the recipient OOB challenge instructions from its application user interface:
    • Select which e-mail address should receive the OOB notification.
    • Press the “Verify Log In” button to trigger the OOB challenge notification.
  2. Publisher sends the <OOBValidateRq> notification request to the Enterprise OOB Service provided by ENS.
  3. ENS:
    • Validates the publisher’s request.
    • Generates a random 5-character alphanumeric OTP verification value.
    • Returns the <OOBValidateRs> message with the verification value.
    • Returns the ENS-generated OTP in the <OTP> element of the <OOBValidateRs> message.
  4. ENS sends the OOB notification as an e-mail to the recipient’s e-mail address.
  5. Recipient responds to the OOB notification by entering the ENS-generated OTP value into the publisher’s application user interface
  6. Publisher verifies recipient’s OOB challenge entry and confirms successful OOB verification to recipient user.

Flowchart

Click image to view on different tab

Example Messages

OOBValidate Request

This request sample below:

  • Assumes the publisher’s e-mail message body for its “Unrecognized User Alert” notification already contains the <%$otpa%> system constant and formatting attribute to:
    • Signal ENS to generate a random OTP in 5-character alphanumeric format.
    • Substitute the OTP into the message body in replacement of the <%$otpa%> system constant.
    • Return the OTP value to the publisher so that it may verify its user from its application user interface.
  • Includes five additional message body substitution parameters, including an ENS “SmartDateTime”, smart format substitution tag to display the expiration date and time of the OOB challenge in a user-friendly format.
  • Specifies the “OneWay” canonical value for the <OOBModeType>.
  • Does not require the publisher to send a <VerifVal> element value for a one-way use case.
XML
<SOAP-ENV:Body>
    <OOBValidateRq xmlns=“http://jackhenry.com/jxchange/TPG/2008”>
        <MsgRqHdr>
            <jXchangeHdr>
                <AuditUsrId>AuditUsrId1</AuditUsrId>
                <AuditWsId>AuditWsId1</AuditWsId>
            </jXchangeHdr>
        </MsgRqHdr>
        <AlrtName>Unrecognized User Alert</AlrtName>
        <OOBRecipInfoRec>
            <ConsmRecipId>MERCHANT89785</ConsmRecipId>
            <OOBRecipInfoArray>
                <OOBRecipConIdInfoRec>
                    <RecipConId>Han's e-mail</RecipConId>
                </OOBRecipConIdInfoRec>
            </OOBRecipInfoArray>
        </OOBRecipInfoRec>
        <AlrtDataInfoArray>
            <AlrtDataInfoRec>
                <Name>salutation</Name>
                <Val>Mr. Solo</Val>
                <Name>timeofday</Name>
                <Val>morning</Val>
                <Name>username</Name>
                <Val>Corellia</Val>
                <Name>OTPDuration</Name>
                <Val>10 hours</Val>
                <Name>OTPExpires</Name>
                <Val>2017-01-26T23:58:20Z</Val>
            </AlrtDataInfoRec>
        </AlrtDataInfoArray>
        <OOBModeType>OneWay</OOBModeType>
    </OOBValidateRq>
</SOAP-ENV:Body> 

OOBValidate Response

XML
 <SOAP-ENV:Body>
    <OOBValidateRs xmlns=“http://jackhenry.com/jxchange/TPG/2008”>
        <MsgRsHdr>
            <jXchangeHdr>
                <AuditUsrId>AuditUsrId1</AuditUsrId>
                <AuditWsId>AuditWsId1</AuditWsId>
            </jXchangeHdr>
        </MsgRsHdr>
        <AlrtPkgId>0d8df530-b9f2-4860-bfc5-4db0046a2939</AlrtPkgId>
        <OTP>M88K7</OTP>
        <RsStat>Success</RsStat>
    </OOBValidateRs>
</SOAP-ENV:Body>

Referenced and Associated Operations

It is highly recommended that as part of referencing this use case that a user becomes familiar with the following jXchange operations and their function. While the user may elect to not use the listed operation as part of their programming or workflow, knowledge of the operations listed below is essential to understanding the process set forth with this use case.

Detailed information about the operation, the request structure/response, error messages and other useful information can be obtained by clicking the operation name below.

Operation NameDescriptionXSD/WSDL Container
OOBValidateService designed to enhance Enterprise Notifications Services (ENS) to become a fully capable Enterprise Out of Band (OOB) service provider.IMS


Have a Question?
Have a how-to question? Seeing a weird error? Get help on StackOverflow.
Register for the Digital Toolkit Meetup where we answer technical Q&A from the audience.
Last updated Tue Jun 11 2024