Solflare Wallet
  • ☀️Introduction
    • The Power of Self-Custody
    • Benefits of Non-Custodial Wallets
    • Digital Wallet Best Practices
    • Bigger Picture
  • Onboarding
    • 📞Mobile
      • Generate a New Wallet
      • Connect a Ledger Wallet
      • Import any Solana Wallet
    • 🖥️Web App & Extension
      • Generate a New Wallet
      • Import Your Ledger Device
      • Import Your Keystone Device
      • Import any Solana Wallet
    • 🚶Next Steps
  • Integrations
    • ⛓️Integrate Solflare
      • MetaMask
      • Using the Solana Wallet Adapter
      • Solflare Wallet SDK
    • 🎭Profile Picture Protocol
      • Get a Wallet's Profile Picture
      • Set NFT as Profile Picture
      • Remove a Profile Picture
    • ⚡Solflare Notifications
      • Sending Notifications
      • User's Perspective
        • Notification Center
        • Receiving Notifications
        • Subscription Management
      • API Endpoints
        • Broadcast Endpoint
        • Unicast Endpoint
        • List Casts Endpoint
        • View Cast Endpoint
        • Check Public Key Subscription Status for Domain
    • 🖼️NFT Standard
      • URI JSON Schema
      • CDN hosted files
      • Collections
      • Additional Attributes Specification
      • Order of JSON Fields
    • 🔗Deeplinks
      • Provider Methods
        • Connect
        • Disconnect
        • SignAndSendTransaction
        • SignAllTransactions
        • SignTransaction
        • SignMessage
      • Other Methods
        • Browse
      • Handling Sessions
      • Specifying Redirects
      • Encryption
      • Limitations
Powered by GitBook
On this page
  • Base URL
  • Query String Parameters
  • Returns
  • Example

Was this helpful?

  1. Integrations
  2. Deeplinks
  3. Provider Methods

SignTransaction

SignAndSendTransaction is the simplest and most recommended method for sending a transaction. Solflare submitting the transaction immediately after signing is safer for users and a simpler API for developers than relying on the application to do so.

However, it is also possible for an app to request just the signature from Solflare. Once signed, an app can submit the transaction itself using web3.js's sendRawTransaction.

Base URL

https://solflare.com/ul/v1/signTransaction

Query String Parameters

  • dapp_encryption_public_key (required): The original encryption public key used from the app side for an existing Connect session.

  • nonce (required): A nonce used for encrypting the request, encoded in base58.

  • redirect_link (required): The URI where Solflare should redirect the user upon completion. Please review Specifying Redirects for more details. URL-encoded.

  • payload (required): An encrypted JSON string with the following fields:

    {
      "transaction": "...", // serialized transaction, base58 encoded
      "session": "...", // token received from connect-method
    }
    • transaction (required): The transaction that Solflare will sign is serialized and encoded in base58.

    • session (required): The session token received from the Connect method. Please see Handling Sessions for more details.

Returns

Approve

  • nonce: A nonce used for encrypting the response, encoded in base58.

  • data: An encrypted JSON string. Refer to Encryption to learn how apps can decrypt data using a shared secret. Encrypted bytes are encoded in base58.

    // content of decrypted `data`-parameter
    {
        transaction: "...", // signed serialized transaction, base58 encoded
    }
    • transaction: The signed and serialized transaction that is encoded in base58. Solflare will not submit this transaction. An application can submit this transaction via web3.js's sendRawTransaction.

Reject

An errorCode and errorMessage as query parameters.

Please refer to Errors for a full list of possible error codes.

{
  "errorCode": "...",
  "errorMessage": "..."
}

Example

Please refer to the signTransaction method implemented in our demo application.

PreviousSignAllTransactionsNextSignMessage

Last updated 2 years ago

Was this helpful?

🔗