When to verify
When a user verifies depends on how you track earnings.
Either way, a user has to exist before you can credit them or pay them.
Creating a user
Create a user with your own identifier for them. You can also pass their email address, which ZBD uses to send verification codes in the widget. You don’t need any other personal data at this stage.Verification
Verification always runs through ZBD, in the widget’s identity verification flow. You decide where it appears in your product. If ZBD tracks earnings, verification is tiered. A user’s tier sets how much they can be paid, and ZBD tells you when a payout needs a higher tier than the user has.Tax information
ZBD collects tax information when a payout requires it, or at onboarding if you’d rather collect it early. ZBD works out which form applies based on where the user is and where you are. It’s collected once, so users aren’t asked again.Payment method
The user chooses how they want to be paid from the options available in their country, in the widget’s payment method selection flow. ZBD collects and holds the details. A user can have earnings before choosing a payment method, but can’t be paid until they have one. Use List Payment Methods to get thepayment_method_id you send with a payout.
Reading user state
Use Get a User and itskyc_status to check whether a user has completed identity verification. That’s usually enough to decide what to show them, like a cash out button or a prompt to verify.