OVERVIEW
In most system landscapes, an ERP or CRM system such as Salesforce, Dynamics, SAP, or Zuora manages customer and contract or subscription data. As a result, SLASCONE customers and licenses are usually not created manually in the SLASCONE portal, but are instead created and updated automatically through API-driven synchronization.
In most cases, the two main entities that need to be kept in sync are:
- Customers
- Licenses
AUTHENTICATION
An AdminKey is required for these synchronization scenarios.
CUSTOMERS
Identifiers
Most systems that manage customers or accounts maintain two types of identifiers:
-
customer_id
A system-generated identifier, typically a UUID or another long, unique string. This identifier is primarily used internally and is usually not visible in the user interface. -
customer_number
A human-readable, often customizable identifier such asK001orK002. This is the value typically exposed to and used by end users.
In SLASCONE:
-
customer_id
A UUID that can be set during customer creation. If left empty, the system generates one automatically. -
customer_number
An optional string-based identifier.
Ideally, synchronization between a back-office system and SLASCONE should be based on customer_id, provided the back-office system uses a UUID or another robust unique identifier. If the external customer_id is not a UUID or is not suitable for reliable identification, synchronization should instead be based on customer_number.
Customer-ID-Based Synchronization
If synchronization is based on customer_id, use the following endpoints:
POST /isv/{isv_id}/customers
PATCH /isv/{isv_id}/customersCustomer-Number-Based Synchronization
If synchronization is based on customer_number, use the following endpoints:
POST /isv/{isv_id}/data_exchange/customers
PATCH /isv/{isv_id}/data_exchange/customersLICENSES
Identifiers
SLASCONE maintains two types of license identifiers:
-
license_id
A UUID that can be set during license creation. If left empty, the system generates one automatically. -
legacy_license_key
Despite its name, this identifier is not limited to legacy system synchronization. It is intended to serve as an optional alternative key in string form and can be used wherever an external reference is needed.
LICENSE ID vs SUBSCRIPTION ID vs CONTRACT ID
Licenses in SLASCONE are typically created as a result of events in a back-office system, such as the creation of a contract, order, or subscription.
To avoid complex data mapping across systems, it is strongly recommended to use the same identifier in both systems. For example, if a contract, subscription, or order with the ID 6b69b539-dfe4-41a0-9b41-1192afebb1ae is created in the back-office system, the corresponding SLASCONE license should be created using the same license_id. This approach significantly simplifies synchronization and downstream workflows.
This approach assumes that the back-office system uses a UUID as the contract or subscription identifier. If the external identifier is not a UUID but a string, synchronization should instead be based on legacy_license_key.
GRANULARITY LEVELS
A key aspect of license synchronization is the level of granularity provided by the back-office system. This typically falls into one of two models:
-
Edition-Based Synchronization
In this model, the back-office system instructs SLASCONE to create a license based on a specific edition. The system does not define or manage the license’s features, limitations, or variables. These are preconfigured and managed within SLASCONE. -
Feature- and Limitation-Based Synchronization
In this model, the back-office system provides all license details explicitly, including features, limitations, and variables. SLASCONE uses this data to create the license dynamically.
SLASCONE’s API endpoints for license creation and modification support both edition-based and feature-based models with a unified approach.
If the request body does not include any features, limitations, or variables, the license is created using the configuration defined in the specified edition.
If these details are included explicitly, they override the edition’s default configuration.
POST /isv/{isv_id}/licenses
PATCH /isv/{isv_id}/licensesCSV IMPORT
In addition to the API, you can also import customers and licenses using a CSV file.
Customers can be added or updated based on customer_number.
Licenses can be added based on a specific edition. This functionality is equivalent to the edition-based synchronization model described above.
DEEP LINKS INTO THE SLASCONE UI
SLASCONE provides a simple way to open key UI views directly from an external back-office system such as an ERP or CRM. This makes it easier to connect operational workflows in your source system with the relevant customer views in SLASCONE.
This functionality is based on the customer_number field, which typically represents the customer identifier in your source system.
The following URL patterns are available:
https://<your_slascone_url>/customeranalytics?customernumber=<your_customer_number>
https://<your_slascone_url>/licenses?customernumber=<your_customer_number>Example:
https://demo.slascone.com/customeranalytics?customernumber=9999
https://demo.slascone.com/licenses?customernumber=9999These links are useful when users in your ERP or CRM should be able to jump directly to the corresponding customer dashboard or license view in SLASCONE without manually searching for the customer first.
Comments
0 comments
Please sign in to leave a comment.