Skip to content

Comments

fix: Add new Google Wallet Tap & Pay error codes#38

Merged
neijrbuilders merged 5 commits intodevelopfrom
feature/get-more-status-code-constants-of-google-wallet
Feb 20, 2026
Merged

fix: Add new Google Wallet Tap & Pay error codes#38
neijrbuilders merged 5 commits intodevelopfrom
feature/get-more-status-code-constants-of-google-wallet

Conversation

@matheuscamposbuilders
Copy link
Contributor

Resumo das Alterações

1. Android (Kotlin)

  • GoogleWalletImplementation.kt:
    • Adição de novos códigos de erro da API "Tap & Pay" ao mapa de constantes exportado para o React Native.
    • Implementação da anotação @SuppressWarnings("deprecation") para silenciar avisos sobre o uso de constantes legadas da Google Wallet, como TAP_AND_PAY_CHECK_ELIGIBILITY_ERROR e TAP_AND_PAY_PAYMENT_CREDENTIALS_DELIVERY_TIMEOUT.
  • GoogleWalletErrorCode.kt:
    • Mapeamento de novos códigos de erro nativos para o formato legível pelo bridge, incluindo:
      • SAVE_CARD_ERROR
      • INELIGIBLE_FOR_TOKENIZATION
      • TOKENIZATION_DECLINED
      • TOKENIZE_ERROR
      • TOKEN_ACTIVATION_REQUIRED
      • USER_CANCELED_FLOW
      • ENROLL_FOR_VIRTUAL_CARDS_FAILED
  • GoogleWalletMock.kt:
    • Atualização do mock de Android para refletir as novas constantes e marcar explicitamente as que estão depreciadas.

2. Definições de Tipos e Stubs (TypeScript/iOS)

  • src/types/google-wallet.types.ts:
    • Expansão da interface GoogleWalletConstants para incluir as novas propriedades de erro mencionadas acima, acompanhadas de comentários descritivos em português explicando o significado de cada código.
  • src/google-wallet.ios.ts:
    • Atualização do objeto iOS_STUB_CONSTANTS para manter a paridade com a nova interface, garantindo que o código iOS (stub) não quebre com a mudança dos tipos.
  • src/__tests__/__mocks__/index.ts:
    • Atualização dos mocks globais de teste para incluir as novas constantes.
    • Adição de mocks para as funções setLogListener e removeLogListener tanto no módulo Google quanto no Samsung.

3. Gerenciamento de Projeto

  • package.json:
    • Incremento da versão do pacote de 1.1.1 para 1.1.2.

Detalhes das Novas Constantes Adicionadas

Constante Descrição
TAP_AND_PAY_SAVE_CARD_ERROR Falha ao salvar o FPAN como um cartão nos registros.
TAP_AND_PAY_INELIGIBLE_FOR_TOKENIZATION O cartão não é elegível para tokenização.
TAP_AND_PAY_TOKENIZATION_DECLINED A tokenização foi recusada pelo TSP (caminho vermelho).
TAP_AND_PAY_TOKENIZE_ERROR Não é possível chamar a API TapAndPay pelo aplicativo atual.
TAP_AND_PAY_TOKEN_ACTIVATION_REQUIRED Provisionamento bem-sucedido, mas requer verificação extra (caminho amarelo).
TAP_AND_PAY_USER_CANCELED_FLOW O usuário cancelou intencionalmente o fluxo de provisionamento.
TAP_AND_PAY_ENROLL_FOR_VIRTUAL_CARDS_FAILED Falha na tentativa de inscrição em cartões virtuais.

@gemini-code-assist
Copy link

Summary of Changes

Hello @matheuscamposbuilders, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

Este pull request aprimora a integração com a Google Wallet, adicionando um conjunto abrangente de novos códigos de erro da API Tap & Pay. As mudanças garantem que a aplicação possa lidar com uma gama mais ampla de cenários de erro, melhorando a robustez e a experiência do usuário. Além disso, foram realizadas atualizações nas definições de tipos e nos mocks para manter a paridade entre as plataformas e facilitar o desenvolvimento e teste futuros.

Highlights

  • Novos Códigos de Erro Google Wallet Tap & Pay: Foram adicionados novos códigos de erro da API 'Tap & Pay' à implementação Android (Kotlin), incluindo SAVE_CARD_ERROR, INELIGIBLE_FOR_TOKENIZATION, TOKENIZATION_DECLINED, TOKENIZE_ERROR, TOKEN_ACTIVATION_REQUIRED, USER_CANCELED_FLOW e ENROLL_FOR_VIRTUAL_CARDS_FAILED.
  • Tratamento de Constantes Depreciadas: Anotações @SuppressWarnings("deprecation") foram adicionadas no Kotlin para silenciar avisos sobre o uso de constantes legadas da Google Wallet, como TAP_AND_PAY_CHECK_ELIGIBILITY_ERROR e TAP_AND_PAY_PAYMENT_CREDENTIALS_DELIVERY_TIMEOUT, garantindo compatibilidade e clareza.
  • Atualização de Tipos e Mocks: As definições de tipos em TypeScript (src/types/google-wallet.types.ts) e os stubs iOS (src/google-wallet.ios.ts) foram expandidos para incluir as novas propriedades de erro. Os mocks de teste globais (src/__tests__/__mocks__/index.ts) também foram atualizados para refletir as novas constantes e incluir mocks para setLogListener e removeLogListener.
  • Incremento de Versão do Pacote: A versão do pacote package.json foi incrementada de 1.1.1 para 1.1.2.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • android/src/googleWallet/java/com/builders/wallet/googletapandpay/GoogleWalletImplementation.kt
    • Removidas linhas em branco desnecessárias.
    • Adicionadas anotações @Suppress("DEPRECATION") para constantes de erro depreciadas.
  • android/src/googleWallet/java/com/builders/wallet/googletapandpay/util/ErrorCode.kt
    • Removidas linhas em branco desnecessárias.
    • Adicionadas anotações @Suppress("DEPRECATION") para constantes de erro depreciadas em mapeamentos de nome e mensagem.
  • android/src/main/java/com/builders/wallet/googletapandpay/GoogleWalletMock.kt
    • Removidas linhas em branco desnecessárias.
    • Adicionados comentários // Deprecated para constantes de erro depreciadas no mapa de constantes.
  • package.json
    • Atualizada a versão do pacote de 1.1.1 para 1.1.2.
  • src/tests/mocks/index.ts
    • Adicionadas novas constantes de erro TAP_AND_PAY ao mock de constantes do Google Wallet.
    • Adicionados mocks para as funções setLogListener e removeLogListener para os módulos Google e Samsung Wallet.
  • src/google-wallet.ios.ts
    • Adicionadas novas constantes de erro TAP_AND_PAY ao objeto iOS_STUB_CONSTANTS.
  • src/types/google-wallet.types.ts
    • Adicionadas novas constantes de erro TAP_AND_PAY com descrições JSDoc à interface GoogleWalletConstants.
Activity
  • Nenhuma atividade humana registrada neste pull request até o momento.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@matheuscamposbuilders matheuscamposbuilders changed the title feat: Add new Google Wallet Tap & Pay error codes fix: Add new Google Wallet Tap & Pay error codes Feb 20, 2026
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

Este pull request adiciona novos códigos de erro do Google Wallet e atualiza as definições de tipo e mocks correspondentes. As alterações parecem corretas em sua maior parte, mas identifiquei alguns erros críticos de sintaxe nos arquivos Kotlin (GoogleWalletImplementation.kt, ErrorCode.kt, e GoogleWalletMock.kt) que parecem ser resultado de um erro de cópia e cola. Blocos de código markdown foram inseridos diretamente no código, o que impedirá a compilação. Corrigir esses erros é essencial para que a aplicação funcione.

Copy link
Contributor

@neijrbuilders neijrbuilders left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Coloquei alguns comentarios. E outra duvida onde viw que essas constants estavam DEPRECATION ?

… credentials timeout and remove deprecation flags.
… credentials timeout and remove deprecation flags.
…' of github-work:platformbuilders/wallet-bridge-react-native into feature/get-more-status-code-constants-of-google-wallet
TAP_AND_PAY_TOKENIZE_ERROR: 9,
TAP_AND_PAY_TOKEN_ACTIVATION_REQUIRED: 10,
TAP_AND_PAY_USER_CANCELED_FLOW: 11,
TAP_AND_PAY_ENROLL_FOR_VIRTUAL_CARDS_FAILED: 12,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Depois temos que ver esse arquivo do google-wallet e samsung-wallet para ios não fazem muito sentido.

@neijrbuilders neijrbuilders merged commit e280826 into develop Feb 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants