> ## Documentation Index
> Fetch the complete documentation index at: https://dvaultdocs.dukka.com/llms.txt
> Use this file to discover all available pages before exploring further.

# End of Day API

> Manage end-of-day operations and reconciliations

# End of Day API Documentation

## Overview

The End of Day API provides endpoints for retrieving end-of-day transaction summaries and reports for accounts and tenants.

## Base URL

`/api/v1/eod`

## Authentication

All endpoints require authentication using an API key in the request headers:

* `X-API-KEY`: Your API key

## Endpoints

### Get EOD Reports

Retrieves a list of end-of-day reports with optional filtering and pagination.

**Endpoint:** `GET /fetch`

**Headers:**

* `X-API-KEY` (optional): API key for authentication

**Query Parameters:**

* `accountId`: Account ID (comma-separated for multiple accounts)
* `tenantId`: Tenant ID (comma-separated for multiple tenants)
* `eodReferenceId`: EOD reference ID (comma-separated for multiple references)
* `startedAt`: Start date and time (ISO-8601 format)
* `completedAt`: End date and time (ISO-8601 format)
* `page`: Page number (default: 0)
* `size`: Page size (default: 20)
* `sort`: Sort field and direction (e.g., "createdAt,desc")

**Response:**

```json theme={null}
{
  "statusCode": 200,
  "message": "string",
  "data": {
    "content": [
      {
        "id": "number",
        "eodReferenceId": "string",
        "startedAt": "string",
        "completedAt": "string",
        "totalTransactions": "number",
        "amount": "number",
        "creditAmount": "number",
        "debitAmount": "number",
        "tenantId": "string",
        "accountId": "string",
        "accountName": "string",
        "status": "string",
        "createdAt": "string",
        "updatedAt": "string"
      }
    ],
    "pageable": {
      "pageNumber": 0,
      "pageSize": 20,
      "sort": {
        "sorted": true,
        "unsorted": false,
        "empty": false
      },
      "offset": 0,
      "paged": true,
      "unpaged": false
    },
    "totalElements": 0,
    "totalPages": 0,
    "last": true,
    "size": 20,
    "number": 0,
    "sort": {
      "sorted": true,
      "unsorted": false,
      "empty": false
    },
    "numberOfElements": 0,
    "first": true,
    "empty": false
  }
}
```

## Error Responses

All endpoints may return the following error responses:

**401 Unauthorized**

```json theme={null}
{
  "statusCode": 401,
  "message": "Unauthorized",
  "data": null
}
```

**404 Not Found**

```json theme={null}
{
  "statusCode": 404,
  "message": "User not found or validated",
  "data": null
}
```

## Notes

* All timestamps are in ISO-8601 format
* The EOD reference ID format is "EOD-YYYYMMDD-XXX" (e.g., "EOD-20240526-001")
* If only `startedAt` is provided, the end time will be set to the next day
* If only `completedAt` is provided, the start time will be set to the previous day
* Platform admins can view EOD reports for all tenants
* Tenant users can only view EOD reports for their own tenant
* The EOD report includes:
  * Total number of transactions
  * Total transaction amount
  * Total credit amount
  * Total debit amount
  * Account and tenant information
  * Processing status and timestamps
