Looking for something?

You will find your answers here!

Sorry, we didn't find any relevant articles for you.

Send us your question using the form below and we will get back to you with a solution.

Partners & Resellers

EVP: Crexendo Marketplace CSP/Partner Onboarding & Registration

1. Introduction

This document is intended to be used by NetSapiens (NS) ProServ or Projects team with the requirements and step-by-step process for onboarding/enabling a CSP/Partner to use the Crexendo Marketplace.
The enablement workflow can be implemented in one of the two models:
  • NetSapiens driven registration, where the onboarding team gathers required details and completes the setup on behalf of the CSP. 
  • CSP driven registration, where an invite code is used by the CSP to register for Marketplace access and usage.

 

2. Prerequisites

Marketplace OAuth2 Redirect URI Whitelist - Required Configuration by Partner/Reseller (All CSP Cores)

Add the following configuration to all Netsapiens core servers, the redirect URI will whitelist MarketPlace:

  • File:/etc/netsapiens/portal_config.php
  • Entry:Configure::write('NsAllowedRedirectUris.3','https://marketplace.crexendo.com/');
⚠️ Registration will fail if this redirect URI is not whitelisted on all cores.
Pls. make sure there are no other entries with ID 3. If there are, pick the next available number below 50.
Hosted CSPs would need NetSapiens support team to address this if following CSP driven enablement.
 

 

Whitelisting IPs for automation - if CSP restricts access by Geo Location

Marketplace utilizes N8N cloud for automating app enablement. If Partner restricts non-USA traffic from accessing their API endpoint(s), they will need to whitelist the IPs in use by N8N cloud. You can find the list of IP addresses at the link below:
 

3. Information to Gather from CSP

(Only required if NS Support is completing the setup on behalf of the CSP. Otherwise, skip to the next section.)

CSP Contact Information

  • Contact Name
  • Contact Address
  • Contact Phone
  • Contact Email (distribution list is preferred)

Technical Information

  • OAuth2 Client ID (i.e. marketplace)
  • OAuth2 Client Secret
  • Portal FQDN (e.g., portal.domain.com/portal/) 
  • API FQDN (e.g., api.domain.com/ns-api) 

 


4. Create the CSP Profile (addressed by EVP team)

Send an email to evpticket@crexendo.com and along with the info gathered from/about the CSP deployment, specify the email address to send the invite code for CSP registration. EVP team will follow the following steps to generate an invite code for CSP registration.

Access Marketplace Management

Browse to:
https://marketplace.crexendo.com/manage
Access is controlled by Crexendo IT via Active Directory permissions.

Create CSP Record

  1. Click CSP Management 
  2. Click Create 
  3. In the Add CSP dialog, enter: 
  • Email Address: Enter your email address to receive the CSP registration Invite Code.
  • CSP Name: Confirm the name matches NetSapien's Collector/Insight name for the CSP.
  • OrgID: Obtain from the CSP’s Insight URL.

 

 

 

 

  1. Click Submit

5. Partner Registration Process (NetSapiens Support team)

Invite Code Handling

  • Once an invite code is received for a CSP registration :
    • Copy the Invite Code 
    • Click "Register as a Partner" link within the email, or browse to:
      • https://marketplace.crexendo.com 
      • Click "CSP Registration" (top-right)

 

Complete CSP Registration Form

Enter the following using the previously gathered prerequisites:
  • CSP Short Name: Used for Marketplace login; keep concise. (e.g. abctelecom)
  • OAuth Client ID 
  • OAuth Client Secret 
  • API FQDN: Must point to an NS API endpoint (e.g., portal.domain.com/ns-api )
  • Portal URL 
  • Application Access Level:
    • GA - Will restrict app access to GA status apps only
    • Beta - Will show Beta applications to enable
  • Contact Name 
  • Contact Email 
  • Contact Phone Number 
  • Contact Address 
  • Restrict Marketplace Access:
    • Yes - Will provide a read only access to Office Managers
    • No - Will allow app requests and/or enablement by Office Managers

OAuth Validation (Critical Step)

⚠️ Pause before clicking Register
  • Log into the CSP portal as a Super User 
  • Confirm Marketplace redirect URI is whitelisted on all cores 
  • Then Click Register to trigger a Single Sign On (SSO) into the Marketplace using logged in Super User credentials.
If successful, the CSP Super User would be logged into their Marketplace portal.
On EVP admin perspective (manage side) Marketplace registration status will turn green and the process is now complete.

 


6. Enabling Apps and Workflow (CSP ops team)

Once a CSP is registered, they may request access to applications from the Marketplace.

The following steps in this guide show the steps a CSP can take to Request an App.


7. CSP App Request Workflow (CSP Ops Team)

  1. Log into the CSP portal. There are three different ways to log into the MarketPlace as Super User. 

Reminder: MarketPlace uses SSO and factors in the user's scope they are logged into their NetSapien's portal with (Super User/Office Manager).

Option 1: Log into the MarketPlace manually

  • https://marketplace.crexendo.com
  • Click Login (top-right) 

 

  • Enter CSP Short Name and Submit, page will load Marketplace based on SSO scope

 

 

 
 

Option 2:  Log into Marketplace using URL w/CSP

  • https://marketplace.crexendo.com/<CSP_short_name>
    • i.e. https://marketplace.crexendo.com/crexendo
  • The Marketplace will automatically pull users SSO Scope and log them into Marketplace
 
 

Option 3: Marketplace Icon

Partner can add Marketplace Icon to their Portal tile strip

Option A: Marketplace: PORTAL_CXDO_MARKETPLACE

This option requires V45

 

 

 

Option B: Add to your current JS Scripts

Before Adding Script:

  1. Update the Marketplace url with CSP's 
  2. Update Please download and host the marketplace icon accordingly and update the urls in the JSScript
  3. Please VALIDATE, TEST and Use At Your Own Risk, this is a sample script only and does not take into account each platforms additional PORTAL_EXTRA_JS scripts and setups.
 

 

 //Add Crexendo Marketplace Icon to Netsapiens Portal UI, Visible to Super User and Office Manager user roles
 
if (sub_scope == "Super User")
{
    var mktplace = '<li><a href="https://marketplace.crexendo.com/<csp_short_name>" target="_blank" class="header-link">Manage Marketplace</a></li>';
    $('.user-toolbar').prepend(mktplace);

    const existingButton = $('#nav-callhistory');
    if (existingButton) {
        const mktplaceButton =
            '<li id="nav-studio" class="">' +
            '<a href="https://marketplace.crexendo.com/<csp_short_name>" target="_blank" class="nav-link">' +
            '<div class="nav-button btn"></div>' +
            '<div class="nav-arrow"></div>' +
            '<div class="nav-bg-image" style="background-image: url(https://yourdomain.com/path/to/MarketPlaceIcon.png)"></div>' +
            '<span class="nav-text">Marketplace'</span> +
            '</a>' +
            '</li>';

        existingButton.after(mktplaceButton);
    }
}
else if (sub_scope == "Office Manager")
{
    var mktplace = '<li><a href="https://marketplace.crexendo.com/<csp_short_name>" target="_blank" class="header-link">Marketplace</a></li>';
    $('.user-toolbar').prepend(mktplace);

    const existingButton_OM = $('#nav-callhistory');
    if (existingButton_OM) {
        const mktplaceButton_OM =
            '<li id="nav-studio" class="">' +
            '<a href="https://marketplace.crexendo.com/<csp_short_name>" target="_blank" class="nav-link">' +
            '<div class="nav-button btn"></div>' +
            '<div class="nav-arrow"></div>' +
            '<div class="nav-bg-image" style="background-image: url(https://yourdomain.com/path/to/MarketPlaceIcon.png)"></div>' +
            '<span class="nav-text">Marketplace'</span> +
            '</a>' +
            '</li>';

        existingButton_OM.after(mktplaceButton_OM);
    }
} 
 
 

 

  1. Select the desired App/Service  from available apps
  2. Click Request Access 

 

  1. Toggle Workflow Management ON if the CSP prefers to approve app requests from their Domains explicitly - so that any contract paperwork etc. can be established and/or verified before allowing access.

 

 

  1. Proceed with request submission
  • The app status will show as Requested 
  • Email notification is sent to the EVP team

8. Marketplace Admin App Approval Workflow (addressed by EVP team)

Workflow States

  • Requested - CSP has requested app access
  • Processing - Marketplace admin is activating the app (automation webhooks triggered)
  • Ready to Publish - App is approved and available for CSP publishing

 

Promoting an App workflow state

  1. Log into Marketplace Manage:https://marketplace.crexendo.com/manage 
  2. Select Approvals 
  3. Locate the CSP and requested app populated

 

 

  1. Double-click the record to begin promotion to the next workflow state

⚠️ Ensure all contracts and approvals between the CSP and third-party provider are complete.

 

 

Promotion Steps to Processing to Ready to Publish

  1. Click Promote → Status changes to Processing
    • Triggers webhooks and backend integrations based on implemented automation.

 

 

  1. Complete any interim steps (if applicable) between promoting to Ready to Publish
  2. Return to Approvals 
  3. Open the app record
  4. Click Promote → Status changes to Ready to Publish 
The CSP will now see the app marked Ready to Publish in their Marketplace view.

9. Final CSP Enablement (CSP Ops team)

The CSP completes the final steps (documentation, training etc.) to publish the app to their Marketplace and platform: 
  1. Log into the Crexendo Marketplace with Super User credentials.
  2. Identify the app to be published to the platform under the "Enabled Apps" section of Marketplace
  3. You will see the status set to "Ready To Publish." Below is an example of what an app icon will look like:

 

 

 

  1. Click on the app to open the apps description/management page
  2. Click on "Publish"

 

 

  1. Click "Publish". At this point, all Office Managers will see the published app when they access CSP Marketplace
 

Note: Apps will have management options in the Market Place based on if the user logged in is a Super User or a domains Office manager. Specifics for each app will be supplemented in their own documentation accordingly.

 

 

 

Was this article helpful?