Four Eyes Policies
Four-eyes policies require a second person to approve outgoing payments above a threshold.
A policy applies to fiat payments or to blockchain payments, at vault or customer level.
When an outgoing payment reaches the policy's threshold_eur, it's created as
pending_approval. It's released once it collects the required approvals from different
users (approval_progress shows them, for example 1/2), and any of them can reject it
instead. Each user can review a payment once.
Approvals belong to users, so four-eyes works best when several people use Depa through your own interface. If you integrate with a single API user, talk to Depa about how to handle approvals.
/four_eyes_policiesReturns the four-eyes policies that apply to your vault and organization, with their thresholds.
Authorization
BearerAuth Token from POST /sign_in, sent as Authorization: Bearer <token>.
In: header
Response Body
application/json
application/json
curl -X GET "https://example.com/four_eyes_policies"{ "data": [ { "id": "2d7f4a1c-9e3b-4c8a-a5d6-1f0b8e3c7a29", "scope": "Vault", "entity_type": "FiatPayment", "enabled": true, "threshold_eur": 10000, "created_at": 1772813114, "updated_at": 1772813114 } ]}/four_eyes_policies/{id}Returns a four-eyes policy, its scope, the payments it covers and its threshold.
Authorization
BearerAuth Token from POST /sign_in, sent as Authorization: Bearer <token>.
In: header
Path Parameters
ID of the policy.
uuidResponse Body
application/json
application/json
application/json
curl -X GET "https://example.com/four_eyes_policies/2d7f4a1c-9e3b-4c8a-a5d6-1f0b8e3c7a29"{ "data": { "id": "2d7f4a1c-9e3b-4c8a-a5d6-1f0b8e3c7a29", "scope": "Vault", "entity_type": "FiatPayment", "enabled": true, "threshold_eur": 10000, "created_at": 1772813114, "updated_at": 1772813114 }}/four_eyes_policies/{id}Changes the EUR amount from which payments need four-eyes approval. It applies to payments created from now on.
Authorization
BearerAuth Token from POST /sign_in, sent as Authorization: Bearer <token>.
In: header
Path Parameters
ID of the policy.
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X PUT "https://example.com/four_eyes_policies/2d7f4a1c-9e3b-4c8a-a5d6-1f0b8e3c7a29" \ -H "Content-Type: application/json" \ -d '{ "threshold_eur": 10000 }'{ "data": { "id": "2d7f4a1c-9e3b-4c8a-a5d6-1f0b8e3c7a29", "scope": "Vault", "entity_type": "FiatPayment", "enabled": true, "threshold_eur": 10000, "created_at": 1772813114, "updated_at": 1772813114 }}Payment Links
A payment link is a single-use, hosted checkout page where your customer pays by card or crypto. You create it with one server-side call; Depa runs the checkout, compliance checks, 3-D Secure and on-chain flows.
Fees
Read and set the fees you charge your customers on top of Depa's contractual rates, and estimate blockchain network fees.