The flow behind SheerID's solution

  • Updated


Each SheerID verification follows a distinct flow, which is made up of discrete steps. As your user proceeds through the steps, our API will return a step name for what it expects to receive next, to progress the verification through its flow. In this section you’ll learn about flows and steps, and what to do if you encounter an error along the way.



A SheerID flow is the series of steps that lead to a verification outcome. If a subject can be instantly verified, the flow is very simple:

Successful instant flow

In the case of a successful instant verification, we will receive the data from the user, run it against an authoritative data source for verification, and return a success response, indicating that you may now proceed to checkout.


Unfortunately, not all verifications will be successful on the first try, so you must account for all possible user journeys, including an unsuccessful instant outcome, which sends a user to the document review step, data entry errors, and so on.


The image below represents a complete flow for a US student verification, which is typical of most segment flows. If an instant verification is not possible, the flow proceeds to the Doc Upload step, in which the user is asked to upload documentation verifying their eligiblity for the offer. If the documentation is successfully uploaded, proceed to the Pending step, and so on, until an outcome is determined, either successful or unsuccessful.

Student Flow

See Flow Diagrams for detailed flows for the various supported segments.



A SheerID verification happens one step at a time. Steps combine together into a flow. Step names may vary slightly depending on the segment, e.g., “Collect student info” vs. “Collect military status,” but the basic steps are similar from one segment to the next.

Learn more about steps here.


Communities / Segments

Program configurations are organized around the definition of the community being verified. 



Errors may occur during verification flows, primarily due to improperly inputted data from the user. Fortunately, such errors are recoverable, and when encountered, our API will provide you with the information you need to retry the step.

Certain rare errors are non-recoverable and may require you to start the verification process anew.

To learn more about errors and how to handle them, see Errors in our REST API documentation.

For a complete list of possible errorIDs, see our JavaScript library reference.