What is Socrate Business Services


Socrate Business Services (SBS) is a suite of application programming interfaces (APIs) used to accomplish critical business tasks in a reliable and scalable manner. Such business tasks include, but are not limited to, sending email, managing received email, generating invoices, submitting tax declarations, managing files, authenticating users, pushing notifications to browsers, localization services, and many others. This eliminates the need for your organization to invest in development “from scratch” and, instead, integrate existing out-of-the-box business solutions into your software.

SBS is primarily targeted to companies or organizations that develop software applications for the Enterprise Resource Planning (ERP) market; however, its services are generic enough to be consumed in other business areas as well.

Key concepts

To use SBS, your organization must hold an SBS account. The account holder is typically a software company that develops one or multiple software applications that consume SBS services. For example, SoftDevCompany may be a software company that develops ERP products for their customers. Billing for usage of SBS takes place at account level.

Within an account, the account holder may define multiple tenants. A tenant is typically a customer company that purchased licenses for any of the applications developed by the account holder. For example, Pizza Place, Wine & Co, and AutoGroup are all customers of SoftDevCompany. In this case, from the SBS perspective, SoftDevCompany is the account holder, and the other three companies are tenants.

Within an account, the account holder may also define multiple apps. Each app identifies a software application that consumes the SBS API. For example, let’s assume that SoftDevCompany has developed an ERP app and a Payroll app that both need to send email and will be using the Email Service for that purpose.

To summarize, an account groups together all apps and tenants that belong to it. The diagram below illustrates the typical structure of an account. Namely, SoftDevCompany is an organization (account) that has a suite of products (apps), and there are many client companies (tenants) that have licensed one or several of those products.

diagram

Within the same account, a tenant may use multiple apps. Also, the same app may be used by multiple tenants. For example, in the diagram above, the ERP app is licensed by Super Pizza and Wine & Co, whereas the Payroll app is licensed by Wine & Co and AutoGroup.

Data isolation

The data stored in SBS is almost always isolated at the tenant level; this ensures that no tenant can access any other tenant’s data. For example, the emails sent by Super Pizza through the Email Service are data stored at tenant level.

Some business cases demand, however, that data be stored at app level. App-level data does not concern any specific tenant using the app (or it concerns all tenants, in which case it may be available read-only at tenant level). For example, labels and translations in Localization Service are stored at app level, since they are common to all tenants. The same data is also available at tenant level, read-only.