Multi-party Agreement

The File Certification page allows you to certify any file or document in any format and size on the Waves Blockchain.


This page displays the list of Mutual Agreements you created or have been requested to sign, sorted by date, each block in this list displays the following:

Fields displayed Date, Agreement Reference, File Hash, Transaction ID (linking to waves explorer), Download icon if the file is public on IPFS, Copy link icon to share the proof of certification in verification explorer, link to the Proof of Certification PDF, the counterpart list

In the Counterparts area once opened by clicking on the "+" you will have the following:

Agreement creator address, Agreement ID (transaction ID of the contract creation), Address of the counterparts with the signature status or the option to sign if you are requested to.

The "+" icon will appear when you create the agreement and therefor, you've automatically signed it, if you've received a signature request, this icon becomes a pencil, for example:

Clicking on it also deploys the counterpart area where you can see your address in the counterpart list with a "Click to sign" button, allowing you to sign with your Waves Account and agree with the contract / Agreement.

On the top right you will find a button "CREATE AGREEMENT NOW", this opens the Agreement creation form.


By clicking on the CREATE AGREEMENT NOW button you will access the agreement creation form allowing you to select any file or document to hash in a similar way to the File Certification feature.

The form includes:

File select: Select or drag and drop the file you want to certify Reference: By default the name of the document/file, you may change it, limited to 45 characters. Keep in mind this will be public on the Blockchain. File hash: The sha256 file hash from the selected file Store file on IPFS: Check this if you wish to upload the file on IPFS (Interplanetary File System), the file will then be public and available to anyone for download Counterparts: Enter the Waves address of each counterpart requested to sign, up to 5 Transaction Fee: Choose to pay the transaction fee in SIGN or WAVES Certification Fee: The cost in SIGN token per certification or the amount of your certification credit available (cost is 1 credit per certification) Confirmation button: Sign and broadcast the transaction


Click on the "Select or Drop a file" area to choose your file, this can be any type of file in any size, this document should contain the description of the agreement and the Waves Addresses of the counterparts.

Once selected, the name of the file will automatically be used as reference as well. You can change the reference, up to 45 characters, keep in mind this will be publicly recorded on the blockchain and should not contain any sensitive information.

The file signature (hash) will be calculated and automatically inserted in the File hash field, this hash is unique and any changes made to the file will totally modify this hash.

If you wish to store the file online, you have the option to use the IPFS option by checking the checkbox.

IMPORTANT Remember the file will then be accessible to anyone that knows the IPFS file hash, so only choose this option for public documents or protect the file with a password and share this password privately.

The last field allows you to enter up to 5 counterparts (1 per line) using their Waves addresses:

Your address, the one used while connected to the webapp, will automatically sign the agreement at the time of creation, each counterpart's address will then receive a signature request with the option to sign it as well.

The "Certification fee" zone will display either the cost per certification in SIGN token or the cost in Certification Credit and the Credit balance associated to your account.

Understand the Certification fee:

IMPORTANT The creation of an agreement costs 1 Certification Credit or the Certification price in SIGN at the time of creation (0.5$). When you create an Agreement, you pay 1 Certification + 1 certification per counterpart, this is to cover the counterpart signature and that way, allowing them to sign without any fee or the need to have any tokens on their account.

Once everything is ok, click "CREATE AGREEMENT" to open Waves Signer and sign the transaction with your account.

If you choose to store the file on IPFS, wait for the upload to complete:

Then the Waves Signer window will appear with all the transaction details:

Verify that all the data is correct then click confirm.

If everything goes well, you will see the following confirmation popin displaying the transaction id, you can use it to retrieve the certification in the SIGN Explorer or directly in the Waves Explorer (raw data)

After a few seconds, the transaction will appear in the transaction history list.


When you are requested to sign an agreement, you will see it in the Agreement history list of the web app. Click the pencil icon on the agreement block to sign the agreement:

The pencil icon will open the detail of the agreement including the sender's address, the agreement ID which is the agreement creation transaction id and the counterpart list with the signature status:

Download the agreement using the download icon if the agreement was stored publicly online or, if not, you should have received it by email. Make sure the hash of the agreement you received match the hash of the one included in the Agreement Request. The hash can be found by clicking on the small arrow under the copy icon:

To verify the hash of your file, simply click on "CREATE AGREEMENT NOW" to open the form and select the file you received with the "Upload or Drop a file" field to generate the hash of the file, then compare it with the hash in the agreement:

By clicking on the "click to sign" button you will open Waves Signer which will allow you to sign the agreement by which you agree with the contract or agreement:

Verify that all the information is correct and click "Confirm" to sign the transaction with your Waves account. If everything went as expected, you will receive a confirmation and the transaction will appear in your transactions history within a few seconds.