> For the complete documentation index, see [llms.txt](https://docs.cloudeka.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cloudeka.ai/guidance-for-enterprise/service-limit/billing-and-balance.md).

# Billing And Balance

All billing objects in your namespace are **view-only** — they're written by the platform's billing engine, not by you. This page tells you what each one means and how to read it.

## Your balance — `CloudekaTenant`

```bash
kubectl get tenant -n <your-namespace>
```

Shows `Balance` alongside your `Billing`/`Charging` type. This is the authoritative number:

* **Prepaid:** balance is credit you've topped up; usage draws it down. It **can go negative** — there's no automatic cutoff mid-hour, but the 48-hour look-ahead check (see [Quota & Limits](/guidance-for-enterprise/service-limit/quota-and-limits.md)) prevents you from starting *new* resources once your runway is too short.
* **Postpaid:** balance accumulates as **debt owed** — it goes up as you use resources, and is the amount you'll be invoiced for.

## Live per-resource cost

While a resource is running, its billing mirror shows the current hourly charge:

```bash
kubectl get container -n <your-namespace>   # Pods:  CPU, RAM, Charge, Status
kubectl get storage -n <your-namespace>      # PVCs:  StorageClassName, Size, Charge, Status
kubectl get cfip -n <your-namespace>         # Floating IPs: IP, Charge
```

These update automatically as workloads start, change state, or stop — you don't need to do anything to keep them current.

## Daily statement — `CloudekaCharge`

```bash
kubectl get charge -n <your-namespace>
```

One object per calendar day, named after the date (e.g. `2026-07-24`). It accumulates throughout the day as the platform bills each finished hour, showing:

* A line-item breakdown per product (cpu, ram, per-GPU-model, per-storage-class, floating IP, NVAIE).
* `previousBalance` / `balance` — your balance immediately before/after this charge.
* `charge` — the running total for the day so far.

```bash
kubectl get charge 2026-07-24 -n <your-namespace> -o yaml
```

{% hint style="info" %}
The platform charges are computed **hour by hour** and only fold into this object as each hour closes — so a `CloudekaCharge` for "today" is incomplete until the day ends. Don't expect it to reflect the last few minutes of activity.
{% endhint %}

## Top-ups — `CloudekaTopup`

```bash
kubectl get topup -n <your-namespace>
```

A history of prepaid credit applied to your balance, applied by the platform team (finance/ops), not created by you directly. Each object is an immutable ledger entry — one credit event, `previousBalance` → `balance`. To add credit, go through your normal Cloudeka billing/payment channel; it will show up here once applied.

## Prices — `CloudekaPrice`

```bash
kubectl get price -n <your-namespace> -o yaml
```

Your negotiated unit price (hourly) and monthly price per product. This is what the platform multiplies your usage by to compute every charge you see above. View-only; contact the platform team for pricing changes.

## Quick answers

<table><thead><tr><th width="331">Question</th><th>Command</th></tr></thead><tbody><tr><td>What's my balance right now?</td><td><code>kubectl get tenant -n &#x3C;ns></code></td></tr><tr><td>Am I prepaid or postpaid?</td><td><code>kubectl get tenant -n &#x3C;ns></code> (Billing/Charging columns)</td></tr><tr><td>What is this specific Pod costing me?</td><td><code>kubectl get container -n &#x3C;ns></code></td></tr><tr><td>What did I spend today?</td><td><code>kubectl get charge $(date +%F) -n &#x3C;ns> -o yaml</code></td></tr><tr><td>When was my balance last topped up?</td><td><code>kubectl get topup -n &#x3C;ns></code> (sorted by CreatedAt)</td></tr><tr><td>What are my unit prices?</td><td><code>kubectl get price -n &#x3C;ns> -o yaml</code></td></tr></tbody></table>
