I understand that I need a payment method to create a contract, but am trying to create an invalid payment method so that I can create the contract, then ask the customer to update their payment information. This will save customers the need to re-subscribe.
I think I almost have it figured out. If I create a new payment method with an invalid Stripe customer ID, it is successful and creates a "bogus" payment method:
If I then send the email to update billing information, and have the customer update this payment method with a valid credit card, it seems like Shopify allows me to continue using the same payment method.
So I should be able to use the bogus payment method to create the contract, then ask customers to update their billing information. If they don't, the contract's billing attempt will simply fail like any other payment failure.