Create
Learn how to create a new XvP settlement using the wizard. Configure flows, set cutoff dates, and enable cross-chain coordination with hashlocks.
The settlement wizard guides you through creating a new XvP settlement. You'll configure the asset flows, set a cutoff date, and optionally enable HTLC mode for cross-chain coordination.
Prerequisites
- Access to the XvP Settlement addon in the platform
- Knowledge of the parties involved (wallet addresses)
- Token contract addresses for assets being exchanged
- For HTLC settlements: coordination with counterparties on other chains
Steps
Open the settlement wizard
Navigate to Settlements in the sidebar and click Create Settlement.
Add flows
Configure the asset transfers that make up your settlement. Each flow specifies:
- Token - The asset being transferred
- Sender - The wallet address sending the asset
- Recipient - The wallet address receiving the asset
- Amount - The quantity to transfer
Click Add Flow to add additional flows. Most settlements have at least two flows (one in each direction).
Local vs external flows
Mark flows as External if they execute on another chain. External flows are informational and don't execute locally.
Configure settlement options
Set the following options:
| Option | Description |
|---|---|
| Name | A descriptive name for the settlement (e.g., "BOND-for-USDC Trade") |
| Cutoff date | Deadline after which the settlement expires |
| Auto-execute | When enabled, settlement executes automatically upon final approval |
Configure HTLC (for cross-chain)
If your settlement includes external flows, you must configure HTLC settings:
Generate a secret:
- Click Generate Secret to create a cryptographic secret
- The hashlock is automatically computed
- Save the secret securely - you'll need it to complete the settlement
Or provide your own:
- Enter an existing hashlock if coordinating with a settlement on another chain
- You'll need the original secret to execute
Save your secret
If you generate the secret, store it securely. Without the secret, you cannot trigger execution on any chain using this hashlock.
Review and create
Review all flows and settings on the summary page:
- Verify all addresses and amounts are correct
- Confirm the cutoff date allows sufficient time for all parties to approve
- For HTLC, verify the hashlock matches what other chains will use
Click Create and authenticate with your PIN or OTP to submit the transaction.
After creation
Once your settlement is created:
- It appears in the Settlements list with Pending status
- All senders in local flows receive notification to approve
- The settlement ID and details are visible on the detail page
- For HTLC settlements, share the hashlock with counterparties on other chains
Importing flows from JSON
For complex settlements with many flows, you can import from JSON:
- Click Import Flows
- Paste or upload a JSON file with this structure:
[
{
"type": "local",
"assetId": "0x1234...",
"assetSymbol": "USDC",
"assetDecimals": 6,
"from": "0xaaaa...",
"to": "0xbbbb...",
"amount": "1000000"
},
{
"type": "external",
"assetId": "0x5678...",
"from": "0xcccc...",
"to": "0xdddd...",
"amount": "500000000000000000",
"externalChainId": 1,
"externalAssetDecimals": 18
}
]Field reference:
| Field | Required | Description |
|---|---|---|
type | Yes | "local" or "external" |
assetId | Yes | Token contract address |
from | Yes | Sender wallet address |
to | Yes | Recipient wallet address |
amount | Yes | Amount as string (in token's smallest unit) |
assetSymbol | No | Token symbol (e.g., "USDC") |
assetDecimals | No | Decimals for local flows |
externalChainId | No | Chain ID (required for external flows) |
externalAssetDecimals | No | Decimals for external flows |
Next steps
Walkthrough
Follow a complete multi-party cross-chain settlement where a Builder sells tokenized real estate to two Buyers, with a Notary receiving fees across Ethereum and Polygon.
Approve
Learn how to approve your flows in an XvP settlement. Approving locks your assets into the settlement contract as escrow until execution or cancellation.