Skip to main content

Products

Products in APEX allows you to deliver digital products and services to clients across multiple applications without duplicating development efforts. This capability streamlines the entire product delivery process, from development to deployment.

What are Products?

Products function as standalone digital offerings that you can deploy to any APEX application. They represent reusable assets that you create once and make available through multiple channels, significantly reducing development time and resources.

Key Benefits

  • Focus on Core Functionality: Concentrate on building your product's main features while APEX handles peripheral aspects.
  • Built-in Infrastructure: Leverage existing APEX infrastructure for authentication, onboarding, billing, and legal requirements.
  • Cross-Application Availability: Configure your product once and deploy it across multiple applications within minutes.
  • Rapid Time-to-Market: Reduce development overhead by using pre-built components for common functionality.
  • Consistent User Experience: Provide unified experiences to users across different applications.

How Products Work

When you create a Product in APEX:

  1. You develop the product's core functionality following the APEX specifications
  2. APEX handles user authentication through Single Sign-On
  3. Your product integrates with the Onboarding process
  4. Product Flow manages billing, legal requirements, and user consent
  5. Users access your product seamlessly within various applications

Exposing Products on Tenants

To make your product available to a specific tenant, you need to associate the product with that tenant. This process ensures that only authorized tenants can access your product.

  1. Navigate to the admin area.
  2. Click on Products.
  3. Open the product you want to expose.
  4. Click on the Related dropdown and select the Tenants tab.
  5. Click Add Existing Tenant.
  6. Search for the tenant and select it.
  7. Click Add.

Product Visibility for Users

How users gain access to your products depends on the product's visibility settings and contractual agreements:

Public Products

When you set a product's visibility to "Public" and associate it with a tenant, any user on that tenant can see and access the product. This setting is ideal for:

  • Free products available to all tenant users
  • Standard offerings included in all tenant packages
  • Self-service products that users can activate on demand

Contract-Based Products

When you set a product's visibility to "Contract clients only" and associate it with a tenant, only specific users can access the product. These users must:

  1. Have access to the tenant, AND
  2. Be part of a contract that lists the product in its pricing tiers

This approach provides granular control for premium or specialized products that require separate contractual agreements.

Getting Started

To implement a Product in APEX:

  1. Configure your product in the APEX Backend (Dynamics 365)
  2. Develop your product according to the APEX Product specifications
  3. Test your product using the provided tools and environment
  4. Deploy your product to desired applications

Example Implementation

APEX provides a "Hello World" sample implementation to help you understand the basic structure and requirements for building Products. You can view this sample at the Product.Sample.AspDotNet repository.

Next Steps