02 — Onboarding wizard
Purpose
Set up the foundational identity for your clinic so transactions, audits, and reports correctly attribute to a real DEA registrant. This step captures:
- Your initials — printed on transaction logs and audit trails (the digital equivalent of paper-log initials)
- Your full name — appears on DEA reports and patient records
- Your clinic name — the legal practice name
- Your DEA license (if you are a prescribing veterinarian)
- Your state veterinary license
- Whether you are a prescribing veterinarian — controls which clinic role is assigned
Regulatory basis: DEA rules require that records show the identity of the person making the entry. CS Logbook captures this once during onboarding and applies it automatically to every transaction.
When to use it
CS Logbook walks a brand-new owner through onboarding automatically. Two things happen up front as required gates, and the rest are guided widget steps:
- Profile gate (required). The first time you sign in, if your initials aren't set, CS Logbook redirects you to
/onboarding/profileand you cannot operate until you set your full name + initials. This is a hard gate — initials sign every transaction and audit entry, so they're mandatory. - Create your first clinic (required). A fresh account has no clinic yet. On your
/homedashboard, the My Clinics card shows a Create a Clinic button. Your first clinic is free — no subscription is needed to create it. - Subscribe (required to operate). The first time you open your clinic at
/home/<your-clinic>, CS Logbook funnels you to its billing page. An active subscription is required before you can record data; subscribing releases the clinic to operate. (Reads stay open during the 90-day cancel grace — see Settings → Billing.)


After those, the onboarding widget on your dashboard tracks the remaining setup (DEA license, state license, clinic profile, DEA acknowledgment) with checkmarks. Those steps are guided, not one-shot — every field is editable afterward via /home/settings (personal info, license info) or /home/<your-clinic>/settings/clinic (clinic profile).
Walkthrough
Step 1 — Personal information
After confirming your email and signing in, you land on /home. The onboarding widget shows steps with checkmarks beside the ones you've completed.

Click Set up profile (or navigate to /home/settings).
Enter:
- Full name — your professional name (e.g., "Dr. Jane Smith, DVM")
- Initials — 2-4 characters, used in transaction logs (e.g., "JS" or "JLS")
Click Save.
Step 2 — Add your DEA license (if applicable)
If you are a prescribing veterinarian, you have a personal DEA registration that authorizes you to prescribe controlled substances under your name.
Click Add DEA license in the onboarding widget. The form expects:
- DEA number — enter your registration exactly as the DEA issued it. Most look like
AB1234567(2 letters followed by 7 digits), and if yours doesn't, CS Logbook shows a note asking you to double-check it but still lets you save. Institutional registrations with an affiliation suffix and non-US equivalents are all accepted. - Expiration date — must be in the future
If you are not a prescribing veterinarian (e.g., you're the practice manager or a non-prescribing DVM), skip this step. The onboarding widget will not require it for your clinic role.

Step 3 — Add your state veterinary license
Required regardless of whether you are a prescribing veterinarian — every veterinarian in the practice should have a state license on file.
Click Add state license. Enter:
- License number — format varies by state
- Issuing state — 2-letter state code (e.g.,
CA,NY,TX) - Expiration date — must be in the future
State-level licensing requirements vary, and CS Logbook does not track or interpret them. Confirm what your state expects with your state veterinary board.
Step 4 — Confirm clinic profile
If you created the clinic yourself, it starts with just the name + URL you entered on the Create a Clinic step; if a specialist provisioned it, the operational fields may already be filled in. Open /home/<your-clinic>/settings/clinic and verify:
- Clinic name — the legal practice name
- Address — used on DEA correspondence and reports
- DEA registration (clinic-level) — the practice's DEA registration if applicable; distinct from your personal one
Make sure these are accurate before recording transactions.
Step 5 — Verify completion
Return to /home. When you finish the final required step, the onboarding widget shows a brief "All Set!" confirmation card, then clears itself from the dashboard. Once it's gone, a clean dashboard with no onboarding card is the signal that you're done.

Field reference
Personal profile
| Field | Label | Type | Required | Validation |
|---|---|---|---|---|
name |
Full name | text | ✓ | 1-120 chars |
initials |
Initials | text | ✓ | 2-4 chars |
is_prescribing_veterinarian |
Prescribing veterinarian | checkbox | ✓ | true/false; controls DEA-required step |
DEA license (when prescribing veterinarian)
| Field | Label | Type | Required | Validation |
|---|---|---|---|---|
dea_number |
DEA Number | text | ✓ | must not be blank; no format rule. Anything other than 2 letters + 7 digits shows a note, never an error |
expiration_date |
Expiration | date | ✓ | Must be in the future |
State veterinary license
| Field | Label | Type | Required | Validation |
|---|---|---|---|---|
license_number |
License number | text | ✓ | varies by state |
state |
Issuing state | select | ✓ | 2-letter US state code |
expiration_date |
Expiration | date | ✓ | Must be in the future |
Clinic profile
| Field | Label | Type | Required | Validation |
|---|---|---|---|---|
name |
Clinic name | text | ✓ | 2-100 chars |
slug |
URL slug | text | ✓ | 2-63 chars, lowercase + hyphens; auto-generated, editable |
dea_registration |
Clinic DEA (optional) | text | optional | no format rule |
address_line1 / city / state / postal_code |
Address | text | ✓ | standard postal validation |
Edge cases
Soft warning: "DEA license expires in days"
The system warns you when any license is within 60 days of expiration. You can still record transactions. This is a reminder; renewal is your responsibility (CS Logbook does not file with the DEA on your behalf).
To resolve: navigate to /home/<your-clinic>/compliance/licenses after renewal and update the expiration date.
Soft warning: "DEA license expired N days ago"
If a DEA license is past expiration, CS Logbook continues to allow you to record transactions — operational continuity matters more than software-enforced compliance for in-clinic emergencies. The amber warning appears on every relevant page and in the onboarding widget. See reference/soft-warnings-vs-hard-blocks.md for the design rationale.
Skipping the prescribing-veterinarian flag
If you uncheck prescribing veterinarian during onboarding, the DEA license step is skipped. If you later change to a prescribing role (or update your authorization), revisit /home/settings to set the flag and add the DEA license.
Slug collision
When a clinic slug is taken (e.g., "oak-valley-vet" already exists), the form shows an inline warning during typing (debounced ~500ms). Pick a unique slug — the URL is permanent (changing it later breaks bookmarks and integrations).
DEA Registrant Responsibility Acknowledgment
If you onboard as a prescribing veterinarian, CS Logbook presents a one-time click-through acknowledgment from the onboarding widget on your home dashboard. It summarizes three points:
- The DEA registration and all controlled-substance recordkeeping obligations belong to you (the individual registrant) and your practice — not to CS Logbook or Gleason Digital LLC.
- CS Logbook is a recordkeeping tool you control; it submits nothing to the DEA, a state board, or a state prescription-monitoring program on your behalf, and its compliance warnings are advisory only.
- Use of CS Logbook is not a guarantee of compliance — you remain solely responsible and liable.
A Read the full acknowledgment link opens the complete document at Settings → Legal documents.
This is an onboarding nudge, not a compliance block (per ADR-006): it is freely dismissible (Not now) and never prevents any clinical operation. Clicking I Acknowledge records your acknowledgment (with a version stamp, so a future material change to the document re-prompts you). Nothing you do — or skip — here blocks recording transactions.
Common mistakes
- Using a generic clinic name like "My Vet Clinic" or "Test Clinic". The clinic name appears on DEA reports — use the legal practice name from your DEA Form 224.
- Trying to skip initials. You can't — initials are a hard onboarding gate (until they're set, CS Logbook keeps redirecting you to
/onboarding/profile). They sign every transaction and audit entry, matching paper-log conventions. Set 2-4 characters (e.g., "JS" or "JLS"). - Marking yourself as prescribing veterinarian when you are not. The flag affects which transactions you can sign for. If you mark yourself as prescribing but don't have a personal DEA, you'll see soft warnings on every administered/dispensed transaction.
- Entering the clinic DEA in your personal DEA field. Personal DEA = your individual registration. Clinic DEA = the practice's registration. They are different (and a clinic DEA is optional).
Related
- 01 — Create your account — prerequisite
- 03 — Invite your clinic members — next step after onboarding
- 04 — Your first substance — full end-to-end flow
- Compliance § licenses — managing licenses long-term