# Building with a coding agent

Set up Claude Code, Cursor or Codex to build a Kustom Checkout integration — its own Playground API credentials, the Kustom skill and the Markdown it reads.

This page is for you, the developer setting up a coding agent. The agent itself starts from
[`/llms.txt`](/llms.txt) and needs nothing here. What it can't do on its own is get API
credentials or install itself, so those two steps are yours, and then you tell it where to
read.

## Give the agent its own API credentials

The live demos on these pages run on a temporary Playground session meant for the browser,
and there are no throwaway credentials for agents. An agent needs Playground API credentials
of its own before its first call:

1. Sign up through the [Playground onboarding form](https://portal.playground.kustom.co/onboarding). It's free and self-serve.
2. In the Playground Portal, go to **Developers → API** and click **Generate new**. A Merchant ID can carry several credentials, so give the agent its own and revoke it when you're done.
3. Pass the API username and API password to the agent through the environment, not the prompt:

```bash
export KUSTOM_API_USERNAME=...                 # the Portal's Key ID
export KUSTOM_API_PASSWORD=kco_test_api_...
curl -s -X POST https://api.playground.kustom.co/checkout/v3/orders \
  -u "$KUSTOM_API_USERNAME:$KUSTOM_API_PASSWORD" -H 'Content-Type: application/json' \
  -d @order.json
```

A `kco_test_` password only works against `api.playground.kustom.co`. [Authentication](/api/authentication/) covers both values and how to send them.

## Install the skill

The skill teaches the create → render → confirm flow, and tells the agent to ask you for
credentials before it makes a call. This installs it for Claude Code:

```bash
mkdir -p .claude/skills/kustom-checkout && curl -s https://docs.kustom.co/skill/SKILL.md -o .claude/skills/kustom-checkout/SKILL.md
```

For another agent, give it [`/skill/SKILL.md`](/skill/SKILL.md) the way it takes project
instructions.

## Point it at the docs

Hand the agent [`/llms.txt`](/llms.txt) first. It indexes every page with a one-line
summary, and it carries the naming rules an agent gets wrong unprompted.

Every page also has a Markdown version at the same URL with `.md` appended, for example
[`/checkout/integrate/create-order.md`](/checkout/integrate/create-order.md). To pass one
page into a chat, use **Copy page** in its title.

## Next steps

- [Checkout in 15 minutes](/checkout/quickstart/) — the flow the skill automates, run by hand.
- [Checkout API reference](/api/checkout/) — the schemas an agent will need for anything beyond the defaults.
