effective_at timestamp aligned to a billing period boundary. The active configuration for a given invoice is the segment with the latest effective_at date before the service period end date or issued~at date if there is no service period end date.
Supported transitions
| From → To | Current period | Next period |
|---|---|---|
| Stripe → Stripe | ✅ | ✅ |
| Stripe → NetSuite | ✅ | ✅ |
| NetSuite → Stripe | ✅ | ✅ |
| Stripe → Marketplace (AWS / Azure / GCP) | ❌ | ✅ |
| Marketplace → Stripe | ❌ | ✅ |
| Marketplace → Marketplace | ❌ | ✅ |
| NetSuite → Marketplace | ❌ | ✅ |
| Marketplace → NetSuite | ❌ | ✅ |
Schedule a change
Use theadd_billing_provider_configuration_update field on POST v2/contracts/edit. The effective_at controls when the new configuration takes effect: START_OF_CURRENT_PERIOD or START_OF_NEXT_PERIOD.
Example: Correct a Stripe misconfiguration, effective immediately
Switch from one Stripe configuration to another at the start of the current period. The current draft invoice will be routed to the new configuration. If an invoice was already finalized and sent to Stripe during this period, the new configuration will not apply to it — all invoices are guaranteed to be sent exactly once.
View the billing provider configuration schedule
Fetch a contract usingPOST v2/contracts/get to view the full schedule. The customer_billing_provider_configuration field returns the currently-active configuration unchanged. The billing_provider_configuration_schedule field returns an ordered list of all past, current, and future segments.
Constraints and considerations
Changes align to billing period boundaries.
START_OF_CURRENT_PERIOD resolves to the start of the current usage invoice service period. START_OF_NEXT_PERIOD resolves to the start of the following service period. Each invoice maps to exactly one billing provider configuration based on its service period start date.Marketplace transitions require
START_OF_NEXT_PERIOD. Marketplace billing is metered from the start of a period, so mid-period transitions are not supported. When transitioning to a marketplace, the current period completes fully on the existing configuration. When transitioning away, the marketplace continues to bill through the end of the current period.Threshold billing must be disabled before switching to a marketplace provider. If a contract has an active threshold billing configuration, it must be removed before scheduling a transition to any marketplace provider.
customer_billing_provider_configuration is unchanged and backward compatible. The existing field on contracts/get and contracts/list responses continues to return the currently-active configuration. No changes are required to existing integrations that read this field.A maximum of 10 schedule segments per contract. If you need additional capacity on a specific contract, contact your account team.
To cancel a scheduled future change, schedule a new segment covering the same period. The latest segment takes precedence.