Mejores prácticas para Solana Pay y Actions
25 prácticas para flujos seguros y descubribles de Pay y Actions.
Busca en todas las páginas de la documentación
25 prácticas para flujos seguros y descubribles de Pay y Actions.
HTTPS en todas partes: Las Actions, iconos y callbacks deben usar TLS (Seguridad y Verificación).
Implementar OPTIONS CORS: Las billeteras pre-vuelan POST; la ausencia de OPTIONS rompe los flujos.
GET solo para metadatos: Nunca modifiques el estado en las rutas de acción GET.
Simular transacciones POST: Devuelve solo transacciones de red exitosas en la simulación.
Verificar pagos en el servidor: Referencia la cuenta + monto vía RPC (Conceptos básicos de Solana Pay).
Referencia única por pedido: Previene errores de repetición y conciliación.
Lamports bigint: Consistente con los tipos del kit 7.0.0.
Blockhash fresco por POST: No usar transacciones cacheadas.
Instrucciones de mínimo privilegio: Las Actions son objetivos de alto riesgo para phishing.
Alojar iconos de Actions localmente: Evita la manipulación de enlaces externos.
Limitar la tasa de endpoints POST: Previene el abuso de RPC.
Ajustar CORS en producción: Comodín solo para desarrollo.
Claridad del cluster: Metadatos o documentación que indiquen devnet vs mainnet.
Etiquetas legibles para humanos: La truncación de la vista previa de la billetera es real.
Probar en múltiples billeteras: Phantom, Solflare como mínimo.
Probar la expansión de Blink: Icono, título y botón antes del lanzamiento de la campaña.
Registrar firmas: Analíticas y soporte para Actions completadas.
Nunca devolver secretos en JSON: Solo transacciones en base64.
Autenticación para Actions patrocinadas: Límite por usuario/día.
Usar Codama para ixs de programas: Evita discriminadores codificados a mano.
Monitorear dominios clonados: El phishing copia tu UI de Action.
Educar a los usuarios para verificar el dominio: La alfabetización sobre Blink reduce las estafas.
Endpoints de devnet separados: Variables de entorno por despliegue.
Documentar la intención de la Action: Página pública de seguridad explicando los efectos de la transacción.
Manual de incidentes: Pausar la URL de la Action si se sospecha de un exploit.
Pay para transferencias/QR simples; Actions para transacciones enriquecidas + Blinks.
Usa expansores compatibles o enlaces de Action directos en aplicaciones compatibles.
Sí, para solicitudes de transferencia encodeURL junto con Actions.
Versiones de la pila: Esta página fue 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, y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 16 jul 2026