Differences Between subscribe() and subscribeWithExistingAccount()
From API Documentation
Please note that as of version 11.0, subscribeWithExistingAccount has been deprecated. Use subscribe() to create a new account with the subscription or to create a subscription for an existing account.
The subscribe() call is meant for creating a new account and subscription at the same time. The subscribe() call requires an electronic payment method, such as a credit card, to be passed in as a parameter.
The subscribeWithExistingAccount() call is meant for creating a new subscription for an existing account.
The subscribeWithExistingAccount() call can also be used for creating a new an account and subscription when you don't want to capture an electronic payment method (like a credit card). If you want to create subscriptions without capturing an electronic payment method, Zuora recommends using subscribeWithExistingAccount() as such:
- Create a new account using the create() call, specifying the default payment method to an "active" PaymentMethod (such as "Cash", "Other", etc).
- Create a new subscription for this account using subscribeWithExistingAccount().
