> For the complete documentation index, see [llms.txt](https://docs.xenoraa.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xenoraa.com/welcome-to-xenoraa.md).

# Welcome to Xenoraa

## Welcome to Xenoraa Developer Docs

Welcome to the official developer and API documentation for **Xenoraa.com** — a multi-tenant SaaS CRM/ERP platform built on Laravel 11, PHP 8.3, and PostgreSQL 16.

This documentation is automatically generated from the active production codebase to ensure absolute accuracy and up-to-date information.

### System Architecture & Stack

Xenoraa uses a modern, high-performance web stack tuned for SaaS scalability:

* **Framework:** Laravel 11 (PHP 8.3)
* **Database:** PostgreSQL 16.14 (with `session_replication_role` for high-speed migrations)
* **Cache & Session:** Redis-server (running on `127.0.0.1:6379`)
* **Queue Driver:** Redis (managed by Supervisor with 2 active worker processes)
* **Web Server:** Nginx 1.24.0 with OPcache enabled (256MB memory, 20000 max files)
* **Security:** Cloudflare WAF (5 custom rules protecting against malicious scanners, exploit paths, direct IP access, and brute force logins)

***

### Core Modules & API Coverage

Xenoraa is structured into several modular systems handling CRM, ERP, Finance, POS, and AI operations:

| Module                  | Routes Count | Primary Responsibility                                                    |
| ----------------------- | :----------: | ------------------------------------------------------------------------- |
| **CRM 2.0 (Core)**      |      288     | Core sales pipelines, leads, contacts, deals, and accounts.               |
| **Super Admin**         |      88      | Multi-tenant administration, subscription billing, and MRR/ARR analytics. |
| **Accounts & Finance**  |      82      | Double-entry bookkeeping, bank reconciliation, budgets, and tax rates.    |
| **E-Commerce**          |      44      | Headless storefront integrations, order management, and coupons.          |
| **Xena AI & ChatGPT**   |      24      | AI Assistant Actions API, OpenAPI spec generator, and token management.   |
| **Point of Sale (POS)** |      14      | In-store checkout, session management, and receipt generation.            |
| **Email Campaigns**     |       9      | Campaign builder, newsletter delivery, and open/click rate tracking.      |

***

### Getting Started

To integrate with Xenoraa or explore specific modules, select a section from the sidebar:

* **Xena AI & ChatGPT Actions** — Learn how to connect Custom GPTs and use the Bearer-token authorized API.
* **CRM 2.0 API & Routes** — Complete route map for managing leads, deals, contacts, and pipeline stages.
* **Accounts & Finance** — Double-entry accounting, bank transfers, and journal entries.
* **E-Commerce & POS** — Headless storefront integrations and retail checkout APIs.
* **Super Admin & Billing** — System-wide tenant billing, subscription plans, and platform health.


---

# 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://docs.xenoraa.com/welcome-to-xenoraa.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.
