For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /pt/docs/mobile/external-accounts.md (or send Accept: text/markdown).
Criar as contas mobile
Contas Expo, Apple, Google Play e RevenueCat — para que serve cada uma e quando criá-la.
Quando precisa delas
A configuração mobile do dia a dia não precisa de nenhuma: Expo Go mais um backend a correr — EXPO_PUBLIC_API_URL em apps/mobile/.env.local — cobre a pré-visualização de ecrãs e o teste do início de sessão.
Crie estas contas quando for além do Expo Go: uma conta Expo alimenta os builds na nuvem do EAS, as contas das lojas permitem a submissão, a RevenueCat verifica as compras nativas, e o programa Apple também é exigido para Sign in with Apple durante a revisão da loja. Duas custam dinheiro: Apple Developer custa 99 $ por ano, Google Play é um registo único de 25 $; Expo e RevenueCat têm ambos free tiers.
Expo e EAS
1. Abra expo.dev → Sign up, crie a conta e confirme o e-mail.
2. Num terminal, execute npx eas-cli@latest login e introduza as mesmas credenciais — eas é a ferramenta de linha de comandos para builds e submissões dos Expo Application Services.
3. A partir da pasta apps/mobile, execute npx eas-cli@latest init para ligar o código a um projeto EAS; escreve o ID de projeto na configuração app.json/app.config.ts. Os perfis de build eas.json já vêm incluídos.
Esperado: npx eas-cli@latest whoami imprime o nome da sua conta e o projeto aparece no seu painel expo.dev.
npx eas-cli@latest login
cd apps/mobile
npx eas-cli@latest init
npx eas-cli@latest whoamiO programa Apple Developer
1. Abra developer.apple.com → Account → inscreva-se no Apple Developer Program — 99 $ por ano; a adesão individual serve.
2. A inscrição exige um ID Apple com autenticação de dois fatores ativa e um nome legal correspondente ao seu método de pagamento; a aprovação pode demorar um ou dois dias.
3. Esta única conta cobre dois requisitos: submeter a app iOS à App Store e Sign in with Apple — a App Review exige-o sempre que uma app iOS inclui login social de terceiros como Google ou GitHub. O kit liga-o através de AUTH_APPLE_ENABLED mais o par APPLE_CLIENT_ID/APPLE_CLIENT_SECRET no backend.
A mesma adesão cobre também a assinatura de desktop macOS — o guia de contas de desktop explica esse lado.
A Google Play Console
1. Abra play.google.com/console, pague o registo único de 25 $ e crie a conta de programador em seu nome ou no da empresa.
2. Pare na conta de programador por agora — a ficha da app em si cria-se dentro da Play Console durante a submissão: o primeiro upload de uma app nova acontece sempre manualmente aí, e o eas submit assume a partir da segunda release.
RevenueCat — só se a app vende conteúdo
Salte esta secção por completo se a app mobile não vende conteúdo digital nem assinaturas. Se vende: 1. abra revenuecat.com e crie uma conta gratuita, 2. crie um projeto, 3. registe dentro dele a app iOS (liga-se ao App Store Connect) e a app Android (nome do pacote Play mais credenciais de serviço).
4. Crie os produtos e um entitlement que corresponda aos seus produtos de loja — o kit verifica o entitlement configurado (REVENUECAT_ENTITLEMENT_ID, REVENUECAT_ENTITLEMENT_KEY) no servidor antes de conceder acesso.
5. Copie a chave SDK pública de cada plataforma para apps/mobile/.env.local e ative o provedor nos dois lados, como abaixo. As chaves SDK são valores públicos de cliente; REVENUECAT_SECRET_API_KEY e REVENUECAT_WEBHOOK_AUTHORIZATION são apenas do servidor e pertencem ao ambiente do backend — nunca numa variável EXPO_PUBLIC_.
# apps/mobile/.env.local
EXPO_PUBLIC_MOBILE_PURCHASES_PROVIDER=revenuecat
EXPO_PUBLIC_REVENUECAT_IOS_API_KEY=your-public-ios-sdk-key
EXPO_PUBLIC_REVENUECAT_ANDROID_API_KEY=your-public-android-sdk-key
# apps/web/.env.local — server side
MOBILE_PURCHASES_PROVIDER=revenuecat
REVENUECAT_SECRET_API_KEY=your-secret-api-key
REVENUECAT_WEBHOOK_AUTHORIZATION=your-webhook-auth-valueProvedores de início de sessão no mobile
O início de sessão mobile reutiliza as mesmas OAuth apps da Google e do GitHub que cria para a web — os callbacks continuam a ser {APP_URL}/api/auth/callback/<provider> porque o Better Auth trata do lado do servidor, e a app regressa através do seu esquema de deep link EXPO_PUBLIC_APP_SCHEME. Não é preciso nenhuma app de provedor extra só porque o cliente é nativo.
A exceção é a revisão da loja iOS: lançar botões de Google ou GitHub no iOS exige oferecer também Sign in with Apple — é por isso que a conta Apple Developer acima duplica como dependência de início de sessão.
O que significa «concluído»
Verifique cada conta antes de continuar: npx eas-cli@latest whoami imprime a sua conta Expo e o projeto aparece no painel; a adesão Apple Developer indica Active; a conta Play Console existe; o projeto RevenueCat lista as duas apps de loja com produtos e um entitlement, e as suas chaves estão nos ficheiros env corretos.
Depois continue pela ordem — ligar o projeto, configurar as compras se a app vende conteúdo, compilar para um dispositivo, submeter: