Axnify
Para programadores de software

Uma plataforma ecommerce feita para vender licenças de software

Geração de chaves de licença. Limites de activação por licença. Conversão trial-to-paid. Períodos de validade com janelas de grace. Portal de licenças do cliente onde os compradores podem desactivar máquinas e ver a biblioteca de chaves. Tudo nativo — sem comissões Gumroad, sem 8,9% FastSpring, sem camada de licensing custom para construir.

Porque é que vender software é fundamentalmente diferente de vender bens físicos

Vender uma t-shirt e vender uma app desktop de £200 não têm praticamente nada em comum a nível operacional. A t-shirt tem um SKU, um stock, um peso de envio e uma política de devolução. A app desktop tem uma chave de licença, um activation server, um limite de máquinas, um período de validade, uma janela de grace após expiração, um caminho de conversão trial-to-paid, uma escada de upgrade (individual → equipa → enterprise) e um portal onde os compradores gerem as instalações activas nos seus dispositivos. Nenhum destes conceitos existe no modelo de produto de uma plataforma ecommerce genérica.

As plataformas que PERCEBEM software — Gumroad, FastSpring, Paddle, Lemon Squeezy — existem por causa desta lacuna. Acertam nas primitivas de licensing, mas cobram por isso. A Gumroad leva 10% em cada venda no tier grátis e 8% mesmo no pago. A FastSpring leva 8,9% como merchant-of-record. A Paddle é semelhante. Numa licença de £100 são £8–£10 para a plataforma — multiplica por 1.000 licenças vendidas e deste £8.000–£10.000 à Gumroad pelo conforto de não construir o teu próprio checkout. Chega para financiar uns meses do teu indie dev runway.

A Axnify é uma terceira opção: comissões de plataforma ecommerce (1,5% no Starter, descendo a 0% no Enterprise) com as primitivas de venda de licenças incluídas. Tipo de produto licença nativo. Activações máx por licença configuráveis. Período de validade com dias de grace. Período de trial antes do billing. Toggle de auto-renovação. Pool de upgrade self-service. Webhooks em cada evento de licença (compra, activação, desactivação, expiração, renovação) para integrares o teu license server, signing service ou sistema de feature flags como quiseres. Ficas com o teu checkout, a tua marca, a tua relação com o cliente e mais de 99% da receita.

Porque é que os programadores deixam Gumroad / FastSpring / Paddle

As comissões de plataforma acumulam-se em todo o ciclo de vida do cliente

Venda inicial: 10% à Gumroad. Renovação um ano depois: outros 10%. Upgrade de individual para equipa: 10% sobre a diferença. Ao longo do customer lifetime podes perder mais de 30% do LTV só em comissões. A maioria dos indie devs não modela isto e fica surpreendido quando o faz.

A geração de chaves de licença é geralmente trabalho custom

A maioria das plataformas ecommerce não tem sequer o conceito de chave de licença. Vender software implica escrever a tua própria geração de chaves, activação de máquinas, tracking de validade e portal de cliente — qualquer dev que já o fez sabe que é um mês de trabalho que nada tem a ver com o produto real.

A conversão trial-to-paid está partida

As plataformas genéricas ou não suportam trials, ou só suportam trials de envio grátis para bens físicos. Vender um plugin de £49 com trial de 14 dias implica um sistema de gestão de trials à parte, um workflow de email à parte, uma emissão de licença à parte — tudo coisas que construis em vez de shippar features.

Reembolsos e revogação de licença ficam confusos

O cliente pede reembolso 25 dias depois da compra. A chave ainda está na app dele, ainda funciona. Na maioria das plataformas, o flow de reembolso não dispara a revogação da licença — é uma operação à parte que tens de te lembrar de fazer, e esquecer significa que entregaste o software de graça.

O que tens com a Axnify

Primitivas nativas de venda de licenças — integradas no modelo de produto base, não aparafusadas como app.

Tipo de produto `license` nativo

Define o tipo de produto como `license` e o admin revela os campos específicos da licença: activações máx, dias de validade, período de grace, dias de trial, flag de auto-renovação, pool de upgrade. Mesma lista de produtos dos teus outros produtos; mesmo editor de temas; mesmo checkout. Software é só mais um tipo de produto.

Activações máx por licença

Configura em quantas máquinas se pode instalar uma única licença (1 para personal, 3 típico, ilimitado para licenças de site). As activações são trackeadas pelo teu license server a chamar o nosso webhook em cada install; contamos contra o limite e recusamos activações acima.

Períodos de validade com dias de grace

Define uma licença para ser válida N dias após a compra (p. ex. 365 para licença anual) mais um período de grace após expirar (default 7 dias). O cliente recebe emails de lembrete antes da expiração. O software continua a funcionar durante o grace para evitar cortes durante as tentativas de pagamento de renovação.

Período de trial antes do billing

Trial grátis de X dias antes do primeiro débito. O cliente introduz o cartão no início; a plataforma só debita no fim do trial. Cancelamento durante o trial = registo limpo, sem débito. Conversão para paid = primeiro débito no dia em que o trial termina, licença emitida.

Licenças recorrentes ou de pagamento único

Combina o tipo de produto `license` com o intervalo `subscription` (mensal/anual) para licenças recorrentes estilo JetBrains. Ou vende licenças perpétuas sem intervalo. Mesmo modelo de produto, ambos os modos suportados.

Escada de upgrade self-service

Individual → Equipa → Enterprise. Define que produtos são alvos válidos de upgrade por licença; o cliente vê-os no portal com preço de upgrade prorateado. A licença antiga desactiva, a nova activa, sem ticket de suporte.

Portal de licenças do cliente

O cliente entra na conta dele, vê todas as licenças activas, o contador actual de activações por licença, pode desactivar uma máquina (p. ex. tem um portátil novo) para libertar um slot de activação, ver o histórico de pagamentos, mudar o cartão guardado, cancelar o auto-renew.

Webhooks em cada evento de licença

`license.created`, `license.activated`, `license.deactivated`, `license.expiring` (7 dias antes), `license.expired`, `license.renewed`, `license.upgraded`, `license.refunded`. Chama o teu license server ou signing service nos eventos que te interessam.

Arquitectura: como a Axnify integra com o teu license server existente

A maioria dos indie devs já tem um pequeno license server — geralmente um pequeno serviço Go/Node/Python que mantém a source of truth sobre que chaves estão activas, a que máquinas estão ligadas e que feature flags desbloqueiam. A questão quando se adopta uma plataforma ecommerce: como é que estes dois sistemas falam um com o outro?

A Axnify segue a abordagem de webhooks-and-API. Na compra, a Axnify dispara `license.created` com email do cliente, ID do produto, tipo de licença, activações máx e período de validade. O teu license server recebe o webhook, gera uma chave (no formato e esquema de assinatura que preferires), guarda-a contra o cliente e devolve-a na response. A Axnify guarda a chave na encomenda, envia-a por email ao cliente e mostra-a no portal.

A partir da app do cliente, as chamadas de activação vão para o teu license server (manténs-te ao comando do runtime path). Quando uma máquina activa, o teu server pode pingar a API da Axnify para incrementar o contador de activação e verificar o limite. Na desactivação, mesmo flow ao contrário. A lógica de expiração e período de grace pode viver em qualquer um dos lados; recomendamos manter as datas na Axnify (single source of truth para o billing) e deixar o teu server consultar a API para o estado. Se ainda não tens um license server, a Axnify também pode ser a source of truth sozinha: gera chaves HMAC-signed nativamente, traqueia activações via API e chama os webhooks `license.activated` / `license.deactivated` nos teus eventos de activação in-app. Bom ponto de partida para indie devs que querem shippar numa semana em vez de construir infra de licensing durante um mês; mais tarde podes graduar para o teu próprio license server trocando o endpoint de activação sem reemitir chaves.

O que os programadores vendem na Axnify

Aplicações desktop

Apps Mac, Windows, Linux. Chave de licença emitida na compra, validada pela tua activação in-app. Máx 3 máquinas por licença pessoal, ilimitado para equipa. Conversão trial-to-paid com trial grátis de 14 dias.

Plugins e extensões

Plugins Figma, extensões VSCode, plugins Sketch, acções Photoshop, presets Lightroom. Frequentemente vendidos como licenças perpétuas de pagamento único com acesso opcional de 1 ano a actualizações com desconto de renovação.

Temas, templates, fontes

Temas WordPress, temas Shopify, templates Notion, famílias de fontes. Licensing em tiers (single-site / 5-sites / ilimitado; pessoal / comercial / extended). O tipo de licença determina a que downloads o cliente acede.

SaaS self-hosted

Vende uma licença para uma versão on-premises do teu SaaS. A licença valida cada instalação via o teu activation server; a expiração pára os updates de features mas deixa a instalação existente a funcionar (clássico modelo de fallback perpétuo).

1,5% de comissão de plataforma no Starter vs 10% na Gumroad

Numa licença de £100, ficas com £98,50 no Axnify Starter vs £90 na Gumroad. A 100 licenças vendidas por mês são £850 de diferença mensal — chega para financiar tempo de dev significativo. No tier Enterprise (0% de comissão, £299/mês de subscrição) estás efectivamente a pagar à Axnify uma tarifa fixa independentemente do volume.

Ver preços completos

Perguntas comuns dos programadores de software

Como são geradas as chaves de licença?

Duas opções. (1) Integrado: a Axnify gera chaves HMAC-signed num formato configurável (UUID, hex, prefixo custom). (2) Traz a tua: a Axnify dispara um webhook na compra com os detalhes de cliente + produto, o teu license server gera a chave no teu formato e esquema de assinatura e devolve-a via response do webhook. Em ambos os casos a chave chega ao cliente pelo mesmo flow de entrega.

Posso integrar o meu próprio license server?

Sim — é o caminho recomendado para qualquer software não trivial. Subscreve os webhooks `license.created` e `license.refunded` para emissão e revogação. Usa a API da Axnify para incrementar/decrementar o contador de activação a partir do teu flow in-app. Se ainda não tens license server, a geração nativa de chaves HMAC-signed e o tracking de activações da Axnify chegam para shippar — mais tarde podes passar para o teu próprio server sem reemitir chaves.

O que acontece quando uma licença expira?

Configurável. A licença entra num período de grace (default 7 dias) em que o software continua a funcionar mas o cliente recebe emails de lembrete de renovação. Depois do grace, dispara `license.expired`. O teu software (via activation server) pode então decidir: lock-out total, modo só de leitura, downgrade para tier grátis, ou continuar a funcionar sem updates. Muitos indie devs escolhem continuar a funcionar sem updates por boa vontade.

Os clientes podem desactivar uma máquina para instalar numa nova?

Sim — integrado no portal do cliente. Vêem as activações activas (com fingerprints de máquina / OS onde os reportares), podem revogar qualquer uma, o que liberta o slot de activação. `license.deactivated` dispara para o teu license server poder invalidar a chave revogada localmente.

Suportam licenças floating ou concorrentes?

Ainda não nativamente — `max_activations` é o total de seats, não concorrentes. O enforcement de licença floating (só N activas em simultâneo, outras em fila) está na roadmap. Se for um requisito duro para o teu produto hoje, podes implementar a verificação de concorrência no teu próprio license server usando os webhooks de activação, mas o admin da Axnify ainda não o expõe como conceito de primeira classe.

Qual é a comissão de plataforma nas vendas de software?

Igual a tudo o resto: 1,5% no Starter, 0,75% no Pro, 0,25% no Business, 0% no Enterprise. As fees de processamento da Stripe aplicam-se em cima em qualquer caso. Numa licença de £100 ficas com £97 líquidos depois das duas fees no Starter — vs £88-£91 na Gumroad / Paddle / FastSpring.

Podem ajudar-me a migrar os meus dados de outra plataforma?

Sem dúvida. Envia email para support@axnify.com com o ficheiro de exportação da tua plataforma actual — aceitamos Shopify, WooCommerce, Etsy, Squarespace, Big Cartel, Gumroad, Sellfy e a maioria dos outros formatos comuns. A nossa equipa trata da migração de produtos, variantes, clientes e encomendas end-to-end, grátis para imports padrão.

Pára de pagar 10% para vender o teu software

Começa grátis. Chaves de licença nativas, tracking de activações, conversão trial-to-paid — tudo desde o dia um.