Stripe
Stripe is a payment processing platform for online businesses.
Overview
Stripe handles online payments, subscriptions, invoicing, and customer billing for businesses worldwide. It integrates with e-commerce platforms, accounting systems, and CRMs, and exposes a rich REST API for managing customers, charges, payment intents, invoices, products, and subscriptions.
In Spojit workflows, Stripe typically acts as the source of truth for payment data. You reconcile charges against orders in your e-commerce platform, sync revenue into NetSuite or a database, and react to subscription or refund events by triggering Slack alerts or downstream automation.
What You Can Do
The Stripe connector exposes these tools:
create-charge- create a direct charge against a customer or card.create-customer- create a new Stripe customer record.create-invoice- create an invoice for a customer.create-payment-intent- start a payment intent for a multi-step or SCA-compliant flow.get-customer- fetch a single customer by ID.list-charges- list charges with filters such as customer, date range, or status.list-customers- list customers, optionally filtered by email or metadata.list-invoices- list invoices by customer, status, or date.list-payment-intents- list payment intents for reconciliation or auditing.list-products- list products defined in your Stripe catalog.list-subscriptions- list active and past subscriptions.raw-api-request- call any Stripe REST endpoint not covered by the typed tools.
Authentication
Stripe authenticates with a secret API key. In the Stripe Dashboard go to Developers -> API keys. Use a restricted key (least privilege) where possible and limit the resources it can read or write. Keep the key in test mode while developing and swap to a live key for production. Never paste a publishable key here - Spojit needs the secret key (sk_live_... or sk_test_...).
Setting Up Your Connection
- In the Stripe Dashboard, open Developers -> API keys and either copy your secret key or click Create restricted key for a scoped key.
- In Spojit, go to Connections in the sidebar.
- Click + Add Connection.
- Search for Stripe and select it.
- Paste your secret API key into the credential field.
- Give the connection a name (e.g. "Stripe Live" or "Stripe Test").
- Click Save.
Using in a Workflow
Add a Connector node and select your Stripe connection. Use Direct Mode for predictable reconciliation work where you call a specific tool such as list-charges with a known date range. Use Agent Mode for exploratory tasks such as investigating a refund or summarising a customer's history, where the agent can chain get-customer, list-charges, and list-invoices. For endpoints not covered by typed tools (disputes, refunds, payouts), fall back to raw-api-request.
Tips
- Use restricted keys with read-only access for reporting workflows and a separate key with write access for refund or charge workflows.
- Filter
list-chargesandlist-payment-intentsbycreateddate range to avoid scanning your entire history. - For high-volume reconciliation, paginate explicitly using
starting_afterrather than fetching everything at once. - Stripe IDs are stable and prefixed (
cus_,ch_,pi_,in_) - store them as foreign keys in downstream systems for reliable joins. - Use
raw-api-requestfor refunds (POST /v1/refunds) and disputes since these are not exposed as typed tools.
Common Pitfalls
- Test mode and live mode are separate environments with separate keys and separate data - confirm which key you pasted before running production workflows.
- Amounts in Stripe are integers in the smallest currency unit (cents for USD, yen for JPY) - convert before displaying or comparing.
- Webhook events deliver eventually and may arrive out of order; do not assume a
charge.succeededfollows immediately afterpayment_intent.created. - Connect accounts require the
Stripe-Accountheader - useraw-api-requestif you need to act on behalf of a connected account. - API versioning matters - if you pin a Stripe API version on your account, response shapes may differ from the latest docs.
Common Use Cases
- How to Reconcile Shopify Orders with Stripe Charges
- How to Process WooCommerce Refunds Through Stripe Automatically
- How to Process Stripe Refunds from WooCommerce Returns
- How to Sync Stripe Payments to NetSuite Automatically
- How to Send Slack Alerts for Subscription Payment Events
- How to Sync Revenue Data to a Database for Reporting
Related Articles
- Adding a New Connection
- Setting Up an API Key Connection
- Troubleshooting Connection Issues
- Shopify
- WooCommerce
- NetSuite
For technical API details and field specifications, see the Stripe connector documentation.