Create an enrollment
Onboarding pathways
Hosted (default)
WithonboardingMode: "hosted", all post-enrollment onboarding runs in the Prescience employer portal. At enrollment, Prescience provisions the signatory as an employer portal admin for the company; in live mode they receive a set-password invite email pointing at the portal sign-in. Prescience then runs onboarding, KYB, banking, and plan setup with the employer directly. Your integration tracks progress by polling GET /enrollments/{enrollmentId} or listening to webhooks; there is nothing for you to render beyond status.
The response reports what was provisioned in the employerPortal object:
Embedded
Embedded onboarding keeps onboarding forms, document e-signature, and banking capture inside your own UI. It is separate from the core hosted flow and is enabled per integration.Validations
Each check has a distinct failure mode:
Details on enrollment-readiness in the census guide.
What happens when you POST
All of it synchronous with the201:
- Provisions the company for
group.domaininsandboxstate, with the signatory as admin. - Materializes the census into live plan records: members and dependents, upserted by email.
- Provisions the signatory’s portal account (hosted pathway) and, in live mode, sends the set-password invite. Test mode provisions without sending email.
- Moves the group to
enrolledand fires theenrollment.createdwebhook. - Starts the onboarding pipeline. The human side begins here.
The Enrollment object
Response (201)
This example is a test-mode enrollment, so
inviteSuppressed is true: the portal account exists, but no email went out.
Track onboarding to activation
The company starts insandbox: fully configured, no money moving. Prescience runs onboarding with the employer (kickoff call, KYB, plan setup in the portal) and then flips the company to prod. That flip is a manual gate on our side; it is what makes the plan real.
Track progress two ways:
- Poll
GET /groups/{groupId}/enrollments/{enrollmentId}:onboarding.percentCompleteandblockingRemainingare recomputed from the live onboarding checklist on every read. - Listen for
group.state_changed, fired onsandbox → prodwith the old and new state.
prod, enrollment.status becomes active, group.status becomes active, and the benefits tab starts showing real funding and spend.
In test mode the pipeline behaves identically except the final flip: test companies are flagged test: true and are never moved to prod. See Environments.
What you build vs what you don’t
The integration’s job ends at the POST. Ours begins there.