Overledger Pattern

Prepare-Sign-Execute

Interactions with Distributed Ledger Technologies (DLTs) will require a digital signature. All endpoints that require a signature will use the same Prepare-Sign-Execute pattern.

The pattern consists of three steps:

Prepare

In this step, you prepare a transaction for signing, which consists of sending the parameters of the operation you want to perform to Overledger. These parameters are the same regardless of which DLT you choose. Overledger will prepare the request for you. The preparation request will return up to two fields:

  • The ID of this request. When executing, you will specify which prepared request to execute using this ID.
  • The Native Data. This field is only returned if the operation you are preparing requires signing. This field is what must be signed.

Also, you will get an estimation of the DLT fee to execute the transaction in the prepare response. See the fee estimationarticle for more details.

Transactions that change state on the blockchain must be signed. The signing step is relevant for transactions such as making a payment, transferring an NFT, or deploying a Smart Contract.

If the interaction doesn't need to be signed(e.g., for search transactions), you can skip the Sign step and jump to Autoexecute.


Sign

Once you have prepared your request, you will receive a Native Data object. You have two options for signing your transactions.

a. Sign offline with multilingual SDKs

b. Sign using Overledger Transaction signing endpoint

Authorise offers central bank-grade key management and enterprise transaction signing capabilities to the blockchain ecosystem.


Execute

Now, you must call the execute endpoint. You will need to send:

  • the ID of the request you prepared
  • The digital signature, if your request needs signing.

If it is a transaction, your transaction will be broadcast to the DLT, and its status will be "PENDING" until a new block is generated with the transaction. The amount of time this will take depends on the DLT.

If your transaction is a search, you will receive the result immediately.

If your transaction is a search, you will receive the result immediately.

Autoexecute - only for search transactions

We offer an alternative method to submit search requests that requires only one call. Search transactions, such as searching a transaction or a block, do not require the signing step.