# Objects Model
source: https://developer.mastercard.com/open-finance-au/documentation/access-and-config/objects-model/index.md

When building your own production application, understanding the building blocks and configuring them properly will help you achieve better and more efficient results.

## Objects Model {#objects-model}

Mastercard Open Finance defines such objects to access financial data of the customers:

* **Application** - an entity of a software product registered with Mastercard and The Australian Competition and Consumer Commission (ACCC). The application is what communicates with each Data Holder (DH) in order to retrieve the Customer's financial data.
* **Customer** - an entity representing the party whose financial data will be requested and processed.
* **Financial Institution** - an entity representing DH that Mastercard Open Finance can connect to for requesting Customer's financial data.
* **Consent** - an entity representing a Customer's agreement for the Application to access their financial information of the particular accounts.
* **Connect** - a Mastercard Open Finance product which facilitates the collections of Consents from a Customer.
* **Dashboard** - a Mastercard Open Finance product allowing Customers to review and manage their active and historical Consents given using Connect.
* **Account** - an entity representing a single financial account, details of which the Customer has consented to share. One Customer can share many Accounts under a single Consent.
* **Owner** - an entity representing the Account owner information for a single consented account.
* **Transaction** - an entity representing a single transaction associated with a consented Account.
* **Balance** - an entity representing a balance of a single consented Account.
* **Details** - an entity representing the Account details for [pay use case](https://developer.mastercard.com/open-finance-au/documentation/usecases/payment-enablement/index.md) (money transfer) for a single consented account.
* **Report** - an entity representing a single report to support [lend use case](https://developer.mastercard.com/open-finance-au/documentation/usecases/lending/index.md) using consented Accounts.
* **Consumer** - an entity representing a consumer of a Report. Such lend products as [Verification of Income (VOI)](https://developer.mastercard.com/open-finance-au/documentation/products/voi/index.md) and [Verification of Assets (VOA)](https://developer.mastercard.com/open-finance-au/documentation/products/voa/index.md) require Consumer to generate the Report.

![Open Finance objects model](https://static.developer.mastercard.com/content/open-finance-au/uploads/mobs-objects-model.png)

## How it works together {#how-it-works-together}

1. To access the Mastercard Open Finance APIs, you will need to complete an [authentication](https://developer.mastercard.com/open-finance-au/documentation/access-and-config/auth/index.md) process. After this, you will have access to the APIs and therefore entities depending on your production settings.

2. To access any Customer data, firstly your Application has to be [registered](https://developer.mastercard.com/open-finance-au/documentation/access-and-config/applications/index.md) with Mastercard and the ACCC. Each of your [Customers](https://developer.mastercard.com/open-finance-au/documentation/access-and-config/customers/index.md) must be associated with an Application.

3. In accordance with Consumer Data Right (CDR) regulations, Customers must provide their [Consent](https://developer.mastercard.com/open-finance-au/documentation/consent/index.md) to access their financial data. The Mastercard [Connect](https://developer.mastercard.com/open-finance-au/documentation/connect/index.md) product allows you to obtain Consent, while the [Dashboard](https://developer.mastercard.com/open-finance-au/documentation/api-reference/index.md#GenerateConnectDashboardUrl) allows Customers to manage their Consents in accordance with the regulations.

4. With the Customer and Consent entities in place, it is possible to request information about the customer's [Accounts](https://developer.mastercard.com/open-finance-au/documentation/access-and-config/accounts/index.md) and therefore their financial information (e.g., transactions, balance, etc.).

5. If your product is related to lending, in addition to the Customer and Consent you must also create a [Consumer](https://developer.mastercard.com/open-finance-au/documentation/access-and-config/consumers/index.md) entity. With this, you can generate and obtain Reports such as verification of assets, verification of income, and cash flow.

6. [Financial Institution API](https://developer.mastercard.com/open-finance-au/documentation/api-reference/index.md#GetInstitutions) allows you to check whether specific [Financial Institutions](https://developer.mastercard.com/open-finance-au/documentation/financial-institutions/index.md) is able to provide the information needed for your service. You can use this information to amend the Connect settings to show only Financial Institutions that satisfy your product's needs.

## Next Steps {#next-steps}

Refer to [Access Models](https://developer.mastercard.com/open-finance-au/documentation/access-and-config/access-models/index.md) to understand role and responsibilities of your organisation prior registering your [Application](https://developer.mastercard.com/open-finance-au/documentation/access-and-config/applications/index.md).
