Solana Pay é um protocolo padrão e um conjunto de implementações de referência que permitem aos desenvolvedores incorporar pagamentos descentralizados em seus aplicativos e serviços. Ele fornece uma abordagem unificada para pagamentos em todo o ecossistema Solana, garantindo compatibilidade entre carteiras, aplicativos e serviços.
Visão Geral do Protocolo
Solana Pay define dois tipos principais de solicitações de pagamento:
Solicitações de Transferência (Não Interativas)
As solicitações de transferência descrevem transferências simples de SOL ou tokens SPL usando parâmetros de URL. A carteira pode compor e assinar a transação diretamente, sem comunicação adicional com o servidor.
solana:recipient?amount=1.5&spl-token=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Casos de Uso:
- Pagamentos simples e doações
- Pagamentos por QR code em ponto de venda
- Links de pagamento em e-mails ou mensagens
- Deep linking em aplicativos móveis
Solicitações de Transação (Interativas)
As solicitações de transação possibilitam interações complexas ao fazer com que a carteira se comunique com um servidor para compor qualquer transação Solana. Isso libera casos de uso avançados além de transferências simples.
solana:https://merchant.com/api/payment
Casos de Uso:
- Cunhagem de NFT em ponto de venda
- Precificação dinâmica e descontos
- Transações DeFi de múltiplas etapas
- Integração com programas de fidelidade
- Lógica de negócios personalizada
Principais Benefícios
Para Desenvolvedores
- Protocolo Padrão: Uma implementação funciona em todas as carteiras Solana
- Agnóstico de Framework: Use com qualquer framework web ou plataforma móvel
- Segurança de Tipo: Suporte completo a TypeScript no SDK JavaScript
- Flexível: De transferências simples a transações complexas com múltiplas instruções
Para Usuários
- Rápido: Transações confirmam em menos de um segundo
- Barato: Custo médio de $0,0005 por transação
- Seguro: Sem intermediários ou processadores terceirizados
- Universal: Funciona com qualquer carteira Solana
Para Comerciantes
- Sem Taxas: Pagamentos diretos sem taxas de processamento
- Tempo Real: Liquidação e confirmação instantâneas
- Global: Aceite pagamentos de qualquer lugar do mundo
- Componível: Integre com protocolos DeFi e marketplaces de NFT
Arquitetura Técnica
Esquema de URL
O Solana Pay usa um esquema de URL personalizado solana: que funciona em
navegadores web e sistemas operacionais móveis:
- Web: URLs podem ser usados como links ou codificados em códigos QR
- Mobile: Integração de deep linking com aplicativos de carteira
- Desktop: Manipuladores de protocolo para lançamento contínuo da carteira
SDK JavaScript
O SDK @solana/pay (construído sobre @solana/kit) fornece:
- Fábricas de cliente:
createMerchantClient,createWalletClient,createSolanaPayClientpara fluxos de pagamento componíveis - Codificação/análise de URL:
encodeURL,parseURLpara URLs do Solana Pay - Criação de transferência:
createTransferpara instruções de pagamento de SOL e tokens SPL - Validação de pagamento:
findReference,validateTransfer,watchReferencepara detectar e verificar pagamentos - Códigos QR:
createQRintegrado para gerar códigos de pagamento escaneáveis - Plugins do Kit:
solanaPayMerchant(),solanaPayWallet()para compor com outros plugins@solana/kit
Integração de Carteira
Carteiras compatíveis implementam:
- Manipulação e análise de esquema de URL
- Composição e validação de transação
- Fluxos de confirmação do usuário
- Transmissão e monitoramento de transação
Exemplos de Fluxo de Pagamento
Aplicativo Web para Carteira Móvel
- Aplicativo web gera código QR com URL do Solana Pay
- Usuário escaneia o código QR com o aplicativo da carteira
- Carteira analisa a URL e mostra os detalhes do pagamento
- Usuário confirma o pagamento na carteira
- Carteira assina e transmite a transação
- Aplicativo web detecta a confirmação do pagamento
Aplicativo Web para Carteira do Navegador
- Aplicativo web mostra o botão "Pagar com Solana"
- Usuário clica no botão para iniciar a carteira
- Extensão da carteira mostra a confirmação do pagamento
- Usuário aprova a transação
- Transação é assinada e enviada
- Aplicativo web recebe a confirmação do pagamento
Aplicativo Móvel para Carteira Móvel
- O aplicativo móvel cria um link profundo de pagamento
- O link profundo abre o aplicativo da carteira
- A carteira exibe a confirmação de pagamento
- O usuário aprova ou rejeita o pagamento
- A carteira retorna ao aplicativo original
- O aplicativo recebe o resultado do pagamento
Considerações de Segurança
Para Comerciantes
- Validar Transações: Sempre verifique os detalhes da transação na blockchain
- Usar Referências: Inclua chaves de referência exclusivas para identificar pagamentos
- Validação no Servidor: Calcule valores e valide pagamentos no servidor
- Limitação de Taxa: Implemente limites de taxa apropriados nos endpoints de pagamento
Para Desenvolvedores de Carteiras
- Validação de URL: Valide e sanitize todos os componentes da URL
- Confirmação do Usuário: Sempre mostre detalhes claros do pagamento aos usuários
- Validação de Transação: Verifique o conteúdo da transação antes de assinar
- Apenas HTTPS: Permita apenas URLs HTTPS para solicitações de transação
Padrões de Integração
Checkout de E-commerce
- O cliente adiciona itens ao carrinho
- O comerciante gera uma solicitação de pagamento com detalhes do pedido
- O cliente escaneia o código QR ou clica no botão de pagamento
- A carteira mostra o recibo discriminado e o total
- O cliente confirma o pagamento
- O comerciante valida a transação e processa o pedido
Ponto de Venda
- O caixa insere o valor da venda
- O sistema PDV exibe o código QR
- O cliente escaneia com a carteira móvel
- O pagamento é processado instantaneamente
- O recibo é impresso automaticamente
Serviços de Assinatura
- O usuário assina o serviço
- O serviço cria uma programação de pagamentos recorrentes
- O sistema automatizado gera solicitações de pagamento
- O usuário aprova os pagamentos através da carteira
- O serviço acompanha o status do pagamento
Melhores Práticas
Geração de URL
- Use HTTPS para todos os endpoints de solicitação de transação
- Inclua rótulos e mensagens descritivas
- Gere referências exclusivas para rastreamento de pagamentos
- Valide todos os parâmetros antes da criação da URL
Tratamento de Transações
- Sempre valide as transações no lado do servidor
- Use contagens de confirmação apropriadas para segurança
- Implemente tratamento de erros e novas tentativas adequados
- Registre eventos de pagamento para reconciliação
Experiência do Usuário
- Forneça confirmações de pagamento claras
- Mostre atualizações do status da transação
- Trate a conexão da carteira de forma elegante
- Suporte múltiplas opções de carteira
Próximos Passos
Pronto para integrar o Solana Pay? Comece com estes guias:
- Guia de Instalação - Configure o SDK e as ferramentas
- Solicitações de Transferência - Crie URLs de pagamento simples
- Solicitações de Transação - Construa fluxos interativos
- Exemplos de Integração - Veja implementações do mundo real
Recursos
- Especificação Oficial - Especificação completa do protocolo
- Repositório GitHub - Código fonte e exemplos
- Diretrizes da Marca - Logotipos e ativos da marca
Is this page helpful?