Google Play
Service Account, Package Name e RTDN pra conectar seu app Android ao Paywallo.
O que você vai precisar
Pra conectar o Google Play ao Paywallo, você vai precisar de:
- Service Account JSON (credenciais de acesso à Google Play Developer API)
- Package Name (identificador do app Android)
- Pub/Sub Topic (pra notificações em tempo real)
Tudo é configurado no Google Cloud Console e no Google Play Console. Depois de juntar tudo, vá em Configurações > Apps (grupo Workspace) no Paywallo, selecione o app e abra a plataforma Android. Os campos Service Account JSON e Package Name ficam na seção Google Play Billing dessa tela.
Criar a Service Account
A Service Account é o que permite que o Paywallo acesse a Google Play Developer API pra validar compras e buscar informações de assinatura.
Acesse console.cloud.google.com e selecione o projeto do seu app (se ainda não existe, crie um)
No menu lateral, vá em IAM e administrador > Contas de serviço
Clique em Criar conta de serviço. Dê um nome (ex.: paywallo-play) e clique em "Criar e continuar"
Na etapa de papel (role), não selecione nenhum papel. Clique em "Concluir" — o acesso à AndroidPublisher API vem do convite no Play Console (próxima seção), não de papel de projeto no Cloud IAM.
Na lista de contas de serviço, clique na que você criou. Vá na aba Chaves > Adicionar chave > Criar nova chave > JSON
Baixe o arquivo .json. No Paywallo, em Configurações > Apps > seu app > Android, envie esse arquivo no campo Service Account JSON, na seção Google Play Billing
Vincular ao Google Play Console
Depois de criar a Service Account, você precisa dar acesso a ela no Google Play Console. Só o Account Owner ou um usuário com permissão de administrador pra gerenciar usuários consegue convidar novos usuários.
No Google Play Console, vá em Usuários e permissões
Clique em Convidar novo usuário. No campo de email, cole o email da Service Account (formato nome@projeto.iam.gserviceaccount.com, está no arquivo JSON que você baixou)
Nas permissões, marque Ver dados financeiros, pedidos e respostas a pesquisas de cancelamento e Gerenciar pedidos e assinaturas. Salve.
Package Name
O Package Name é o identificador do app Android (ex: com.suaempresa.seuapp). Fica no Google Play Console, na página do app. Cole no campo Package Name, na mesma seção Google Play Billing onde você subiu o Service Account JSON (Configurações > Apps > seu app > Android).
URL da ficha na Play Store (Android Play Store URL)
Quando o app sai no Google Play, cadastre o link público da ficha dele. Os links de campanha do Growth Hub usam essa URL pra levar quem clica até a loja. Sem nenhuma URL de loja cadastrada, o Growth Hub pede essas URLs antes de deixar você criar links.
Em Configurações > Apps, selecione o app. Na tela do app, acima das plataformas iOS e Android, clique no card Ficha na Play Store
No campo URL padrão, cole o link da ficha no formato https://play.google.com/store/apps/details?id=com.suaempresa.seuapp (o valor de id é o Package Name)
Opcional: se a ficha muda por idioma, adicione uma URL em English ou Español. Quem não tem URL específica pro idioma vai pra URL padrão
Clique em Salvar URLs
RTDN (notificações em tempo real)
Pra receber renovação, cancelamento e reembolso em tempo real, configure o Real-Time Developer Notifications via Google Cloud Pub/Sub:
No Google Cloud Console, vá em Pub/Sub > Tópicos > Criar tópico. Nome sugerido: paywallo-rtdn
No tópico criado, vá em Permissões > Adicionar principal. No email, digite: google-play-developer-notifications@system.gserviceaccount.com. No papel, selecione Pub/Sub Publisher
Ainda no tópico, vá em Assinaturas > Criar assinatura. Tipo de entrega: Push. Endpoint URL: copie a URL do card Webhook de assinaturas (Real-time Developer Notifications) em Configurações > Apps > seu app > Android, no Paywallo. Em seguida, marque Enable authentication, selecione a service account criada anteriormente, e defina Audience com a mesma URL do webhook (ex: https://paywallo.com.br/api/webhooks/google/SUA_APP_KEY). Salve a assinatura.
Enable authentication é obrigatório. Sem ele, o Pub/Sub envia os RTDNs sem o header Authorization: Bearer, o webhook do Paywallo rejeita silenciosamente e responde 200 {"success":false}. Renovações e cancelamentos nunca chegam ao dashboard.
No Google Play Console, vá em Monetizar > Configuração de monetização > Real-time developer notifications. Cole o nome completo do tópico: projects/SEU-PROJETO/topics/paywallo-rtdn. Salve.
Ainda no Play Console, na mesma tela de Real-time developer notifications, clique em Send test notification. Se tudo estiver correto, o Pub/Sub vai entregar a notificação no webhook e você verá 200 {"success":true} nos logs. Esse é o único jeito de confirmar que o RTDN está chegando de ponta a ponta.
No dashboard do Paywallo, clique em Testar conexão. Esse botão valida somente o acesso à AndroidPublisher API via service account — confirma que o JSON está correto, mas não testa o RTDN. Use o Send test notification do Play Console (passo anterior) pra validar o fluxo completo.
Desenvolvido e mantido por Virex