requested_information array, and the verification’s status becomes action_required until every item is answered.
Every item tells you exactly what to collect: a stable field key, an input type, a human-readable label and description, allowed options for select fields, and the exact upload slots for document requests. See every RFI field for the full catalog.
How RFIs work
1
Information is requested
Whop flags that something is needed. The verification status changes to
action_required and an identity_profile.needs_action webhook fires.2
You read the items
Call
GET /api/v1/verifications?account_id={biz_ tag}. The requested_information array on each verification lists what’s needed and what type of answer to collect.3
You collect and submit
Get the info from your user and send it back via
PATCH /api/v1/verifications/{id} with a requested_information array. We route each answer to the right place.4
Review continues
Answered items leave the array. Once it’s empty, the status returns to
approved. If an answer is rejected, the item reappears with error_message explaining why — resubmit it.Reading RFIs
cURL
Item fields
Only open items are returned — answered items leave the array, so anything still present is owed. The verification stays
action_required until the array is empty.
Answering RFIs
Send aPATCH to the verification’s idpf_ tag with a requested_information array. Each entry needs the item id and exactly one answer payload matching the item’s type:
You can answer several items in one request:
cURL
Text, date, phone, and select values
Pass the answer asvalue. Dates use YYYY-MM-DD, phone numbers use E.164 format (+12125550123), and select values must be one of the item’s options.
Addresses
Pass anaddress object:
cURL
Documents
Upload the file first, then reference it in the answer. Fill one entry per slot inrequested_files, copying the slot’s category and kind:
cURL
attachment_id (a file_ ID from the upload flow) or a direct_upload_id from a direct upload. Documents must be JPEG, PNG, or PDF, up to 32 MB.
When requested_files lists more than one slot with is_optional: true — for example several accepted document kinds — providing any one of them satisfies the request. Slots with is_optional: false are all required, such as the front and back of an ID.
Sensitive values
Tax and government ID numbers (ssn, ein, company_tax_id, personal_id_number) are submitted like any other value. They are tokenized in transit before reaching Whop’s systems, and only the tokenized reference is ever stored:
cURL
value_type: "vault_token" instead.
Rejected answers
If a submitted answer is rejected, the item returns torequested_information with error_message set:
id. The verification stays action_required until the corrected answer is accepted.
Every RFI field
Each item’sfield key is one of the values below.

