11---
2- title : " Atomic Exchange"
3- description : Enable atomic asset exchanges between parties with XvP Settlement
2+ title : " Atomic settlements (X versus Payment Settlements)"
3+ description :
4+ Enable atomic settlements between parties with X versus Payment (XvP)
5+ Settlements
46---
57
68import { Callout } from " fumadocs-ui/components/callout" ;
9+ import { Card } from " fumadocs-ui/components/card" ;
10+ import {
11+ Clock ,
12+ LayoutGrid ,
13+ Workflow ,
14+ ShieldCheck ,
15+ FormInput ,
16+ MonitorCheck ,
17+ CalendarClock ,
18+ FileCheck ,
19+ } from " lucide-react" ;
20+
21+ ## What is X versus Payment Settlement?
22+
23+ The X versus Payment (XvP) Settlement is a solution enables atomic, trustless
24+ settlements of digital assets between parties. This feature provides a mechanism
25+ for executing delivery-versus-payment (DvP), payment-versus-payment (PvP), or
26+ any asset-versus-asset exchange in a single, indivisible transaction.
27+
28+ ![ XvP Settlement list] ( ../../../img/xvp-settlement/list.png )
729
8- ## SettleMint XvP Settlement
30+ ### Key benefits
931
10- The XvP (Anything-versus-Payment) Settlement module enables atomic, trustless
11- exchanges of digital assets between parties. This feature provides a secure
12- mechanism for executing delivery-versus-payment (DvP), payment-versus-payment
13- (PvP), or any asset-versus-asset exchange in a single, indivisible transaction.
32+ <div className = " grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 my-8" >
33+ <Card
34+ icon = { <LayoutGrid />}
35+ title = " Multi-party transfers"
36+ >
37+ Enable multiple participants to exchange various assets in a single atomic
38+ transaction.
39+ </Card >
1440
15- ## What is XvP Settlement?
41+ <Card icon = { <Clock />} title = " Conditional triggering" >
42+ Execute settlements automatically when predefined conditions or time
43+ thresholds are met.
44+ </Card >
1645
17- XvP Settlement is a smart contract-based solution that ensures all parties in a
18- transaction either receive their expected assets simultaneously or the
19- transaction does not execute at all. This eliminates counterparty risk and
20- settlement failures common in traditional exchanges.
46+ <Card icon = { <MonitorCheck />} title = " Settlement monitoring" >
47+ Track approvals, execution status, and transaction progress in real-time.
48+ </Card >
2149
22- ### Key benefits
50+ <Card icon = { <FileCheck />} title = " Compliance integration" >
51+ Enforce regulatory compliance across settlements through the upcoming SMART
52+ protocol.
53+ </Card >
54+
55+ <Card icon = { <CalendarClock />} title = " Programmable settlement" >
56+ Configure expiration dates and custom parameters to control settlement
57+ behavior.
58+ </Card >
59+
60+ <Card icon = { <Workflow />} title = " Post-settlement actions" >
61+ Configure automated notifications, emails, or workflows triggered upon
62+ settlement execution.
63+ </Card >
64+
65+ </div >
66+
67+ ## Creating an X versus Payment Settlement
2368
24- - ** Atomic execution** : All transfers succeed or fail together, eliminating
25- partial settlement risk
26- - ** Trustless operation** : No need for intermediaries or escrow services
27- - ** Programmable settlement** : Configure expiration dates and auto-execution
28- parameters
29- - ** Multi-party capability** : Support for complex settlement flows involving
30- multiple assets and participants
69+ To create a new X versus Payment Settlement, navigate to the XvP Settlement
70+ section and click "Create new XvP Settlement." The creation interface allows you
71+ to configure:
3172
32- ## Creating an XvP Settlement
73+ 1 . ** Settlement flows ** : Configure two or more flows, where each flow specifies:
3374
34- To create a new XvP Settlement, navigate to the XvP Settlement section and click
35- "Create New Settlement." The creation interface allows you to configure:
75+ - ** From** : The sending party's wallet address
76+ - ** To** : The receiving party's wallet address
77+ - ** Asset** : The digital asset to be transferred
78+ - ** Amount** : The quantity of the asset to be transferred
3679
37- 1 . ** Settlement party** : The counterparty wallet address for the exchange
38- 2 . ** Assets** : Select the assets and amounts you wish to exchange
39- 3 . ** Expiry date** : The date after which the settlement cannot be executed
40- 4 . ** Auto-execute** : Toggle to automatically execute the settlement upon final
80+ ![ XvP Settlement flows] ( ../../../img/xvp-settlement/flows.png )
81+
82+ 2 . ** Expiry date** : The date after until which the settlement can be executed
83+
84+ 3 . ** Auto-execute** : Whether to automatically execute the settlement on final
4185 approval
4286
43- <Callout type = " info" >
44- While the underlying smart contract supports complex multi-party flows, the
45- current UI implements a simplified version allowing for exchanges between two
46- parties.
47- </Callout >
87+ ![ XvP Settlement configuration] ( ../../../img/xvp-settlement/configuration.png )
88+
89+ Lastly, review the settlement details and submit the transaction to deploy a new
90+ XvP Settlement contract.
91+
92+ ![ XvP Settlement summary] ( ../../../img/xvp-settlement/summary.png )
93+
94+ Compliance conditions for digital assets can be configured through the SMART
95+ protocol (coming soon) directly on the assets themselves.
4896
4997Once configured, submit the transaction to deploy a new XvP Settlement contract.
50- The newly created settlement will appear in your settlement list for monitoring.
98+ The newly created contract will appear in your settlement list for monitoring.
5199
52- ## Approving an XvP Settlement
100+ ## Approving an X versus Payment Settlement
53101
54- When you're involved in an XvP Settlement (either as initiator or counterparty),
55- you'll need to approve it before execution . The approval process includes:
102+ When you're involved in an X versus Payment Settlement as a sender, you'll need
103+ to approve it before it can be executed . The approval process includes:
56104
57- 1 . ** Review settlement details** : Verify the assets, amounts, and expiry date
58- 2 . ** Grant asset allowances** : Approve the settlement contract to transfer your
59- assets
60- 3 . ** Submit approval** : Confirm your participation in the settlement
105+ 1 . Granting the settlement contract an allowance to transfer the specified
106+ assets from your wallet
107+ 2 . Then, sending your approval to the settlement contract itself
61108
62- When you approve a settlement, two transactions occur:
109+ Once all involved parties have sent their approval, the settlement is ready to
110+ be executed.
63111
64- - First, you grant the XvP contract allowance to transfer the specified assets
65- from your wallet
66- - Second, you mark your approval on the settlement contract itself
112+ ![ XvP Settlement approve] ( ../../../img/xvp-settlement/approve.png )
67113
68- Once all involved parties have approved the settlement, it becomes eligible for
69- execution.
114+ You can set up workflows for execution at a certain time or on other events.
70115
71- ## Executing an XvP Settlement
116+ ## Execution phase of an X versus Payment Settlement
72117
73- The execution phase is where the XvP Settlement demonstrates its value. During
74- execution:
118+ The execution phase is where the X versus Payment Settlement demonstrates its
119+ value. During execution:
75120
76- 1 . The contract verifies all required approvals are in place
121+ 1 . The settlement contract verifies all required approvals are in place
771222 . It checks that the settlement hasn't expired or been cancelled
781233 . It atomically transfers all assets between parties in a single transaction
79124
80- If auto-execution is enabled during creation, the settlement will automatically
81- execute when the final party approves it. In this case, the last approver pays
82- the gas fees for the execution transaction.
125+ If auto-execution is enabled during creation, the settlement contract will
126+ automatically execute when the final party approves it. In this case, the last
127+ approver pays the gas fees for the execution transaction.
83128
84- <Callout type = " warning" >
85- If auto-execution is disabled, the settlement requires manual execution after
86- approvals. Any wallet can execute by paying the gas fees.
87- </Callout >
129+ ![ XvP Settlement execute] ( ../../../img/xvp-settlement/execute.png )
88130
89- ## Cancelling an XvP Settlement
131+ ## Cancelling an X versus Payment Settlement
90132
91- Any involved party can cancel an XvP Settlement before it has been executed.
92- This provides a safety mechanism if:
133+ Any involved party can cancel an X versus Payment Settlement before it has been
134+ executed. This provides a safety mechanism if:
93135
94136- Settlement parameters were incorrectly configured
95- - Market conditions change before settlement execution
96- - One party needs to withdraw from the agreement
97- - The settlement is no longer needed
137+ - Market conditions changed before execution
138+ - A party needs to withdraw from the agreement
98139
99140Once a settlement is cancelled, it cannot be reactivated or executed.
100141
142+ ![ XvP Settlement cancel] ( ../../../img/xvp-settlement/cancel.png )
143+
101144## Settlement states
102145
103- An XvP Settlement can exist in one of several states:
146+ An X versus Payment Settlement can exist in one of the following states:
104147
105148- ** Pending** : Created but not yet fully approved by all parties
106149- ** Ready** : Fully approved and ready for execution
@@ -113,8 +156,8 @@ its current status.
113156
114157## Technical implementation
115158
116- The XvP Settlement is powered by a secure smart contract that follows best
117- practices for atomic exchanges. The contract:
159+ The X versus Payment Settlement is powered by a secure smart contract that
160+ follows best practices for atomic exchanges. The contract:
118161
119162- Utilizes OpenZeppelin's security libraries
120163- Implements reentrancy protection
0 commit comments