Skip to main content

Stripe — Application Overview

Written by Wrk Product

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:

  1. Log in to your Stripe account

  2. Navigate to Developers → API keys

  3. Copy your Secret Key (starts with sk_)

  4. 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 page

  • ending_before — cursor to fetch the previous page

Responses include:

  • data — array of objects

  • has_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 object

  • object — type of resource (e.g., customer, charge)

  • created — timestamp of object creation

  • metadata — 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-Key header 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

Did this answer your question?