RedirectUrlResponse

  • The RedirectUrlResponse object uses a JSON structure to convey authentication results.

  • This JSON response is encrypted and signed using either PGP or JWE+JWS for security.

  • The secured response is then encoded with web-safe base64 encoding before being returned.

  • The JSON response includes fields for request ID, authentication result code, and optional Electronic Commerce Indicator (ECI).

Response object for the Return Url flow.

Here's an example of a clear text JSON request:


{
  "authenticateRequestId": "cmVxdWVzdDE",
  "authenticateResultCode": {
    "success": {}
  },
  "eci": "07"
}

The RedirectUrlResponse is encrypted and signed using PGP or JWE+JWS. Further, this value is web-safe base64 encoded. This encoding is referred to below as Base64UrlEncode. In other words, the clear text JSON version of the RedirectUrlResponse must be passed through the following functions:

Base64UrlEncode(
  PGPSignAndEncrypt(
{
  "authenticateRequestId": "cmVxdWVzdDE",
  "authenticateResultCode": {
    "success": {}
  },
  "eci": "07"
}
  )
)

or

Base64UrlEncode(
  JWSignAndEncrypt(
{
  "authenticateRequestId": "cmVxdWVzdDE",
  "authenticateResultCode": {
    "success": {}
  },
  "eci": "07"
}
  )
)
JSON representation
{
  "authenticateRequestId": string,
  "authenticateResultCode": {
    object (AuthenticateResultCode)
  },
  "eci": string
}
Fields
authenticateRequestId

string

REQUIRED: Unique identifier of the initiating redirect request.

This is a string that has a max length of 100 characters, and contains only the characters "a-z", "A-Z", "0-9", ":", "-", and "_".

authenticateResultCode

object (AuthenticateResultCode)

REQUIRED: The final result of the request to Authenticate the user.

eci

string

OPTIONAL: The Electronic Commerce Indicator returned for the request. It should be returned if available.

AuthenticateResultCode

Result codes for the authenticate request that this getAuthenticateResult is referencing.

JSON representation
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "success": {
    object (Empty)
  },
  "unableToAuthenticate": {
    object (Empty)
  },
  "attempted": {
    object (Empty)
  }
  // End of mutually exclusive fields.
}
Fields
REQUIRED: Result codes for the authenticate request that this getAuthenticateResult is referencing. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response:
success

object (Empty)

A successful authentication. A payment can now be made with a reserveFunds or capture request.

unableToAuthenticate

object (Empty)

The attempt to authenticate the user failed.

attempted

object (Empty)

An attempt was made to authenticate the user. The results are inconclusive. Since the results are inconclusive, Google will attempt a reserveFunds or capture request.

End of mutually exclusive fields.