Skip to content
You are reading Hyperledger Besu development version documentation and some displayed features may not be available in the stable release. You can switch to stable version using the version box at screen bottom.

Updated on December 14, 2020

Sending concurrent private transactions

Private transaction processing involves two transactions, the private transaction and the privacy marker transaction. The private transaction and the privacy marker transaction each have their own nonce.

If your private transaction rate requires sending private transactions without waiting for the previous private transaction to be mined, you must use priv_distributeRawTransaction instead of eea_sendRawTransaction. When using priv_distributeRawTransaction you create and send the privacy marker transaction yourself rather than eea_sendRawTransaction handling the privacy marker transaction.

The web3js-eea library includes an example of how to send concurrent private transactions.


The example uses off-chain privacy groups. Use priv_getPrivacyPrecompileAddress to get the precompile address to specify in the to field when creating the privacy marker transaction.

Questions or feedback? You can discuss issues and obtain free support on Hyperledger Besu chat channel.
For Hyperledger Besu community support, contact the mailing list