Triggered when a one-time password (OTP) is generated as part of the security challenge for provisioning an XPay card to a digital wallet (Apple Pay, Google Pay or similar). The challenge applies to both manual and in-app push provisioning and is presented dynamically based on card load risk scoring. Subscribers should use this event to deliver the OTP to the cardholder in their preferred channel.
XPay Card Load OTP
{listenerUrl}/xpay-card-load-otp Request
Header Parameters
X-Delivery-IdstringUnique message id plus delivery attempt.
X-Key-IdstringID of the public key used to validate the signature.
X-SignaturestringBase64-encoded RSA SHA-256 signature of
{deliveryId}:.{keyId}: {requestBody}
Body application/json
topicstringAllowed values:xpay-card-load-otppayloadobjectxpayTypestringAllowed values:applegenericgoogleType of XPay being used.
verificationCodestringThe XPay one-time code to deliver to the cardholder.
cardholderIdstringThe Immersve cardholder's account id.
cardIdstringThe Immersve card id for the card being loaded.
cardPanLast4stringThe last four digits of the card PAN.
cardProgramIdstringThe Immersve card program id for the card.
expiresAtstringThe OTP expiration timestamp
deliveryOptionsobject[]min items: 1Specifies the method by which the notification should be delivered to the cardholder. Subscriber must send the notification using one of the specified delivery channel.
Items
typestringrequiredAllowed values:smsemailThe delivery channel method.
destinationstringThe delivery destination. E.g: a phone number in the case of sms or email address in the case of email
messageIdstringlistenerIdstringlistenerAccountIdstringdeliveryAttemptnumbercreatedAtstringThe notification message creation timestamp.
sentAtstringThe delivery attempt timestamp.
keyIdstringThe public key id for validating the signature. Public keys can be found at https://api.immersve.com/.well-known/jwks.json and matched using the "kid" attribute.
issuerstring
Response
Subscription response
Body application/json
deliveryTypestringSelected delivery option by the subscriber
deliveryDestinationstringDestination where the notification was sent to by the subscriber