Triggered when a payment is updated throughout its lifecycle.
Payment Updated
{listenerUrl}/payment-updated 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:payment-updatedpayloadobjecteventobjectrequiredtypestringrequiredAllowed values:auth-acceptedauth-declinedauth-forcedclearing-acceptedclearing-declinedauth-reversal-acceptedauth-reversal-declinedpayment-expiredpayment-failedclearing-reversal-acceptedclearing-reversal-declinedThe payment lifecycle event which triggered the webhook event.
createdAtstring<date-time>requiredISO 8601 timestamp of when the event occurred.
declineReasonstringThe reason the authorization was declined. Only present when the event
typeisauth-declined. Possible values includeinsufficient-funds,inactive-card,lost-or-stolen-card,account-restricted, andcardholder-blocked. New values may be added over time, so consumers must tolerate unknown values.
paymentobjectrequiredidstringrequiredPayment identifier.
createdAtstring<date-time>requiredISO 8601 timestamp of when the payment was created.
pendingbooleanrequiredIndicates if the payment is still in progress.
typestringrequiredAllowed values:purchaserefundadjustmentThe type of payment.
creditDebitIndicatorstringrequiredAllowed values:creditdebitIndicates whether this is a credit or debit payment.
statusstringrequiredAllowed values:holdingclearedcanceledThe current status of the payment.
cashOperationstringIndicates that the payment was a cash-based transaction and of which kind. Known values:
atm-withdrawal,manual-cash-disbursement. New values may be added; clients must tolerate unknown values.amountobjectrequiredvaluestringrequiredTotal payment amount in minor units. Fee inclusive.
currencystringrequiredISO 4217 currency code.
feeAmountobjectrequiredvaluestringrequiredThe fee amount of the payment in minor units.
currencystringrequiredISO 4217 currency code.
feeCompositionobject[]requiredBreakdown of fees applied to the payment.
Items
categorystringrequiredThe category of the fee.
ratenumberThe rate applied for the fee.
amountobjectrequiredvaluestringrequiredThe fee amount in minor units.
currencystringrequiredISO 4217 currency code.
typestringrequiredAllowed values:variablefixedThe type of fee.
acquirerAmountobjectrequiredvaluestringrequiredPayment amount in the acquirer's currency using minor units.
currencystringrequiredISO 4217 currency code.
cardholderobjectrequiredidstringrequiredCardholder account identifier.
cardobjectrequiredidstringrequiredCard identifier.
typestringAllowed values:virtualphysicalWhether the card was issued as
physicalorvirtual.
cardPresentbooleanWhether the card was at the point of sale when the payment was authorized, as classified by the payment network.
truefor a card inserted, swiped, or tapped at a terminal, including a phone or watch tap and a manually keyed card at an attended terminal.falsefor e-commerce, in-app, mail order, and telephone order payments, and for a merchant charging a card it has stored on file.tokenobjectPresent when the payment was made with a network token instead of the card's own PAN, for example from a digital wallet or a merchant's stored credential. Absent when the card itself was used.
requestorstringrequiredWho the token was issued to:
apple-pay,google-pay,merchantfor a card the merchant has stored on file, orotherfor a token requestor Immersve does not name. Clients must tolerate unknown values.
networkReferencestringThe payment network reference identifier for the payment, if applicable.
retrievalReferencestringThe acquirer-generated retrieval reference number for the payment, if supplied by the payment network. The reference stays with the payment through authorization, clearing, and disputes, and can be used to match the payment across systems. Unlike
networkReference, which identifies a single network message, the retrieval reference number identifies the payment as a whole.initiatorstringThe party that initiated the payment, if indicated by the payment network. Clients must tolerate unknown values, and must not read an absent value as
cardholder. Values may include the following:cardholderfor cardholder-initiated payments, such as an online checkout;merchantfor merchant-initiated payments, such as recurring billing, installments, or stored-credential charges.failureReasonstringThe reason for payment failure, if applicable.
relatedPaymentIdstringThe id of the related payment, if applicable.
merchantobjectidstringThe merchant identifier from the payment network.
namestringThe merchant's name.
citystringThe merchant's city name.
countryCodestringThe merchant's ISO-3166-1 Alpha-2 country code.
terminalIdstringThe merchant's payment terminal identifier.
categoryCodestringThe merchant's ISO-18245 category code.
securityChallengeobjectoutcomestring3DS challenge outcome, if applicable.
refstringReference identifier for the 3DS challenge, if applicable.
fundingSourcesobject[]Array of funding sources used for the payment. Will not be present for custodial payments.
Items
idstringFunding source identifier.
addressstringThe blockchain address of the funding source.
fundingChannelIdstringThe funding channel identifier associated with this source.
networkstringThe blockchain network where the funding source resides.
tokenobjectnamestringThe name of the token used for funding.
addressstringThe smart contract address of the funding token.
decimalsintegerThe number of decimal places supported by the funding token.
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