feat: fetch Google Pay config from Bolt API, add button theme support#45
Closed
feat: fetch Google Pay config from Bolt API, add button theme support#45
Conversation
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Simplifies the Google Pay integration by auto-fetching merchant/gateway configuration (tokenization spec, merchant IDs, merchant name) from Bolt's
/v1/apm_config/googlepayAPI endpoint using the publishable key. Developers no longer need to providegatewayMerchantId,googleMerchantId, ormerchantName— only presentation options likecurrencyCode,amount,label, andbillingAddressCollectionFormat. Also addsbuttonThemeprop (dark/light) to the Google Pay button, wired through to Android'sButtonConstants.ButtonTheme.Testing
GoogleWallet.test.tsxwith new simplified config shape and APM config mock validation.WalletTypes.test.tsto verify the newGooglePayConfigaccepts only presentation options and all fields are optional.buttonThemerendering (dark vs light).Security Review
Important
A security review is required for every PR in this repository to comply with PCI requirements.
Security Impact Summary
This PR adds an HTTP request to Bolt's API (
GET /v1/apm_config/googlepay) using the publishable key as amerchant_tokenheader. The publishable key is already a public credential designed for client-side use. The response contains non-sensitive merchant configuration (merchant name, tokenization gateway params). No new secrets, user data, or authentication flows are introduced. The tokenization and payment flows remain unchanged — the Google Pay token is still sent to Bolt's/v1/googlepay/tokenizeendpoint with Bearer auth as before.