> ## Documentation Index
> Fetch the complete documentation index at: https://help.clinikehr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Troubleshooting

> The problems we see most often, grouped by what you are actually looking at, with the likely cause and the fix for each.

export const StillStuck = ({topic}) => <div className="ck-callout ck-callout--note" role="note">
    <p className="ck-callout__body">
      <strong>Still stuck{topic ? ` with ${topic}` : ''}?</strong>{' '}
      Check <a href="/platform/help/troubleshooting">Troubleshooting</a> first —
      it covers the failures we see most often. If that does not resolve it,{' '}
      <a href="/platform/help/contact-support">contact support</a> and include
      your workspace name and the time the problem happened, so we can find the
      matching entry in your audit log.
    </p>
  </div>;

export const Availability = ({editions = ['all'], plans, roles, note}) => {
  const list = editions.includes('all') ? ['clinic', 'pharmacy', 'lims'] : editions;
  return <div className="ck-avail" role="note" aria-label="Feature availability">
      <span className="ck-avail__label">Available in</span>

      {list.map(e => <span key={e} className={`ck-pill ck-pill--${e}`}>
          {EDITION_LABELS[e] || e}
        </span>)}

      {plans ? <span className="ck-avail__label">Plan</span> : null}
      {plans ? <span className="ck-pill ck-pill--plan">{plans}</span> : null}

      {roles ? <span className="ck-avail__label">Who</span> : null}
      {roles ? <span className="ck-pill ck-pill--role">{roles}</span> : null}

      {note ? <span className="ck-avail__note">{note}</span> : null}
    </div>;
};

<Availability editions={['all']} />

Find your symptom below, described the way you would describe it. Each entry gives the likely cause in a sentence, then what to do about it.

## Signing in

<AccordionGroup>
  <Accordion title="My password is not accepted, and I am sure it is right">
    Almost always the wrong email address rather than the wrong password — a work address and a personal one, or a typo that autofill has been saving for months. Check the address, then reset the password from the sign-in page if you are still stuck. If a colleague set your account up, the address is whatever they invited.
  </Accordion>

  <Accordion title="Verification required">
    The sign-in page runs a short bot check before it will submit, and the submit button stays disabled until it has passed. Wait a second for the challenge to complete, then try again. It is single-use, so a failed attempt needs a fresh one — the page refreshes it for you. A strict privacy extension or a blocked corporate network can stop the check loading at all; try another browser or turn the extension off for the sign-in page.
  </Accordion>

  <Accordion title="It is asking for a two-factor code and I cannot produce one">
    Use one of the **recovery codes** you saved when you set two-factor up — each works once, in place of the code from your app. If you have none left and no access to the device, an owner of your workspace can reset two-factor for you. Support cannot do it on your behalf without that. See [Two-factor authentication](/platform/security/mfa).
  </Accordion>

  <Accordion title="I signed in and it sent me straight to 'set a new password'">
    Your account was created with a temporary password, or an owner reset it, so the first sign-in requires you to choose your own. Set the password and you go on to the app. Choose a genuinely new one — reusing the temporary password leaves the account in the state it was trying to get you out of.
  </Accordion>

  <Accordion title="I set up a passkey but I am not offered it">
    Passkeys are tied to the device and browser they were created on. On a different machine, a different browser, or a private window, sign in with your password. Also check you are on the same address you enrolled on — a passkey created on one domain is not offered on another. See [Account security](/platform/account/security).
  </Accordion>

  <Accordion title="I keep getting signed out">
    Sessions expire, and a browser set to clear cookies on close ends your session every time you close it. If it happens hourly rather than daily, check for a privacy extension clearing site data, or a shared machine where someone else signs in to ClinikEHR after you. On a till or a shared device, sign in at the start of each shift as a habit — an expired session is also what stops offline work syncing.
  </Accordion>

  <Accordion title="Two-factor is being demanded when it never was before">
    Your workspace now requires it, or you opened a screen with patient data from a session that was not verified with a second factor. Complete the verification. See [Two-factor authentication](/platform/security/mfa).
  </Accordion>
</AccordionGroup>

## I cannot see a feature

Work down these five in order. The first one that fails is your answer, and each has a different owner.

<AccordionGroup>
  <Accordion title="1. Is it in your edition?">
    An edition decides which modules exist at all. A pharmacy has no consultation screen; a diagnostic centre has no ward. This is set when the workspace is created and is not a setting anyone can change. See [The three editions](/start/editions).
  </Accordion>

  <Accordion title="2. Is it on your plan?">
    Plans unlock features. If the feature exists but shows a locked card or an upgrade prompt, it is this one. Also check your subscription is actually active — a failed payment collapses every paid feature back to Free until it is settled. See [Change your plan](/platform/plans/change-plan).
  </Accordion>

  <Accordion title="3. Does your role have the route?">
    Roles decide which pages a person may open. On a hospital, an owner can change this per role under **Settings → Role Navigation**. If the page is missing from your sidebar entirely, this is the likely cause. See [Roles](/platform/team/roles).
  </Accordion>

  <Accordion title="4. Do you have the permission?">
    You can be on the right page and still not be allowed to perform one action on it — voiding a payment, changing a price, seeing a total. Permissions are per person and are set by an owner. Figures you may not see render as a dash, not a zero. See [Permissions](/platform/team/permissions).
  </Accordion>

  <Accordion title="5. On a hospital — is the care area on?">
    Switching a care area off removes its navigation group, its settings tab and its analytics report together. If a whole department has vanished at once, this is it. See [Care areas](/platform/team/care-areas).
  </Accordion>

  <Accordion title="A settings tab is missing">
    The same five apply, and there is one extra behaviour worth knowing: a link to a settings tab your workspace does not have opens **General** instead of an error. Landing on General unexpectedly means the tab does not exist for you. See [Settings: what's where](/platform/settings/overview).
  </Accordion>
</AccordionGroup>

## Money and billing

<AccordionGroup>
  <Accordion title="Paid features have all disappeared at once">
    Your subscription payment failed, and a subscription that is not active collapses every feature gate back to Free. Nothing has been deleted — update the payment method and the features come straight back. See [Payment methods](/platform/plans/payment-methods).
  </Accordion>

  <Accordion title="I cannot delete an invoice">
    If it has payments recorded against it you are told: "This invoice has recorded payments and cannot be deleted. Cancel it instead to keep the record." That is deliberate — deleting it would delete the record of money that changed hands. Cancel it, which leaves an auditable trail. See [Invoices](/clinic/revenue/billing).
  </Accordion>

  <Accordion title="A payment link is refused, or the wrong provider opens">
    Your workspace's currency decides the provider: Nigerian Naira uses Paystack, every other currency uses Stripe. If the connected provider does not match the currency, links fail. Check **Settings → Billing** for the currency and **Settings → Online Payments** for the connection. See [Currency, tax and free-clinic mode](/platform/settings/currency).
  </Accordion>

  <Accordion title="Money is shown in the wrong currency">
    One setting drives every price in the product: **Settings → Billing** → **Currency**, and only an owner can change it. Note that changing it does not re-price anything already recorded — the numbers stay, the symbol changes.
  </Accordion>

  <Accordion title="Nothing can be charged anywhere">
    **Free Clinic Mode** is on, on the **Billing** settings tab. It disables all charging for the whole workspace, and shows a green **Free Clinic** badge on that card.
  </Accordion>

  <Accordion title="A total shows a dash instead of a number">
    Either that record genuinely has no amount — the product never invents a figure to fill a gap — or you do not have permission to see the figure. Visibility denials degrade to a dash rather than an error. See [Permissions](/platform/team/permissions).
  </Accordion>
</AccordionGroup>

## Email is not arriving

Check these four in order. Three of them are switches, and each governs a different recipient.

<AccordionGroup>
  <Accordion title="1. The workspace master switch">
    **Settings → Notifications** → **Email notifications**. Off pauses all non-essential email for the whole workspace, without changing your category settings.
  </Accordion>

  <Accordion title="2. The category switch">
    On the same tab. **Appointment**, **Billing**, **Document** and the rest each switch independently. See [Notification preferences](/platform/settings/notifications).
  </Accordion>

  <Accordion title="3. Your own personal switch">
    Email to you *as a person* is governed by [your notification settings](/platform/account/notifications), not by the workspace tab. This is the most common miss — a muted category in one place while the mail was coming from the other.
  </Accordion>

  <Accordion title="4. The address on the recipient's record">
    A missing or mistyped address means nothing can be delivered and nothing will ever appear as an error to you. Check the address on the patient's, customer's or staff member's own record — including the obvious ones like a trailing space or `.con`.
  </Accordion>

  <Accordion title="Transactional email is never affected by any switch">
    Receipts, password resets, sign-in and security alerts, and alerts about your own subscription always send. If you are trying to stop one arriving, change the address it goes to — there is no switch, by design.
  </Accordion>

  <Accordion title="It is in their spam folder">
    Worth checking before anything else, especially for a first email to a new address. Ask the recipient to mark it as not spam, which trains future delivery.
  </Accordion>
</AccordionGroup>

## Printing

<AccordionGroup>
  <Accordion title="A thermal receipt prints blank, or stops halfway down">
    The printer is being given the wrong paper form. Silent printing needs the paper size to be set for that printer on **that computer** — it is a per-machine setting, so a till that works and one that does not usually differ only here. See [Thermal printers](/pharmacy/hardware/thermal-printer).
  </Accordion>

  <Accordion title="Nothing prints and no dialog appears">
    The desktop app prints silently to the configured printer; a browser opens the print dialog. If you expected a dialog and got nothing, you are in the desktop app and the job went to the printer. If you expected silence and got a dialog, the shell could not reach the printer. See [The desktop app](/platform/apps/desktop).
  </Accordion>

  <Accordion title="A downloaded document is a tiny file and will not open">
    A PDF that is a few dozen bytes is a failed download, not an empty document — what saved was an error message rather than the file. Try again; if it keeps happening, note the record and the time and [contact support](/platform/help/contact-support).
  </Accordion>

  <Accordion title="A report printed with no signature or credentials">
    The signing clinician has no licence details recorded on their user profile. Add them and generate the report again. See [Your profile](/platform/account/profile).
  </Accordion>

  <Accordion title="A report is stamped as a draft">
    The record is not signed or reported yet. A preliminary document is marked so deliberately — it must never leave the building looking final. Complete and sign the record, then download it again.
  </Accordion>
</AccordionGroup>

## Offline and syncing

<AccordionGroup>
  <Accordion title="This device does nothing useful offline">
    A device must have loaded that screen at least once while online. A brand-new tablet, or a till nobody has signed in on, has nothing cached. Sign in and open each screen you will need before the connection matters. See [Working without internet](/platform/apps/offline).
  </Accordion>

  <Accordion title="Items have been waiting to sync for a long time">
    Confirm the device is genuinely online — a weak connection can look connected — then select **Sync now** on the offline panel. Remember the queue lives on the device that captured it: a tablet in a drawer will not sync from anyone else's machine.
  </Accordion>

  <Accordion title="An item is held for review and will not retry">
    It was refused, and a refused item is **never** retried automatically — usually because the facts changed since it was captured. Resolve the underlying problem and re-enter the item by hand. A refused medication administration is a patient-safety matter, not an admin one: check the drug chart and the patient before anything else.
  </Accordion>

  <Accordion title="Sign in to sync">
    Your session expired while the device was offline. Sign in on that device and the queue continues by itself. Nothing is lost — but do not clear the browser's data or reinstall while anything is waiting.
  </Accordion>

  <Accordion title="The stock level or total I saw was wrong">
    It was a snapshot, and it was labelled with the time it was taken. Stale figures are always marked as stale — the label is the point of the number, not decoration. Reconcile with a stock count after a long outage.
  </Accordion>

  <Accordion title="An order captured offline came back unpaid">
    Correct, and deliberate. Payment is never captured offline; replayed orders arrive pending payment and are settled at the desk.
  </Accordion>
</AccordionGroup>

## Scanning

<AccordionGroup>
  <Accordion title="The scanner types the barcode into the wrong box">
    A wedge scanner behaves like a keyboard, so it types wherever the cursor is. Select the scanning field first, then scan. If it is typing into a search box at the top of the page, that is where focus was.
  </Accordion>

  <Accordion title="The camera scanner will not start">
    Two requirements: the page must be on a secure connection, and the browser must have camera permission for the site. Check the permission in the address bar, and note that a permission denied once is remembered until you change it. See [Barcode scanners](/pharmacy/hardware/barcode-scanner).
  </Accordion>

  <Accordion title="A scan finds nothing">
    That barcode is not saved against any product. Find the product by name, open it, and save the barcode to it — then the same scan works from then on.
  </Accordion>

  <Accordion title="A scan enters the digits but does not submit">
    The scanner is not configured to send a carriage return at the end of a scan. Most scanners have a configuration barcode in their manual for this; it is a scanner setting, not a ClinikEHR one.
  </Accordion>
</AccordionGroup>

## The patient portal

Portal problems are the patient's screen, not yours, and have their own page written for them. Send them [Portal troubleshooting](/portal/patients/troubleshooting) rather than talking them through it — it covers sign-in links, missing documents and joining a video call.

Two things from your side are worth checking first: the portal is switched on for your workspace ([Enable the portal](/portal/setup/enable)), and the patient's email address on their record is the one they are actually using.

<StillStuck />
