Author: @sydneylai
Community Shout-out
Women Who Code
Meta Gamma Delta - parody sorority DAO supporting women in Web3
This example will demonstrate how to build your own crypto Wallet with OutSystems. You will walk through how to connect a database, manage dependencies for plugins and replicate an ETH wallet. This app may take 3-5 days to build depending on experience level.
Step 1 The Installs
Download Ethereum Wallet to OutSystems
Download Blockcypher API (wrapped component in our repo)
Download Mobile QRCode (wrapped JS library)
Step 2 Choose an API and create a Token
Create a Blockcypher account and find your API Token
Add a token to connect your API, it's also how Blockcypher measures usage
Step 3 Set API Token
Head to your OutSystems cloud environment to put in the token (outsystemscloud.com)
Navigation:
Cloud environment > Factory > Modules > Install Ethereum Wallet
Click on Module Ethereum Wallet > Site Properties
Click on Token > Site Property Token, input token
Input from BlockCypher, your own token
Step 4 Build Application Logic
Programming logic is critical for visual programming as you need to understand the structure and functionality of your application. OutSystem uses AI to predict your code, scripts and even folder structures and mapping.
Additionally, you can see that Blockcypher’s API provides a faucet for you to fund your wallet. You can not fund more than 1 BETH at the time. You can also see the Private Key and the signature you'd write on the blockchain ledger.
Step 5 Get Balance Endpoint from the Developer docs
https://www.blockcypher.com/dev/ethereum/#address-api
In your Service Studio IDE, transfer over your Balance from your API
Navigation:
Blockcypher > Integrations > REST > Blockypher API > GetAddress_Balance
Map out the Blockcypher API docs back to each Methods
Wallet address is generated OnInitialize
Step 6 Creating Transactions
https://www.blockcypher.com/dev/ethereum/#creating-transactions
Navigation:
In your Service Studio IDE, transfer over your transactions from the API
Blockcypher > Logic > Server Actions > Transaction_Send
GetTransaction_New requests the new transaction
Sign3 signs the private key
GetTransaction_Sends the transaction to the chain
GetTransaction_New
Input Parameter Requests
Inputs and Outputs of addresses and sequences
Input Response returns a transaction details and you can even see the Hash
Step 7 QR Code
https://www.outsystems.com/forge/component-overview/3650/mobile-qrcode
Wraps JS code library Interface > Scripts > JS qrCode
Navigation:
MobileQRCode component > Create an Event > OnReady and pointed to the QR code and have the QR Code
Save and Publish
Step 8 Install on your device