Orders and Order Flow
Orders are used to initiate service provisioning process. In Billing, there are orders of the following types:
- A sales order is created when customer orders services from End-Customer or Reseller Marketplaces, their control panel, or when vendor orders services on behalf of customer.
- A renewal order is created when a customer (or a provider on a customer's behalf) renews a subscription for another subscription period.
- A billing order is created regularly as a result of customer billing. Billing order does not provide any services, its provisioning item becomes completed independently from the credit limit or any other factors. Basically, billing order is needed to get an invoice that is expected to be paid.
- A change order is created when customer purchases additional resources, changes subscription period to a longer one, or changes subscription service plan to a more expensive one. Another case for creating a change order is when customer decides not to use some resources further, changes subscription period to a shorter one, or changes subscription service plan to a cheaper one. Change Order can haveboth positive (in case of a downgrade) and negative (in case of anupgrade) amount.
- A payment order is used as supplementary order for payment processing. This type of order is visible only by the Payment Order ID link within a respective payment details.
- A cancellation order is created when a subscription is canceled and in case provider owes money to customer.
- A cancellation charge order is created when a subscription is canceled and in case customer owes money to provider.
- A resource order is created in case a subscription was synchronized with the plan it is based on, and there are some resources that require additional provisioning in external system (for example, if included amount in plan has changed comparably to that when subscription was provisioned). Customer is not billed, the order has zero amount and is required only for provisioning and monitoring.
- A transfer order is created when you transfer a subscription between customer accounts or you transfer a customer account between distributors.
-
A provisioning order is a supplementary order which is created when a subscription is created, modified, renewed or canceled. Within this order resource provisioning or unprovisioning is performed. For an order, multiple provisioning orders can be created, one for each subscription.
-
A migration order is created when a subscription is migrated from an external system to created manually, using API.
. Such order type can only be
Each order type has its own order flow. An order flow consists of order statuses, conditional transitions from one status to another, and actions performed during transitions: simple actions such as sending a notification and external requests for complex actions to order flow handlers, which are usually fraud screening, payment, or other types of plugins.
Several different order flows can be configured in Billing; each distributor (provider or reseller) can use them independently. Each distributor can customize the order flow they use by adjusting order flow transitions. There are Global customizations and Per distributor customizations. A provider can view and manage all order flows in the system, while a reseller can only customize their own order flow. For more details, refer to Order Flow and Customizations.