SubSovereign
All guides

Começar com o SubSovereign

Este guia leva-o desde o início até uma verificação funcional de subscrição na sua aplicação. É o companheiro prático de Como funciona o SubSovereign — leia-o primeiro se quiser perceber os conceitos.

Existem cinco etapas: implementar o servidor → criar a sua aplicação → definir o que vende → adicionar o SDK → verificar o acesso. Reserve uma tarde para a primeira; as restantes são rápidas.

Etapa 1 — Implementar o servidor

O SubSovereign é self-hosted, por isso a primeira etapa é executar o backend na sua própria infraestrutura. Trata-se de um serviço Node.js/TypeScript suportado por PostgreSQL (para direitos de acesso, eventos e consentimento) e Redis (para uma cache rápida de direitos de acesso).

cd backend
cp .env.example .env
# Fill in every value in .env — database URL, store credentials, secrets.

npm install
npm run migrate      # creates the database tables
npm run build && npm start

Para uma implementação gerida, existe uma configuração pronta a usar para o Northflank (backend/northflank.yml), mas qualquer servidor que execute Node + PostgreSQL + Redis funciona — o ponto é que é seu. Quando estiver pronto, anote o seu endereço; é o baseUrl com o qual as suas aplicações irão comunicar (por exemplo, https://subs.yourdomain.com).

Dica: mantenha o servidor num alojamento no Reino Unido/UE. A soberania e o RGPD são o cerne da questão — não abdique disso na fase de implementação.

Etapa 2 — Criar a sua aplicação no painel de controlo

Abra o painel de controlo e crie uma aplicação — uma por produto que distribuir (a sua aplicação Android e iOS podem ser o mesmo registo de aplicação ou separados; depende de si). Criar uma aplicação dá-lhe duas coisas de que precisará:

  • um appId — identifica esta aplicação no servidor, e
  • uma chave de API — a credencial que a sua aplicação utiliza para autenticar as chamadas ao SDK.

🚩 Copie a chave de API assim que aparecer e guarde-a num local seguro — só é mostrada UMA VEZ. Guardamos apenas um hash. Não pode ser mostrada novamente e não é possível emitir uma chave de substituição para uma aplicação que já existe. Se a perder, arquive essa aplicação e crie uma nova.

Etapa 3 — Definir o que vende

Ainda no painel de controlo, configure os itens que os seus utilizadores irão comprar:

  1. Crie os seus níveis de acesso (também designados por níveis ou tiers) — os níveis de acesso que o seu produto concede, como pro ou premium. Estes são os nomes que a sua aplicação irá verificar.
  2. Associe cada nível de acesso aos seus produtos na loja. Em cada loja (App Store, Google Play, Amazon, Roku, Stripe), crie os produtos de subscrição normalmente; no SubSovereign, indique-lhe "este produto da loja concede este nível de acesso." Essa associação é o que transforma uma compra num direito de acesso.
  3. Desenhe o seu paywall — o título, funcionalidades, preços e durações de teste. Como esta informação é fornecida remotamente, pode alterá-la mais tarde sem enviar uma atualização da aplicação.

Etapa 4 — Adicionar o SDK à sua aplicação

Integre o SDK na sua aplicação e aponte-o para o seu servidor. A estrutura é idêntica em todas as plataformas — siga o guia para a sua:

Cada um configura o SDK uma vez com a sua apiKey, appId, o baseUrl do servidor e um userId estável para o utilizador autenticado (utilize o mesmo ID em todos os locais para que o acesso siga o utilizador entre dispositivos).

Etapa 5 — Verificar o acesso e lançar

Com o SDK configurado, a sua aplicação faz duas coisas:

  • No lançamento, pergunta o que o utilizador tem e desbloqueia em conformidade (o guia do Android mostra isto como checkEntitlements(); todos os SDKs têm o equivalente).
  • Após uma compra, envie o recibo ao SubSovereign para que o servidor valide a compra com a loja e conceda o nível de acesso — depois verifique novamente e desbloqueie.

É uma integração funcional. Antes de lançar, uma lista de verificação rápida:

  • Servidor implementado num alojamento no Reino Unido/UE, migração executada e acessível a partir da sua aplicação.
  • Aplicação criada; chave de API guardada em segurança; a aplicação aponta para o seu baseUrl.
  • Níveis de acesso definidos e associados a produtos reais nas lojas que suporta.
  • Faturação das lojas (Google Play / StoreKit / Amazon / Roku / Stripe) a funcionar na sua aplicação.
  • Verificação de direitos de acesso no lançamento; validação do recibo após a compra; ambos testados num dispositivo real com uma compra (sandbox) real.
  • Consentimento RGPD registado onde o recolher.

Onde ir a seguir