Conditional Transfers

This feature enables highly customizable and secure transfer conditions with intermediate approvals from multiple parties. This feature is managed through the Conditional Transfer smart contract module, enhancing on-chain value.

The Conditional Transfers module allows issuers to define specific approval criteria and automate the management of transfer conditions. This feature ensures compliance and security for token transfers by requiring intermediate approvals in a specific order, from designated parties.

Check all the types of transfers available on the platform in this article.

Benefits

Enhanced Security and Compliance: Conditional transfers provide a robust framework for ensuring that token transfers comply with specific approval criteria, reducing the risk of unauthorized transactions.

Automated On-Chain Management: All transfer conditions and approvals are managed on-chain, ensuring transparency and integrity.

Customizable Approval Workflow: Issuers can define custom approval criteria and workflows, tailoring the process to their specific needs.

How to Configure

Follow the steps below to set up and manage Conditional Transfers for your token:

Step 1: Define Approval Criteria

Define the approval criteria for transfers. The criteria include:

  1. Recipient Approval: Specify whether the recipient needs to approve the transfer (Yes/No).

  2. Token Agent Approval: Specify whether a token agent needs to approve the transfer (Yes/No). Note: Any token agent can approve.

  3. Additional Approvers (optional): Specify additional wallet addresses required for approval.

  4. Order of Approval: Indicate if the order of approval is relevant (Yes/No). By default, the recipient will need to approve before the agent.

Step 2: Enable Conditional Transfers

Enable the Conditional Transfer Compliance Module with the help of your Customer Success Manager or the Customer Support team.

Note: Once enabled, direct transfers will not be available anymore for investors, and every transfer will follow the defined approval criteria. (Forced transfers will still work.)


Conditional Transfer Process

Step 1:

The sender (investor) creates a transfer request, specifying the recipient and the amount.
The recipient must be a qualified investor for the token.

Step 2:

An on-chain increaseAllowance against the Conditional Transfer smart contract is executed.
increaseAllowance is a function used to define the number of tokens that a smart contract is authorized to transfer from the token owner's wallet.

Step 3:

On creation of a Conditional Transfer, the specified quantity of tokens are blocked on the sender's wallet by Conditional Transfer smart contract. Tokens remain blocked until the transfer is either canceled, rejected, or completed.

    • Cancel or Reject: Tokens are unblocked on the sender's wallet.

    • Execution: Tokens are transferred from the sender's wallet to the recipient's wallet.

Step 4:

The recipient reviews and accepts the transfer request

image-20240612-123608

Step 5:

A token agent reviews and accepts the transfer request.

image-20240612-123319

Step 6:

The transfer is automatically executed after all approvals have been fulfilled. The tokens are transferred from the sender's wallet to the recipient's wallet.

image-20240612-123352
Important Notes

  • Approval Required: The transfer must be approved by at least one token agent and/or the recipient, according to the criteria defined by the Issuer.

  • Order of Approval: If specified, the order in which approvals are received is relevant to the process.

  • Block Funds: Funds are blocked in the Conditional Transfer smart contract until the transfer is finalized.

Frequently Asked Questions

Until when can the investor (sender) who created the offer cancel the transfer?
The sender can cancel the transfer until it is completed.

Until when can the recipient cancel the transfer?
The recipient cannot cancel the transfer; they can only approve or reject it when it is their turn. Once the recipient approves the transfer, they cannot change their decision.


Can agents cancel the transfer after approval?

No, agents follow the same rule. They can only approve or reject the transfer when it is their turn. Once an agent approves the transfer, their decision is final and cannot be altered. If an error occurs, the issuer retains the ability to execute a force transfer to correct it.


What happens if the transfer does not meet the approval criteria?

Transfers that do not meet the specified approval criteria will be flagged and will not proceed until all required approvals are obtained.


Can the approval criteria be changed after they are set?

Yes, approval criteria can be modified through reaching the Customer Support team. However, changes will only apply to future transfers.


Is there a limit to the number of approvers?

There is no limit to the number of approvers that can be defined, allowing for detailed control over the transfer approval process.


How are funds managed during the approval process?

Funds are blocked in the Conditional Transfer smart contract during the approval process. They are either transferred to the recipient upon approval or returned to the sender if the transfer is canceled or rejected.


How can agents and recipients track the status of transfers?

Agents and recipients can monitor the status of transfers through their account, on the transfer requests section.