# Quick Start

## 1. Get an API key

Sign in to the [FinStack dashboard](https://app.finstack.sh) and generate an API key from Settings → API Keys.

Your key looks like: sk_live_<tenant>_<random32>

## 2. Create a customer

curl -X POST https://api.finstack.sh/v1/customers \
  -H "Authorization: Bearer sk_live_<your-key>" \
  -H "Content-Type: application/json" \
  -d &#39;{
    "name": "Jane Smith",
    "email": "jane@example.com",
    "idempotency_key": "cust_jane_001"
  }&#39;

Response:

{
  "id": "01927b3e-...",
  "tenant_id": "...",
  "name": "Jane Smith",
  "email": "jane@example.com",
  "created_at": "2026-06-01T00:00:00Z"
}

## 3. Create a payment

curl -X POST https://api.finstack.sh/v1/payments \
  -H "Authorization: Bearer sk_live_<your-key>" \
  -H "Content-Type: application/json" \
  -d &#39;{
    "amount_minor": 1000,
    "currency": "USD",
    "method": "card",
    "customer_id": "01927b3e-...",
    "description": "Order #1234",
    "idempotency_key": "pay_order_1234"
  }&#39;

amount_minor is in the currency&#39;s smallest unit — 1000 = $10.00 USD.

## 4. Capture the payment

curl -X POST https://api.finstack.sh/v1/payments/{id}/capture \
  -H "Authorization: Bearer sk_live_<your-key>"

## Next steps

- [Payments guide](/payments/) — full payment lifecycle

- [Error handling](/errors/) — retry logic and error codes