Skip to main content
Know Your Business (KYB) is the verification process every corporate entity must complete before it can hold accounts or issue cards on Reap. Your project uses one method, set when you onboard.

Managed KYB

Reap hosts the verification session. You send redirectUri, receive a sessionUrl, and listen for COMPANY_STATUS_UPDATED.

Universal KYB

You submit the verified business pack and supporting documents. Reap reviews them and returns a decision.
The rest of this page describes the shared company statuses and the Managed KYB session flow. For the pack-and-document flow see Universal KYB.

How it works

When you initiate KYB for a company, Reap creates a time-bound verification session. The company representative completes the session by submitting corporate documents, registration details, and ownership structure through Reap’s hosted verification flow. As the representative fills out the form, officers and beneficial owners are identified. These are called related persons. They are added to the company as the form is completed, either by the representative declaring them directly or through Reap’s compliance review. Each related person must complete their own KYC before the company can advance to review. You do not handle any identity documents. All document capture and storage happens inside Reap’s verification infrastructure.

Company statuses

A company’s status reflects where it is in the KYB lifecycle.

RESTRICTED vs REJECTED

RESTRICTED is not the same as REJECTED. A restricted company was previously able to operate and has been restricted following a re-verification failure or a compliance action, including deactivation of the company. Existing users remain, but their accounts are restricted: authorizations decline until the company returns to ACTIVE. REJECTED means the initial KYB verification failed and the company was never approved. Contact your account manager in either case.

Deactivation

A company can be deactivated independently of its compliance status. isDeactivated on the company resource (and on COMPANY_STATUS_UPDATED) is true while the verification profile is deactivated. Deactivation does not overwrite the last KYB outcome. The company stays readable by id so you can still resolve users and cards that point at it. Spend is stopped by moving the company to RESTRICTED. A later approval, or an operator un-deactivation, clears isDeactivated and reapplies the persisted KYB outcome.

From PENDING to IN_REVIEW

A company advances from PENDING to IN_REVIEW only when two conditions are met simultaneously:
  1. The company representative has submitted the company application form.
  2. Every related person on the company has an APPROVED KYC status.
In practice, related persons are added to the company as the representative progresses through the verification form. Each one will need to complete their own KYC before the overall gate is met. The transition to IN_REVIEW happens automatically as soon as both conditions are satisfied.

Application statuses

The company and related person application share common lifecycle and statues The sessionUrl on an application is only usable while the application is in INITIATED status. Once submitted or expired, a new application must be created to get a fresh URL.
Related persons are the officers and beneficial owners associated with the company. They are added during the company application process as the representative declares them in the verification form, or when identified through Reap’s compliance review. You cannot create or modify related persons via the API. Each related person has a status reflecting their KYC verification progress. Archived related persons have isActive: false. Get related person still returns them. List related persons omits them unless you pass includeArchived=true. Each related person has verification applications, each with a sessionUrl you must send to that individual. Retrieve active applications via List related person applications. All related persons must reach APPROVED before the company can advance to IN_REVIEW.

Webhooks

Reap fires a COMPANY_STATUS_UPDATED event whenever a company status changes, including the transitions from PENDING to IN_REVIEW and from IN_REVIEW to ACTIVE. See the COMPANY_STATUS_UPDATED for the full payload schema. There are no dedicated webhook events for related person status changes. Poll List related persons to track individual KYC progress, or rely on the company COMPANY_STATUS_UPDATED webhook to detect when the overall gate has been passed.

Key principles

  • You do not manage compliance. Reap handles verification sessions, provider communication, and status updates.
  • Two conditions must be met for IN_REVIEW. The company representative must submit the KYB form AND all related persons must be individually approved before Reap begins its review.
  • Related persons are added during the application. You do not create them. They are added as the representative fills out the verification form or through Reap’s compliance review, and each gets their own KYC session.
  • Webhooks are the source of truth. Listen for COMPANY_STATUS_UPDATED to track company status. Do not poll for status changes.
  • ACTIVE is a gate. A company cannot hold accounts or issue cards until its status is ACTIVE.