> ## Documentation Index
> Fetch the complete documentation index at: https://agentcash.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Provider quickstart

> Copy and paste this prompt into your coding agent and it will figure out where you are and what you need in order to start selling your API to agents.

export const promptText = "Read https://agentcash.dev/merchants.md and follow the guide to make my API discoverable and payable by agents. Do everything automatically. Only ask me if you need input you can't determine yourself.";

export const PromptAccordion = () => {
  const {useState} = React;
  const [open, setOpen] = useState(false);
  const [copied, setCopied] = useState(false);
  return <div className="prompt-accordion">
      <div onClick={() => setOpen(!open)} style={{
    display: "flex",
    alignItems: "center",
    gap: 8,
    padding: "14px 16px",
    cursor: "pointer",
    userSelect: "none"
  }}>
        <span className="prompt-accordion-icon" style={{
    fontSize: 12,
    transform: open ? "rotate(90deg)" : "rotate(0deg)",
    transition: "transform 0.15s"
  }}>▶</span>
        <svg className="prompt-accordion-icon" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
          <polyline points="4 17 10 11 4 5" /><line x1="12" y1="19" x2="20" y2="19" />
        </svg>
        <span className="prompt-accordion-label" style={{
    fontSize: 14
  }}>Paste into your coding agent</span>
        <button onClick={async e => {
    e.stopPropagation();
    try {
      await navigator.clipboard.writeText(promptText);
      setCopied(true);
      setTimeout(() => setCopied(false), 2000);
    } catch {}
  }} style={{
    marginLeft: "auto",
    display: "inline-flex",
    alignItems: "center",
    background: "#309637",
    color: "#fff",
    border: "none",
    borderRadius: 6,
    padding: "6px",
    cursor: "pointer"
  }}>
          {copied ? <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"><polyline points="20 6 9 17 4 12" /></svg> : <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"><rect x="9" y="9" width="13" height="13" rx="2" ry="2" /><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" /></svg>}
        </button>
      </div>
      {open && <pre className="prompt-accordion-expanded" style={{
    margin: 0,
    padding: "0 16px 16px",
    whiteSpace: "pre-wrap",
    wordBreak: "break-word",
    fontSize: 13,
    lineHeight: 1.6
  }}>{promptText}</pre>}
    </div>;
};

<PromptAccordion />

## When the agent finishes

1. Your API should respond with `402` and payment metadata on unpaid requests.
2. Your `/openapi.json` should describe each payable route with pricing info.
3. Your origin will be registered on [x402scan](https://x402scan.com) and/or [mppscan](https://mppscan.com) so agents can find you.
