Skip to main content
Some online purchases ask the cardholder to confirm them with 3D Secure before they go through. Slash can let your legal entity make that decision itself: each challenge arrives as a three_ds_challenge.requested webhook, and you approve or decline it through the API. Contact Slash support to turn this on. A challenge lives for about five minutes. Decide it before its expiresAt; a challenge left unanswered is declined, and so is the purchase. The webhook carries everything needed to decide: the card, the merchant, the amount and the deadline. Its entityId is the challengeId to pass to the endpoints below. GET /v2/three-ds-challenges/{challengeId} returns the same challenge with its current status.
POST /v2/three-ds-challenges/{challengeId}/decline rejects the purchase instead. Only a pending challenge can be decided: deciding one that is no longer pending returns three_ds_challenge_already_decided, and deciding it after it expired returns three_ds_challenge_expired.