Openpeer Docs
Comment on page

How OpenPeer Works

Escrow Creation

Most peer-to-peer trades in emerging markets today happen through the US dollar pegged stablecoin USDT (Tether). Though OpenPeer is a self-custody platform, it is built to compete with centralised platforms in terms of user experience. As Ethereum increases in popularity, more people are moving to Layer2 scaling solutions or alternative Layer 1 blockchains including Polygon, BNB Chain, and Arbitrum. With lower gas-fees, OpenPeer uses decentralized relayers like Biconomy to cover gas fees for users. Therefore, users can utilize the protocol with only stablecoins in their wallet without the need for the native token like ETH, MATIC or BNB.
In order to deploy an escrow contract, a seller interacts with the OpenPeer Deployer contract. The OpenPeer Deployer contract then automatically deploys the users individual escrow contract holding their funds. By requiring escrow contracts to be deployed through the deployer contract, OpenPeer can identify which contracts are created through the protocol and ensure no phishing functions are added by bad actors.

An OpenPeer Trade

As OpenPeer never holds funds, the experience differs from centralized exchanges and escrow providers. Exchanging fiat money for crypto assets on OpenPeer looks like the scenarios below:
  1. 1.
    Alice (The Seller) posts an ad to sell USDT, she deploys an escrow contract through the OpenPeer protocol and deposits USDT into her contract. Based on her deposit and other parameters she sets, the ad states the available USDT to sell in her contract, the minimum and maximum trade sizes, acceptable fiat payment methods, and the price she is willing to sell at.
  2. 2.
    Bob (The Buyer) responds to the ad to exchange his INR₹ for USDT. When Bob selects the ad he makes a transaction that locks the funds in Alice's contract in escrow for a time limit set by Alice. By making the transaction Alice's payment details are also revealed to Bob to make the fiat payment.
  3. 3.
    Bob makes the fiat payment to Alice's account and makes a transaction to confirm he made the payment. He must make the payment within the time limit set on the ad. If payment is not made within that time, the crypto escrowed in the contract can be unlocked from the escrow. By confirming the payment, Bob ensures the escrowed crypto cannot be withdrawn back to the seller without arbitration.
  4. 4.
    Alice receives a notifcation that Bob has made the fiat payment to her account.
  5. 5.
    Upon receipt of INR₹ in her account, Alice makes a transaction to release the escrowed funds from the contract, and Bob receives USDT.

An OpenPeer Dispute

After crypto for sale has been locked in escrow, either the buyer or the seller can initiate a dispute if they believe the other party has violated the agreed upon terms. Disputes can be initiated by clicking on the “Initiate Dispute” button on the OpenPeer platform. Once a dispute has been initiated, both parties are notified and a resolution process is initiated.
First, the OpenPeer protocol provides a mechanism for dispute resolution by facilitating communication between the two parties. Both parties are encouraged to work out their differences and come to an agreement. This can be done through direct messaging through a wallet-to-wallet chat integrated into the OpenPeer platform.
If the dispute cannot be resolved through communication, the OpenPeer team provides a final dispute resolution process that involves a currently centralised arbitration system. The arbitration system consists of a panel of arbitrators including the OpenPeer Labs team and community members who have been selected. The panel of arbitrators has the final say in resolving the dispute. The decision is binding and cannot be appealed.
If the decision favors the buyer, the escrowed crypto is released to the buyer. If the decision favors the seller, the escrowed crypto is released to the seller. If the decision is split, the escrowed crypto is split accordingly.
In the future, the arbitration mechanism will be fully decentralised where community members can contribute to dispute resolution in return for fees removing the need for arbitration by a centralised party.