
- Upload phase: Uploading
WASMbytecode to the network - Deploy phase: Deploying a contract instance from the successfully uploaded bytecode
Upload Phase
The “Upload phase” accepts.wasm files through drag-and-drop or file browser selection. During this phase, the Lab checks whether the uploaded .wasm file already exists on the network. If it’s not on the network, it creates an upload transaction that you need to sign using any of the following methods: secret key, hardware wallet, extension wallet, or signature.

WASM bytecode is already uploaded on the network, the Lab skips the “Upload contract” section and opens the “Deploy contract” section by default. You will see a message: “This contract WASM has already been uploaded. Wasm hash: ****“

Deploy Phase
During the “Deploy phase”, the Lab checks whether theWASM contract metadata has a constructor and what arguments it requires. Once all the required fields are filled, it creates a deployment transaction. After the transaction is signed and successfully submitted, you can check your contract on blockchain explorers like Stellar.Expert or Stellar Lab’s contract explorer right away.
