Policies
Policies govern how Transactions are submitted to approval nodes. Each policy consists of two parts:
- Triggering Condition: A collection of rules based on multiple parameters of a transaction that correspond to a specific type of transaction.
- Approval Process: A process for approving a transaction that matches trigger conditions.
In Safeheron, we have 2 kinds of transaction policies:
- Advanced Transaction Policy: transfer policies, MPC Sign policies, and Web3 Sign policies.
The policies supported by various types of transactions are listed in the table below:
Policy | Transfer Tasks (Asset Wallet) | Web3 Sign Tasks (Web3 Wallet) | MPC Sign Tasks(Asset Wallet) |
---|---|---|---|
Basic Policies | Supported | Supported | Not Supported |
Transfer Policies | Supported | Not Supported | Not Supported |
MPC Sign Policies | Not Supported | Not Supported | Supported |
Basic policies can be viewed in the Safeheron Mobile App, while advanced policies can be viewed in the Safeheron Web Console.
If a basic policy does not meet the needs of your business, you can use an advanced policy.
You can improve risk management practices of your business by setting up multiple transfer policies. For example, you can establish conditions that meet the following criteria:
- Wallet 1: Sending BTC requires approval from either Member A or Member B, while sending ETH requires approval from both Members A and B.
- Wallet 2: Transactions with values less than $1,000,000 USD requires approval from either Member A or Member B, while transactions with values exceeding $1,000,000 USD requires approval from both Members A and B.
- Wallet 3: Transactions with values less than $1,000,000 USD are automatically approved by API Co-Signer 1, while transactions with values exceeding $1,000,000 USD requires approval from both Members A and B.
- Wallet 4: Only Member C is permitted to initiate transfer transactions. The destination address must be one that is on the whitelist. Any transfer transaction requires the approval of either member A or member B.
The approval process conditions are configured in the same way as Transfer Policies. Triggering conditions can be customized and combined to fit your business setting.
Dimension | Description |
---|---|
Initiator | Limit transaction initiators. An initiator can be any team member with the Create Transaction permission or an API Key. Define transaction initiators through the use of the following options:
1. Any member with the permission
2. Designate one or more members with the permission |
From | Define wallets to be used for transfers using the following two options:
|
To | Define the destination address for any transfer through any of the following options:
|
Value | Convert the amount transferred into U. S. dollars based on the current exchange rate, and set a transfer limit using the following options:
|
Amount | Limit the number of transfers for a specified currency through the use of the following options:
|
Priority | Define the priority of policy matching. A larger value indicates a higher priority. When policies conflict, the policy with a larger value takes precedence. |
Approval Process | Define the action for duplicate transactions through the following options:
|
Only 1 selection can be made between value dimension and quantity dimension for each of the above parameters.
Once a transfer policy is set, a transfer transaction is prioritized using the advanced policy. If the advanced policy does not meet the transaction's triggering conditions but does meet the basic policy's triggering conditions, the transaction will then proceed using the basic policy approval process.
The approval process of the MPC Sign policy is the same as described above. Triggering conditions consist of multiple parameters that can be combined with each other:
Dimension | Text |
---|---|
Initiator | Specify the API Key for initiating transactions using the following options:
|
From | Define wallets to be used for transfers using the following two options:
|
Priority | Define the priority of policy matching. A larger value indicates a higher priority. When policies conflict, the policy with a larger value takes precedence. |
Approval Process | Define the action for duplicate signature tasks through the following options:
|
Policies are used to smooth your business as to have different transactions match specific approval smartly governed by rules. Energize your business with team members playing their roles accordingly and timely.
You can define precise rules so that different transactions are processed differently. Policies can then be attached to a certain team. If you have multiple teams, then you can have specific policies for one team, and another set of policies for another one.
When you create a team for the first time using the Safeheron Mobile App, default basic policies are automatically configured for you. The admin of the team can view and modify the basic policies, allowing you to configure the appropriate Approval Process based on the needs of your organization.
The basic policy allows team members with
Create Transaction
permission to initiate a transfer transaction or a Web3 Sign task, but it does not support inputting custom parameters such as initiator, triggering conditions, source wallet, and so on.Simply put, the triggering condition of the basic policy is not customizable and is the same for all transfer tasks and Web3 Sign tasks in the team. The approval process can be configured by the team administrator in the Safeheron mobile app.
All team members with
Create Transaction
permission can create the transaction, and the sending and receiving addresses, asset types and amount won't be restrained.Navigate to Me ➡ Transaction Approval, you can see the option
Change Approval Process
.Here, you can change node's name, who to be approvers (choose from members with
Approve Transaction
permission), how many nodes in the Approval Process.
If you need to add an advanced policy, please contact Safeheron's Support team. The Support team will assist you in configuring an advanced policy based on the specifics of your business.
🪄 Tips:
Subject
Transfer Policy Request
Content
Team ID: <Your Team ID>
🪄 Tips: You can find your Team ID by navigating to:App -> Me -> Team Name.
Description of Business Setting: <Describe your business settings where you use advanced policies, so that Safeheron’s support team can verify whether the policy settings are reasonable and safe>
Examples of policy requested to add:
🪄 Tips:
- 1.You can customize the name of the node.
- 2.Each policy can have up to 3 approval nodes.
Initiator | From | To | Value/Amount Limit | Priority | Approval Node 1 | Approval Node 2 | Approval Node 3 |
---|---|---|---|---|---|---|---|
Any member with permission | Any | Any whitelisted address | Transfer value < $10,000 USD | 100 | Node Name: Admin Approval Approvers: A, B, C Approval Threshold: 2/3 | None | None |
Member A | Wallet 1 | Any whitelisted address | Transfer ETH < 100 | 200 | Node Name: Finance Approval Approvers: A, B, C Approval Threshold: 2/3 | Node Name: Risk Control Approval Approvers: A, B Approval Threshold: 1/2 | None |
Member A | Wallet 2 | Any | Transfer BTC > 100 | 300 | Node Name: Executive Approval Approvers: B, C Approval Threshold: 2/2 | None | None |
... | ... | ... | ... | ... | ... | ... | ... |
Subject
MPC Sign Policy Request
Content
Team ID: <Your Team ID>
🪄 Tips: You can find your Team ID by navigating to: App -> Me -> Team Name.
Description of Business Setting: <Describe your business settings where you use advanced policies, so that Safeheron’s support team can verify whether the policy settings are reasonable and safe>
Examples of policy requested to add:
Initiator | Source Wallet | Priority | Approval Node 1 | Approval Node 2 | Approval Node 3 |
---|---|---|---|---|---|
API Key 1 | Wallet 1, Wallet 2 | 100 | Node Name: Auto Approval Approvers: API Co-Signer Approval Threshold: 1/1 | None | None |
API Key 2 | Wallet 3 | 200 | Node Name: Admin Approval Approvers: A, B Approval Threshold: 1/2 | None | None |
... | ... | ... | ... | ... | ... |
Advanced transaction policies can only be viewed on Safeheron Console.

Last modified 2mo ago