# How we run

> How an AI-native commerce company actually runs: one append-only ledger, two kinds of users (people and agents), and money that moves slowly.

- Site: Awensora (文霄国际) · Awensora Group LLC
- Page: https://awensora.com/how-we-run · Markdown: https://awensora.com/how-we-run.md
- 中文版: https://awensora.com/zh/how-we-run
- Updated: 2026-09-27

---
## We didn’t add AI to a store. We built a store out of it.

This page is for the people who review us, supply us or want to work like this. It says what “AI-native” means here, concretely.

## 01 ONE LEDGER — One ledger

Inventory is an append-only ledger. Every movement — a purchase, a sale, a return, a count, a box taken home — is one row with a signed quantity, and on-hand is the sum of those rows. Nothing is edited; a mistake is corrected by another row.

Every channel’s listed quantity is derived from that one number. The count on any platform never exceeds what is physically on the shelf, and a sale on one channel pulls the others down.

## 02 TWO KINDS OF USERS — Two kinds of users

People come in through the browser. Agents come in through MCP. Both go through the same service layer, with the same rules and the same audit trail, so a stock movement made by Claude leaves exactly the row a person would have left.

## 03 MONEY MOVES SLOWLY — Money moves slowly

Anything that spends money — buying a shipping label — starts in dry-run, has a daily cap, and does not retry itself when it fails. An agent can do a great deal, but it cannot spend on the way past. A human turns money on.

## How it is wired

One API. People and agents share it. Postgres holds the ledger; the worker talks to the marketplaces; a small agent on a Windows PC drives the thermal printer.

```
people (browser) ─┐
                  ├─► nginx ─► api (FastAPI + MCP) ─► Postgres (the ledger)
Claude (MCP) ─────┘                 ▲                    ▲
print agent (Windows PC) ───────────┘     worker ────────┘
   └─► thermal printer                       ├─► TikTok Shop
                                             ├─► eBay
                                             └─► Microsoft Graph (mail)
```

## One day, as the system runs it

- `02:10` The worker polls TikTok Shop and eBay for new orders.
- `02:11` Stock is reserved in the ledger; every channel’s listed quantity is pushed down.
- `07:30` Labels are bought (dry-run until an owner turns it on) and queued to the printer.
- `08:00` Max packs. The print agent has already printed.
- `hourly` Receipts in the Drive inbox are read, booked and filed.
- `nightly` Ship-by, expiry, token-expiry and compliance scans run. One email if anything needs a human.

## What it is built with

| Tool | What | Used for |
|---|---|---|
| ERP | in-house · Python, FastAPI, React | the ledger, orders, labels, alerts; exposes an MCP server |
| Claude Code | Anthropic | writes and maintains the code |
| Claude Cowork | Anthropic | browser chores: platform consoles, forms, exports |
| MCP | protocol | how agents reach the ERP, under the same rules as people |
| QuickBooks | Intuit | the books; receipts land there from a Drive inbox |
| Cloudflare | — | domain, DNS, this site, the one public endpoint eBay requires |
| Microsoft 365 | — | mail and alerts |

## SEC 05 — WHAT AGENTS DON’T DO

What agents don’t do: choose products, talk to suppliers, decide prices, or touch money without a human turning it on. Those are Max’s.

Want to see it? We’re happy to walk partners through the system. [Contact](https://awensora.com/contact)
---

Awensora Group LLC · Dunn Loring, Virginia · hello@awensora.com
Where to buy: TikTok Shop (Awensora) https://vt.tiktok.com/ZTySM73t1/ · eBay (sorajapanshop) https://www.ebay.com/usr/sorajapanshop
Catalogue: https://awensora.com/products.json · For agents: https://awensora.com/agents.md · Index: https://awensora.com/llms.txt
