Starting from the API 2026-04 release candidate (RC), the contract creation mutation's paymentMethodId is no longer required. You can migrate contract data even when a payment method is missing or expired.
paymentMethodId) was required.paymentMethodId was a required field. Contracts with expired or missing cards couldn't be created via the API, and migrations stalled.
paymentMethodId becomes optional. You can create contracts even when the payment method is missing or expired, allowing migrations to complete.
This time, paymentMethodId the two contract-creation mutations below no longer require it.
subscriptionContractCreateThe standard mutation for creating a subscription contract. Specifying the payment method ID is now optional.
subscriptionContractAtomicCreateA mutation that atomically creates a contract along with its lines and other components in one call. The payment method ID is also optional here.
| Item | Before | API 2026-04(RC) |
|---|---|---|
paymentMethodId |
Required Without specifying it, you cannot create a contract | Optional You can create a contract even if omitted |
| Contracts with an expired/absent payment method | Cannot be created | Can be created |
| Migration use case | Migration stops unless valid cards are in place | You can migrate contract data as-is |
| Target mutations | — | subscriptionContractCreate / subscriptionContractAtomicCreate |
| Applicable version | — | API 2026-04 release candidate (RC) |
This behavior is provided in the release candidate (RC) version. You need to specify 2026-04 in your request. The official GA timing and whether it will be backported to earlier versions are not described.
How the next billing is handled for a contract with no payment method, and when a payment method will be required, are not described in this article. Verification against the docs and behavior testing is required before production use.
paymentMethodId is an input schema change where it went from required to optional. No new fields or new mutations have been added.
The article explicitly scopes this to migrating contracts whose payment methods are missing or expired. It is not a feature for changing the normal flow of creating new contracts.
subscriptionContractCreate and subscriptionContractAtomicCreate both. It also works for bulk migration scripts that use atomic creation.
2026-04 is a release candidate. Before adopting it in production, account for the risk of spec changes and pin the API version in your requests to 2026-04.
How and when to re-attach a payment method to a contract created without one, and how billing behaves in the meantime, arenot documentedin this article. Work out the re-attach procedure and billing-resumption flow against the docs (How to build subscription contracts) and hands-on verification.
subscriptionContractAtomicCreate and omitpaymentMethodId to migrate only the contract data first.