Instant Settlement

This section presents an issuance settlements flow. The target of this flow is to enable one user to pay for securities and for another user to deliver (issue or transfer) these securities to the buyer, and for both actions to either happen or not happen. The target is for both transfers to happen together and “Instantly” - i.e within seconds.

We want to avoid two undesirable outcomes - we do not want the buyer to pay but not get the securities, AND we do not want the seller to deliver the securities, and not get paid.

For the settlement task we describe the action where a buyer receives a number of tokens of an asset of type A in exchange for a number of tokens of an asset of type B that the seller receives.

  • Asset A in this description refers to Digital Security tokens.

  • Asset B refers to “Money Tokens” represented as described below.

Automated Escrow Service

For Phase I of FinP2P, we were looking for a solution that would enable any two users/assets to trade between them, regardless of which DLT their primary organizations are connected to. In addition we were looking for a solution that would NOT require moving money between separate chains. The solution described below achieves these targets by utilizing a trusted node - the Escrow service described below. Future versions of FinP2P will add support for non-trusted direct exchange between buyer and seller.

Therefore, in this flow we introduce a new type of entity in the FinP2P network - the Escrow Service. This entity is trusted and appropriately regulated. An Escrow Service may be a dedicated node that only provides the escrow service, or it can be any of the existing nodes, such as a bank, an asset manager or an exchange.

For this flow we set a few assumptions:

  • The Escrow service is capable of managing digital representation of money (as described below) in a tokenized manner, on any DLT connected to FinP2P, and capable of managing Money Tokens for FinP2P users there.

  • The Escrow service can run an app on top of its FinP2P node, which manages the conditional transactions flow defined below.

Types of Money Tokens supported by the flow

We envision three types of Escrow accounts that can exist on the FinP2P network (more may be added in future), implementing 3 types of Money Tokens.

  1. Digital Currency: A Stable Coin or other Digital Currency.

  2. CBDC: A CBDC (Central Bank Digital Currency) - when those become available.

  3. Fiat Voucher: This model is effectively automating the standard escrow model utilized in the non-digitized market today, as follows:

    1. An Escrow fiat bank account will be set up by the Escrow Service.

    2. A user will pre-fund their account by sending fiat money to that Escrow account in advance (offchain).

    3. The user will then receive tokens on the Escrow node connected to FinP2P, representing the amount they sent (“fiat vouchers”).

    4. These fiat vouchers will be usable to pay for securities on FinP2P. They will only be usable for that purpose and will not be otherwise transferable.

    5. These fiat vouchers also will be redeemable for their nominal value of fiat from the Escrow Service. “Redeem” means a user holding such vouchers (for example following a successful sale of securities), can ask the Escrow Service to redeem, and provide their fiat bank account details - at which point the Escrow Service will remove the coupons from their FinP2P account, and in parallel send them the fiat money (offchain).

Over time, there may be other forms of digital representation of money that can be supported - the Escrow model works as long as the Escrow service can manage money accounts for FinP2P users, regardless of the technology of DLT it is based on.

Flow Proposal - Token Issuance.

Actors:

  • Organizations:

    • Org1

    • Org2

    • Escrow Service (a node on FinP2P, which may be one of Org1 or Org2 or a separate entity).

  • Users:

    • User1: The buyer - using an app they got from their primary node Org1.

    • Issuer: The issuer - using an app they got from their primary node Org2.

  • Tokens:

    • Asset A - Digital representation of the Asset

    • Asset B - Digital representation of the “Money Tokens”

Flow

In the flow, User1 (the Buyer) invests $1 million, which they pre-funded into their Escrow account in advance, in return for 1,000 tokens of the asset.

 

  1. BUYER PREPARES AND SIGN CONDITIONAL TRANSACTION: Org1 creates the Invest Transaction, signed by User1. The Transaction includes the Escrow conditions:

    1. Conditions:

      1. Transfer $1m worth of Money Tokens to Escrow with Issuer as recipient

      2. Release $1m to Issuer iff asset transaction succeed.

      3. Returns $1m to User1 iff asset transaction fails.

    2. Org1’s FinP2P Sends Invest Transaction to Org2.

  2. SELLER CO-SIGNS CONDITIONAL TRANSACTION AND SENDS IT TO ESCROW FOR EXECUTION: Org2 Receives the Tx => tx1.

    1. Org2 Matches tx1 with an Issuance request.

    2. Org2 generates the asset Tx => tx2 and Sends the escrow Transaction to the Escrow node for processing.

  3. ESCROW TAKES Money Tokens FROM BUYER: Escrow receives the Transaction from Org2.

    1. It creates a temporary escrow-account and pulls $1m from user1’s account to this new temporary escrow-account.

    2. If the escrow transaction fails ( e.g. user1 does not have enough funds), the Escrow returns a failure response to Org2 and Org2 notifies Org1 of the failure.

    3. If the escrow transaction succeed, Escrow send Org2 confirmation that it succeeded.

  4. ISSUER SENDS THE ASSET TOKENS DIRECTLY TO BUYER: If the escrow transaction succeed, Org2 executes the asset transfer on its DLT. This is the transaction that transfers 1000 tokens from the Issuer to User1.

  5. ESCROW RELEASES THE Money Tokens: Org2 notifies the Escrow system and Org1 with the result of the transactions.

    1. On Success, Escrow transfers the $1m to the issuer’s account

    2. On Failure, Escrow returns the $1m to user1’s account.

The advantages

This flow can be instant (seconds), it ensures all conditions are met, it is completely agnostic to which DLT is used to manage the asset, which DLT is used to manage the representation of money (“Money Tokens”), which type of money representation is used (stable coins, currency coins, CBDC or dedicated “fiat vouchers”) or which organisations the buyer or the seller connect with - as long as everyone is connected to FinP2P this flow will enable instant settelment.

The disadvantages

This model relies on a trusted Escrow service (which may be offered by any one of the appropriately regulated nodes on FinP2P), and there is a point in the middle of the flow (as short as it may be), where the Money Tokens are held on a temporary account, before a decision is made to release it to the seller (if success), or return it to the buyer (if failure).

As mentioned above, a non-trusted model, will be added in future versions of FinP2P.

Technical Diagram