Send an Embedded or Hybrid SCA Challenge
POST/auth/sca/events/:eventId/challenges
Sends a challenge via a secure communication mechanism as part of the ongoing Embedded or Hybrid SCA process.
Once an SCA process is initiated, a challenge must be sent through one of the available verification mechanisms
(e.g., send an OTP code via SMS). Тhe challenges have their own expiration (e.g., the OTP sent via SMS is valid
for only a short time). If a challenge expires, a new one must be sent. Each challenge sent for the same process
will increment the currentChallenges
field. This process can only be performed a limited number of times, as
defined by allowableChallenges
(its value is determined by the best security practices). If this limit is
exceeded, an error will be returned, and no additional challenges can be sent for the same process until a
cooldown period has elapsed. After this period, the currentChallenges
are reset, and new challenges can be
sent for the same process as previously described.
More details can be found in Strong Customer Authentication.
Request
Path Parameters
Unique identifier for the SCA event, associated with the current event challenge.
- application/json
Body
PASSWORD
- A secret combination of characters, typically chosen by the user, used to authenticate their identity.PIN
- A numeric code, typically six digits, used to authenticate the user's identity.PASSKEYS
- A set of predefined keys or a pattern chosen by the user to authenticate their identity.OTP
- One-Time Password sent via SMS, email, or authenticator application to the user's registered device.PUSH_NOTIFICATION
- A notification sent to the user's mobile device prompting them to approve or deny the authentication request.BIOMETRIC
- Authentication based on unique physical characteristics of the user, such as fingerprint, facial recognition, or iris scan.SMS
- Verification method sent via SMS to the user's registered device.EMAIL
- Verification method sent via email to the user's registered address.AUTHENTICATOR
- Verification method generated by an authenticator application installed on the user's device.
A distinct identifier for the wallet operation. This identifier is used to associate the wallet operation with the SCA authentication event.
verification
object
required
Verification details associated with the SCA authentication event attempt.
Possible values: [PASSWORD
, PIN
, PASSKEYS
, OTP
, PUSH_NOTIFICATION
, BIOMETRIC
]
Method used for verifying the SCA authentication event attempt.
Possible values: [SMS
, EMAIL
, AUTHENTICATOR
]
Channel used to send the verification method to the user.
deviceInfo
object
required
Provides information about the device that the end-customer uses to access the service.
Possible values: [WEB_APP
, MOBILE_APP
, API
]
Possible values: <= 100 characters
ThreatMetrics session id.
Responses
- 201
- 400
- 401
- 404
- 405
- 429
- 500
- 503
Created
- application/json
- Schema
- Example (from schema)
- OTP_SMS
- OTP_EMAIL
- PUSH_NOTIFICATION
Schema
OUTSOURCED
- The partner is responsible for handling the entire SCA process.EMBEDDED
- Paysafe is responsible for handling the entire SCA process, including user authentication and compliance with regulations like PSD2.HYBRID
- Paysafe manages the entire SCA process, excluding the communication with the end-user.PASSWORD
- A secret combination of characters, typically chosen by the user, used to authenticate their identity.PIN
- A numeric code, typically six digits, used to authenticate the user's identity.PASSKEYS
- A set of predefined keys or a pattern chosen by the user to authenticate their identity.OTP
- One-Time Password sent via SMS, email, or authenticator application to the user's registered device.PUSH_NOTIFICATION
- A notification sent to the user's mobile device prompting them to approve or deny the authentication request.BIOMETRIC
- Authentication based on unique physical characteristics of the user, such as fingerprint, facial recognition, or iris scan.SMS
- Verification method sent via SMS to the user's registered device.EMAIL
- Verification method sent via email to the user's registered address.AUTHENTICATOR
- Verification method generated by an authenticator application installed on the user's device.
A distinct identifier for the SCA authentication event.
A distinct identifier for the wallet operation. This identifier is used to associate the wallet operation with the SCA authentication event.
Possible values: [OUTSOURCED
, EMBEDDED
, HYBRID
]
Mode of the Strong Customer Authentication (SCA) authentication process.
verification
object
required
Verification details associated with the SCA authentication event attempt.
Possible values: [PASSWORD
, PIN
, PASSKEYS
, OTP
, PUSH_NOTIFICATION
, BIOMETRIC
]
Method used for verifying the SCA authentication event attempt.
Possible values: [SMS
, EMAIL
, AUTHENTICATOR
]
Channel used to send the verification method to the user.
The number of challenges currently sent as part of the authentication process for the same wallet operation.
The maximum number of allowed challenges that can be sent as part of the authentication process for the same wallet operation.
Represents RFC 3339, section 5.6 date-time.
Represents RFC 3339, section 5.6 date-time.
{
"eventId": "06bdcd2c-0cce-4b36-97ec-281c8f5d743c",
"walletOperationId": "a5865fd6-18c2-45a8-9953-1c00eac36c36",
"authenticationMode": "OUTSOURCED",
"verification": {
"method": "OTP",
"channel": "SMS"
},
"currentChallenges": 1,
"allowableChallenges": 3,
"creationTime": "2021-07-15T17:54:12Z",
"expirationTime": "2021-07-15T17:54:12Z"
}
{
"eventId": "06bdcd2c-0cce-4b36-97ec-281c8f5d743c",
"walletOperationId": "a5865fd6-18c2-45a8-9953-1c00eac36c36",
"authenticationMode": "HYBRID",
"verification": {
"method": "OTP",
"channel": "SMS"
},
"currentChallenges": 1,
"allowableChallenges": 3,
"creationTime": "2021-07-15T17:54:12Z",
"expirationTime": "2021-07-15T18:09:12Z"
}
{
"eventId": "06bdcd2c-0cce-4b36-97ec-281c8f5d743c",
"walletOperationId": "a5865fd6-18c2-45a8-9953-1c00eac36c36",
"authenticationMode": "HYBRID",
"verification": {
"method": "OTP",
"channel": "EMAIL"
},
"currentChallenges": 1,
"allowableChallenges": 3,
"creationTime": "2021-07-15T17:54:12Z",
"expirationTime": "2021-07-15T18:09:12Z"
}
{
"eventId": "06bdcd2c-0cce-4b36-97ec-281c8f5d743c",
"walletOperationId": "a5865fd6-18c2-45a8-9953-1c00eac36c36",
"authenticationMode": "HYBRID",
"verification": {
"method": "PUSH_NOTIFICATION"
},
"currentChallenges": 1,
"allowableChallenges": 3,
"creationTime": "2021-07-15T17:54:12Z",
"expirationTime": "2021-07-15T18:09:12Z"
}
Bad Request
- application/json
- Schema
- Example (from schema)
- MISSING_VERIFICATION_METHOD
Schema
Array [
]
error
object
Additional details about the error.
The error code.
A description of the error.
Details of any parameter value errors.
fieldErrors
object[]
Identifies the JSON request field.
The problem associated with the field.
{
"error": {
"code": "string",
"message": "string",
"details": [
"string"
],
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}
}
{
"error": {
"code": "5068",
"message": "Field error(s)",
"details": [
"Either you submitted a request that is missing a mandatory field or the value of a field does not match the format expected."
],
"fieldErrors": [
{
"field": "verification.method",
"error": "must not be null"
}
]
}
}
Unauthorized
- application/json
- Schema
- Example (from schema)
- INVALID_CREDENTIALS
Schema
Array [
]
error
object
Additional details about the error.
The error code.
A description of the error.
Details of any parameter value errors.
fieldErrors
object[]
Identifies the JSON request field.
The problem associated with the field.
{
"error": {
"code": "string",
"message": "string",
"details": [
"string"
],
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}
}
{
"error": {
"code": "5279",
"message": "Invalid credentials",
"details": [
"The authentication credentials are invalid."
]
}
}
Not Found
- application/json
- Schema
- Example (from schema)
- SCA_EVENT_NOT_FOUND
Schema
Array [
]
error
object
Additional details about the error.
The error code.
A description of the error.
Details of any parameter value errors.
fieldErrors
object[]
Identifies the JSON request field.
The problem associated with the field.
{
"error": {
"code": "string",
"message": "string",
"details": [
"string"
],
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}
}
{
"error": {
"code": "DW-SCA-EVENT-NOT-FOUND",
"message": "SCA authentication event was not found",
"details": [
"No SCA authentication event matching the provided data was found."
]
}
}
Method Not Allowed
- application/json
- Schema
- Example (from schema)
- METHOD_NOT_ALLOWED
Schema
Array [
]
error
object
Additional details about the error.
The error code.
A description of the error.
Details of any parameter value errors.
fieldErrors
object[]
Identifies the JSON request field.
The problem associated with the field.
{
"error": {
"code": "string",
"message": "string",
"details": [
"string"
],
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}
}
{
"error": {
"code": "DW-OPERATION-NOT-ALLOWED",
"message": "Operation is not allowed in your account.",
"details": [
"Operation is not allowed in your account. Contact Paysafe for further details."
]
}
}
Too Many Requests
- application/json
- Schema
- Example (from schema)
- SCA_CHALLENGES_EXCEED
Schema
Array [
]
error
object
Additional details about the error.
The error code.
A description of the error.
Details of any parameter value errors.
fieldErrors
object[]
Identifies the JSON request field.
The problem associated with the field.
{
"error": {
"code": "string",
"message": "string",
"details": [
"string"
],
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}
}
{
"error": {
"code": "DW-SCA-CHALLENGES-EXCEEDED",
"message": "SCA authentication challenges sent exceeded",
"details": [
"SCA authentication challenges sent exceeded the allowed limit."
]
}
}
Internal Server Error
- application/json
- Schema
- Example (from schema)
- INTERNAL_SERVER_ERROR
Schema
Array [
]
error
object
Additional details about the error.
The error code.
A description of the error.
Details of any parameter value errors.
fieldErrors
object[]
Identifies the JSON request field.
The problem associated with the field.
{
"error": {
"code": "string",
"message": "string",
"details": [
"string"
],
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}
}
{
"error": {
"code": "DW-INTERNAL-SERVER-ERROR",
"message": "Internal Server Error",
"details": [
"There was an error while processing the operation"
]
}
}
Service Unavailable
- application/json
- Schema
- Example (from schema)
- SERVICE_UNAVAILABLE
Schema
Array [
]
error
object
Additional details about the error.
The error code.
A description of the error.
Details of any parameter value errors.
fieldErrors
object[]
Identifies the JSON request field.
The problem associated with the field.
{
"error": {
"code": "string",
"message": "string",
"details": [
"string"
],
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}
}
{
"error": {
"code": "DW-SERVICE-UNAVAILABLE",
"message": "Service Unavailable",
"details": [
"Service Unavailable"
]
}
}