November 6, 2026

How to Manage Business Expenses with Codex

In this article

Key Highlights

  • You can manage business expenses with Codex by adding the Reap Business Account MCP to config.toml with one API key.
  • You set what Codex can do through the key's scopes, and default_tools_approval_mode = "writes" makes Codex ask you before any tool that changes data.
  • The Reap Business Account MCP reads card activity, manages cards and records the bank transfers you send, and it has no tool that shows full card details.
  • You need Business Account API access, which a team admin requests in the dashboard under API.

Teams that already work in Codex can manage business expenses with Codex by connecting it to a Reap Business Account. The connection uses the Business Account MCP, a remote server that Reap hosts, and your own API key. Codex can then read card activity and balances, group spend by category and change card limits, within the scopes you give the key. The launch post introduces the Business Account MCP.

You add the server with a short config.toml entry.

What do you need to manage business expenses with Codex?

To manage business expenses with Codex, you need three things:

  • A Business Account with API access.
  • An admin who can create an API key.
  • Codex, on a computer whose public IP address the key's allowlist can check.

If your Business Account does not have API access yet, an admin can request it in the dashboard under API, then Request access. Access is granted per business, and the business's card application must be issued.

How do you connect Codex to your Business Account?

You connect Codex to your Business Account in four steps: create a key, save it, add the server and check the connection. The setup guide documents each step:

  1. Create an API key. An admin goes to API, then Create key, in the dashboard and picks the scopes. Begin with these read scopes: treasury_funding:read, treasury_transactions:read, team_members:read, cards:read, card_account_balances:read and card_activities:read. Add your computer's public IP to the allowlist, which curl ifconfig.me prints. You see the key once, so copy it.
  1. Save the key as an environment variable. Run this in zsh and paste the key when prompted. Then start Codex from the same terminal.

read -rs "REAP_API_KEY?Paste your API key: "; echo
export REAP_API_KEY

  1. Add the server. Codex reads MCP servers from ~/.codex/config.toml, and OpenAI's Codex documentation shows the url and bearer_token_env_var keys for a remote server. Add this table.

[mcp_servers.reap]
url = "https://api.global.direct.reap.global/mcp"
bearer_token_env_var = "REAP_API_KEY"

The setup guide also shows a one-line equivalent.

codex mcp add reap --url https://api.global.direct.reap.global/mcp --bearer-token-env-var REAP_API_KEY

  1. Check the connection. Run codex mcp list, or type /mcp in the Codex interface, and look for the reap server. Then ask "Who are my team members?".

What business expense tasks can you run from Codex?

You can run funding, category, spend and card-control tasks from Codex, within the key's scopes.

PromptWhat Codex doesScopes needed
"List the card categories I can use"Reads the card and transaction categoriescards:read
"Get the funding instructions for our account"Reads the funding options and the instructions for your accounttreasury_funding:read
"Group this month's card activity by category"Reads card activity and categories, then groups themcard_activities:read, cards:read
"Set the monthly limit on the card ending 3307 to $500"Updates that card's spend control, and asks first if you set writes mode, covered belowspend_controls:write
"Limit the card ending 3307 to weekday office hours"Updates that card's usage hours, which are in UTCcards:write

Codex runs the analysis, so check a report's totals against the dashboard before you send it.

Is it safe to let Codex handle your business expenses?

Letting Codex handle your business expenses is as safe as the limits you set on it. Codex works within the permissions of your API key, so you control the risk with the key's scopes, an approval mode on every tool that changes data and a person on every step that cannot be undone.

What can be delegated to Codex in business expense management?

You can delegate lookups, funding instructions and routine card settings to Codex today, with approval on every change. The table shows what to hand over and the guardrail for each task.

TaskDelegate it?Guardrail
Looking up categories, balances and card activityYesA read-only key is enough, and you check any report against the dashboard before you send it
Getting funding instructionsYesSave the Reference ID against your transfer before you send anything, and send the money yourself
Changing a card's limit or usage hoursYes, with approvalSet writes mode from the next section so Codex asks first
Creating cardsYes, through a previewEvery card goes through a preview, and an approver accepts it if your business uses Approvals
Terminating cardsOnly with a person's approvalTermination is permanent. It always goes through a preview that a person approves
Moving moneyYes, with approvalRequire a person's approval before any tool that sends funds runs, so each transfer is approved before it goes out
Recording bank transfersYes, with approvalSet writes mode from the next section, so every recorded transfer waits for your approval

Start with the first row and add write scopes one task at a time.

What controls protect your business expense data when Codex uses it?

Four controls protect your business expense data when Codex uses it: the key's permissions, its IP allowlist, Codex's tool settings and your right to revoke the key. A read-only key limits Codex to reading. The key's IP allowlist is on by default and limits where requests can come from. OpenAI's documentation describes enabled_tools and disabled_tools lists for each server, so you can hide tools from Codex altogether. This example uses Reap's own tool names. It stops Codex from applying card changes or confirming a bank transfer.

[mcp_servers.reap]
url = "https://api.global.direct.reap.global/mcp"
bearer_token_env_var = "REAP_API_KEY"
disabled_tools = ["apply_card_changes", "confirm_treasury_bank_transfer"]

You can revoke the key in the dashboard, and access stops on the next call.

Reap adds protections of its own, and you manage them in the Reap dashboard. An admin can edit a key's scopes after creating it, and revocation takes effect immediately. In the approval setting Reap recommends, every card change and every recorded bank transfer waits for your yes. The Reap Business Account MCP also has no tool that shows full card details, so Codex never reveals a card number. Creating or terminating a card always goes through a preview. If your business uses Approvals in the dashboard, an approver must accept each card Codex creates. The approval settings in the next section apply on top of these. See the API docs for how to limit a key's access and the setup guide for how to require human approval on changes.

Requests and replies still pass through the AI provider you choose, so share only the data a task needs.

How do you make Codex ask before it changes a card?

You make Codex ask before it changes a card by setting default_tools_approval_mode = "writes" on the server and choosing Ask for approval in /permissions. The writes value prompts you for every tool that is not marked read-only, according to OpenAI's documentation. Merge these settings into ~/.codex/config.toml.

approval_policy = "on-request"
approvals_reviewer = "user"

[mcp_servers.reap]
url = "https://api.global.direct.reap.global/mcp"
bearer_token_env_var = "REAP_API_KEY"
default_tools_approval_mode = "writes"

The assistant cannot do anything the key's scopes do not allow, so a read-only key cannot change a card even if you approve the request.

Access levelScopes the key needs
Read-onlyThe six read scopes from step 1
Manage cardsAll read scopes, plus cards:write and spend_controls:write
Record bank transfersAdd treasury_funding:write

You create or terminate a card through a preview first. Codex calls preview_card_changes, a tool that checks up to 25 changes, at most one per card, and changes nothing. It then calls apply_card_changes with the preview's reference, which stays valid for one hour. Some agents freeze each card with a separate call instead of showing one preview, so set your AI app to ask before every change.

What can't Codex do with your Business Account?

Codex cannot show full card details or create anything other than virtual cards. For safety and privacy, Reap's Business Account MCP does not show full card details, and new cards are always virtual. Today the MCP shares funding instructions and records a bank transfer you already sent, as the Business Account MCP page describes.

Chat-based AI apps that sign in through OAuth are not supported yet. The Claude Code guide covers the same limits.

What do common Codex connection errors mean?

A 401 or 403 points you to the key or its IP allowlist. Reap's errors name any missing scope and end with a Reference ID that you send to Reap Support.

What you seeWhat it meansWhat you do
401The key is missing, mistyped or revokedCheck that REAP_API_KEY is set in the terminal where you started Codex, then restart Codex
403Your IP is not on the key's allowlist, often after a network changeAdd the new IP in the dashboard
A missing scope errorThe key lacks a permission, and the error names itAsk an admin to add that scope to the key
429You sent too many requestsWait a minute and try again

How Reap Can Help

Reap's Business Account brings expense management, spend controls and corporate cards into one account. The Business Account API and MCP expose the same controls.

New to Reap? Create an account. Once your card application is issued, an admin can request Business Account API access in the dashboard.

‍

‍

Disclaimer

The information provided in this material is for general informational purposes only and does not constitute legal, financial, tax, or business advice. It should not be interpreted as a recommendation, offer, solicitation, or inducement to engage with Reap’s products or services. Any use of Reap’s services is at the user’s sole risk and discretion.

Reap makes no representation or warranty, express or implied, regarding the accuracy, completeness, or reliability of the information provided. Services are governed exclusively by Reap’s applicable legal agreements. Service availability, features, and eligibility may vary by jurisdiction and are subject to regulatory, card network, and operational limitations.

All trademarks, logos, and brand names are the property of Reap and/or their respective owners. References to third-party platforms or services are for descriptive purposes only and do not imply endorsement, partnership, or affiliation.

Reap’s services and information are provided on an “as is” and “as available” basis, without warranties of any kind. Reap shall not be liable for any loss or damage arising from the use of, or reliance on, this information or its services.

Get Started

Enjoy boundless financial service with Reap

Business Account The unified account layer for stablecoin-enabled businesses
Learn more
Embedded Finance Launch branded financial products on Reap's infrastructure, one API integration
Learn more
compliance
Agentic Payments Agentic spends on any merchant, anywhere. Agent-native checkout live today.Explore
One stack, direct or embedded.See pricing

NEW: Now supporting stablecoin card programs across 100+ markets Learn more