← Back to Plugins
Tools

Stripe

mattstvartak By mattstvartak 👁 109 views ▲ 0 votes

Stripe payments plugin for OpenClaw -- products, prices, payment links, and revenue tracking for autonomous AI agents

GitHub

Install

npm install
```

Configuration Example

{
  "plugins": {
    "entries": {
      "finch-stripe": {
        "enabled": true,
        "env": {
          "STRIPE_SECRET_KEY": "${STRIPE_SECRET_KEY}"
        },
        "config": {
          "defaultCurrency": "usd"
        }
      }
    }
  }
}

README

# openclaw-stripe-plugin

Stripe payments plugin for [OpenClaw](https://openclaw.ai). Gives autonomous AI agents the ability to create products, manage prices, generate payment links, and track payments through the Stripe REST API.

Built for the Finch agent stack -- closes the "get paid" gap between outreach, deployment, and CRM tools.

## Features

- **Products & Prices** -- Create and list products with one-time or recurring (subscription) pricing
- **Payment Links** -- Generate shareable checkout URLs for any price, with promo code and custom thank-you message support
- **Payment Tracking** -- List successful charges with date filters, check account balance
- **Revenue Reporting** -- Aggregate revenue summaries with period-over-period comparison
- **Customer Management** -- Create and search customer records

## Tools

| Tool | Description |
|------|-------------|
| `stripe_create_product` | Create a new product |
| `stripe_create_price` | Create a one-time or recurring price |
| `stripe_create_payment_link` | Generate a shareable payment link |
| `stripe_list_products` | List products with filters |
| `stripe_list_prices` | List prices with filters |
| `stripe_list_payment_links` | List payment links |
| `stripe_get_payment_link` | Get payment link details with line items |
| `stripe_deactivate_payment_link` | Deactivate a payment link |
| `stripe_list_payments` | List successful payments with date filters |
| `stripe_get_balance` | Check account balance |
| `stripe_create_customer` | Create a customer record |
| `stripe_list_customers` | List/search customers |
| `stripe_revenue_summary` | Aggregate revenue with period comparison |

## Setup

### 1. Install dependencies

```bash
npm install
```

### 2. Build

```bash
npm run build
```

### 3. Configure

Set your Stripe secret key as an environment variable:

```bash
export STRIPE_SECRET_KEY=sk_test_...
```

Or configure it in your OpenClaw plugin settings:

```json
{
  "plugins": {
    "entries": {
      "finch-stripe": {
        "enabled": true,
        "env": {
          "STRIPE_SECRET_KEY": "${STRIPE_SECRET_KEY}"
        },
        "config": {
          "defaultCurrency": "usd"
        }
      }
    }
  }
}
```

### 4. Get a Stripe API key

1. Go to [https://dashboard.stripe.com/apikeys](https://dashboard.stripe.com/apikeys)
2. Copy your **Secret key** (starts with `sk_test_` for test mode or `sk_live_` for production)
3. Use test mode keys during development. Only switch to live keys for production use.

## Architecture

- **No Stripe SDK dependency.** Uses native `fetch` with the Stripe REST API directly. Form-encoded request bodies, Bearer token auth, JSON responses.
- **TypeBox schemas** for parameter validation via the OpenClaw plugin API.
- **Thin API client** (`src/api/client.ts`) handles auth headers, form encoding with bracket notation for nested objects, error parsing, and Stripe API versioning.
- **Structured tool responses** return only the fields the agent needs, not full Stripe objects.

## Development

```bash
npm run dev    # Watch mode
npm run build  # Production build
npm run clean  # Remove dist/
```

## License

MIT -- Matt Stvartak / OneNomad LLC
tools

Comments

Sign in to leave a comment

Loading comments...