# Introduction

## Overview

This documentation is aimed at either a Parent or Grandparent within the Optty hierarchy. It's important to note that a Grandparent offers no additional functionality beyond what a Parent has; it simply provides an extra layer of abstraction. This can be beneficial for certain use cases, but it may also introduce unnecessary complexity.

This document serves as a guide for recreating the full functionality of the UPP Optty portal using API calls.

Since the Optty portal was built with an API-first architecture, all features and operations available within the user interface can be replicated programmatically. This flexibility allows Grandparents and Parents to integrate Optty's functionality directly into their existing portals or systems, eliminating the need to use the UPP Optty portal for day-to-day operations.

If you are interested in implementing Grandparent or Parent functionality, please contact us at <sales@optty.com>

## Hierarchy

Optty uses a three-layer hierarchical structure: Grandparent, Parent, and Merchant.

The primary functionalities detailed in this documentation are the onboarding of Parents and Merchants and the configuration of payment methods for a given merchant. Taking payments is not covered here; that functionality is detailed in the separate Merchant Level documentation, which will be required for a complete integration.

* Grandparents are at the root of the hierarchy. They have the ability to manage a group of Parents and all their associated merchants. Grandparents have full visibility of all entities beneath them and can onboard new Parents and merchants.
* Parents can manage a group of merchants. They only have visibility into their direct merchants and cannot see any other Parents or merchants under the same Grandparent.
* Merchants are at the Child level. This is where payment processing occurs and payment configuration is completed. This configuration is done per merchant but can be set up by a Grandparent or Parent.

<figure><img src="/files/WygsoiOI9Po28r8eU6PW" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: 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:

```
GET https://docs.optty.com/partner-onboarding-docs/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
