Create unpaid orders from subscription billing attempts

Shopify's 2026-04 API adds a `paymentProcessingPolicy` field to subscription billing attempts, letting developers create unpaid orders even when a customer's payment method is invalid. This affects Shopify-native subscription app developers and merchants using custom subscription billing logic.
For agencies building subscription flows on Shopify, this unlocks a retention tactic: keep orders alive and fulfill later instead of hard-failing on bad cards. Pair this with a dunning sequence — create the unpaid order, then retry payment capture post-fulfillment.
Platform consolidation around subscription commerce is pushing Shopify deeper into retention tooling, squeezing out third-party dunning apps and giving native builders a direct edge.
If you manage Shopify subscriptions, audit your billing attempt logic in the next sprint — set SKIP_PAYMENT_AND_CREATE_UNPAID_ORDER for high-LTV subscribers to reduce involuntary churn from expired cards.
In the next 30 days, test this field in the 2026-04 API release candidate and update your subscription app's error-handling to distinguish unpaid orders from failed billing attempts in reporting.
Bottom Line
Shopify subscriptions can now hold orders open on bad cards, cutting involuntary churn.
Source Lens
Technical Platform Update
Official but usually technical. Useful only when the change affects merchant-facing operations.
Impact Level
medium
Shopify subscriptions can now hold orders open on bad cards, cutting involuntary churn.
Key Stat / Trigger
No single quantitative trigger surfaced in this report.
Focus on the operational implication, not just the headline.
Full Coverage
Back to Developer changelog April 1, 2026 Tags: Admin GraphQL API 2026-04 Create unpaid orders from subscription billing attempts Ask assistant In the API 2026-04 release candidate version, you can now include a new field called payment Processing Policy when creating a billing attempt using the subscription Billing Attempt Create mutation.
A billing attempt is an action to charge a customer based on their subscription.
The payment Processing Policy field determines how the billing attempt is handled depending on the validity of the payment method: If you don't provide the payment Processing Policy field, or if you set it to F A I L _U N L E S S _V A L I D _P A Y M E N T _M E T H O D, a valid payment method is necessary to create an order successfully.
Alternatively, if you set the value to S K I P _P A Y M E N T _A N D _C R E A T E _U N P A I D _O R D E R, the system will create an unpaid order even if there isn't a valid payment method available on the subscription contract. For detailed implementation instructions, please refer to our documentation on building a subscription contract.
Was this section helpful? Yes No
Original Source
This briefing is based on reporting from Shopify Developer Changelog. Use the original post for full primary-source context.
Style
Audience
