# Commerce - Use Cases ## Create Deal Registration The diagram below illustrates submitting a Deal registration flow using Zoom Partner APIs. Use this to orchestrate your APIs for Deal registration with Zoom. 1. **Get Customer Account Reference**: Obtain the customer and partner's account reference along with the decision maker's and sales rep's contact information for the products being registered. Ensure the customer account is already created; if not, create it first. 2. **Select Product Groups**: From the API spec decide the product groups that need to be registered 3. **Select Campaign**: Obtain the campaign ID which needs to be associated with the deal registration. 4. **Submit Deal Registration**: Using the information collected as part of the above steps. Submit the Deal registration. 5. **Order/Quote**: Once the deal registration is approved, it can be used in order to apply a deal registration discount. ![](/img/create-deal.png) ## Create new order flow The diagram below illustrates a purchase order flow using Zoom Partner APIs. Use this to orchestrate your APIs for placing an order with Zoom. 1. **Get Customer Account Reference**: Obtain the customer account reference and decision maker's sold-to contact for whom the products are being purchased. Ensure the customer account is already created; if not, create it first. 2. **Retrieve Product Codes**: Use the Get Product Catalog API to obtain the list of product codes required for purchase. 3. **Obtain Deal Registration (Optional)**: Fetch the Deal registration associated with the customer, if applicable. Note that this step is optional and assumes the Deal registration is already in place. 4. **Create an Order**: Using the data from Steps 1, 2, and 3, create an order by calling the Create Order API. Include customer details, product details, Deal registration details (if available), and product quantities. 5. **Order Creation by Zoom**: Zoom processes the request and creates the order for the partner with the provided details. 6. **Subscription Provisioning**: Zoom provisions the subscriptions based on the order details. ![](/img/API-Create new order.png) ## Preview order flow The diagram below illustrates a purchase order flow using Zoom Partner APIs. Use this to orchestrate your APIs for placing an order with Zoom. 1. **Get Customer Account Reference**: Obtain the customer account reference and decision maker's sold-to contact for whom the products are being purchased. Ensure the customer account is already created; if not, create it first. 2. **Retrieve Product Codes**: Use the Get Product Catalog API to obtain the list of product codes required for purchase. 3. **Obtain Deal Registration (Optional)**: Fetch the Deal registration associated with the customer, if applicable. Note that this step is optional and assumes the Deal registration is already in place. 4. **Order Preview**: Using the data from Steps 1, 2, and 3, Preview an order by calling the Preview Order API. Include customer details, product details, Deal registration details (if available), and product quantities to get the accurate preview of the order. 5. **Return Order Preview**: This API will return the order matrix details, Product details, Discount details, final net prices, and the order's MRR and TCV. **Note**: This API does not submit the order with Zoom or purchase a subscription. Instead, this API would provide the final end-state view of the order. ![](/img/API-Preview Order.png) ## Amend order flow The diagram below illustrates amending an existing subscription order flow using Zoom Partner APIs. Use this to orchestrate your APIs for amending a subscription with Zoom. 1. **Retrieve the subscription**: Use the get subscription API to get the subscription details such as dates, active products, and so on. 2. **Retrieve Product Codes**: Use the Get Product Catalog API to obtain the list of product codes required for purchase as add-ons or upgraded products or for any of the other use cases. 3. **Customer Account Reference**:Customer details and Reseller details are automatically Obtained from the subscription. 4. **Obtain Deal Registration(Optional)**: Fetch the Deal registration associated with the customer, if applicable. Note that this step is optional and assumes the Deal registration is already in place. 5. **Create an Order**: Using the data from Steps 1, 2, and 3, create an order by calling the Create Order API. Include customer details, product details, Deal registration details (if available), and product quantities. 6. **Order Creation by Zoom**: Zoom processes the request and creates the order for the partner with the provided details. 7. **Subscription updated**: Zoom updates the subscriptions based on the order details. ![](/img/API- Amend order.png) ## Submit a new Quote flow The diagram below illustrates a quote submission and provisioning flow using Zoom Partner APIs. Use this to orchestrate your APIs for placing a quote with Zoom. 1. **Get Customer Account Reference**: Obtain the customer account reference and decision maker's sold-to contact for whom the products are being purchased. Ensure the customer account is already created; if not, create it first. 2. **Retrieve Product Codes**: Use the Get Product Catalog API to obtain the list of product codes required for purchase. 3. **Obtain Deal Registration (Optional)**: Fetch the Deal registration associated with the customer, if applicable. Note that this step is optional and assumes the Deal registration is already in place. 4. **Create a Quote**: Using the data from Steps 1, 2, and 3, call the Create Quote API to create a quote. Include customer details, product details, Deal registration details (if available), product quantities, and an exception discount. 5. **Quote Creation by Zoom**: Zoom processes the request and creates the quote for the partner with the provided details. Zoom initiates the approval process for these quotes. Once the quote is approved, it can be submitted for provisioning. Quote PDF can be downloaded using the download files APIs. 6. **Quote Provisioning**: Once the quote is approved, upload PO documents using the quote reference ID and submit the quote for provisioning. 7. **Subscription Provisioning**: Zoom provisions the subscription based on the quote selected for provisioning. ![](/img/submitorderflow.png) ## Preview Quote flow The diagram below illustrates a quote preview flow using Zoom Partner APIs. Use this to orchestrate your APIs for submitting a quote with Zoom. 1. **Get Customer Account Reference**: Obtain the customer account reference and decision maker's sold-to contact for whom the products are being purchased. Ensure the customer account is already created; if not, create it first. 2. **Retrieve Product Codes**: Use the Get Product Catalog API to obtain the list of product codes required for purchase. 3. **Obtain Deal Registration (Optional)**: Fetch the Deal registration associated with the customer, if applicable. Note that this step is optional and assumes the Deal registration is already in place. 4. **Quote Preview**: Using the data from Steps 1, 2, and 3, Preview a quote by calling the Preview Quote API. Include customer details, product details, Deal registration details (if available), and product quantities, and request an exception discount to get an accurate preview of the quote. 5. **Return Quote Metrics**: This API will return the quote metrics - MRR, TCV, with the products, applicable discounts, and net prices. **Note**: This API does not submit the quote with Zoom or purchase a subscription. This API is for validating the quote metrics before actual submission using the POST /quote API. ![](/img/commerce-preview-quote-flow.png) ## Submit Amend Quote flow The diagram below illustrates amending an existing subscription quote flow using Zoom Partner APIs. Use this to orchestrate your APIs for amending a subscription with Zoom. 1. **Retrieve the subscription**: Use the get subscription API to get the subscription details such as dates, active products, and so on. 2. **Retrieve Product Codes**: Use the Get Product Catalog API to obtain the list of product codes required for purchase as add-ons or upgraded products or for any of the other use cases. 3. **Customer Account Reference**: Customer details and Reseller details are automatically Obtained from the subscription. 4. **Obtain Deal Registration (Optional)**: Fetch the Deal registration associated with the customer, if applicable. Note that this step is optional and assumes the Deal registration is already in place. 5. **Create an Quote**: Using the data from Steps 1, 2, and 3, create a quote by calling the Create Quote API. Include customer details, product details, Deal registration details (if available), product quantities and exception discount to create the quote. 6. **Quote Creation by Zoom**: Zoom processes the request and creates the quote for the partner with the provided details. Zoom initiates the approval process for these quotes. Once quote is approved, it can be submitted for provisioning, Quote PDF can be downloaded using the download files APIs. 7. **Quote Provisioning**: Once the quote is approved. upload PO documents using the quote reference ID and submit the quote for provisioning. 8. **Subscription Provisioning**: Zoom provisions the subscription based on the quote selected for provisioning. ![](/img/commerce-submit-amend-quote.png) ## Create trial order flow The diagram below illustrates a purchase of trial order flow using Zoom Partner APIs. Use this to orchestrate your APIs for placing an order with Zoom. 1. **Retrieve Trial Product Codes**: Use the Get Product Catalog API to obtain the list of product codes required for purchase. Order type as Trial. 2. **Get Customer Account Reference**: Obtain the customer account reference and decision maker's sold-to contact for whom the products are being purchased. Ensure the customer account is already created; if not, create it first. 3. **Create an Order**: Using the data from Steps 1, and 2, create an order by calling the Create Order API. Include customer details, product details, and product quantities. 4. **Order Creation by Zoom**: Zoom processes the request and creates the order for the partner with the provided details. 5. **Provisioning**: Zoom provisions the trial based on the order details. ![](/img/API-Trial order.png) ## Typical Zoom Partner process This outlines the ideal flow of a partner's deal with Zoom. 1. **Create End Customer Account**: Start by creating an end customer account with Zoom. 2. **Add Customer Contacts**: If not done during account creation, add the end customer's associated contacts. 3. **Register the Deal**: Create a deal registration for the end customer account. 4. **Deal Approval**: Wait for Zoom operations to approve the deal registration. 5. **Initiate Purchase Order or Quote**: Create a purchase order Submit a quote with Zoom. 6. **Apply Discounts**: Receive the applicable Deal registration discount, Standard partner discount. If its a quote, request for additional discounts. 7. **Submit for Order or Quote**: Order would be provisioned by Zoom, Quote Would be submitted for approvals. Post quote approval, It should be submitted for provisioning. 8. **Subscription Creation**: Zoom creates a subscription for the partner and end customer, and provides a reference to the partner. 9. **Billing Information**: Zoom provides ongoing billing information. ![](/img/commerce-ideal-partner.png) ## Entity Relationship Diagram The diagram below explains how different items across APIs are connected with each other. Use this diagram to establish relationships/actions between data and transitions that define your workflow. ![](/img/commerce-entity.png) This diagram visualizes the relationships between entities like orders, subscriptions, or customers in Commerce APIs. It also illustrates the logical structure of these entities and how they are tied together. This helps increase partner understanding of how Zoom partner APIs work together. ### Entity Relationships 1. **Order Dependencies**: An order should include the relevant Accounts, Contacts, and Products, with Deal Registration being optional. - Accounts (Disti/Reseller accounts, End customer accounts) - Contacts (Disti/Reseller, End customer) - Products required by the end customer - Optional: Deal Registration for the end-customer 2. **Multiple Subscriptions**: A single order can create multiple subscriptions for different end customer accounts. 3. **Deal Registrations**: A customer can have zero or multiple deal registrations. 4. **Customer Quote**: A customer can have zero or multiple quote. 5. **Customer Subscription**: A customer can have zero or multiple subscription.