Stripe — Application Overview
Overview
Stripe is a payment processing and financial infrastructure platform used by businesses to accept payments, manage subscriptions, handle invoices, and facilitate online commerce. It is commonly used by finance, operations, and engineering teams to manage payment workflows and customer billing.
The Stripe integration within the Wrk platform allows you to automate payment, customer, and billing workflows by calling the Stripe REST API through prebuilt Wrk Actions.
This document provides an overview of how Stripe integrates into Wrk, how authentication works, general API behaviour, and a full list of available Wrk Actions.
Authentication
Stripe uses API key–based authentication for all API requests.
When connecting Stripe in Wrk, you must provide a valid API key, which is included in the Authorization header for every request. Stripe provides both test and live API keys; ensure the correct mode is used for your workflow
How to Obtain API Keys
API keys can be generated from the Stripe Dashboard:
- Log in to your Stripe account
- Navigate to Developers → API keys
- Copy your Secret Key (starts with
sk_) - Store it securely and use it in your Wrk Connected Account
General API Behaviour
Pagination
Stripe uses cursor-based pagination for all list endpoints.
limit— number of objects per page (default: 10, max: 100)starting_after— cursor to fetch the next pageending_before— cursor to fetch the previous page
Responses include:
data— array of objectshas_more— boolean indicating if additional pages exist
To retrieve additional results, pass the ID of the last object from the previous response into starting_after.
Object Structure
Stripe returns consistent JSON structures across most resources such as customers, charges, invoices, and subscriptions.
Common fields include:
id— unique identifier for the objectobject— type of resource (e.g., customer, charge)created— timestamp of object creationmetadata— key-value pairs for custom data
These IDs must be used when referencing objects in subsequent API calls.
Filtering and Querying
Stripe supports filtering through query parameters on list endpoints.
Examples:
- Filter charges by customer
- Retrieve invoices by subscription
- Filter events by type or date range
Idempotency
Stripe supports idempotency keys for safely retrying requests without creating duplicate operations.
- Pass an
Idempotency-Keyheader when creating or updating resources - Stripe ensures that repeated requests with the same key produce the same result
This is especially important for payment and charge creation workflows.
Available Wrk Actions
- Attach a payment to an invoice in Stripe
- Delete a customer in Stripe
- Create a customer in Stripe
- Capture a payment intent in Stripe
- Capture a payment in Stripe
- Cancel a payment intent in Stripe
- Finalize an invoice in Stripe
- Retrieve a charge from Stripe
- Retrieve a customer from Stripe
- Retrieve a payment intent from stripe
- Retrieve all Payment intents from stripe
- Retrieve all charges from Stripe
- Retrieve all customers from Stripe
- Retrieve all invoices from stripe
- Retrieve all payment intent line items from stripe
- Retrieve an invoice from stripe
- Retrieve balance from stripe
- Search charges in Stripe
- Search customers in Stripe
- Search invoices in stripe
- Search payment intents in Stripe
- Update a customer in Stripe
- Update a charge in Stripe
Additional Resources
- Stripe API Reference: https://stripe.com/docs/api
- Authentication (API Keys): https://stripe.com/docs/keys
- Pagination: https://stripe.com/docs/api/pagination
- Filtering & Querying - https://docs.stripe.com/search
- Idempotency: https://stripe.com/docs/idempotency
- Error Handling: https://stripe.com/docs/error-handling
- Rate Limits: https://stripe.com/docs/rate-limits