Every Stripe feature, plus a local SQLite mirror with FTS, cross-entity SQL, and analytics no other Stripe tool ships.
stripe-pp-cli matches the official stripe-cli verb-for-verb and adds what it deliberately omits: a local mirror of customers, subscriptions, invoices, charges, payouts, and events with FTS5 search; cross-entity SQL queries (sql); and dossier commands (health, dunning-queue, customer-360, subs-at-risk, payout-reconcile). Built for agents — every command is one-shot, one-shot, and emits structured output.
Learn more at Stripe.
Created by @crodorg (Chris Rodriguez).
The recommended path installs both the stripe-pp-cli binary and the pp-stripe agent skill (Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, and other agents supported by the upstream skills CLI) in one shot:
npx -y @mvanhorn/printing-press-library install stripeFor CLI only (no skill):
npx -y @mvanhorn/printing-press-library install stripe --cli-onlyFor skill only — installs the skill into the same agents as the default command above, but skips the CLI binary (use this to update or reinstall just the skill):
npx -y @mvanhorn/printing-press-library install stripe --skill-onlyTo constrain the skill install to one or more specific agents (repeatable — agent names match the skills CLI):
npx -y @mvanhorn/printing-press-library install stripe --agent claude-code
npx -y @mvanhorn/printing-press-library install stripe --agent claude-code --agent codexIf npx isn't available (no Node, offline), install the CLI directly via Go (requires Go 1.26.4 or newer):
go install github.com/mvanhorn/printing-press-library/library/payments/stripe/cmd/stripe-pp-cli@latestThis installs the CLI only — no skill.
Download a pre-built binary for your platform from the latest release. On macOS, clear the Gatekeeper quarantine: xattr -d com.apple.quarantine <binary>. On Unix, mark it executable: chmod +x <binary>.
Install the CLI binary first. The installer writes binaries to a per-user managed bin directory by default: $HOME/.local/bin on macOS/Linux and %LOCALAPPDATA%\Programs\PrintingPress\bin on Windows.
npx -y @mvanhorn/printing-press-library install stripe --cli-onlyThen install the focused Hermes skill.
From the Hermes CLI:
hermes skills install mvanhorn/printing-press-library/cli-skills/pp-stripe --forceInside a Hermes chat session:
/skills install mvanhorn/printing-press-library/cli-skills/pp-stripe --forceRestart the Hermes session or gateway if the newly installed skill is not visible immediately.
Install both the CLI binary and the focused OpenClaw skill. The installer defaults binaries to a per-user bin directory ($HOME/.local/bin on macOS/Linux, %LOCALAPPDATA%\Programs\PrintingPress\bin on Windows):
npx -y @mvanhorn/printing-press-library install stripe --agent openclawRestart the OpenClaw session or gateway if the newly installed skill is not visible immediately.
This CLI ships an MCPB bundle — Claude Desktop's standard format for one-click MCP extension installs (no JSON config required).
To install:
- Download the
.mcpbfor your platform from the latest release. - Double-click the
.mcpbfile. Claude Desktop opens and walks you through the install. - Fill in
STRIPE_SECRET_KEYwhen Claude Desktop prompts you.
Requires Claude Desktop 1.0.0 or later. Pre-built bundles ship for macOS Apple Silicon (darwin-arm64) and Windows (amd64, arm64); for other platforms, use the manual config below.
Manual JSON config (advanced)
If you can't use the MCPB bundle (older Claude Desktop, unsupported platform), install the MCP binary and configure it manually.
go install github.com/mvanhorn/printing-press-library/library/payments/stripe/cmd/stripe-pp-mcp@latestAdd to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"stripe": {
"command": "stripe-pp-mcp",
"env": {
"STRIPE_SECRET_KEY": "<your-key>"
}
}
}
}Authenticate by exporting STRIPE_SECRET_KEY=sk_test_... (recommended) or running stripe-pp-cli auth set-token <key> to persist it. Test-mode keys (sk_test_...) and live-mode keys (sk_live_...) are accepted. Mutating commands against a live key are blocked by default; pass --confirm-live (or set STRIPE_CONFIRM_LIVE=1) once you have audited the invocation.
These are deferred to v0.2:
- Stripe Issuing full workflow — endpoint passthrough only; spending controls / dispute evidence not built
- Stripe Terminal — endpoint passthrough only; in-person SDK pairing out of scope
- Stripe Tax registration —
tax-ratesCRUD only; jurisdiction registration not built - Connect account fan-out — single-account at a time; multi-account loops via external script
- localstripe mock server — out of scope; use stripe-mock via
STRIPE_BASE_URL
# Persist your test-mode key (or just `export STRIPE_SECRET_KEY=sk_test_...`)
stripe-pp-cli auth set-token sk_test_<your-key>
# Pull customers, subscriptions, invoices, charges, payouts, and events into local SQLite
stripe-pp-cli sync --since 30d
# Score every customer; surface the worst 20 — feed into outreach segments
stripe-pp-cli health --all --limit 20 --json
# Surface the failed-payment retry queue ranked by days-overdue
stripe-pp-cli dunning-queue --owner billing@yourcompany.com --json
# Full customer dossier in one shot — replaces 6+ dashboard clicks
stripe-pp-cli customer-360 alice@example.com --compact
These capabilities aren't available in any other tool for this API.
-
health— Compute a 0-100 health score for one or many customers from local SQLite, factoring in failed-payment count, dispute history, MRR contribution, subscription status, and account age.Use this to feed customer-health signals into outreach, dunning, and renewal automation without burning hundreds of API calls per customer.
stripe-pp-cli health cus_xyz --json --select score,failed_payments,mrr_contribution
-
dunning-queue— List invoices in past_due/uncollectible state ranked by days-overdue, with last failure reason and customer email pulled from the local store.When deciding which customers to follow up with about failed payments, this beats walking the Stripe dashboard or chaining 4+ API calls per row.
stripe-pp-cli dunning-queue --json --select invoice,customer_email,days_overdue,last_failure_reason
-
sql— Run read-only SQLite queries against the local Stripe mirror. All synced data lives in a generic 'resources' table — query with json_extract(data, '$.field') and filter by resource_type.When a one-off question doesn't fit the canned commands, drop into SQL instead of writing a script that hits the API a thousand times.
stripe-pp-cli sql "SELECT json_extract(data,'$.email') AS email, COUNT(*) AS active_subs FROM resources WHERE resource_type='subscriptions' AND json_extract(data,'$.status')='active' GROUP BY json_extract(data,'$.customer') HAVING active_subs > 1" --json -
payout-reconcile— Join payouts to balance_transactions to charges to customers from local store; flag missing balance_transactions and mismatches; CSV export.Use this for end-of-period payout reconciliation against bank statements or accounting systems — replaces the manual CSV-pivot ritual.
stripe-pp-cli payout-reconcile --since 7d --csv
-
subs-at-risk— List subscriptions whose default payment method's card expires in a window, sorted by current MRR contribution.Use this monthly to proactively email customers whose card is about to expire — prevents involuntary churn.
stripe-pp-cli subs-at-risk --within 30d --json --select customer_email,mrr,card_exp
-
metadata-grep— Search every synced resource's metadata bag for a key/value across resource types; returns (resource_type, id, matched_kv) rows.When integrating Stripe with a CRM via metadata tags, this finds every related resource in one query.
stripe-pp-cli metadata-grep 'crm_id=acme-001' --json
-
customer-360— One-shot dossier: customer profile + active subs + recent invoices + payment methods + recent charges + open disputes + lifetime spend.Use this as the first command when investigating a customer ticket, support escalation, or churn risk — full context in one call.
stripe-pp-cli customer-360 alice@example.com --json --compact
-
events-since— Fetch all Events since a cursor, persist new cursor in profile, no daemon. One-shot replacement for stripe-cli's listen daemon.Use this in cron-driven agent loops to replay only new events since the last run — no daemon to babysit, no missed events.
stripe-pp-cli events-since --type 'invoice.*' --json --select id,type,created,data.object.id
Run stripe-pp-cli --help for the full command reference and flag list.
Manage account
stripe-pp-cli account get-Retrieves the details of an account.
Manage account links
stripe-pp-cli account-links post-Creates an AccountLink object that includes a single-use Stripe URL that the platform can redirect their user to in order to take them through the Connect Onboarding flow.
Manage account sessions
stripe-pp-cli account-sessions post-Creates a AccountSession object that includes a single-use token that the platform can use on their front-end to grant client-side API access.
Manage accounts
stripe-pp-cli accounts delete-With Connect, you can delete accounts you manage.
Test-mode accounts can be deleted at any time.
Live-mode accounts that have access to the standard dashboard and Stripe is responsible for negative account balances cannot be deleted, which includes Standard accounts. All other Live-mode accounts, can be deleted when all balances are zero.
If you want to delete your own account, use the account information tab in your account settings instead.
- **`stripe-pp-cli accounts get`** -Returns a list of accounts connected to your platform via Connect. If you’re not a platform, the list is empty.
- **`stripe-pp-cli accounts get-account`** -Retrieves the details of an account.
- **`stripe-pp-cli accounts post`** -With Connect, you can create Stripe accounts for your users. To do this, you’ll first need to register your platform.
If you’ve already collected information for your connected accounts, you can prefill that information when creating the account. Connect Onboarding won’t ask for the prefilled information during account onboarding. You can prefill any information on the account.
- **`stripe-pp-cli accounts post-account`** -Updates a connected account by setting the values of the parameters passed. Any parameters not provided are left unchanged.
For accounts where controller.requirement_collection
is application, which includes Custom accounts, you can update any information on the account.
For accounts where controller.requirement_collection
is stripe, which includes Standard and Express accounts, you can update all information until you create
an Account Link or Account Session to start Connect onboarding,
after which some properties can no longer be updated.
To update your own account, use the Dashboard. Refer to our Connect documentation to learn more about updating accounts.
Manage apple pay
stripe-pp-cli apple-pay delete-domains-domain-Delete an apple pay domain.
stripe-pp-cli apple-pay get-domains-List apple pay domains.
stripe-pp-cli apple-pay get-domains-domain-Retrieve an apple pay domain.
stripe-pp-cli apple-pay post-domains-Create an apple pay domain.
Manage application fees
stripe-pp-cli application-fees get-Returns a list of application fees you’ve previously collected. The application fees are returned in sorted order, with the most recent fees appearing first.
stripe-pp-cli application-fees get-id-Retrieves the details of an application fee that your account has collected. The same information is returned when refunding the application fee.
Manage apps
stripe-pp-cli apps get-secrets-List all secrets stored on the given scope.
stripe-pp-cli apps get-secrets-find-Finds a secret in the secret store by name and scope.
stripe-pp-cli apps post-secrets-Create or replace a secret in the secret store.
stripe-pp-cli apps post-secrets-delete-Deletes a secret from the secret store by name and scope.
Manage balance
stripe-pp-cli balance get-Retrieves the current account balance, based on the authentication that was used to make the request. For a sample request, see Accounting for negative balances.
Manage balance settings
stripe-pp-cli balance-settings get-Retrieves balance settings for a given connected account. Related guide: Making API calls for connected accounts
stripe-pp-cli balance-settings post-Updates balance settings for a given connected account. Related guide: Making API calls for connected accounts
Manage balance transactions
stripe-pp-cli balance-transactions get-Returns a list of transactions that have contributed to the Stripe account balance (e.g., charges, transfers, and so forth). The transactions are returned in sorted order, with the most recent transactions appearing first.
Note that this endpoint was previously called “Balance history” and used the path /v1/balance/history.
Retrieves the balance transaction with the given ID.
Note that this endpoint previously used the path /v1/balance/history/:id.
Manage billing
stripe-pp-cli billing get-alerts-Lists billing active and inactive alerts
stripe-pp-cli billing get-alerts-id-Retrieves a billing alert given an ID
stripe-pp-cli billing get-credit-balance-summary-Retrieves the credit balance summary for a customer.
stripe-pp-cli billing get-credit-balance-transactions-Retrieve a list of credit balance transactions.
stripe-pp-cli billing get-credit-balance-transactions-id-Retrieves a credit balance transaction.
stripe-pp-cli billing get-credit-grants-Retrieve a list of credit grants.
stripe-pp-cli billing get-credit-grants-id-Retrieves a credit grant.
stripe-pp-cli billing get-meters-Retrieve a list of billing meters.
stripe-pp-cli billing get-meters-id-Retrieves a billing meter given an ID.
stripe-pp-cli billing get-meters-id-event-summaries-Retrieve a list of billing meter event summaries.
stripe-pp-cli billing post-alerts-Creates a billing alert
stripe-pp-cli billing post-alerts-id-activate-Reactivates this alert, allowing it to trigger again.
stripe-pp-cli billing post-alerts-id-archive-Archives this alert, removing it from the list view and APIs. This is non-reversible.
stripe-pp-cli billing post-alerts-id-deactivate-Deactivates this alert, preventing it from triggering.
stripe-pp-cli billing post-credit-grants-Creates a credit grant.
stripe-pp-cli billing post-credit-grants-id-Updates a credit grant.
stripe-pp-cli billing post-credit-grants-id-expire-Expires a credit grant.
stripe-pp-cli billing post-credit-grants-id-void-Voids a credit grant.
stripe-pp-cli billing post-meter-event-adjustments-Creates a billing meter event adjustment.
stripe-pp-cli billing post-meter-events-Creates a billing meter event.
stripe-pp-cli billing post-meters-Creates a billing meter.
stripe-pp-cli billing post-meters-id-Updates a billing meter.
stripe-pp-cli billing post-meters-id-deactivate-When a meter is deactivated, no more meter events will be accepted for this meter. You can’t attach a deactivated meter to a price.
stripe-pp-cli billing post-meters-id-reactivate-When a meter is reactivated, events for this meter can be accepted and you can attach the meter to a price.
Manage billing portal
stripe-pp-cli billing-portal get-configurations-Returns a list of configurations that describe the functionality of the customer portal.
stripe-pp-cli billing-portal get-configurations-configuration-Retrieves a configuration that describes the functionality of the customer portal.
stripe-pp-cli billing-portal post-configurations-Creates a configuration that describes the functionality and behavior of a PortalSession
stripe-pp-cli billing-portal post-configurations-configuration-Updates a configuration that describes the functionality of the customer portal.
stripe-pp-cli billing-portal post-sessions-Creates a session of the customer portal.
Manage charges
stripe-pp-cli charges get-Returns a list of charges you’ve previously created. The charges are returned in sorted order, with the most recent charges appearing first.
stripe-pp-cli charges get-charge-Retrieves the details of a charge that has previously been created. Supply the unique charge ID that was returned from your previous request, and Stripe will return the corresponding charge information. The same information is returned when creating or refunding the charge.
stripe-pp-cli charges get-search-Search for charges you’ve previously created using Stripe’s Search Query Language. Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up to an hour behind during outages. Search functionality is not available to merchants in India.
stripe-pp-cli charges post-This method is no longer recommended—use the Payment Intents API to initiate a new payment instead. Confirmation of the PaymentIntent creates the
Chargeobject used to request payment.stripe-pp-cli charges post-charge-Updates the specified charge by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
Manage checkout
stripe-pp-cli checkout get-sessions-Returns a list of Checkout Sessions.
stripe-pp-cli checkout get-sessions-session-Retrieves a Checkout Session object.
stripe-pp-cli checkout get-sessions-session-line-items-When retrieving a Checkout Session, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
stripe-pp-cli checkout post-sessions-Creates a Checkout Session object.
stripe-pp-cli checkout post-sessions-session-Updates a Checkout Session object.
Related guide: Dynamically update a Checkout Session
- **`stripe-pp-cli checkout post-sessions-session-expire`** -A Checkout Session can be expired when it is in one of these statuses: open
After it expires, a customer can’t complete a Checkout Session and customers loading the Checkout Session see a message saying the Checkout Session is expired.
Manage climate
stripe-pp-cli climate get-orders-Lists all Climate order objects. The orders are returned sorted by creation date, with the most recently created orders appearing first.
stripe-pp-cli climate get-orders-order-Retrieves the details of a Climate order object with the given ID.
stripe-pp-cli climate get-products-Lists all available Climate product objects.
stripe-pp-cli climate get-products-product-Retrieves the details of a Climate product with the given ID.
stripe-pp-cli climate get-suppliers-Lists all available Climate supplier objects.
stripe-pp-cli climate get-suppliers-supplier-Retrieves a Climate supplier object.
stripe-pp-cli climate post-orders-Creates a Climate order object for a given Climate product. The order will be processed immediately after creation and payment will be deducted your Stripe balance.
stripe-pp-cli climate post-orders-order-Updates the specified order by setting the values of the parameters passed.
stripe-pp-cli climate post-orders-order-cancel-Cancels a Climate order. You can cancel an order within 24 hours of creation. Stripe refunds the reservation
amount_subtotal, but not theamount_feesfor user-triggered cancellations. Frontier might cancel reservations if suppliers fail to deliver. If Frontier cancels the reservation, Stripe provides 90 days advance notice and refunds theamount_total.
Manage confirmation tokens
stripe-pp-cli confirmation-tokens get-Retrieves an existing ConfirmationToken object
Manage country specs
stripe-pp-cli country-specs get-Lists all Country Spec objects available in the API.
stripe-pp-cli country-specs get-country-Returns a Country Spec for a given Country code.
Manage coupons
stripe-pp-cli coupons delete-You can delete coupons via the coupon management page of the Stripe dashboard. However, deleting a coupon does not affect any customers who have already applied the coupon; it means that new customers can’t redeem the coupon. You can also delete coupons via the API.
stripe-pp-cli coupons get-Returns a list of your coupons.
stripe-pp-cli coupons get-coupon-Retrieves the coupon with the given ID.
stripe-pp-cli coupons post-You can create coupons easily via the coupon management page of the Stripe dashboard. Coupon creation is also accessible via the API if you need to create coupons on the fly.
A coupon has either a percent_off or an amount_off and currency. If you set an amount_off, that amount will be subtracted from any invoice’s subtotal. For example, an invoice with a subtotal of 100 will have a final total of 0 if a coupon with an amount_off of 200 is applied to it and an invoice with a subtotal of 300 will have a final total of 100 if a coupon with an amount_off of 200 is applied to it.
Updates the metadata of a coupon. Other coupon details (currency, duration, amount_off) are, by design, not editable.
Manage credit notes
stripe-pp-cli credit-notes get-Returns a list of credit notes.
stripe-pp-cli credit-notes get-id-Retrieves the credit note object with the given identifier.
stripe-pp-cli credit-notes get-preview-Get a preview of a credit note without creating it.
stripe-pp-cli credit-notes get-preview-lines-When retrieving a credit note preview, you’ll get a lines property containing the first handful of those items. This URL you can retrieve the full (paginated) list of line items.
stripe-pp-cli credit-notes post-Issue a credit note to adjust the amount of a finalized invoice. A credit note will first reduce the invoice’s
amount_remaining(andamount_due), but not below zero. This amount is indicated by the credit note’spre_payment_amount. The excess amount is indicated bypost_payment_amount, and it can result in any combination of the following:
- Refunds: create a new refund (using
refund_amount) or link existing refunds (usingrefunds). - Customer balance credit: credit the customer’s balance (using
credit_amount) which will be automatically applied to their next invoice when it’s finalized. - Outside of Stripe credit: record the amount that is or will be credited outside of Stripe (using
out_of_band_amount).
The sum of refunds, customer balance credits, and outside of Stripe credits must equal the post_payment_amount.
You may issue multiple credit notes for an invoice. Each credit note may increment the invoice’s pre_payment_credit_notes_amount,
post_payment_credit_notes_amount, or both, depending on the invoice’s amount_remaining at the time of credit note creation.
Updates an existing credit note.
Manage customer sessions
stripe-pp-cli customer-sessions post-Creates a Customer Session object that includes a single-use client secret that you can use on your front-end to grant client-side API access for certain customer resources.
Manage customers
stripe-pp-cli customers delete-Permanently deletes a customer. It cannot be undone. Also immediately cancels any active subscriptions on the customer.
stripe-pp-cli customers get-Returns a list of your customers. The customers are returned sorted by creation date, with the most recent customers appearing first.
stripe-pp-cli customers get-customer-Retrieves a Customer object.
stripe-pp-cli customers get-search-Search for customers you’ve previously created using Stripe’s Search Query Language. Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up to an hour behind during outages. Search functionality is not available to merchants in India.
stripe-pp-cli customers post-Creates a new customer object.
stripe-pp-cli customers post-customer-Updates the specified customer by setting the values of the parameters passed. Any parameters not provided are left unchanged. For example, if you pass the source parameter, that becomes the customer’s active source (such as a card) to be used for all charges in the future. When you update a customer to a new valid card source by passing the source parameter: for each of the customer’s current subscriptions, if the subscription bills automatically and is in the
past_duestate, then the latest open invoice for the subscription with automatic collection enabled is retried. This retry doesn’t count as an automatic retry, and doesn’t affect the next regularly scheduled payment for the invoice. Changing the default_source for a customer doesn’t trigger this behavior.
This request accepts mostly the same arguments as the customer creation call.
Manage disputes
stripe-pp-cli disputes get-Returns a list of your disputes.
stripe-pp-cli disputes get-dispute-Retrieves the dispute with the given ID.
stripe-pp-cli disputes post-When you get a dispute, contacting your customer is always the best first step. If that doesn’t work, you can submit evidence to help us resolve the dispute in your favor. You can do this in your dashboard, but if you prefer, you can use the API to submit evidence programmatically.
Depending on your dispute type, different evidence fields will give you a better chance of winning your dispute. To figure out which evidence fields to provide, see our guide to dispute types.
Manage entitlements
stripe-pp-cli entitlements get-active-Retrieve a list of active entitlements for a customer
stripe-pp-cli entitlements get-active-id-Retrieve an active entitlement
stripe-pp-cli entitlements get-features-Retrieve a list of features
stripe-pp-cli entitlements get-features-id-Retrieves a feature
stripe-pp-cli entitlements post-features-Creates a feature
stripe-pp-cli entitlements post-features-id-Update a feature’s metadata or permanently deactivate it.
Manage ephemeral keys
stripe-pp-cli ephemeral-keys delete-key-Invalidates a short-lived API key for a given resource.
stripe-pp-cli ephemeral-keys post-Creates a short-lived API key for a given resource.
Manage events
stripe-pp-cli events get-List events, going back up to 30 days. Each event data is rendered according to Stripe API version at its creation time, specified in event object
api_versionattribute (not according to your current Stripe API version orStripe-Versionheader).stripe-pp-cli events get-id-Retrieves the details of an event if it was created in the last 30 days. Supply the unique identifier of the event, which you might have received in a webhook.
Manage exchange rates
stripe-pp-cli exchange-rates get-[Deprecated] The
ExchangeRateAPIs are deprecated. Please use the FX Quotes API instead.
Returns a list of objects that contain the rates at which foreign currencies are converted to one another. Only shows the currencies for which Stripe supports.
- **`stripe-pp-cli exchange-rates get-rate-id`** -[Deprecated] The ExchangeRate APIs are deprecated. Please use the FX Quotes API instead.
Retrieves the exchange rates from the given currency to every supported currency.
Manage file links
stripe-pp-cli file-links get-Returns a list of file links.
stripe-pp-cli file-links get-link-Retrieves the file link with the given ID.
stripe-pp-cli file-links post-Creates a new file link object.
stripe-pp-cli file-links post-link-Updates an existing file link object. Expired links can no longer be updated.
Manage files
stripe-pp-cli files get-Returns a list of the files that your account has access to. Stripe sorts and returns the files by their creation dates, placing the most recently created files at the top.
stripe-pp-cli files get-file-Retrieves the details of an existing file object. After you supply a unique file ID, Stripe returns the corresponding file object. Learn how to access file contents.
stripe-pp-cli files post-To upload a file to Stripe, you need to send a request of type
multipart/form-data. Include the file you want to upload in the request, and the parameters for creating a file.
All of Stripe’s officially supported Client libraries support sending multipart/form-data.
Manage financial connections
stripe-pp-cli financial-connections get-accounts-Returns a list of Financial Connections
Accountobjects.stripe-pp-cli financial-connections get-accounts-account-Retrieves the details of an Financial Connections
Account.stripe-pp-cli financial-connections get-accounts-account-owners-Lists all owners for a given
Accountstripe-pp-cli financial-connections get-sessions-session-Retrieves the details of a Financial Connections
Sessionstripe-pp-cli financial-connections get-transactions-Returns a list of Financial Connections
Transactionobjects.stripe-pp-cli financial-connections get-transactions-transaction-Retrieves the details of a Financial Connections
Transactionstripe-pp-cli financial-connections post-accounts-account-disconnect-Disables your access to a Financial Connections
Account. You will no longer be able to access data associated with the account (e.g. balances, transactions).stripe-pp-cli financial-connections post-accounts-account-refresh-Refreshes the data associated with a Financial Connections
Account.stripe-pp-cli financial-connections post-accounts-account-subscribe-Subscribes to periodic refreshes of data associated with a Financial Connections
Account. When the account status is active, data is typically refreshed once a day.stripe-pp-cli financial-connections post-accounts-account-unsubscribe-Unsubscribes from periodic refreshes of data associated with a Financial Connections
Account.stripe-pp-cli financial-connections post-sessions-To launch the Financial Connections authorization flow, create a
Session. The session’sclient_secretcan be used to launch the flow using Stripe.js.
Manage forwarding
stripe-pp-cli forwarding get-requests-Lists all ForwardingRequest objects.
stripe-pp-cli forwarding get-requests-id-Retrieves a ForwardingRequest object.
stripe-pp-cli forwarding post-requests-Creates a ForwardingRequest object.
Manage identity
stripe-pp-cli identity get-verification-reports-List all verification reports.
stripe-pp-cli identity get-verification-reports-report-Retrieves an existing VerificationReport
stripe-pp-cli identity get-verification-sessions-Returns a list of VerificationSessions
stripe-pp-cli identity get-verification-sessions-session-Retrieves the details of a VerificationSession that was previously created.
When the session status is requires_input, you can use this method to retrieve a valid
client_secret or url to allow re-submission.
Creates a VerificationSession object.
After the VerificationSession is created, display a verification modal using the session client_secret or send your users to the session’s url.
If your API key is in test mode, verification checks won’t actually process, though everything else will occur as if in live mode.
Related guide: Verify your users’ identity documents
- **`stripe-pp-cli identity post-verification-sessions-session`** -Updates a VerificationSession object.
When the session status is requires_input, you can use this method to update the
verification check and options.
A VerificationSession object can be canceled when it is in requires_input status.
Once canceled, future submission attempts are disabled. This cannot be undone. Learn more.
- **`stripe-pp-cli identity post-verification-sessions-session-redact`** -Redact a VerificationSession to remove all collected information from Stripe. This will redact the VerificationSession and all objects related to it, including VerificationReports, Events, request logs, etc.
A VerificationSession object can be redacted when it is in requires_input or verified
status. Redacting a VerificationSession in requires_action
state will automatically cancel it.
The redaction process may take up to four days. When the redaction process is in progress, the
VerificationSession’s redaction.status field will be set to processing; when the process is
finished, it will change to redacted and an identity.verification_session.redacted event
will be emitted.
Redaction is irreversible. Redacted objects are still accessible in the Stripe API, but all the
fields that contain personal data will be replaced by the string [redacted] or a similar
placeholder. The metadata field will also be erased. Redacted objects cannot be updated or
used for any purpose.
Manage invoice payments
stripe-pp-cli invoice-payments get-When retrieving an invoice, there is an includable payments property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of payments.
stripe-pp-cli invoice-payments get-invoicepayments-Retrieves the invoice payment with the given ID.
Manage invoice rendering templates
stripe-pp-cli invoice-rendering-templates get-List all templates, ordered by creation date, with the most recently created template appearing first.
stripe-pp-cli invoice-rendering-templates get-template-Retrieves an invoice rendering template with the given ID. It by default returns the latest version of the template. Optionally, specify a version to see previous versions.
Manage invoiceitems
stripe-pp-cli invoiceitems delete-Deletes an invoice item, removing it from an invoice. Deleting invoice items is only possible when they’re not attached to invoices, or if it’s attached to a draft invoice.
stripe-pp-cli invoiceitems get-Returns a list of your invoice items. Invoice items are returned sorted by creation date, with the most recently created invoice items appearing first.
stripe-pp-cli invoiceitems get-invoiceitem-Retrieves the invoice item with the given ID.
stripe-pp-cli invoiceitems post-Creates an item to be added to a draft invoice (up to 250 items per invoice). If no invoice is specified, the item will be on the next invoice created for the customer specified.
stripe-pp-cli invoiceitems post-invoiceitem-Updates the amount or description of an invoice item on an upcoming invoice. Updating an invoice item is only possible before the invoice it’s attached to is closed.
Manage invoices
stripe-pp-cli invoices delete-Permanently deletes a one-off invoice draft. This cannot be undone. Attempts to delete invoices that are no longer in a draft state will fail; once an invoice has been finalized or if an invoice is for a subscription, it must be voided.
stripe-pp-cli invoices get-You can list all invoices, or list the invoices for a specific customer. The invoices are returned sorted by creation date, with the most recently created invoices appearing first.
stripe-pp-cli invoices get-invoice-Retrieves the invoice with the given ID.
stripe-pp-cli invoices get-search-Search for invoices you’ve previously created using Stripe’s Search Query Language. Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up to an hour behind during outages. Search functionality is not available to merchants in India.
stripe-pp-cli invoices post-This endpoint creates a draft invoice for a given customer. The invoice remains a draft until you finalize the invoice, which allows you to pay or send the invoice to your customers.
stripe-pp-cli invoices post-create-preview-At any time, you can preview the upcoming invoice for a subscription or subscription schedule. This will show you all the charges that are pending, including subscription renewal charges, invoice item charges, etc. It will also show you any discounts that are applicable to the invoice.
You can also preview the effects of creating or updating a subscription or subscription schedule, including a preview of any prorations that will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass the subscription_details.proration_date parameter when doing the actual subscription update.
The recommended way to get only the prorations being previewed on the invoice is to consider line items where parent.subscription_item_details.proration is true.
Note that when you are viewing an upcoming invoice, you are simply viewing a preview – the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer’s discount.
Note: Currency conversion calculations use the latest exchange rates. Exchange rates may vary between the time of the preview and the time of the actual invoice creation. Learn more
- **`stripe-pp-cli invoices post-invoice`** -Draft invoices are fully editable. Once an invoice is finalized,
monetary values, as well as collection_method, become uneditable.
If you would like to stop the Stripe Billing engine from automatically finalizing, reattempting payments on,
sending reminders for, or automatically reconciling invoices, pass
auto_advance=false.
Manage issuing
stripe-pp-cli issuing get-authorizations-Returns a list of Issuing
Authorizationobjects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.stripe-pp-cli issuing get-authorizations-authorization-Retrieves an Issuing
Authorizationobject.stripe-pp-cli issuing get-cardholders-Returns a list of Issuing
Cardholderobjects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.stripe-pp-cli issuing get-cardholders-cardholder-Retrieves an Issuing
Cardholderobject.stripe-pp-cli issuing get-cards-Returns a list of Issuing
Cardobjects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.stripe-pp-cli issuing get-cards-card-Retrieves an Issuing
Cardobject.stripe-pp-cli issuing get-disputes-Returns a list of Issuing
Disputeobjects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.stripe-pp-cli issuing get-disputes-dispute-Retrieves an Issuing
Disputeobject.stripe-pp-cli issuing get-personalization-designs-Returns a list of personalization design objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
stripe-pp-cli issuing get-personalization-designs-personalization-design-Retrieves a personalization design object.
stripe-pp-cli issuing get-physical-bundles-Returns a list of physical bundle objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
stripe-pp-cli issuing get-physical-bundles-physical-bundle-Retrieves a physical bundle object.
stripe-pp-cli issuing get-tokens-Lists all Issuing
Tokenobjects for a given card.stripe-pp-cli issuing get-tokens-token-Retrieves an Issuing
Tokenobject.stripe-pp-cli issuing get-transactions-Returns a list of Issuing
Transactionobjects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.stripe-pp-cli issuing get-transactions-transaction-Retrieves an Issuing
Transactionobject.stripe-pp-cli issuing post-authorizations-authorization-Updates the specified Issuing
Authorizationobject by setting the values of the parameters passed. Any parameters not provided will be left unchanged.stripe-pp-cli issuing post-authorizations-authorization-approve-[Deprecated] Approves a pending Issuing
Authorizationobject. This request should be made within the timeout window of the real-time authorization flow. This method is deprecated. Instead, respond directly to the webhook request to approve an authorization.stripe-pp-cli issuing post-authorizations-authorization-decline-[Deprecated] Declines a pending Issuing
Authorizationobject. This request should be made within the timeout window of the real time authorization flow. This method is deprecated. Instead, respond directly to the webhook request to decline an authorization.stripe-pp-cli issuing post-cardholders-Creates a new Issuing
Cardholderobject that can be issued cards.stripe-pp-cli issuing post-cardholders-cardholder-Updates the specified Issuing
Cardholderobject by setting the values of the parameters passed. Any parameters not provided will be left unchanged.stripe-pp-cli issuing post-cards-Creates an Issuing
Cardobject.stripe-pp-cli issuing post-cards-card-Updates the specified Issuing
Cardobject by setting the values of the parameters passed. Any parameters not provided will be left unchanged.stripe-pp-cli issuing post-disputes-Creates an Issuing
Disputeobject. Individual pieces of evidence within theevidenceobject are optional at this point. Stripe only validates that required evidence is present during submission. Refer to Dispute reasons and evidence for more details about evidence requirements.stripe-pp-cli issuing post-disputes-dispute-Updates the specified Issuing
Disputeobject by setting the values of the parameters passed. Any parameters not provided will be left unchanged. Properties on theevidenceobject can be unset by passing in an empty string.stripe-pp-cli issuing post-disputes-dispute-submit-Submits an Issuing
Disputeto the card network. Stripe validates that all evidence fields required for the dispute’s reason are present. For more details, see Dispute reasons and evidence.stripe-pp-cli issuing post-personalization-designs-Creates a personalization design object.
stripe-pp-cli issuing post-personalization-designs-personalization-design-Updates a card personalization object.
stripe-pp-cli issuing post-tokens-token-Attempts to update the specified Issuing
Tokenobject to the status specified.stripe-pp-cli issuing post-transactions-transaction-Updates the specified Issuing
Transactionobject by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
Manage mandates
stripe-pp-cli mandates get-Retrieves a Mandate object.
Manage payment attempt records
stripe-pp-cli payment-attempt-records get-List all the Payment Attempt Records attached to the specified Payment Record.
stripe-pp-cli payment-attempt-records get-id-Retrieves a Payment Attempt Record with the given ID
Manage payment intents
stripe-pp-cli payment-intents get-Returns a list of PaymentIntents.
stripe-pp-cli payment-intents get-intent-Retrieves the details of a PaymentIntent that has previously been created.
You can retrieve a PaymentIntent client-side using a publishable key when the client_secret is in the query string.
If you retrieve a PaymentIntent with a publishable key, it only returns a subset of properties. Refer to the payment intent object reference for more details.
- **`stripe-pp-cli payment-intents get-search`** -Search for PaymentIntents you’ve previously created using Stripe’s Search Query Language. Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up to an hour behind during outages. Search functionality is not available to merchants in India.
- **`stripe-pp-cli payment-intents post`** -Creates a PaymentIntent object.
After the PaymentIntent is created, attach a payment method and confirm to continue the payment. Learn more about the available payment flows with the Payment Intents API.
When you use confirm=true during creation, it’s equivalent to creating
and confirming the PaymentIntent in the same call. You can use any parameters
available in the confirm API when you supply
confirm=true.
Updates properties on a PaymentIntent object without confirming.
Depending on which properties you update, you might need to confirm the
PaymentIntent again. For example, updating the payment_method
always requires you to confirm the PaymentIntent again. If you prefer to
update and confirm at the same time, we recommend updating properties through
the confirm API instead.
Manage payment links
stripe-pp-cli payment-links get-Returns a list of your payment links.
stripe-pp-cli payment-links get-paymentlinks-Retrieve a payment link.
stripe-pp-cli payment-links post-Creates a payment link.
stripe-pp-cli payment-links post-paymentlinks-Updates a payment link.
Manage payment method configurations
stripe-pp-cli payment-method-configurations get-List payment method configurations
stripe-pp-cli payment-method-configurations get-configuration-Retrieve payment method configuration
stripe-pp-cli payment-method-configurations post-Creates a payment method configuration
stripe-pp-cli payment-method-configurations post-configuration-Update payment method configuration
Manage payment method domains
stripe-pp-cli payment-method-domains get-Lists the details of existing payment method domains.
stripe-pp-cli payment-method-domains get-paymentmethoddomains-Retrieves the details of an existing payment method domain.
stripe-pp-cli payment-method-domains post-Creates a payment method domain.
stripe-pp-cli payment-method-domains post-paymentmethoddomains-Updates an existing payment method domain.
Manage payment methods
stripe-pp-cli payment-methods get-Returns a list of all PaymentMethods.
stripe-pp-cli payment-methods get-paymentmethods-Retrieves a PaymentMethod object attached to the StripeAccount. To retrieve a payment method attached to a Customer, you should use Retrieve a Customer’s PaymentMethods
stripe-pp-cli payment-methods post-Creates a PaymentMethod object. Read the Stripe.js reference to learn how to create PaymentMethods via Stripe.js.
Instead of creating a PaymentMethod directly, we recommend using the PaymentIntents API to accept a payment immediately or the SetupIntent API to collect payment method details ahead of a future payment.
- **`stripe-pp-cli payment-methods post-paymentmethods`** -Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated.
Manage payment records
stripe-pp-cli payment-records get-id-Retrieves a Payment Record with the given ID
stripe-pp-cli payment-records post-report-payment-Report a new Payment Record. You may report a Payment Record as it is initialized and later report updates through the other report_* methods, or report Payment Records in a terminal state directly, through this method.
Manage payouts
stripe-pp-cli payouts get-Returns a list of existing payouts sent to third-party bank accounts or payouts that Stripe sent to you. The payouts return in sorted order, with the most recently created payouts appearing first.
stripe-pp-cli payouts get-payout-Retrieves the details of an existing payout. Supply the unique payout ID from either a payout creation request or the payout list. Stripe returns the corresponding payout information.
stripe-pp-cli payouts post-To send funds to your own bank account, create a new payout object. Your Stripe balance must cover the payout amount. If it doesn’t, you receive an “Insufficient Funds” error.
If your API key is in test mode, money won’t actually be sent, though every other action occurs as if you’re in live mode.
If you create a manual payout on a Stripe account that uses multiple payment source types, you need to specify the source type balance that the payout draws from. The balance object details available and pending amounts by source type.
- **`stripe-pp-cli payouts post-payout`** -Updates the specified payout by setting the values of the parameters you pass. We don’t change parameters that you don’t provide. This request only accepts the metadata as arguments.
Manage plans
stripe-pp-cli plans delete-Deleting plans means new subscribers can’t be added. Existing subscribers aren’t affected.
stripe-pp-cli plans get-Returns a list of your plans.
stripe-pp-cli plans get-plan-Retrieves the plan with the given ID.
stripe-pp-cli plans post-You can now model subscriptions more flexibly using the Prices API. It replaces the Plans API and is backwards compatible to simplify your migration.
stripe-pp-cli plans post-plan-Updates the specified plan by setting the values of the parameters passed. Any parameters not provided are left unchanged. By design, you cannot change a plan’s ID, amount, currency, or billing cycle.
Manage prices
stripe-pp-cli prices get-Returns a list of your active prices, excluding inline prices. For the list of inactive prices, set
activeto false.stripe-pp-cli prices get-price-Retrieves the price with the given ID.
stripe-pp-cli prices get-search-Search for prices you’ve previously created using Stripe’s Search Query Language. Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up to an hour behind during outages. Search functionality is not available to merchants in India.
stripe-pp-cli prices post-Creates a new Price for an existing Product. The Price can be recurring or one-time.
stripe-pp-cli prices post-price-Updates the specified price by setting the values of the parameters passed. Any parameters not provided are left unchanged.
Manage products
stripe-pp-cli products delete-id-Delete a product. Deleting a product is only possible if it has no prices associated with it. Additionally, deleting a product with
type=goodis only possible if it has no SKUs associated with it.stripe-pp-cli products get-Returns a list of your products. The products are returned sorted by creation date, with the most recently created products appearing first.
stripe-pp-cli products get-id-Retrieves the details of an existing product. Supply the unique product ID from either a product creation request or the product list, and Stripe will return the corresponding product information.
stripe-pp-cli products get-search-Search for products you’ve previously created using Stripe’s Search Query Language. Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up to an hour behind during outages. Search functionality is not available to merchants in India.
stripe-pp-cli products post-Creates a new product object.
stripe-pp-cli products post-id-Updates the specific product by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
Manage promotion codes
stripe-pp-cli promotion-codes get-Returns a list of your promotion codes.
stripe-pp-cli promotion-codes get-promotioncodes-Retrieves the promotion code with the given ID. In order to retrieve a promotion code by the customer-facing
codeuse list with the desiredcode.stripe-pp-cli promotion-codes post-A promotion code points to an underlying promotion. You can optionally restrict the code to a specific customer, redemption limit, and expiration date.
stripe-pp-cli promotion-codes post-promotioncodes-Updates the specified promotion code by setting the values of the parameters passed. Most fields are, by design, not editable.
Manage quotes
stripe-pp-cli quotes get-Returns a list of your quotes.
stripe-pp-cli quotes get-quote-Retrieves the quote with the given ID.
stripe-pp-cli quotes post-A quote models prices and services for a customer. Default options for
header,description,footer, andexpires_atcan be set in the dashboard via the quote template.stripe-pp-cli quotes post-quote-A quote models prices and services for a customer.
Manage radar
stripe-pp-cli radar delete-value-list-items-item-Deletes a
ValueListItemobject, removing it from its parent value list.stripe-pp-cli radar delete-value-lists-value-list-Deletes a
ValueListobject, also deleting any items contained within the value list. To be deleted, a value list must not be referenced in any rules.stripe-pp-cli radar get-early-fraud-warnings-Returns a list of early fraud warnings.
stripe-pp-cli radar get-early-fraud-warnings-early-fraud-warning-Retrieves the details of an early fraud warning that has previously been created.
Please refer to the early fraud warning object reference for more details.
- **`stripe-pp-cli radar get-value-list-items`** -Returns a list of ValueListItem objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
Retrieves a ValueListItem object.
Returns a list of ValueList objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
Retrieves a ValueList object.
Request a Radar API fraud risk score from Stripe for a payment before sending it for external processor authorization.
- **`stripe-pp-cli radar post-value-list-items`** -Creates a new ValueListItem object, which is added to the specified parent value list.
Creates a new ValueList object, which can then be referenced in rules.
Updates a ValueList object by setting the values of the parameters passed. Any parameters not provided will be left unchanged. Note that item_type is immutable.
Manage refunds
stripe-pp-cli refunds get-Returns a list of all refunds you created. We return the refunds in sorted order, with the most recent refunds appearing first. The 10 most recent refunds are always available by default on the Charge object.
stripe-pp-cli refunds get-refund-Retrieves the details of an existing refund.
stripe-pp-cli refunds post-When you create a new refund, you must specify a Charge or a PaymentIntent object on which to create it.
Creating a new refund will refund a charge that has previously been created but not yet refunded. Funds will be refunded to the credit or debit card that was originally charged.
You can optionally refund only part of a charge. You can do so multiple times, until the entire charge has been refunded.
Once entirely refunded, a charge can’t be refunded again. This method will raise an error when called on an already-refunded charge, or when trying to refund more money than is left on a charge.
- **`stripe-pp-cli refunds post-refund`** -Updates the refund that you specify by setting the values of the passed parameters. Any parameters that you don’t provide remain unchanged.
This request only accepts metadata as an argument.
Manage reporting
stripe-pp-cli reporting get-report-runs-Returns a list of Report Runs, with the most recent appearing first.
stripe-pp-cli reporting get-report-runs-report-run-Retrieves the details of an existing Report Run.
stripe-pp-cli reporting get-report-types-Returns a full list of Report Types.
stripe-pp-cli reporting get-report-types-report-type-Retrieves the details of a Report Type. (Certain report types require a live-mode API key.)
stripe-pp-cli reporting post-report-runs-Creates a new object and begin running the report. (Certain report types require a live-mode API key.)
Manage reviews
stripe-pp-cli reviews get-Returns a list of
Reviewobjects that haveopenset totrue. The objects are sorted in descending order by creation date, with the most recently created object appearing first.stripe-pp-cli reviews get-review-Retrieves a
Reviewobject.
Manage setup attempts
stripe-pp-cli setup-attempts get-Returns a list of SetupAttempts that associate with a provided SetupIntent.
Manage setup intents
stripe-pp-cli setup-intents get-Returns a list of SetupIntents.
stripe-pp-cli setup-intents get-intent-Retrieves the details of a SetupIntent that has previously been created.
Client-side retrieval using a publishable key is allowed when the client_secret is provided in the query string.
When retrieved with a publishable key, only a subset of properties will be returned. Please refer to the SetupIntent object reference for more details.
- **`stripe-pp-cli setup-intents post`** -Creates a SetupIntent object.
After you create the SetupIntent, attach a payment method and confirm it to collect any required permissions to charge the payment method later.
- **`stripe-pp-cli setup-intents post-intent`** -Updates a SetupIntent object.
Manage shipping rates
stripe-pp-cli shipping-rates get-Returns a list of your shipping rates.
stripe-pp-cli shipping-rates get-token-Returns the shipping rate object with the given ID.
stripe-pp-cli shipping-rates post-Creates a new shipping rate object.
stripe-pp-cli shipping-rates post-token-Updates an existing shipping rate object.
Manage sigma
stripe-pp-cli sigma get-scheduled-query-runs-Returns a list of scheduled query runs.
stripe-pp-cli sigma get-scheduled-query-runs-scheduled-query-run-Retrieves the details of an scheduled query run.
Manage sources
stripe-pp-cli sources get-Retrieves an existing source object. Supply the unique source ID from a source creation request and Stripe will return the corresponding up-to-date source object information.
stripe-pp-cli sources post-Creates a new source object.
stripe-pp-cli sources post-source-Updates the specified source by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
This request accepts the metadata and owner as arguments. It is also possible to update type specific information for selected payment methods. Please refer to our payment method guides for more detail.
Manage subscription items
stripe-pp-cli subscription-items delete-item-Deletes an item from the subscription. Removing a subscription item from a subscription will not cancel the subscription.
stripe-pp-cli subscription-items get-Returns a list of your subscription items for a given subscription.
stripe-pp-cli subscription-items get-item-Retrieves the subscription item with the given ID.
stripe-pp-cli subscription-items post-Adds a new item to an existing subscription. No existing items will be changed or replaced.
stripe-pp-cli subscription-items post-item-Updates the plan or quantity of an item on a current subscription.
Manage subscription schedules
stripe-pp-cli subscription-schedules get-Retrieves the list of your subscription schedules.
stripe-pp-cli subscription-schedules get-schedule-Retrieves the details of an existing subscription schedule. You only need to supply the unique subscription schedule identifier that was returned upon subscription schedule creation.
stripe-pp-cli subscription-schedules post-Creates a new subscription schedule object. Each customer can have up to 500 active or scheduled subscriptions.
stripe-pp-cli subscription-schedules post-schedule-Updates an existing subscription schedule.
Manage subscriptions
stripe-pp-cli subscriptions delete-exposed-id-Cancels a customer’s subscription immediately. The customer won’t be charged again for the subscription. After it’s canceled, you can no longer update the subscription or its metadata.
Any pending invoice items that you’ve created are still charged at the end of the period, unless manually deleted. If you’ve set the subscription to cancel at the end of the period, any pending prorations are also left in place and collected at the end of the period. But if the subscription is set to cancel immediately, pending prorations are removed if invoice_now and prorate are both set to true.
By default, upon subscription cancellation, Stripe stops automatic collection of all finalized invoices for the customer. This is intended to prevent unexpected payment attempts after the customer has canceled a subscription. However, you can resume automatic collection of the invoices manually after subscription cancellation to have us proceed. Or, you could check for unpaid invoices before allowing the customer to cancel the subscription at all.
- **`stripe-pp-cli subscriptions get`** -By default, returns a list of subscriptions that have not been canceled. In order to list canceled subscriptions, specify status=canceled.
Retrieves the subscription with the given ID.
- **`stripe-pp-cli subscriptions get-search`** -Search for subscriptions you’ve previously created using Stripe’s Search Query Language. Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up to an hour behind during outages. Search functionality is not available to merchants in India.
- **`stripe-pp-cli subscriptions post`** -Creates a new subscription on an existing customer. Each customer can have up to 500 active or scheduled subscriptions.
When you create a subscription with collection_method=charge_automatically, the first invoice is finalized as part of the request.
The payment_behavior parameter determines the exact behavior of the initial payment.
To start subscriptions where the first invoice always begins in a draft status, use subscription schedules instead.
Schedules provide the flexibility to model more complex billing configurations that change over time.
Updates an existing subscription to match the specified parameters. When changing prices or quantities, we optionally prorate the price we charge next month to make up for any price changes. To preview how the proration is calculated, use the create preview endpoint.
By default, we prorate subscription changes. For example, if a customer signs up on May 1 for a 100 price, they’ll be billed 100 immediately. If on May 15 they switch to a 200 price, then on June 1 they’ll be billed 250 (200 for a renewal of her subscription, plus a 50 prorating adjustment for half of the previous month’s 100 difference). Similarly, a downgrade generates a credit that is applied to the next invoice. We also prorate when you make quantity changes.
Switching prices does not normally change the billing date or generate an immediate charge unless:
- The billing interval is changed (for example, from monthly to yearly).
- The subscription moves from free to paid.
- A trial starts or ends.
In these cases, we apply a credit for the unused time on the previous price, immediately charge the customer using the new price, and reset the billing date. Learn about how Stripe immediately attempts payment for subscription changes.
If you want to charge for an upgrade immediately, pass proration_behavior as always_invoice to create prorations, automatically invoice the customer for those proration adjustments, and attempt to collect payment. If you pass create_prorations, the prorations are created but not automatically invoiced. If you want to bill the customer for the prorations before the subscription’s renewal date, you need to manually invoice the customer.
If you don’t want to prorate, set the proration_behavior option to none. With this option, the customer is billed 100 on May 1 and 200 on June 1. Similarly, if you set proration_behavior to none when switching between different billing intervals (for example, from monthly to yearly), we don’t generate any credits for the old subscription’s unused time. We still reset the billing date and bill immediately for the new subscription.
Updating the quantity on a subscription many times in an hour may result in rate limiting. If you need to bill for a frequently changing quantity, consider integrating usage-based billing instead.
Manage tax
stripe-pp-cli tax get-associations-find-Finds a tax association object by PaymentIntent id.
stripe-pp-cli tax get-calculations-calculation-Retrieves a Tax
Calculationobject, if the calculation hasn’t expired.stripe-pp-cli tax get-calculations-calculation-line-items-Retrieves the line items of a tax calculation as a collection, if the calculation hasn’t expired.
stripe-pp-cli tax get-registrations-Returns a list of Tax
Registrationobjects.stripe-pp-cli tax get-registrations-id-Returns a Tax
Registrationobject.stripe-pp-cli tax get-settings-Retrieves Tax
Settingsfor a merchant.stripe-pp-cli tax get-transactions-transaction-Retrieves a Tax
Transactionobject.stripe-pp-cli tax get-transactions-transaction-line-items-Retrieves the line items of a committed standalone transaction as a collection.
stripe-pp-cli tax post-calculations-Calculates tax based on the input and returns a Tax
Calculationobject.stripe-pp-cli tax post-registrations-Creates a new Tax
Registrationobject.stripe-pp-cli tax post-registrations-id-Updates an existing Tax
Registrationobject.
A registration cannot be deleted after it has been created. If you wish to end a registration you may do so by setting expires_at.
Updates Tax Settings parameters used in tax calculations. All parameters are editable but none can be removed once set.
Creates a Tax Transaction from a calculation, if that calculation hasn’t expired. Calculations expire after 90 days.
- **`stripe-pp-cli tax post-transactions-create-reversal`** -Partially or fully reverses a previously created Transaction.
Manage tax codes
stripe-pp-cli tax-codes get-A list of all tax codes available to add to Products in order to allow specific tax calculations.
stripe-pp-cli tax-codes get-id-Retrieves the details of an existing tax code. Supply the unique tax code ID and Stripe will return the corresponding tax code information.
Manage tax ids
stripe-pp-cli tax-ids delete-id-Deletes an existing account or customer
tax_idobject.stripe-pp-cli tax-ids get-Returns a list of tax IDs.
stripe-pp-cli tax-ids get-id-Retrieves an account or customer
tax_idobject.stripe-pp-cli tax-ids post-Creates a new account or customer
tax_idobject.
Manage tax rates
stripe-pp-cli tax-rates get-Returns a list of your tax rates. Tax rates are returned sorted by creation date, with the most recently created tax rates appearing first.
stripe-pp-cli tax-rates get-taxrates-Retrieves a tax rate with the given ID
stripe-pp-cli tax-rates post-Creates a new tax rate.
stripe-pp-cli tax-rates post-taxrates-Updates an existing tax rate.
Manage terminal
stripe-pp-cli terminal delete-configurations-configuration-Deletes a
Configurationobject.stripe-pp-cli terminal delete-locations-location-Deletes a
Locationobject.stripe-pp-cli terminal delete-readers-reader-Deletes a
Readerobject.stripe-pp-cli terminal get-configurations-Returns a list of
Configurationobjects.stripe-pp-cli terminal get-configurations-configuration-Retrieves a
Configurationobject.stripe-pp-cli terminal get-locations-Returns a list of
Locationobjects.stripe-pp-cli terminal get-locations-location-Retrieves a
Locationobject.stripe-pp-cli terminal get-readers-Returns a list of
Readerobjects.stripe-pp-cli terminal get-readers-reader-Retrieves a
Readerobject.stripe-pp-cli terminal post-configurations-Creates a new
Configurationobject.stripe-pp-cli terminal post-configurations-configuration-Updates a new
Configurationobject.stripe-pp-cli terminal post-connection-tokens-To connect to a reader the Stripe Terminal SDK needs to retrieve a short-lived connection token from Stripe, proxied through your server. On your backend, add an endpoint that creates and returns a connection token.
stripe-pp-cli terminal post-locations-Creates a new
Locationobject. For further details, including which address fields are required in each country, see the Manage locations guide.stripe-pp-cli terminal post-locations-location-Updates a
Locationobject by setting the values of the parameters passed. Any parameters not provided will be left unchanged.stripe-pp-cli terminal post-onboarding-links-Creates a new
OnboardingLinkobject that contains a redirect_url used for onboarding onto Tap to Pay on iPhone.stripe-pp-cli terminal post-readers-Creates a new
Readerobject.stripe-pp-cli terminal post-readers-reader-Updates a
Readerobject by setting the values of the parameters passed. Any parameters not provided will be left unchanged.stripe-pp-cli terminal post-readers-reader-cancel-action-Cancels the current reader action. See Programmatic Cancellation for more details.
stripe-pp-cli terminal post-readers-reader-collect-inputs-Initiates an input collection flow on a Reader to display input forms and collect information from your customers.
stripe-pp-cli terminal post-readers-reader-collect-payment-method-Initiates a payment flow on a Reader and updates the PaymentIntent with card details before manual confirmation. See Collecting a Payment method for more details.
stripe-pp-cli terminal post-readers-reader-confirm-payment-intent-Finalizes a payment on a Reader. See Confirming a Payment for more details.
stripe-pp-cli terminal post-readers-reader-process-payment-intent-Initiates a payment flow on a Reader. See process the payment for more details.
stripe-pp-cli terminal post-readers-reader-process-setup-intent-Initiates a SetupIntent flow on a Reader. See Save directly without charging for more details.
stripe-pp-cli terminal post-readers-reader-refund-payment-Initiates an in-person refund on a Reader. See Refund an Interac Payment for more details.
stripe-pp-cli terminal post-readers-reader-set-reader-display-Sets the reader display to show cart details.
Manage test helpers
stripe-pp-cli test-helpers delete-test-clocks-test-clock-Deletes a test clock.
stripe-pp-cli test-helpers get-test-clocks-Returns a list of your test clocks.
stripe-pp-cli test-helpers get-test-clocks-test-clock-Retrieves a test clock.
stripe-pp-cli test-helpers post-confirmation-tokens-Creates a test mode Confirmation Token server side for your integration tests.
stripe-pp-cli test-helpers post-customers-customer-fund-cash-balance-Create an incoming testmode bank transfer
stripe-pp-cli test-helpers post-issuing-authorizations-Create a test-mode authorization.
stripe-pp-cli test-helpers post-issuing-authorizations-authorization-capture-Capture a test-mode authorization.
stripe-pp-cli test-helpers post-issuing-authorizations-authorization-expire-Expire a test-mode Authorization.
stripe-pp-cli test-helpers post-issuing-authorizations-authorization-finalize-amount-Finalize the amount on an Authorization prior to capture, when the initial authorization was for an estimated amount.
stripe-pp-cli test-helpers post-issuing-authorizations-authorization-fraud-challenges-respond-Respond to a fraud challenge on a testmode Issuing authorization, simulating either a confirmation of fraud or a correction of legitimacy.
stripe-pp-cli test-helpers post-issuing-authorizations-authorization-increment-Increment a test-mode Authorization.
stripe-pp-cli test-helpers post-issuing-authorizations-authorization-reverse-Reverse a test-mode Authorization.
stripe-pp-cli test-helpers post-issuing-cards-card-shipping-deliver-Updates the shipping status of the specified Issuing
Cardobject todelivered.stripe-pp-cli test-helpers post-issuing-cards-card-shipping-fail-Updates the shipping status of the specified Issuing
Cardobject tofailure.stripe-pp-cli test-helpers post-issuing-cards-card-shipping-return-Updates the shipping status of the specified Issuing
Cardobject toreturned.stripe-pp-cli test-helpers post-issuing-cards-card-shipping-ship-Updates the shipping status of the specified Issuing
Cardobject toshipped.stripe-pp-cli test-helpers post-issuing-cards-card-shipping-submit-Updates the shipping status of the specified Issuing
Cardobject tosubmitted. This method requires Stripe Version ‘2024-09-30.acacia’ or later.stripe-pp-cli test-helpers post-issuing-personalization-designs-personalization-design-activate-Updates the
statusof the specified testmode personalization design object toactive.stripe-pp-cli test-helpers post-issuing-personalization-designs-personalization-design-deactivate-Updates the
statusof the specified testmode personalization design object toinactive.stripe-pp-cli test-helpers post-issuing-personalization-designs-personalization-design-reject-Updates the
statusof the specified testmode personalization design object torejected.stripe-pp-cli test-helpers post-issuing-transactions-create-force-capture-Allows the user to capture an arbitrary amount, also known as a forced capture.
stripe-pp-cli test-helpers post-issuing-transactions-create-unlinked-refund-Allows the user to refund an arbitrary amount, also known as a unlinked refund.
stripe-pp-cli test-helpers post-issuing-transactions-transaction-refund-Refund a test-mode Transaction.
stripe-pp-cli test-helpers post-refunds-refund-expire-Expire a refund with a status of
requires_action.stripe-pp-cli test-helpers post-terminal-readers-reader-present-payment-method-Presents a payment method on a simulated reader. Can be used to simulate accepting a payment, saving a card or refunding a transaction.
stripe-pp-cli test-helpers post-terminal-readers-reader-succeed-input-collection-Use this endpoint to trigger a successful input collection on a simulated reader.
stripe-pp-cli test-helpers post-terminal-readers-reader-timeout-input-collection-Use this endpoint to complete an input collection with a timeout error on a simulated reader.
stripe-pp-cli test-helpers post-test-clocks-Creates a new test clock that can be attached to new customers and quotes.
stripe-pp-cli test-helpers post-test-clocks-test-clock-advance-Starts advancing a test clock to a specified time in the future. Advancement is done when status changes to
Ready.stripe-pp-cli test-helpers post-treasury-inbound-transfers-id-fail-Transitions a test mode created InboundTransfer to the
failedstatus. The InboundTransfer must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-inbound-transfers-id-return-Marks the test mode InboundTransfer object as returned and links the InboundTransfer to a ReceivedDebit. The InboundTransfer must already be in the
succeededstate.stripe-pp-cli test-helpers post-treasury-inbound-transfers-id-succeed-Transitions a test mode created InboundTransfer to the
succeededstatus. The InboundTransfer must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-outbound-payments-id-Updates a test mode created OutboundPayment with tracking details. The OutboundPayment must not be cancelable, and cannot be in the
canceledorfailedstates.stripe-pp-cli test-helpers post-treasury-outbound-payments-id-fail-Transitions a test mode created OutboundPayment to the
failedstatus. The OutboundPayment must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-outbound-payments-id-post-Transitions a test mode created OutboundPayment to the
postedstatus. The OutboundPayment must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-outbound-payments-id-return-Transitions a test mode created OutboundPayment to the
returnedstatus. The OutboundPayment must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-outbound-transfers-outbound-transfer-Updates a test mode created OutboundTransfer with tracking details. The OutboundTransfer must not be cancelable, and cannot be in the
canceledorfailedstates.stripe-pp-cli test-helpers post-treasury-outbound-transfers-outbound-transfer-fail-Transitions a test mode created OutboundTransfer to the
failedstatus. The OutboundTransfer must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-outbound-transfers-outbound-transfer-post-Transitions a test mode created OutboundTransfer to the
postedstatus. The OutboundTransfer must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-outbound-transfers-outbound-transfer-return-Transitions a test mode created OutboundTransfer to the
returnedstatus. The OutboundTransfer must already be in theprocessingstate.stripe-pp-cli test-helpers post-treasury-received-credits-Use this endpoint to simulate a test mode ReceivedCredit initiated by a third party. In live mode, you can’t directly create ReceivedCredits initiated by third parties.
stripe-pp-cli test-helpers post-treasury-received-debits-Use this endpoint to simulate a test mode ReceivedDebit initiated by a third party. In live mode, you can’t directly create ReceivedDebits initiated by third parties.
Manage tokens
stripe-pp-cli tokens get-Retrieves the token with the given ID.
stripe-pp-cli tokens post-Creates a single-use token that represents a bank account’s details. You can use this token with any v1 API method in place of a bank account dictionary. You can only use this token once. To do so, attach it to a connected account where controller.requirement_collection is
application, which includes Custom accounts.
Manage topups
stripe-pp-cli topups get-Returns a list of top-ups.
stripe-pp-cli topups get-topup-Retrieves the details of a top-up that has previously been created. Supply the unique top-up ID that was returned from your previous request, and Stripe will return the corresponding top-up information.
stripe-pp-cli topups post-Top up the balance of an account
stripe-pp-cli topups post-topup-Updates the metadata of a top-up. Other top-up details are not editable by design.
Manage transfers
stripe-pp-cli transfers get-Returns a list of existing transfers sent to connected accounts. The transfers are returned in sorted order, with the most recently created transfers appearing first.
stripe-pp-cli transfers get-transfer-Retrieves the details of an existing transfer. Supply the unique transfer ID from either a transfer creation request or the transfer list, and Stripe will return the corresponding transfer information.
stripe-pp-cli transfers post-To send funds from your Stripe account to a connected account, you create a new transfer object. Your Stripe balance must be able to cover the transfer amount, or you’ll receive an “Insufficient Funds” error.
stripe-pp-cli transfers post-transfer-Updates the specified transfer by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
This request accepts only metadata as an argument.
Manage treasury
stripe-pp-cli treasury get-credit-reversals-Returns a list of CreditReversals.
stripe-pp-cli treasury get-credit-reversals-credit-reversal-Retrieves the details of an existing CreditReversal by passing the unique CreditReversal ID from either the CreditReversal creation request or CreditReversal list
stripe-pp-cli treasury get-debit-reversals-Returns a list of DebitReversals.
stripe-pp-cli treasury get-debit-reversals-debit-reversal-Retrieves a DebitReversal object.
stripe-pp-cli treasury get-financial-accounts-Returns a list of FinancialAccounts.
stripe-pp-cli treasury get-financial-accounts-financial-account-Retrieves the details of a FinancialAccount.
stripe-pp-cli treasury get-financial-accounts-financial-account-features-Retrieves Features information associated with the FinancialAccount.
stripe-pp-cli treasury get-inbound-transfers-Returns a list of InboundTransfers sent from the specified FinancialAccount.
stripe-pp-cli treasury get-inbound-transfers-id-Retrieves the details of an existing InboundTransfer.
stripe-pp-cli treasury get-outbound-payments-Returns a list of OutboundPayments sent from the specified FinancialAccount.
stripe-pp-cli treasury get-outbound-payments-id-Retrieves the details of an existing OutboundPayment by passing the unique OutboundPayment ID from either the OutboundPayment creation request or OutboundPayment list.
stripe-pp-cli treasury get-outbound-transfers-Returns a list of OutboundTransfers sent from the specified FinancialAccount.
stripe-pp-cli treasury get-outbound-transfers-outbound-transfer-Retrieves the details of an existing OutboundTransfer by passing the unique OutboundTransfer ID from either the OutboundTransfer creation request or OutboundTransfer list.
stripe-pp-cli treasury get-received-credits-Returns a list of ReceivedCredits.
stripe-pp-cli treasury get-received-credits-id-Retrieves the details of an existing ReceivedCredit by passing the unique ReceivedCredit ID from the ReceivedCredit list.
stripe-pp-cli treasury get-received-debits-Returns a list of ReceivedDebits.
stripe-pp-cli treasury get-received-debits-id-Retrieves the details of an existing ReceivedDebit by passing the unique ReceivedDebit ID from the ReceivedDebit list
stripe-pp-cli treasury get-transaction-entries-Retrieves a list of TransactionEntry objects.
stripe-pp-cli treasury get-transaction-entries-id-Retrieves a TransactionEntry object.
stripe-pp-cli treasury get-transactions-Retrieves a list of Transaction objects.
stripe-pp-cli treasury get-transactions-id-Retrieves the details of an existing Transaction.
stripe-pp-cli treasury post-credit-reversals-Reverses a ReceivedCredit and creates a CreditReversal object.
stripe-pp-cli treasury post-debit-reversals-Reverses a ReceivedDebit and creates a DebitReversal object.
stripe-pp-cli treasury post-financial-accounts-Creates a new FinancialAccount. Each connected account can have up to three FinancialAccounts by default.
stripe-pp-cli treasury post-financial-accounts-financial-account-Updates the details of a FinancialAccount.
stripe-pp-cli treasury post-financial-accounts-financial-account-close-Closes a FinancialAccount. A FinancialAccount can only be closed if it has a zero balance, has no pending InboundTransfers, and has canceled all attached Issuing cards.
stripe-pp-cli treasury post-financial-accounts-financial-account-features-Updates the Features associated with a FinancialAccount.
stripe-pp-cli treasury post-inbound-transfers-Creates an InboundTransfer.
stripe-pp-cli treasury post-inbound-transfers-inbound-transfer-cancel-Cancels an InboundTransfer.
stripe-pp-cli treasury post-outbound-payments-Creates an OutboundPayment.
stripe-pp-cli treasury post-outbound-payments-id-cancel-Cancel an OutboundPayment.
stripe-pp-cli treasury post-outbound-transfers-Creates an OutboundTransfer.
stripe-pp-cli treasury post-outbound-transfers-outbound-transfer-cancel-An OutboundTransfer can be canceled if the funds have not yet been paid out.
Manage webhook endpoints
stripe-pp-cli webhook-endpoints delete-You can also delete webhook endpoints via the webhook endpoint management page of the Stripe dashboard.
stripe-pp-cli webhook-endpoints get-Returns a list of your webhook endpoints.
stripe-pp-cli webhook-endpoints get-webhookendpoints-Retrieves the webhook endpoint with the given ID.
stripe-pp-cli webhook-endpoints post-A webhook endpoint must have a
urland a list ofenabled_events. You may optionally specify the Booleanconnectparameter. If set to true, then a Connect webhook endpoint that notifies the specifiedurlabout events from all connected accounts is created; otherwise an account webhook endpoint that notifies the specifiedurlonly about events from your account is created. You can also create webhook endpoints in the webhooks settings section of the Dashboard.stripe-pp-cli webhook-endpoints post-webhookendpoints-Updates the webhook endpoint. You may edit the
url, the list ofenabled_events, and the status of your endpoint.
# Human-readable table (default in terminal, JSON when piped)
stripe-pp-cli account
# JSON for scripting and agents
stripe-pp-cli account --json
# Filter to specific fields
stripe-pp-cli account --json --select id,name,status
# Dry run — show the request without sending
stripe-pp-cli account --dry-run
# Agent mode — JSON + compact + no prompts in one flag
stripe-pp-cli account --agentThis CLI is designed for AI agent consumption:
- Non-interactive - never prompts, every input is a flag
- Pipeable -
--jsonoutput to stdout, errors to stderr - Filterable -
--select id,namereturns only fields you need - Previewable -
--dry-runshows the request without sending - Explicit retries - add
--idempotentto create retries and--ignore-missingto delete retries when a no-op success is acceptable - Confirmable -
--yesfor explicit confirmation of destructive actions - Piped input - write commands can accept structured input when their help lists
--stdin - Offline-friendly - sync/search commands can use the local SQLite store when available
- Agent-safe by default - no colors or formatting unless
--human-friendlyis set
Exit codes: 0 success, 2 usage error, 3 not found, 4 auth error, 5 API error, 7 rate limited, 10 config error.
stripe-pp-cli doctorVerifies configuration, credentials, and connectivity to the API.
Config file: ~/.config/stripe-pp-cli/config.toml
Environment variables:
| Name | Kind | Required | Description |
|---|---|---|---|
STRIPE_SECRET_KEY |
per_call | Yes | Set to your API credential. |
Authentication errors (exit code 4)
- Run
stripe-pp-cli doctorto check credentials - Verify the environment variable is set:
echo $STRIPE_SECRET_KEYNot found errors (exit code 3) - Check the resource ID is correct
- Run the
listcommand to see available items
- Auth errors after
auth loginsucceeded — Check active profile withstripe-pp-cli auth status; switch withstripe-pp-cli profile use <name> - Rate limit (429) errors on sync — Test-mode caps at 25 r/s; sync auto-throttles, but reduce
--page-sizeif hitting it persistently sqlcommand shows empty tables — Runstripe-pp-cli sync --full— local store starts empty until first sync- Live-mode key detected — v1 of stripe-pp-cli does not enforce a live-mode write guard. Audit every command before running with sk_live_... ; prefer sk_test_... for development.
This CLI was built by studying these projects and resources:
- stripe-cli — Go (5800 stars)
- stripe-agent-toolkit — TypeScript (220 stars)
- stripemetrics — Python
- stripe-cohort-analysis — Python
- profitable — Ruby
Generated by CLI Printing Press