It’s come time to sell our software products, and our services, to our customers. But like with other parts of our stack, we’ve chosen to build a general-purpose, decentralized platform that people around the world will be able to use, as well! Instructors, conferences, performers, venues, restaurants, and many service providers around the world would be able to make money through one, unified framework:
Data Architecture
We now implemented two types of streams: Assets/product
and Assets/service
. Products can contain other products, in a hierarchy that looks like this:
Users plugin
|- Included: Basic Functionality
|- Profiles
|- Roles
|- Relationships
|- Additional Option: Avatars
|- Additional Option: Backgrounds
Each product may also come with services, such as customizing
, hosting
, moderating
etc. A service (Assets/service
) may have one or more related tasks (Streams/task
) that need to be completed. People who have access will be able to see the progress on the tasks, and pay for their completion.
The community and its admins can add products, or invite some others to add their products to the catalog. Customers can then come and select the products they want, putting them into a shopping cart, and generating an order. In some cases, Products are available only at certain times and locations (such as a breakfast menu in a restaurant, or various seats at a concert). In this case, people have to browse availabilities and make a reservation to come to the venue. They may pay an entrance fee to use the facilities, in addition to consuming the products they ordered.
Some applications, like Teaching.app replace Products with Topics. You can learn topics and subtopics. Then, services can include things like tutoring
, grading
, translating
etc.
Still other applications can replace Products with checklists of Goals. For example, when you are planning a Wedding, you will need to rent a Wedding Hall, order Catering, etc. Each of these might consist of products and services. And in our decentralized system, each can be supplied by a different provider!
Offering a Service
When it comes to each Product / Topic / Goal etc. providers can offer specific services. People can then view the ratings and reviews, the prices availabilities of each provider, and choose to request to reserve that provider’s services. Each service comes with a basic Agreement, but in the future, the agreements framework can become more complex.
Services can have attributes such as “live” (e.g. a performance), “in-person” (e.g. a restaurant), “nearby” (e.g. food delivery or laundry), “visiting” (e.g. handyman), “online” (e.g. an online class) and “recorded” (to be viewed later).
Providers of live services can post their availabilities, across various time slots and locations, and relate them to the service so people can discover them and make a reservation. Each availability can have its own price, which is typically taken from a private template the provider already has. Providers would have a history of ratings, reviews, and disputes from previous services and tasks they have completed.
The provider may employ various staff (as a “job creator”) and pay credits to advertise their availabilities on the site. Users in self-serve mode discover providers when browsing services, and reserve their time. Or they may be assigned a “case manager” by the community, who meets with them, understands their needs, and takes care of the entire hiring process.
Unlike recurring subscriptions, payment for services depends on successfully completing the tasks to everyone’s satisfaction. Paying a provider is typically done in Credits (which correspond to the community’s local currency) and can proceed in up to three phases:
- Reserve (request, and pay a partially refundable deposit to prepare your place)
- Purchase (when you arrive, scan QR code of the staff member serving you)
- Finalize (release the money, rate and review. Or you can start a dispute)
See more information here:
Tasks
Services sometimes involve tasks being completed, which in turn, may depend on other tasks. The templates for services and their tasks hierarchy only have to be set up once, and can be cloned as necessary.
The tasks, may depend on purchasing other products and services, provided by subcontractors of the provider. The provider may have special bulk discounts with their subcontractors. However, in the Qbix ecosystem, the customer might go through and choose their own providers to take care of various parts of the hierarchy. Each relevant party (customer, provider) can be notified when each specific task they are waiting on is done, and when their own task is ready to be completed.
The price of a service refers to how much the provider charges. On the other hand, “costs” refers to how much the provider would pay for downstream tasks. In the future, we may also implement auctions, where N people sign up for an event or course, or pay for a service, and after it is filled, but until it begins, people can pay more to bump those who paid the least.
In this way, the Qbix Platform helps coordinate not just the tasks, but the payment for the tasks, and dispute resolution. Tasks are only undertaken after people have signed off on the agreements. Ratings and reviews are only left by people who actually paid for the tasks. They can be resolved privately, or escalated into public disputes.
As time goes on, and tasks are done many times by multiple providers, the system can also help with comparing ratings, reviews, cost and time estimates, to get a wide range of services done. This includes an increasing number of tasks that can be done by AI agents managed through our sister company, EngageUsers.ai.