Ganhar dinheiro
Pagamentos com Stripe
Cobre os usuários dos apps gerados por IA com a sua própria conta Stripe - as chaves ficam só no servidor e a liberação é verificada pelo webhook
1O que isso dá ao seu app#
Permite que os apps que você gera cobrem dinheiro de verdade - paywalls, upgrades 'Pro', botões de compra - pelo Stripe Checkout.
A conta Stripe é SUA: suas chaves, seu dinheiro, pago direto a você. O AppMint não cobra comissão e não tem responsabilidade sobre o pagamento (sem Stripe Connect). Você conecta o Stripe UMA vez em Configurações; todo app que você gera reutiliza essa conexão - você só descreve o que vender, sem digitar as chaves de novo.
A IA escreve todo o código de pagamento. Sua chave secreta nunca vai dentro do app - ela fica no seu backend Supabase.
2Primeiro conecte o Supabase (obrigatório)#
Os pagamentos com Stripe precisam de um servidor seguro para guardar sua chave secreta e confirmar os pagamentos - esse servidor é o seu projeto Supabase. Por isso, conecte e ative o Supabase primeiro (Configurações → BACKEND - SUPABASE) - o capítulo '🗄️ Supabase Backend (Connect It Once)' no início deste guia explica o passo a passo.
Se o Supabase não estiver ativo, você verá 'Chaves do Stripe salvas, mas os pagamentos também exigem o Supabase ativo'. O AppMint envia seu segredo do Stripe para as suas funções do Supabase automaticamente na publicação - ele nunca é colocado dentro do app gerado.
3Pegue suas chaves do Stripe (comece em modo de teste)#
Em um computador:
- Abra o painel do Stripe e fique no modo de teste / em um sandbox enquanto desenvolve (o Stripe agora chama o ambiente de teste de 'sandbox'; contas mais antigas mostram uma chave Test/Live). Nenhuma cobrança real acontece aqui.
- Vá em Developers → API keys.
- Copie a 'Publishable key' (começa com pk_test_…) e revele e copie a 'Secret key' (começa com sk_test_…).
Use a Secret key padrão (sk_…), não uma Restricted key (rk_…) - o AppMint valida e envia o segredo sk_. Não é preciso aprovação de comerciante para criar e testar o fluxo inteiro antes de ativar os pagamentos reais.
4Conectar o Stripe no AppMint#
Abra o AI Studio → Configurações → role até 'PAYMENTS - STRIPE (OPTIONAL)' → 'CONNECT STRIPE (YOUR ACCOUNT)':
- Deixe 'Live mode' DESATIVADO por enquanto (desativado = Test).
- Cole sua chave publicável no campo pk_test_….
- Cole sua chave secreta no campo sk_test_… (guardada criptografada neste dispositivo).
- Ative 'Enable Stripe payments for generated apps'.
- Toque em 'Validate & save Stripe keys'. O AppMint confere o formato, garante que as duas chaves estão no mesmo modo e valida o segredo no Stripe. Se der certo, você verá '● Connected (TEST)'.
5O que o AppMint configura para você#
Quando você gera um app com pagamentos, o AppMint faz toda a parte técnica automaticamente - você não mexe nos painéis do Supabase nem do Stripe:
- Envia sua STRIPE_SECRET_KEY para as suas Edge Functions do Supabase (criptografada, apenas no servidor).
- Publica uma função 'create-checkout' (inicia uma sessão do Stripe Checkout) e uma função 'stripe-webhook' (confirma os pagamentos).
- Registra o webhook no Stripe e guarda o segredo de assinatura dele.
- Cria uma tabela 'entitlements' para o app saber quem pagou.
A chave publicável (pk_) é o único valor do Stripe que vai dentro do app - essa chave pode ser pública sem problema.
6Descreva seu paywall - a IA o constrói#
Diga o que você quer em linguagem simples. A IA adiciona o botão de compra, a chamada do checkout e bloqueia os recursos pagos para você:
- 'Cobre US$ 5 uma única vez para liberar o tema Pro.'
- 'Uma assinatura de US$ 9/mês que remove os anúncios.'
- 'Venda um PDF para download por US$ 19.'
Você nunca cola chaves ou preços no chat como configuração - apenas a intenção. O acesso só é liberado depois que o Stripe confirma o pagamento pelo webhook, nunca por uma flag de 'pago' no cliente, então não dá para falsificar.
7Teste um pagamento de ponta a ponta#
No modo de teste, nenhum dinheiro real é movimentado. Execute o fluxo completo:
- Abra seu app e toque no botão de comprar/fazer upgrade.
- Na página do Stripe Checkout, pague com o cartão de teste:
4242 4242 4242 4242, any future expiry, any CVC, any ZIP.
- Você volta ao app e o recurso pago é liberado.
- Confira o painel do Stripe (modo Test) → Payments - você verá a cobrança de teste.
Se o recurso for liberado, seu webhook e seus direitos de acesso estão configurados corretamente.
4242 4242 4242 4242 exp: any future date CVC: any 3 digits8Entre em produção quando estiver pronto#
- Ative sua conta Stripe para pagamentos reais (Painel do Stripe → 'Activate' / preencha os dados da empresa).
- No Stripe, mude do sandbox/teste para o modo live e copie suas chaves LIVE (pk_live_… e sk_live_…) em Developers → API keys.
- No AppMint → Configurações → Pagamentos: ative 'Live mode', cole as chaves pk_live_/sk_live_ e toque em 'Validate & save'. O selo muda para '● Connected (LIVE)'.
- Compile seu app de novo.
O AppMint impede misturar chaves de teste e live, e trocar de modo reaponta o segredo publicado - teste e live nunca coexistem no mesmo app, então você não publica chaves de teste por engano.
9Se algo não funcionar#
- 'Chaves do Stripe salvas, mas os pagamentos também exigem o Supabase ativo' → ative o Supabase primeiro (etapa 2).
- 'Você selecionou TEST, mas as chaves são LIVE' (ou o contrário) → a chave de modo precisa corresponder ao prefixo das suas chaves (pk_test/sk_test vs pk_live/sk_live).
- 'O Stripe rejeitou a chave' → a chave secreta está errada ou foi revogada. Copie-a de novo em Developers → API keys.
- O pagamento é aprovado, mas o recurso continua bloqueado → o webhook não chegou ao Supabase. Compile/publique de novo para o AppMint registrar o webhook outra vez e confirme que o projeto Supabase do app é o que você conectou.
- Não consegue ativar uma conta live → o Stripe NÃO aceita comerciantes em alguns países (incluindo a Índia). O modo de teste funciona em qualquer lugar para você desenvolver; para pagamentos reais nesses países, você precisaria de um país compatível com o Stripe ou de outro provedor.