settlementType: MILESTONE and carries a milestones[] array.
See Milestone escrows for the concept and
fees & settlement for how each release is netted.
Funding still uses the shared Pay escrow
endpoint (the buyer pays the full amount once). The difference is creation and
staged release, both covered here.
Endpoints
How a milestone escrow flows
1
Create with milestones (seller)
POST /v1/escrow/milestone/create with a milestones[] array summing to
amount. Each milestone may carry an optional customerId to route its
release to a specific customer.2
Fund in full (buyer)
Pay escrow once →
OPENED.3
Confirm milestone-by-milestone (buyer)
Each
POST …/milestone/confirm/{escrowId}/{milestoneId} releases that
milestone’s amount to the seller (or to its customerId, if set) and sets
its status to RELEASED.4
Auto-complete
Releasing the last milestone closes the escrow as
COMPLETED; no separate
confirm-payment call.