Asalebeta

Buying with Codex

Codex needs one thing the other tools do not — a model chosen up front — because it picks from its own list rather than from the request.

You do not need ChatGPT Plus / Pro to use Codex. Once the buy switch is on, Codex's requests go through the Asale market and are served by other people's idle subscription capacity; you pay in USDT for the tokens you actually use.

Codex has one extra mandatory step compared with the other tools: you must pick a model first. Step 5 explains why — skip it and it will keep failing.

Time needed: about 15 minutes | The extra step: you must pick a model

Buying does not require you to be able to reach Anthropic / OpenAI / Google

Your tool hands the question to Asale on your computer, Asale passes it to the market, and the market assigns it to some seller's computer, which asks the vendor. The machine talking to the vendor is the seller's, not yours — all you need is to reach Asale's own servers.

Step 1: Install the Asale client and sign in

Not installed yet? Work through Install the client: download → install → register and sign in on the Account page.

The Asale client

Step 2: Put some USDT in the wallet

With no balance, requests are refused with "402 insufficient balance".

  1. Wallet → Deposit → pick a chain

    Wallet on the left → Deposit → pick Solana or TRON.

    The wallet deposit page

  2. Scan the QR code or copy the address and send
    • Phone wallet: scan the QR code.
    • Exchange: the USDT withdrawal page → choose the same network you just picked on Asale → paste the address → confirm.

    The deposit address and QR code

  3. Wait for it to arrive

    The status runs detected → confirming → added to your balance. For a first try, 5–10 USDT is plenty.

    Added to your balance

    Pick the wrong chain and the money cannot be recovered

    An address is bound to a chain. USDT sent from another network, or another coin entirely, will not arrive. Go by the network name written above the QR code on the deposit page.

Step 3: Install Codex on your computer

If you already have it (codex --version prints something in a terminal), skip to step 4.

3.1 Install Node.js first

  1. Download the LTS build

    Open nodejs.org and click the green LTS button.

    The LTS download button on the Node.js site

  2. Install it

    Windows: double-click the .msi. macOS: double-click the .pkg. Linux: use your package manager. Click Next all the way.

  3. Open a new terminal and check
    node -v
    

    Something like v22.x.x means you are set. The window must be a new one — an old one cannot see the new PATH.

3.2 Install Codex

npm install -g @openai/codex

Installing Codex in a terminal

Check it:

codex --version
It will not install on macOS / Linux and a screenful of red appears

If the red text contains EACCES or permission denied, it cannot write into a system directory. Do not force it with sudo — move the install location into your own home directory instead:

mkdir -p ~/.npm-global
npm config set prefix ~/.npm-global
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.zshrc
source ~/.zshrc
npm install -g @openai/codex

If you use bash, replace ~/.zshrc with ~/.bashrc.

3.3 Do not sign in yet

After installing, Codex will ask you to sign into ChatGPT — you can skip that. Buying through Asale needs no OpenAI account.

Step 4: Turn on Codex's buy switch

Quit any running Codex first

Turning the switch on rewrites Codex's config file. If you do it from a window that is running Codex, the session you are rewriting is your own. Open a fresh window.

Buy on the left → find the Codex row → turn on Buy tokens for this tool.

The Buy page with the Codex switch on

If it still says "Not detected", click Refresh.

Step 5: Pick a model (mandatory for Codex — do not skip)

Codex picks models from its own built-in list, not from the request

Every other tool states which model it wants in the request. Codex does not — it takes one from its own built-in model catalogue.

Pick nothing and it settles on a built-in GPT model the market cannot serve. What you get is not a clear error message but a string of baffling failures.

Pick a model and Asale writes it into ~/.codex/config.toml and into the catalogue Codex reads, so it appears in the app's model menu.

Expand Models to buy (multi-select) and tick the ones you want. Each shows its current market price (in / out, per million tokens).

Codex's model selection list

No supply means nobody on the market has capacity for that model right now.

Step 6: Restart Codex

This step matters even more for Codex

The desktop app reads the model catalogue at startup. A model written while the app is running will not appear in the menu.

Close every Codex window / quit the ChatGPT desktop app, then open it again.

The restart reminder, listing old processes still running

Still only built-in models in the picker after restarting?

Go back to the Buy page, click Re-apply, then restart once more.

Step 7: Confirm it really went through the market

Open a new terminal, run codex, and ask anything.

Back in Asale → RecordsBuy tab, that request should be at the top: time, model, token count, and how much USDT it cost.

The Buy tab on the Records page

What actually changed on disk

FileKeys changed
~/.codex/config.tomlmodel_provider, [model_providers.asale], model, model_catalog_json
~/.codex/auth.jsonOPENAI_API_KEY

When config.toml is edited, the comments and formatting you wrote in it are left exactly as they were. Both files are backed up before the change and restored when you turn the switch off.

What one request costs

Before each question, the system holds an amount from your balance based on the most this could possibly cost — usually quite a bit more than it actually will. When the answer finishes, it settles at real usage and the excess returns immediately.

A request that errors, produces no usage, or that you interrupt with Ctrl+Cnone of them are charged.

Turning it off again

Turn the Codex switch off on the Buy page; it says Codex has been restored to its original config. Then restart Codex.

Common questions

Codex ignores the model I picked entirely? It picks models from its built-in list, not from the request. Go back to the Buy page and pick a model so it gets written into ~/.codex/config.toml, then restart — the model also has to appear in the app's model menu before it counts as working.

"503 no supply"? Nobody currently has idle capacity for that model. Switch models or wait; the market's available capacity refreshes every minute.

"402 insufficient balance" when I clearly have money? The hold is based on the most it could possibly cost, usually quite a bit above the real figure, so a small balance gets stuck here easily. Deposit a bit more.

Why is OpenClaw's traffic governed by Codex's switch? If you also use OpenClaw, read Buying with OpenClaw — it has to use its own prefixed address, or it falls into Codex's switch and model selection.

I have a ChatGPT subscription of my own — can I buy and sell at the same time? Not with the same account. While this switch is on, the Codex account imported from this machine is automatically taken out of the sale listing.