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 resourcesStripe 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
