Forgeworks docs
Console ↗

Connect Stripe#

Difficulty: simple (API key). Sync Stripe customers and products, and capture billing events as they happen.

Auth at a glance#

MethodRestricted API key (Bearer)
What you createA restricted key in your Stripe dashboard
Where Forge helpsForge stores the key encrypted and never returns it

What you'll need#

  • A Stripe account (test mode is perfect to start).
  • A restricted API key scoped to the resources you want Forge to manage (Customers, Products) plus read access to Events for change capture.

Steps#

  1. In the Stripe dashboard, go to Developers → API keys → Create restricted key. Grant write on Customers/Products and read on Events.
  2. In Connections, choose Stripe → Connect and paste the key.
  3. Forge stores it encrypted. Done.

What you get#

  • Source: Stripe's /v1/events feed is the change feed — Forge polls it on a cursor and emits one change per resource, keyed on the resource id, so redelivery never double-counts.
  • Destination: upsert Customers/Products keyed on metadata.forge_external_id (search-then-write), with snapshot/verify/rollback.

Gotchas#

  • Search is eventually consistent. A just-created customer may not be returned by Stripe's Search API for a few seconds, so Forge confirms a write directly by id and retries the search-based verify until it indexes. Expect a short lag on read-after-write.
  • Products with prices can't be deleted. Stripe refuses to delete a Product that has prices attached — Forge surfaces that 400 rather than pretending the delete worked. Customers delete cleanly.
  • Use test mode first. Restricted test-mode keys exercise the whole round-trip with zero risk.
Note: Stripe is fully live-verified — both halves — in test mode, including the eventual-consistency handling on the Search API.