Boas Práticas de Solana Pay e Actions
25 práticas para fluxos Pay e Actions seguros e descobríveis.
Busque em todas as páginas da documentação
25 práticas para fluxos Pay e Actions seguros e descobríveis.
HTTPS em todo lugar: Actions, ícones e callbacks devem usar TLS (Segurança e Verificação).
Implemente CORS OPTIONS: Wallets fazem preflight POST - OPTIONS ausente quebra fluxos.
GET é apenas metadata: Nunca mute estado em rotas GET de action.
Simule transações POST: Retorne apenas wire txs com sucesso na simulação.
Verifique pagamentos no servidor: Conta de referência + valor via RPC (Noções Básicas de Solana Pay).
Referência única por pedido: Evite replay e bugs de reconciliação.
lamports bigint: Consistente com tipos kit 7.0.0.
Blockhash fresco por POST: Sem transações em cache.
Instruções de least-privilege: Actions são alvos de phishing de alto risco.
Auto-hospede ícones de action: Evite adulteração de hotlink de terceiros.
Rate limit em endpoints POST: Evite griefing RPC.
Restrinja CORS em produção: Wildcard apenas para dev.
Clareza de cluster: Metadata ou docs indicam devnet vs mainnet.
Labels legíveis: Truncamento de preview da wallet é real.
Teste em múltiplas wallets: Phantom, Solflare no mínimo.
Teste unfurl Blink: Ícone, título e botão antes do lançamento da campanha.
Registre assinaturas: Analytics e suporte para actions concluídas.
Nunca retorne secrets em JSON: Apenas transações base64.
Auth para actions patrocinadas: Cap por usuário/dia.
Builders Codama para ixs de programa: Evite discriminators codificados manualmente.
Monitore domínios clone: Phishing copia sua UI de action.
Eduque usuários a verificar domínio: Alfabetização Blink reduz drains.
Endpoints devnet separados: Env vars por deployment.
Documente intent da action: Página pública de segurança explicando efeitos da tx.
Runbook de incidente: Pause URL de action se exploit suspeito.
Pay para transferências/QR simples; Actions para tx rica + Blinks.
Use unfurlers suportados ou links de action diretos em apps compatíveis.
Sim para transfer requests encodeURL junto com Actions.
Versões da stack: Esta página foi escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0 e LiteSVM 0.6.x.
Revisado por Chris St. John·Última atualização: 16 de jul. de 2026