Skip to main content

upgradeSubscription

Moves a company onto a higher plan, adds add-ons such as EDI connections, or both in one upgrade. The prorated difference for the rest of the current period is charged to the card on file immediately, and the billing date does not move. Entitlements follow once the provider's change syncs back.

Business Rules​

  • The plan can only move to one whose catalog price is higher; the new plan is billed at its catalog price, replacing any custom price on the current plan
  • Add-on quantities can only go up, to at most 20 each; a new add-on is added at catalog price
  • Nothing is granted unless the charge succeeds
  • A trial keeps its end date and is not charged; the first invoice after it is for the upgraded subscription
  • Duplicate submits of the same upgrade apply once

Error Scenarios​

  • Choose a plan or add-ons to upgrade when nothing would change
  • X is not an upgrade from Y when the plan is not priced higher
  • To remove X, contact us when an add-on quantity goes down
  • Contact us to have more than 20 X when an add-on quantity is over the limit
  • Add a payment method before upgrading your subscription
  • The card's decline message when the charge fails

Permissions Required​

  • billing:upgrade_subscription on the company
upgradeSubscription(
input: UpgradeSubscriptionInput!
): BillingSummary!

Arguments​

upgradeSubscription.input ● UpgradeSubscriptionInput! non-null input common​

Parameters for UpgradeSubscription

Type​

BillingSummary object billing​

A company's current billing subscription, with its plan and allowances. The companyBilling query returns null instead of this when the company has no subscription row (a trial account).