> For the complete documentation index, see [llms.txt](https://documentation.opencrvs.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.opencrvs.org/v1.8/setup/3.-installation/3.2-set-up-your-own-country-configuration/3.2.3-set-up-cr-offices-and-health-facilities/3.2.3.1-prepare-source-file-for-crvs-office-facilities.md).

# 4.2.3.1 Prepare source file for CRVS Office facilities

Prepare your ***crvs-facilities*** source file. This is a [csv](https://en.wikipedia.org/wiki/Comma-separated_values) file for every civil registration office in your country. You can import and create csv files in Excel or Google Drive.

Using our [crvs-facilities.csv](https://github.com/opencrvs/opencrvs-countryconfig/blob/develop/src/data-seeding/locations/source/crvs-facilities.csv) file as an example, update it with the CRVS Office information for your country. Our crvs-facilities.csv file looks like this:

| id         | name                   | partOf               | locationType |
| ---------- | ---------------------- | -------------------- | ------------ |
| 2OKicPQMNI | HQ Office              | Location/BxrIbNW7f3K | CRVS\_OFFICE |
| JEhYJ82xRI | Isamba District Office | Location/HPGiE9Jjh2r | CRVS\_OFFICE |
| JWMRGwDBXK | Ibombo District Office | Location/oEBf29y8JP8 | CRVS\_OFFICE |

Each row will represent a unique "CRVS Office" in your country.

{% hint style="info" %}
Do not change or re-format the header row as the seeding process requires these names to be precise in order to parse the csv. Do not use commas in any cell and do not have any empty rows.
{% endhint %}

The **id** column is a unique identifier for each office. This could be a unique identifier you already use or alternatively you could create unique identifiers programatically, using Excel or using an online UUID generator website for which there are many free ones available. **It is important to note that the id must contain no spaces, no rich texts or commas**

This Excel / Google Sheets formula creates a random unique ID:

```
=DEC2HEX(RANDBETWEEN(0, 4294967295), 8)
```

The **name** column contains the human readable name for the office. We do not currently support multilingual names for the office. **It is important to note that the name must contain no commas**

The **partOf** column shows that the office is part of a higher level administrative division. Notice how we use the levels **admin\<level>Pcode** to set the office as a child of a particular parent level. For example **HQ Office** district is a child of **Isamba** district thanks to this partOf value. Perhaps you may also recognise that these form part of [FHIR Reference URLs](https://www.hl7.org/fhir/references-definitions.html#Reference.reference) hence the requirement for them to be absent of spaces and special characters:

```
Location/HPGiE9Jjh2
```

* The **locationType** column must be set to CRVS\_OFFICE


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.opencrvs.org/v1.8/setup/3.-installation/3.2-set-up-your-own-country-configuration/3.2.3-set-up-cr-offices-and-health-facilities/3.2.3.1-prepare-source-file-for-crvs-office-facilities.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
