Build payments and verified identity into your flow.
A concise integration path for server-side teams. Every write supports safe retries, every list supports cursors, and customers approve exactly what they share.
Make a link
Create a checkout or verification session from your server using a Veil API key.
Send the customer
Redirect to the returned Veil URL. The customer verifies their identity only when required.
Exchange or verify
Use the return code, signed webhook, or a status read—not browser query parameters alone.
One checkout request
Keep your key on your server. Add an Idempotency-Key whenever your request may be retried.
curl https://veilyourfirm.com/api/v1/checkouts \
-H "Authorization: Bearer $VEIL_API_KEY" \
-H "Idempotency-Key: order_1024_attempt_1" \
-H "Content-Type: application/json" \
-d '{
"amount": "149.99",
"reference": "order_1024",
"payerName": "Steve",
"redirectUrl": "https://your-app.example/veil/paid"
}'With payerName, Veil can prefill the customer’s Minecraft verification. It still requires the customer to prove control of that account before payment instructions appear.
"openAmount": true when creating a checkout (omit payerName and amount). Veil verifies the customer’s Minecraft UUID first, then privately routes the first amount that UUID sends. The hosted page never identifies the destination firm.Private checkout routing
Create, read, list, and cancel links. Receive payment.received, payment.settled, or payment.cancelled at your webhook.
/api/v1/checkouts/api/v1/checkouts?limit=25&cursor=…Consent-based verification
Paid developers request Minecraft and Discord claims. Users can use a saved Passport or complete a refundable Minecraft proof.
/api/v1/verifications/api/v1/verifications/exchangeComplete machine-readable documentation
Use the Markdown reference for AI agents and implementation detail, import the OpenAPI document into your tooling, or start with the dependency-free Node helper.