Skip to main content
POST
/
v1
/
three-ds
/
submit
Submit 3DS authentication
curl --request POST \
  --url https://api-global.fastpaybrasil.com/v1/three-ds/submit \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "authenticationId": "tdsa_1QmCRMJM0r9zBvr4OVmMRa6X",
  "fingerprintingResult": "VGhpcyBpcyBhIHNhbXBsZSciAzRFMgTWV0aG9kIFJlc3VsdA=="
}
'
{
  "authenticationId": "tdsa_1QmCRMJM0r9zBvr4OVmMRa6X",
  "status": "requires_challenge",
  "challengeUrl": "https://hooks.stripe.com/three_d_secure/challenge/acct_xxx/tdsa_xxx",
  "outcome": "authenticated"
}

Authorizations

Authorization
string
header
required

HTTP Basic authentication. Use your secret key as the username and an empty string as password. The API key should be base64 encoded in the format 'username:' when sending the Authorization header.

Body

application/json
authenticationId
string
required

3DS Authentication ID from POST /v1/three-ds/authenticate

Example:

"tdsa_1QmCRMJM0r9zBvr4OVmMRa6X"

fingerprintingResult
string

Base64-encoded fingerprinting result obtained from the hidden iframe postMessage. Omit if no fingerprinting step occurred.

Example:

"VGhpcyBpcyBhIHNhbXBsZSciAzRFMgTWV0aG9kIFJlc3VsdA=="

Response

Authentication submitted successfully

authenticationId
string

3DS Authentication ID

Example:

"tdsa_1QmCRMJM0r9zBvr4OVmMRa6X"

status
enum<string>

Updated authentication status after submit

Available options:
requires_challenge,
succeeded,
failed,
error,
processing
Example:

"requires_challenge"

challengeUrl
string | null

Challenge URL — render in iframe when status is requires_challenge

Example:

"https://hooks.stripe.com/three_d_secure/challenge/acct_xxx/tdsa_xxx"

outcome
string | null

Authentication outcome (only present in terminal states)

Example:

"authenticated"