> For the complete documentation index, see [llms.txt](https://docs.digit.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digit.org/public-finance/v2.3/platform/configuration/services/master-data-setup/domain-services/ifix-core-master-data-service.md).

# iFIX Core Master Data Service

## Overview <a href="#overview" id="overview"></a>

Master data service maintains information about Government and Chart of Accounts. We can create these details and search for the same details based on the given parameters/request data.

### Version <a href="#version" id="version"></a>

Current version : 2.0.0

## Prerequisites <a href="#prerequisites" id="prerequisites"></a>

Before we proceed with the configuration, make sure the following pre-requisites are met:

1. Java 8
2. MongoDB instance

## Features <a href="#features" id="features"></a>

It creates secure endpoints for the master data service. The access token is required to create any master data.

The subsequent sections on this page discuss the service details maintained by the IFIX core master data service.

### Government <a href="#government" id="government"></a>

This service provides the capabilities to maintain the Government details and allow users to Create and Search data. For creating the Government, we need a unique Id for the Government and a name for the same. Optionally, we can pass some additional details as part of the attribute. In the case of search, passing the unique ID(s) as search parameters can give you all the details of the required Government.

### **API List**

| **Title**               | **Link**                                                      |
| ----------------------- | ------------------------------------------------------------- |
| /government/v1/\_create | <https://www.getpostman.com/collections/1b2abbca3f6c290b57d9> |
| /government/v1/\_search | <https://www.getpostman.com/collections/1b2abbca3f6c290b57d9> |

### Chart Of Account <a href="#chart-of-account" id="chart-of-account"></a>

This service provides the capabilities to maintain the Chart of Account (COA) details and support create and search of COA. The following information is passed while creating the Chart of Accounts - Government Id, majorHead, subMajorHead, minorHead, subHead, groupHead, objectHead and corresponding head names & types. A unique code named COACode is generated by combining (concatenating) majorHead, subMajorHead, minorHead, subHead, groupHead, objectHead with a hyphen ("-") and stored with the given request.\
Searching the details for COA is done based on the given search parameters like the Chart of Account IDs, COACodes, Government ID, majorHead, subMajorHead, minorHead, subHead, groupHead, objectHead.

### **API List**

| **Title**                   | **Link**                                                      |
| --------------------------- | ------------------------------------------------------------- |
| /chartOfAccount/v1/\_create | <https://www.getpostman.com/collections/1b2abbca3f6c290b57d9> |
| /chartOfAccount/v1/\_search | <https://www.getpostman.com/collections/1b2abbca3f6c290b57d9> |

## Interaction Diagram <a href="#interaction-diagram" id="interaction-diagram"></a>

![](https://2287351256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FujRjzdG1LUqcmmuo2t2T%2Fuploads%2FIV8gFrWpoa2c9hyktrdm%2FMS-Sequence%20Diagram.PNG?alt=media\&token=c180bcbd-a8dd-480b-ba68-7b40ee6f5a30)

## Environment <a href="#environment" id="environment"></a>

No environment variables are required specific to the environment (migration).

## Configurations and Setup <a href="#configurations-and-setup" id="configurations-and-setup"></a>

1. Update the DB and URI configurations in the dev.yaml, qa.yaml, prod.yaml file.
2. Make sure the keycloak server is up and running and has been configured with the required client ID.

## References and Notes <a href="#references-and-notes" id="references-and-notes"></a>

| **Title**          | **Link**                                                                                                                                                                                               |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Swagger Yaml       | [ReDoc Interactive Demo](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/misdwss/iFix-Dev/develop/domain-services/ifix-master-data-service/ifix-master-data-service-2.0.0.yaml) |
| Postman collection | <https://www.getpostman.com/collections/1b2abbca3f6c290b57d9>                                                                                                                                          |

&#x20;

> [![Creative Commons License](https://i.creativecommons.org/l/by/4.0/80x15.png)*​*](http://creativecommons.org/licenses/by/4.0/)*All content on this page by* [*eGov Foundation*](https://egov.org.in/) *is licensed under a* [*Creative Commons Attribution 4.0 International License*](http://creativecommons.org/licenses/by/4.0/)*.*


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.digit.org/public-finance/v2.3/platform/configuration/services/master-data-setup/domain-services/ifix-core-master-data-service.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
