initial release
card.notification webhook
Added thecard.notification webhook. Rain sends this webhook when a card tokenization event occurs that requires tenant notification, such as when a digital wallet provisioning request is declined.Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
card.notification webhook. Rain sends this webhook when a card tokenization event occurs that requires tenant notification, such as when a digital wallet provisioning request is declined.| Field | Type | Description |
|---|---|---|
id | string | Webhook ID |
resource | string | Always "card" |
action | string | Always "notification" |
version | string | The webhook version |
body.id | string | Notification ID |
body.card.id | string | Rain card ID |
body.card.userId | string (optional) | ID of the cardholder user |
body.tokenWallet | string | The digital wallet associated with the event: "Apple" or "Google Pay" |
body.reasonCode | string | The reason for the notification |
body.decisionReason | object (optional) | Additional details about the decision |
body.decisionReason.code | string | The decision reason code |
body.decisionReason.description | string (optional) | Human-readable description of the decision reason |
reasonCode| Value | Description |
|---|---|
PROVISIONING_DECLINED | The digital wallet provisioning request was declined |
decisionReason.code| Value | Description |
|---|---|
WALLET_PROVIDER_RISK_THRESHOLD_EXCEEDED | Declined by the wallet provider due to their risk assessment |
DEVICE_SCORE_TOO_LOW | Declined because the device score is below the wallet provider’s minimum threshold |
CVC_NOT_VALID | Declined because the CVC/CVV entered does not match the card |
EXCESSIVE_PROVISIONING_ATTEMPTS_ACROSS_ACCOUNTS | Declined due to excessive digitization attempts across accounts |
EXCESSIVE_CARDS_AND_PROVISIONING_ATTEMPTS | Declined due to too many different cards being added in a short period |
EXPIRY_DATE_INVALID | Declined because the expiry date entered does not match the card |
UNKNOWN | Declined for an unknown reason |
{
"id": "c3d4e5f6-a1b2-4890-9c8d-7e6f5a4b3c2d",
"resource": "card",
"action": "notification",
"version": "1.0.0",
"body": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"card": {
"id": "94534236-927b-44f3-9429-27994c7ebc49",
"userId": "6d73762a-c401-4898-8f00-d85707e310c0"
},
"tokenWallet": "Apple",
"reasonCode": "PROVISIONING_DECLINED",
"decisionReason": {
"code": "WALLET_PROVIDER_RISK_THRESHOLD_EXCEEDED",
"description": "This tokenization request was declined by the wallet provider due to their proprietary risk assessment system."
}
}
}