Send the invitation
Invite your customer over email withPOST /customers/invitations. Natural handles the customer communication.
In Sandbox, use
POST /simulations/invite-customer when you want
Natural to create a hidden synthetic customer and you only want to choose agents.attributes.url, the same /connect link Natural emails the recipient. You can also surface it inside your own product; either path lands on the same acceptance page.
Share an invitation link
An invitation link is the same offer with no recipient: create it once, share the URL anywhere, and any customer who opens it can accept. Create one withPOST /customers/invitation-links, naming the agents it offers and what each one asks for. The create response is the only place the API returns the shareable url, so store it then. expiresAt is optional; a link without one stays open until you revoke it.
delegation.activated webhook carries sourceType: "link" and sourceId set to the link’s ID. Run one link per channel and count acceptances by sourceId to measure per-channel conversion.
Redeeming the same offer again for an already-connected customer and agent is a no-op: Natural
returns the existing connection and does not widen its permissions or limits. Disconnecting first
does not revive the old acceptance; reconnect with a fresh invitation or offer.
What the customer does
1
Opens the link
They see who is requesting and which agents will act. A revoked or expired invitation link shows
only that it is no longer available.
2
Onboards if new
A customer new to Natural creates an account and verifies as part of accepting. Natural handles
the compliance.
3
Picks a wallet and accepts
They choose which wallet the agent may use.
ACCEPTED and the customer shows up in your customers. An invitation link keeps working for the next customer; one link can onboard any number of them. Their id is the party ID you pass to act as them. From there the agent moves money for them within the permissions and limit they granted.