Hosted signup links and QR codes
Give customers a hosted signup page for any template. How the link is built, when a form is live, what limits apply and how to handle the errors.
Last updated 2026-11-05
Every template can have a hosted signup form. A customer opens the link, fills in the fields you chose and receives the pass, with no app to install and no API call from you.
Get the link
- Open the template in the dashboard and build its signup form.
- Set the form's status to live.
- Use the template card's open-form action, or copy the link of the form
/f/{template hash}. The hash is the 24-characterhash_idthat the templates API returns.
Turn the link into a QR code for counters, receipts and posters, or embed it from your site.
When registration fails
| Response | Meaning |
|---|---|
404 Card template not found. | The hash in the link is wrong |
404 Sign-up form not found for this card template. | The template has no signup form yet |
422 This sign-up form is not currently accepting registrations. | The form is not live |
403 card_limit_exceeded | The account is at its plan's card limit |
429 rate_limit_exceeded | More than 10 registrations a minute from one IP address |
The form is a page for people, not an integration point. To issue passes from your own system, use POST /wallet-passes.