Comment on page
SignAndSendTransaction
Once an application is connected to Phantom, it can prompt the user for permission to send transactions on their behalf.
In order to send a transaction, an application must:
- 1.Create an unsigned transaction.
- 2.Have the transaction be signed and submitted to the network by the user's Phantom wallet.
- 3.Optionally await network confirmation using a Solana JSON RPC connection.
For more information about the nature of Solana transactions, please review the
solana-web3.js
docs as well as the Solana Cookbook.https://phantom.app/ul/v1/signAndSendTransaction
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 Phantom 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"sendOptions": "..." // an optional Solana web3.js sendOptions object"session": "...", // token received from the connect method}transaction
(required): The transaction that Phantom will sign and submit, serialized and encoded in base58.sendOptions
(optional): An optional object that specifies options for how Phantom should submit the transaction. This object is defined in Solana web3.js.session
(required): The session token received from the Connect method. Please see Handling Sessions for more details.
nonce
: A nonce used for encrypting the response, encoded in base58.data
: An encrypted JSON string. Refer to Encryption to learn how apps can decryptdata
using a shared secret. Encrypted bytes are encoded in base58.// content of decrypted `data`-parameter{"signature": "..." // transaction-signature}
An
errorCode
and errorMessage
as query parameters. Please refer to Errors for a full list of possible error codes.{
"errorCode": "...",
"errorMessage": "..."
}
Last modified 1yr ago