Complete Redirect Flow
Stay organized with collections
Save and categorize content based on your preferences.
As part of a redirect payment the user will be redirected to complete a payment
in a partner's website. Once the payment is completed, the user should be
redirected back to Google via the integrator. If the payment was completed on
the issuer's portal, the user should be redirected to the integrator first,
which in turn should redirect the user to Google.
The integrator must redirect the user to callbackUrl, which is part of the
Begin Redirect request payload. The integrator must implement an HTTPS protocol
using GET. The GET parameters, outlined in
Redirect Response Parameters, will contain
information about the completed redirect payment.
The integrator must support URL lengths of 2,048 chars. This includes the
scheme, host, port, path and parameters. All parameters will be UTF-8 encoded
prior to being URL-encoded.
Redirect Response
Here's an example of the URL to which the user will be redirected as part of the
Complete Redirect flow (also known as redirect response):
https://example.google.com/return/url?redirectRequestId=cmVxdWVzdDE&paymentIntegratorAccountId=InvisiRedirectPaymentUSA_USD&redirectResponse=VEhJU19JU19BTl9FTkNSWVBURURfUkVESVJFQ1RfUkVTUE9OU0VfUEFZTE9BRF9FWEFNUExFX1RIQVRfSVNfRU5DT0RFRF9XSVRIX2Jhc2U2NF9VUkwtU0FGRV9FTkNPRElORw==
The URL-decoded value of the redirectRequestId parameter in this example is cmVxdWVzdDE. The URL-decoded value of the paymentIntegratorAccountId parameter in this example is InvisiRedirectPaymentUSA_USD
The redirectResponse parameter is encrypted and signed using PGP or JWE+JWS before being base64url-encoded.
Redirect Response Parameters
The HTTPS GET response must have the following query parameters:
| Fields |
redirectRequestId
|
string
REQUIRED: The requestId sent in the
original/initiating redirect payment request. Google will verify
this matches the sent requestId, and the Complete
Redirect flow will fail if it doesn't match.
|
paymentIntegratorAccountId
|
string
REQUIRED: This is the payment integrator account
identifier that identifies contractual constraints around this
transaction.
|
redirectResponse
|
RedirectResponse
REQUIRED: The RedirectResponse
should be encrypted and signed using PGP or
JWE+JWS. Further, this value should be web-safe
base64 encoded.
|
All rights reserved. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-09-03 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-09-03 UTC."],[[["\u003cp\u003eIn redirect payments, users complete payment on a partner site and are redirected back to Google via the integrator.\u003c/p\u003e\n"],["\u003cp\u003eIntegrators must redirect users to the \u003ccode\u003ecallbackUrl\u003c/code\u003e specified in the Begin Redirect request using an HTTPS GET request.\u003c/p\u003e\n"],["\u003cp\u003eThe redirect response includes details like \u003ccode\u003eredirectRequestId\u003c/code\u003e, \u003ccode\u003epaymentIntegratorAccountId\u003c/code\u003e, and an encrypted \u003ccode\u003eredirectResponse\u003c/code\u003e parameter.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eredirectResponse\u003c/code\u003e parameter contains information about the completed payment and is encrypted and signed using PGP or JWE+JWS before being base64url-encoded.\u003c/p\u003e\n"],["\u003cp\u003eIntegrators must support URL lengths up to 2,048 characters, including all parameters which are UTF-8 encoded before URL-encoding.\u003c/p\u003e\n"]]],["Upon payment completion on a partner's site, the user is redirected back to Google via an integrator. The integrator uses an HTTPS GET request to the `callbackUrl` with specific parameters. These include the `redirectRequestId`, `paymentIntegratorAccountId`, and an encrypted, signed, and base64url-encoded `redirectResponse`. Integrators must support URLs up to 2,048 characters and ensure all parameters are UTF-8 and URL-encoded. The parameters are used to verify the completed redirect payment and pass information to Google.\n"],null,[]]