Webhook Events
AUTHENTICATED
Fired when the authentication to a merchant is successful. You should call Switch Card or Switch Card JWE within 15 seconds when you receive this webhook and send_card = true
.
There are certain cases where send_card = false
, for example while users interact with other Knot products or for the MassSwitcher feature.
CARD_UPDATED
Fired when a card is updated in a merchant account.
CARD_FAILED
Fired when a card failed to be updated in a merchant account. The reason is specified in the reason
field.
Failure Reasons
Reason | Description |
---|---|
account | The user’s merchant account has an issue (e.g. a foreign account). |
card | The user’s card information has an issue (e.g. incorrect phone #, incorrect billing address, unsupported card type, etc.). |
card expired | The user’s card is expired. |
insufficient funds | The user’s depository account associated with their card does not have sufficient funds to cover the pre-authorization hold from the merchant. |
subscription | The user’s merchant account does not have an active subscription. |
subscription admin | The user is not have the necessary authorization to update the payment method in the merchant account. |
third-party payment method on subscription | The user pays for the merchant’s service through a 3rd party merchant account (e.g. Spotify through Hulu). |
too close to end of billing cycle | The user’s billing cycle date is too close. |
too many attempts | The user attempted to enter their login credentials (e.g. username, password, OTP) to the merchant account too many times. |
credentials | The user entered incorrect credentials when logging in to the merchant. |
otp | The user entered an incorrect OTP code when logging in to the merchant. |
credentials timeout | The user did not enter their login credentials to the merchant account in a certain period of time. |
otp timeout | The user did not enter their otp code to the merchant account in a certain period of time. |
questions timeout | The user did not enter the answers to the security questions for the merchant account in a certain period of time. |
zip timeout | The user did not enter their zip code associated with their merchant account in a certain period of time. |
session not authenticated | Knot could not authenticate to the user’s merchant account. |
did not receive payment method information | Knot did not receive any card information. |
could not handle payment method information | Knot encountered an error handling the user’s card information once received. |
could not retrieve payment method information | Knot was unsuccessful in retrieving payment method information from from a direct processor integration. |
other | An unknown issue was encountered. |
MERCHANT_STATUS_UPDATE
Listening to this event is only necessary if you intend to display and allow users to select various merchants natively inside your app.
Fired when a merchant becomes available or unavailable (even if temporarily), including when a brand new merchant is made available on the Knot platform for the first time.
Availability is unique to product types, platforms, and versions of the SDK. As such, the event will fire independently for each product type
and platform
. Particularly if you are implementing multiple of Knot’s products, you should consider the type
property to determine whether a merchant is available for a given product, as availability can differ.
This event does not include a session_id
, which is relevant when generating a hash map for webhook verification, as described in Webhook Verification.