How to bridge PRQ between Ethereum and BNB Smart Chain

In this guide we’ll show you how to bridge your PRQ both from ETH to BSC and also from BSC to ETH.

PARSIQ
PARSIQ
6 min readNov 16, 2023

--

Warning! While this method of bridging tokens is fully secure when carried out correctly, if carried out incorrectly this may result in a loss of tokens, please only use this method if you’re confident to do so as we can’t restore losses.

We will be introducing a more user friendly interface for the bridge in the future so those who wish to wait for this feature may do so.

The Bridge

Currently bridging PRQ is only possible through smart contract interactions, which can be done through Etherscan’s “Write Contract” functionality. While this is a more technically advanced way of interacting with smart contracts, there is no fundamental difference with interacting through the Bridge interface.

Overview

Bridging PRQ is achieved through deBridge’s Cross-Chain Messaging protocol. To find out more about deBridge, visit their extensive documentation portal: https://docs.debridge.finance/the-core-protocol/protocol-overview

When bridging tokens from Ethereum, they are locked in a Controller Smart Contract where a signal is sent through deBridge to mint tokens on BNB Smart Chain. The PRQ tokens on BNB by default have no supply and are only minted when funds are bridged there.

When bridging tokens from BNB Smart Chain, they are burnt through the Controller Smart Contract and a signal is sent through deBridge to unlock tokens on Ethereum.

To receive tokens on either chain, they have to be claimed through deBridge’s explorer. This step is necessary to receive tokens on the counterparty network.

Smart Contracts

In this section, we will list all smart contract addresses related to the PRQ token and its bridge:

PRQ Token-Ethereum

0x362bc847A3a9637d3af6624EeC853618a43ed7D2

This is the main smart contract of the PRQ token.

PRQ Bridge-Ethereum

0x4730c58FDA9d78f60c987039aEaB7d261aAd942E

This smart contract is responsible for sending a signal to deBridge’s Cross-Chain Messaging protocol once it successfully locks the PRQ tokens that you want to bridge.

TokenControllerEth-Ethereum

0x4544f1A7F36f89c41a883271F575c1AB94eA6d91

This smart contract is responsible for holding and manipulating liquidity. You will need to approve PRQ usage for this contract.

PRQ Token-BNB Smart Chain

0xd21d29B38374528675C34936bf7d5Dd693D2a577

This is a modified version of the PRQ contract, it controls supply so that it’s balanced between networks and never exceeds max supply.

PRQ Bridge-BNB Smart Chain

0x4544f1A7F36f89c41a883271F575c1AB94eA6d91

This smart contract is responsible for sending a signal to deBridge’s Cross-Chain Messaging protocol once it’s successfully burnt the PRQ tokens that you want to bridge.

TokenControllerBsc-BNB Smart Chain

0x9299472A6399Fd1027ebF067571Eb3e3D7837FC4

This smart contract is responsible for burning and minting liquidity on BNB.

How to bridge

ETH -> BNB

To bridge PRQ tokens from Ethereum to BNB Smart Chain, you’ll need to follow these steps:

  1. Approve usage of PRQ to TokenControllerEth smart contract
  2. Call the ‘sendToChain’ function on PRQBridge
  3. Claim transaction via deBridge Explorer

Navigate to PARSIQ: PRQ Token | Address 0x362bc847A3a9637d3af6624EeC853618a43ed7D2 | Etherscan

Press “Connect Web3” and connect the wallet using MetaMask with the wallet where your PRQ tokens are located.

Fill out the two fields in the “approve (0x095ea7b3)” section:

  1. Address: 0x4544f1A7F36f89c41a883271F575c1AB94eA6d91
  2. Amount: how many PRQ tokens you want to bridge (you can approve more for further usage, but we recommend giving “approve” only for as much as you need at the time)
  3. Press “Write” and confirm the transaction.

This action will allow TokenController to lock your tokens.

Please note that the amount should be specified corresponding to the token’s 18 decimals, you can calculate the value at: https://eth-converter.com/ by entering the amount to “Ether” and copying the “Wei” value into the amount field.

Navigate to https://etherscan.io/address/0x4730c58fda9d78f60c987039aeab7d261aad942e#writeContract#F2

Press “Connect Web3” again.

Fill out all the fields in the “sendToChain (0x169f1f59)” section:

  1. payableAmount: 0.001 — the amount that deBridge takes to send a cross-chain message
  2. _toChainId: 0x38 — the chain id of BNB Smart Chain
  3. _amount: how many PRQ tokens you want to send
  4. _recipient: the address that receives PRQ tokens, normally it’s the same address you send PRQ from.

Press “Write” and confirm the transaction.

This action will initiate bridging.

Please note that the amount should be specified corresponding to the token’s 18 decimals, you can calculate the value at: https://eth-converter.com/ by entering the amount to “Ether” and copying the “Wei” value into the amount field.

Important! Make sure that the MetaMask transaction confirmation window looks like this:

And it DOES NOT look like this:

If you see this error, some values you put are incorrect OR you are trying to bridge more than the given allowance.

Navigate to https://app.debridge.finance/messages, click on your transaction, and press “Claim”.

Once the transaction is claimed, your PRQ will appear on the address that you entered as “_recipent” in the previous step.

BNB -> ETH

To bridge PRQ tokens from BNB Smart Chain to Ethereum, you’ll need to follow these steps:

  1. Call the ‘sendToChain’ function on PRQBridge
  2. Claim transaction via deBridge Explorer

Navigate to https://bscscan.com/address/0x4544f1a7f36f89c41a883271f575c1ab94ea6d91#writeContract#F2

Press “Connect Web3” and connect the wallet using MetaMask with the wallet where your PRQ tokens are located.

Fill out all the fields in the “sendToChain (0x169f1f59)” section:

  1. payableAmount: 0.005 — the amount that deBridge takes to send a cross-chain message
  2. _toChainId: 0x1 — the chain id of Ethereum Mainnet
  3. _amount: how many PRQ tokens you want to send
  4. _recipient: the address that receives PRQ tokens, normally it’s the same address you send PRQ from.

Press “Write” and confirm the transaction.

This action will initiate bridging.

Please note that the amount should be specified corresponding to the token’s 18 decimals, you can calculate the value at: https://eth-converter.com/ by entering the amount to “Ether” and copying the “Wei” value into the amount field.

Important! Make sure that the MetaMask transaction confirmation window looks like this:

And it DOES NOT look like this:

If you see this error, some values you input are incorrect. Please double-check.

Navigate to https://app.debridge.finance/messages, click on your transaction, and press “Claim”.

Once the transaction is claimed, your PRQ will appear on the address that you entered as “_recipent” in the previous step.

About PARSIQ

PARSIQ is a full-suite data network for building the backend of all Web3 dApps & protocols. The Tsunami API provides blockchain protocols and their clients (e.g. protocol-oriented dApps) with real-time and historical data querying abilities. Data Lake APIs allow complex data querying & filtering for any project; specifically designed and tailored for our customers’ blockchain data needs.

Supported chains: Ethereum, Polygon, BNB Chain, Avalanche, Arbitrum & Metis + more to come

Website | Blog | Twitter | Telegram | Discord | Reddit | YouTube | Link3.to

--

--