Guides
Latest · 2026-09-25
- 01
The GENIUS Act and your checkout: what a US payment-stablecoin law asks of merchants
Only permitted issuers may issue, reserves must be identifiable and published monthly, issuers may not pay yield, and the law takes effect on the earlier of 18 months after 18 July 2025 or 120 days after final rules — so check the issuer, not the ticker.
- 02
ISO 20022 cutovers: where your payment reference moved between MT and MX
Fedwire went ISO 20022 on 14 July 2025 and SWIFT ended MT coexistence on 22 November 2025; free-text fields, tag 6500 and blank-only remittance lines now land somewhere else, so reconciliation matching must be re-tested.
- 03
Pix Automático in Brazil: one mandate, fixed cycles, and a two-hour booking window
How a Pix Automático mandate is created, confirmed and cancelled under Banco Central rules, why a billing cycle is a date range rather than a reminder, and what a failed charge does to the authorisation.
Latest · 2026-09-24
- 01
TLS 0-RTT early data and payment POSTs: answer 425 instead of guessing
Why an unsafe payment request must not ride in TLS 1.3 early data, how the Early-Data header and 425 Too Early move the retry decision, and what 425 does not protect.
- 02
EU verification of payee: put the match result before the authorisation step
Map Regulation (EU) 2024/886 Article 5c onto a bank-transfer checkout: when the result must appear, what the payer is told, who pays for it, and which deadline applies where.
- 03
PCI DSS SAQ selection for hosted checkout: who serves the payment page decides
Choose a PCI DSS v4.0.1 questionnaire from what your own site serves to the browser, confirm every eligibility criterion before attesting, and treat a vendor SAQ mapping as an input, not a verdict.
Latest · 2026-09-24
- 01
Backdating Stripe subscriptions: classic, flexible and avoiding duplicate migration charges
Separate historical start dates from collectible periods, compare classic and flexible invoice lines and credits, and review migration anchors, discounts and limits.
- 02
Stripe Checkout optional items: check eligibility before offering add-ons
Screen optional offers by Checkout mode, interface, pricing compatibility and combined item limits, without confusing removable add-ons with required charges.
- 03
Stripe invoice overpayment: remove unused credit before refunding
Check whether an invoice overpayment credit is still unused, reverse it once, and track the refund without leaving both cash and credit with the customer.
Latest articles
Ordered by editorial batch, newest batch first; same-day order does not imply a publication time.
- 01
Deleting a Stripe Coupon Does Not Remove Existing Discounts
Separate ending future coupon redemption from removing subscription discounts, preserve stacked benefits, and check customer-level fallback before declaring a campaign closed.
- 02
Stripe Checkout language: choose auto or an explicit locale, then translate your own copy
Decide when hosted Checkout should follow the browser or your storefront language, map supported locale codes, and keep product and custom-text translation separate.
- 03
Stripe Checkout shipping rates: price the whole order, replace rates, and respect the subscription boundary
Decide whether fixed order-level shipping fits Checkout, replace outdated rates without assuming repricing, and distinguish payment-mode shipping from subscription and dynamic-form requirements.
Latest articles
- 01
Stripe Apple Pay missing in an iframe: registration is not origin permission
Diagnose missing Apple Pay by separating exact domain registration, Safari iframe origins, account scope and wallet eligibility.
- 02
Stripe invoice numbering: choose the sequence before changing the prefix
Choose customer- or account-level invoice sequencing, check prefix and next-number constraints, and distinguish future defaults from individual draft edits.
- 03
Stripe test clocks: advance in bounded steps, not toward a live-payment guarantee
Build disposable Billing simulations, respect frozen-time advancement limits, wait for ready, diagnose missing observations and preserve evidence before cleanup.
Latest articles
- 01
Stripe refund pending: fund the balance, investigate failure, or wait?
A refund-state decision guide: distinguish funding shortages from processing, failed refunds and duplicate reimbursement risk.
- 02
Stripe 429 diagnosis: rate limits, concurrency and object locks need different queues
Use Stripe limiter reasons and lock_timeout to choose rate pacing, in-flight caps or object-scoped serialization.
- 03
Stripe Checkout custom fields: collect business choices and read the final answers
Choose suitable Checkout questions, keep stable keys and option values, and capture completed answers without confusing defaults, inventory or payment readiness.
Latest articles
- 012026-09-23
Stripe Checkout addresses: separate billing collection from shipping countries
Choose billing and shipping collection separately, configure allowed destination countries, and preserve the address chosen for each order without mistaking it for payer eligibility.
- 022026-09-23
Stripe Checkout mixed carts: a setup fee belongs on the first invoice, not every renewal
Combine a recurring service and one-time setup fee in subscription-mode Checkout, distinguish initial charges from renewals, and validate separate line-item limits.
- 032026-09-23
Stripe Quotes: accepted is not paid—follow the invoice or subscription
Separate quote agreement from payment, distinguish one-time and recurring conversion, and handle draft review, finalization and expiry with an explicit billing handoff.
Latest articles
- 012026-09-23
Stripe trials without a payment method: cancel, pause or create an invoice
Choose an explicit trial-end policy, distinguish a paused subscription from paused collection, and verify recovery before restoring paid access.
- 022026-09-23
Stripe cancellation reversal: undo before period end, recreate after termination
Distinguish a pending period-end cancellation from a canceled subscription, interpret cancellation timestamps, and choose a verified reversal or new-purchase workflow.
- 032026-09-23
Manual Stripe payouts are not Instant Payouts: choose the right timing control
Separate pending and available funds, manual schedules and Instant Payouts before planning bank cash, with eligibility and regional limits.
Latest articles
- 01
Stripe webhook signature failures: preserve the raw body before parsing
Trace endpoint secrets, headers, Express middleware order, Next.js request interfaces and gateway mapping without weakening authentication.
- 02
Missing customer location: when Stripe blocks invoice finalization and when it disables tax
Diagnose customer_tax_location_invalid, repair the selected address, and distinguish blocked drafts from subscription invoices finalized without automatic tax.
- 03
Stripe Checkout email: existing Customer locks, prefill and correction paths
Choose customer versus customer_email deliberately, explain a locked email field, and correct billing contact data without replacing the customer identity.
Previous batch
- 01
Deleting a Stripe customer is irreversible: separate billing from local account removal
Choose between local identity removal, targeted subscription cancellation and permanent Stripe customer deletion without unintentionally ending every active subscription.
- 02
A detached Stripe PaymentMethod cannot be restored: remove, recollect and reset defaults
Decide what to do before removing a saved card, stop reattaching a detached PaymentMethod, and verify replacement setup and intended default relationships separately.
- 03
Stripe small invoices: paid does not always mean charged
Trace below-minimum invoices into customer balance debits, distinguish paid events from cash collection, and avoid charging the same small amount twice.
Previous batch
- 01
Stripe subscription edits: replace the price, preserve the item and quantity
Avoid adding a second recurring item when changing a Stripe price, and explicitly preserve seat quantity instead of letting it reset to one.
- 02
Stripe Checkout adjustable quantities: fulfill the final basket, not the starting cart
Reserve inventory against the adjustable maximum, retrieve final purchased quantities server-side, and reconcile removed items without repeating stock or entitlement changes.
- 03
Stripe receipt emails: test mode, paid invoices and when sending starts
Separate automatic payment receipts from invoice emails, diagnose test-mode silence, and recover a missing receipt without charging again.
Previous batch
- 01
A 31st-day billing anchor: how Stripe handles short months
Choose month-end instead of a signup-day anniversary, preserve UTC time, and check February without drifting the renewal date.
- 02
Stripe First-Time Promotion Codes: Why Guest Purchases Can Still Qualify
Distinguish guest grouping from customer eligibility, account for prior trials, and choose a clear identity policy for first-time Stripe promotion codes.
- 03
Stripe Connect: find the owning account before retrying a missing payment
Diagnose resource_missing in Stripe Connect direct charges by checking object ownership, per-request account context, browser initialization and environment before creating another payment.
Previous batch
- 01
Stripe POST idempotency: parameter conflicts, cached 500s and retention boundaries
Decide when to reuse a Stripe request key, when changed parameters need a new operation, and why a cached 500 or an old key requires reconciliation rather than blind replay.
- 02
Export every Stripe invoice line: nested pagination and per-invoice checkpoints
Why complete invoice enumeration can still omit lines, and how the dedicated invoice-lines endpoint supports complete, restartable child-resource exports.
- 03
Archive a Stripe Price Without Canceling Existing Subscriptions
Separate catalog retirement from subscription changes: choose price or product archiving, replace amounts, and redirect new purchases without rewriting existing subscriptions.
Previous batch
- 01
Stripe metadata routing: Session fields are not payment fields
Route Checkout Session, PaymentIntent and subscription metadata deliberately; distinguish one-time snapshots from synchronization and diagnose missing fields by object.
- 02
Stripe portal missing update or cancel controls? Check subscription eligibility
Triage missing portal controls by checking configuration, subscription structure, collection method, scheduled changes and tax behavior before choosing a supported fallback.
- 03
Stripe webhook API upgrades: migrate the schema, not just the version label
Separate account, endpoint, request and SDK versions; preserve historical event schemas and stage a validated cutover with a clear rollback boundary.
Previous batch
- 01
Zero-total Stripe Checkout: fulfill the order without a PaymentIntent
Design a Session-based fulfillment branch for free Checkout orders, with payment-state checks, optional payment references, concurrency controls, and a troubleshooting checklist.
- 02
Stripe Search API: Why Read-After-Write Needs a Different Query Path
Choose Stripe List or Search by freshness needs, understand cached matches, India availability and pagination limits, and troubleshoot missing objects without treating search as write confirmation.
- 03
Stripe subscription schedules: release vs cancel and end_behavior
Choose between detaching a schedule, canceling its subscription now, and ending it after the final phase; verify state, cancellation dates, and final-invoice controls.
Previous batch
- 01
Connect onboarding: a return URL is not an approval signal
Handle single-use Account Links, refresh redirects and unfinished requirements without mistaking a browser return for a verified connected account.
- 02
An invoice stuck in draft: check finalization before retrying payment
Diagnose invoice.created webhook delays, deliberate automation settings and finalization boundaries before treating a draft invoice as a failed collection.
- 03
Subscription upgrades: recover a pending update before it expires
Separate a requested upgrade from an applied subscription change, then handle payment recovery, expiry and schedule transitions without promising access too early.
Earlier articles
- 01
Credit-note line items: choose quantity or amount before issuing
A practical guide to Stripe credit-note mode lock-in, discounted amounts, automatic-tax restrictions, and the limits of voiding mistakes.
- 02
Payment Link limits count completed sessions, not settled orders
Configure a limited-use Stripe Payment Link without confusing its completion counter, delayed payment confirmation, and customer-facing closure message.
- 03
Radar review actions: closing a review is not changing a payment
Separate approval, refunds, fraud reporting and dispute-driven closure from payment execution and fulfillment, with practical routing and completion checks.
- 01
A failed Connect payout also disables its external account: who owns recovery?
Separate payout failure, external-account repair, and payment confirmation, with clear ownership and a controlled recovery checklist.
- 02
Billing Meters: Accepted Usage Is Not Yet Correct Billing
For existing Billing Meters integrations, separate asynchronous receipt from reconciliation, investigate error events, and repair invalid usage without blind replay.
- 03
A Scheduled Retry Is Not a Charge: Fix the Right Payment Method
Separate hard-decline scheduling from payment execution, then check payment-method precedence before declaring a failed invoice ready for recovery.
- 01
Changing a plan while its invoice is unpaid: avoid crediting time never paid for
Review unpaid invoices before a subscription downgrade, choose a billing-period strategy, and prevent an old invoice from collecting twice. Stripe documentation research, not a PayIn feature announcement.
- 02
Pausing collection is not pausing invoices: plan the backlog before resuming
Choose void, draft or uncollectible invoice behavior deliberately, separate older invoices from the pause window, and review draft invoices when collection resumes.
- 03
A customer refund does not automatically recover a seller's transfer
For Stripe Connect destination charges, separate the customer refund, transfer reversal and application-fee refund before deciding whose balance should bear the cost.
- 01
Partial authorization leaves a remainder decision, not a paid order
Choose whether to collect a remainder separately, cancel, or reduce the purchase when a card authorizes less than requested. Editorial review dated 2026-09-21, based on the supplied Stripe documentation; source publication date unspecified.
- 02
Recover ACH microdeposit verification without wasting the next attempt
Distinguish descriptor codes from deposit amounts, manage arrival expectations and attempt limits, and recover expired US ACH verification. Reviewed 2026-09-21; source publication date unknown.
- 03
A valid tax ID is not customer identity verification or a tax decision
Separate EU and UK tax ID validation, customer identity checks and tax treatment, with editorial guidance for asynchronous updates and invoice finalization. Published 2026-09-21; source publication date unknown. Not tax or legal advice.
- 01
Customer cash balance is not invoice credit—or a wallet
Distinguish Stripe bank-transfer cash from invoice adjustments before designing account screens, support actions and payment decisions. Verified 2026-09-20; source publication date not stated.
- 02
A saved payment method is not blanket permission to charge later
Separate consent to save, permission for future off-session charges, setup configuration and customer authentication recovery using Stripe’s Setup Intents documentation. Verified 2026-09-20; source publication date unspecified.
- 03
Choose payment currencies by separating the customer, the charge, and settlement
A Stripe currency-selection guide: distinguish payment-method, presentment, and settlement currencies, identify who may convert or charge fees, and build an eligibility-aware decision checklist. Verified 2026-09-20; source publication date unspecified.
- 01
Treat dispute evidence submission as a final release, not a draft
A source-grounded operating guide to Stripe Dashboard card-dispute evidence: deadlines, attachment limits, final review, and inquiry escalation. Verified 2026-09-20; source publication date unspecified.
- 02
SCA exemptions reduce authentication friction, not fraud liability
Separate SCA exemptions, out-of-scope merchant-initiated payments and Data Only from fraud liability shift, with an editorial operating framework grounded in Stripe documentation.
- 03
Design a statement descriptor customers can recognize
Choose a recognizable merchant prefix, budget the dynamic suffix, and separate Stripe configuration from what the issuing bank actually displays.
- 01
Checkout expiry is an inventory decision, not just a countdown
An editorial operating guide to aligning Stripe-hosted Checkout expiration with scarce-stock reservations, release decisions, and exception handling.
- 02
Can a checkout response be cached? Separate public assets from private payment state
Distinguish no-cache, no-store and private, then test checkout responses across browsers and shared caches without confusing caching policy with authorization.
- 03
Manage authorization capture as a deadline-bound decision
An editorial guide to Stripe authorization deadlines, eligible payment methods, partial capture, and operational decisions before a monetary hold expires.
- 01
Integer or decimal payment amounts? Precision and rounding boundaries
Define currency scales, exact calculations, rounding steps and remainder allocation, then protect payment amounts across API, JSON and database boundaries.
- 02
Payment lookups returning 429 or 503: backoff, retry budgets and recovery
Protect read-only payment queries with Retry-After handling, jitter, total deadlines and aggregate retry budgets, then restore load gradually.
- 03
Stablecoin address poisoning: checks before copying a past recipient
Replace trust in transaction history with authenticated payment instructions, full-address comparison and separate network and asset checks.
- 01Design the collection flow
Hosted or self-hosted: decide who owns the midnight incident
A responsibility-first checklist for choosing stablecoin payment infrastructure without confusing custody, hosting and settlement.
- 02Design the collection flow
Order payments or deposit addresses? Model the business event first
Choose between paying an invoice and funding an account, then define late payments, reuse and ledger ownership.
- 03Operate reliably
Visible onchain is not the same as ready to fulfill
A merchant checklist for network selection, token identity and the gap between detection and confirmation.
- 04Operate reliably
Two webhook deliveries must not become two fulfillments
A practical design review for verified events, durable intake, deduplication and recovery after a missed notification.
- 05Close the loop
Write the stablecoin refund policy before the first sale
Separate commercial approval from payment execution, and record the asset, destination, amount and completion evidence.
- 06Close the loop
Reconcile the order, the transfer and the business result
A practical exception-led workflow for matching stablecoin payment evidence to fulfillment and the merchant ledger.
Sourced, with limits.
Based on public documentation, not claims of vendor testing, legal review or measured search demand. Read our method →