---
title: "Choose the codes your practice uses"
summary: "Practor picks a coding standard for each kind of record. Change it for your practice, and add codes of your own where nothing standard fits."
source: https://practor.app/en-za/help/getting-started/choose-the-codes-your-practice-uses
published: 2026-09-20T13:58:14.018Z
updated: 2026-09-28T14:45:04.327Z
category: "Getting started"
---

Every diagnosis, procedure, measurement and allergy you record goes in as a code from a published standard. Practor picks the standard for you, from your region and your specialty. Most practices leave it at that. Come here to change which standard it picks, or to add the codes your practice uses that no standard has.

## Open the code systems page

Go to **Settings → Code systems**, under **Practice**. There are two sections. **Standard preferences** decides which published system Practor reaches for. **Custom code systems** holds the codes you write yourself.

## What you already have

Nothing to install and nothing to import. Practor ships with the published code sets already loaded, and between them they hold well over half a million codes: a clinical terminology for conditions, procedures and allergies, a lab and measurement standard, a drug terminology, your region's diagnosis set, and a vaccine list. Where a professional body publishes a tariff for your discipline and region, that's loaded too, with the relative value each code carries and the billing rules attached to it.

![The Standard preferences card, one standard per kind of record](https://res.cloudinary.com/drmnydbcs/image/upload/c_limit,w_1600/f_auto,q_auto:good/v1/help/code-systems/preferences.png?_a=BAMAOGDh0#848x711 "Which standards you see here depends on your region and your discipline.")

You can't edit a published standard, because it has to mean the same thing at every practice that uses it. You choose between them, and you add your own alongside.

## How Practor chooses a code system

Four layers, and the first match wins.

1. A preference you set for yourself, on your own profile.
2. A preference the practice set on this page.
3. A default for your specialty and your region. These ship with Practor, and they're why a code picker usually has the right list before anyone touches this page.
4. A general fallback for that kind of record.

Change a preference here and everyone in the practice gets the new system on the next form they fill in.

## Set a preference

Press **Add preference** and fill in four fields.

| Field | What it does |
| --- | --- |
| Usage context | Which kind of record this covers: conditions and diagnoses, procedures, observations and labs, medications, allergies, or immunizations |
| Specialty code | Leave it empty and the preference covers the whole practice. Fill it in and it only applies to practitioners with that specialty |
| Code system | Every published system Practor carries, and any your practice has added |
| Priority | Breaks a tie when two preferences could both apply. Higher wins |

Usage context and specialty code lock once you've saved. To change either one, delete the preference and add it again. A preference naming a specialty beats one that doesn't, whatever the priority says.

Removing a preference puts that kind of record back on the default. **Remove this preference?** says which default that is: the system default for all specialties, or the default for the specialty the preference names.

## Find a code in a form

Open a code field and it lists the codes this practice reaches for, before anyone types. Type two characters and it searches the code, the label, the definition and the synonyms together.

Practor builds that opening list by counting what people pick. Your own choices count most, your practice's next, your discipline's least.

Every result has a badge. **COMMON** is one from that opening list. Once you've typed, it's **STANDARD** for a published code and **CUSTOM** for one your practice or you added.

## Add codes of your own

A published standard has no code for something only your practice does, and you still need a code before you can bill it or count it. Only an Admin or Owner can set this up.

Press **New custom system**. Once the practice has one, that button reads **New system**. Give the system a name, which is the short label a practitioner sees in the picker; the display title and description are optional. Then tick the usage contexts it covers. There are nine: the six the preferences use, plus body sites, severity and family history.

Open the system from the list, then press **Add code**.

| Field | What it does |
| --- | --- |
| Code | One to 32 characters: letters, digits, dot, dash, underscore. It locks once saved |
| Display | What a practitioner reads in the picker |
| Definition | Optional notes. A search reads these too |
| Usage contexts | Starts from the system's. Ticking another one here widens where this single code can turn up |
| Default price | Optional. What an invoice line starts at for this code, in whole units of your currency |
| Modifier hint | Optional. Recorded on the code and read back into this sheet. Nothing else reads it |

![The Add code sheet, with its nine usage contexts](https://res.cloudinary.com/drmnydbcs/image/upload/c_limit,w_1600/f_auto,q_auto:good/v1/help/code-systems/add-code.png?_a=BAMAOGDh0#512x900 "Procedures is already ticked, because the system it belongs to covers procedures.")

A code of your own has no published rate behind it, so **Default price** is what an invoice line starts at. Leave it empty and the line starts at zero, which the **Services** step counts and won't let past. You can still change the amount on the line: [Set what you charge on an invoice](/help/billing-and-claims/set-what-you-charge-on-an-invoice) has the picker and the **Custom price** box.

> [!IMPORTANT]
> A code appears in a picker only where a usage context matches. If neither the system nor the code names one, no search will find it.

Your codes sit in the same list as the published ones, marked **CUSTOM**. A practitioner finds them by code or by words in the display.

## Import a list

On a system, open the **⋯** menu and choose **Bulk import codes**. It takes a CSV with a `code` column and a `display` column; `definition` and `usage_contexts` are optional. Several spellings of each header work, so a file exported as `tariff` and `description` imports without editing. The limit is 1000 rows per file.

Practor shows you the first 50 rows before anything is saved. A code the system already has is skipped rather than overwritten. The summary afterwards names what didn't go in, and why.

## Set your own preference

Open your own profile settings and pick **Code systems**, under **Practice**. The six contexts are there again, each with a picker beside it. Choose a system and it overrides the practice's setting for you. Choose **Use the default** to hand that context back.

![The Personal preferences card, two contexts overridden and four on the default](https://res.cloudinary.com/drmnydbcs/image/upload/c_limit,w_1600/f_auto,q_auto:good/v1/help/code-systems/personal.png?_a=BAMAOGDh0#848x545 "Each context has its own picker, and Use the default clears it.")

Your colleagues keep the practice's setting, and nothing tells them you changed yours.

The same tab holds custom systems of your own. Add one there and the codes in it are yours: they don't appear in anyone else's picker.

## Add a code in the middle of a form

Press the link under the code field, fill in its code and display, then press **Add**. The code is saved and dropped into the field you were on. The rest of the form keeps everything you'd already typed.

![A condition field with the add a code link under it](https://res.cloudinary.com/drmnydbcs/image/upload/c_limit,w_1600/f_auto,q_auto:good/v1/help/code-systems/inline-add.png?_a=BAMAOGDh0#463x88 "The link sits under the box you're already typing in.")

The link names the system it will write to, so on a diagnosis field it reads **Add a code to Practice diagnoses**. Where you can write to more than one it reads **Add a code** and asks which. Only systems that cover this kind of record are offered: your own, and the practice's too if you're an admin.

## Who can change what

You need Admin or Owner to change a standard preference, to add a custom system, or to add a code inside one. Anyone else on the team can open this page and read what the practice uses.

## Related

- [Set up your practice](/help/getting-started/set-up-your-practice)
- [Invite your team](/help/getting-started/invite-your-team)
- [Record an encounter](/help/patients-and-records/record-an-encounter)
