Skip to main content
Your page can be edited by its user. A resolved pay() promise only tells your UI what happened; it doesn’t prove anything to your server.

The flow

1

Your page asks

Your page calls pay, request or createLink with a reference, such as your order ID.
2

Zend records it

Zend records the payment from its own records. For pay, it checks the payer, recipient and amount against what your app asked for.
3

Zend tells your server

Zend sends a signed payment.completed (or link.claimed) webhook with your reference.
4

Your server credits

Your server verifies the signature, dedupes on the event id, and credits the order.

Look up a payment

If you need to check a reference directly, for example when a user says they paid:
Returns up to 50 payments for that reference, newest first.

Catching up after downtime

Deliveries retry for about a day. If your server was down longer, GET /apps/server/events returns the last 100 events with delivered_at. See Webhooks.