CARD_STATUS_UPDATED for the block. Card state lives on that stream, not on the fraud alert resource.
Alert lifecycle
Detection alone does not block the card. Only confirm and manual report do.
Deadlines
Past
respondableUntil, Respond to alert returns FRAUD_RESPONSE_WINDOW_EXPIRED. Use Report fraud instead while the reporting window is still open.
Respond to a detected alert
1
Subscribe to the webhooks
Listen for
CARD_FRAUD_ALERT_CREATED. When origin is DETECTED and status is PENDING, contact the cardholder before the deadline on respondableUntil.2
Confirm or decline
Call Respond to alert. Confirming an alert requires you to pass a fraud type.
3
Handle the outcome
You receive
CARD_FRAUD_ALERT_STATUS_UPDATED with the new status.On confirm, also listen for CARD_STATUS_UPDATED. The card moves to BLOCKED with blockReason.type: FRAUD_ALERT_CONFIRMED.Report fraud manually
Use this when the cardholder later flags a transaction, or when a detected alert expired andreportableUntil is still ahead of now.
1
Identify the transaction
Take the card transaction ID from your records.
2
File the report
Call Report fraud with
transactionId, type, and optionally cardholderNotifiedAt.The report always confirms fraud and blocks the card. If a pending detected alert already exists for that transaction and is still inside the response window, the call confirms it instead of creating a second alert (transaction and alert are 1:1).3
Handle the block
You receive
CARD_FRAUD_ALERT_CREATED or CARD_FRAUD_ALERT_STATUS_UPDATED with status: CONFIRMED, plus CARD_STATUS_UPDATED with blockReason.type: FRAUD_ALERT_CONFIRMED.When the cardholder notified you of the suspected fraud, pass
cardholderNotifiedAt. The reporting window becomes the earlier of 180 days from the transaction and 30 days from that notification. When omitted, only the 180-day transaction window is enforced server-side; the 30-day notification limb remains your obligation.