Web Monetization Community

loading...
Cover image for Tiki ILP Integration and Monetization — Grant Report #1
Tiki ILP Integration & Monetization

Tiki ILP Integration and Monetization — Grant Report #1

wikisuite profile image Marc Laporte Updated on ・7 min read

Project Update

The proposed solution is based on WikiSuite — a comprehensive and integrated Open Source information suite designed for enterprise use. The main component of WikiSuite is Tiki Wiki CMS Groupware (or "Tiki") which is a full-featured web application platform and arguably the one with the most built-in features.

To implement the proposed solution's ability to seamlessly send and receive payments, the development team intends to integrate Interledger Protocol (ILP) payments with Tiki. Similarly, to provide efficient web monetization, Tiki will integrate an implementation of Coil — an open web monetization technology that ensures compatibility with competing services and any currency. These steps will make possible seamless online transactions and web monetization capabilities in WikiSuite to enable the WikiSuite communities and end-users to enjoy excellent payment and monetization features.

Regarding the integration with ILP, the development team encountered some unforeseen difficulties. We explain the challenges we encountered in the "Key Activities" section.

For web monetization, the team utilized the Coil API to create a plugin that allows website administrators to manage the monetization. The process also involved the development of advanced features enabling multiple authors or administrators to monetize their digital content on the same website.

During the process of solution design and development, the development team faced an unexpected inconvenience as the Technical Team Lead resigned due to unavoidable circumstances, thereby causing a delay in the estimated project timeline. The process of finding and assigning a new Team Lead caused a three-month increase in the project timeline. The team deeply appreciates the Grant for the Web Program team granting the WikiSuite team a no-cost extension.

The development team revised the planning and timeline with the new Technical Team Lead and is glad to be back on track again. The team has successfully completed the initial design and development and has thoroughly tested the new features on a designed prototype. This designed prototype will also enable streamlining the testing processes of the solution in the future as well. The newly developed web monetization features will be integrated in the latest Tiki version — Tiki 23 — which will be released in July 2021.

Progress on objectives

The first objective is to make Tiki fully compatible with ILP for sending and receiving payments, and with Coil for web monetization. Integration with ILP is currently not as far along as we would like, but we continue to work on it and make steady progress. On the other hand, the integration with Coil has been completed. The team has implemented a new administration panel preference to activate monetization of an entire Tiki website, and a wiki plugin (a kind of macro placed in wiki text) named "Plugin Coil" enables monetization of specific content. With these steps, Tiki will be capable of efficiently and most easily performing monetization of the complete website or selected contents of the website. Fully complete Coil integration will be provided in Tiki 23. The ILP integration continues and will be completed as soon as the challenges encountered have been met.

The second objective is to guide Tiki's Open Source community in regard to the various opportunities and challenges that come with the ILP and Coil integrations. The WikiSuite team will, for example, thoroughly explain and discuss the experience acquired during the implementation of these integrations in the upcoming TikiFest along with discussing opportunities created by the development of the new features that enable seamless processes to send and receive payments, and perform website monetization. TikiFests are a tradition in the Tiki community where community members — developers, power users, and other interested people — from around the globe meet in person or, recently, virtually, to discuss the latest advancements, challenges, and opportunities in the Tiki sphere and other related technologies and culture.

The last objective is to help end-users of WikiSuite and Tiki technologies better manage money online and benefit from the new features and their opportunities. In the upcoming few weeks, the WikiSuite team will begin writing detailed documentation to guide end-users in configuring and using these features. Also, the team plans to publish the latest features and updates on social media to engage and provide awareness to as many people as possible.

Key activities

Website monetization enables Tiki website administrators to monetize the website or some of its contents using Coil. The WikiSuite team aims to make it possible for any Tiki user to monetize the pages or contents they own at a Tiki website.

The latest features provide the ability to :

  • Activate and configure website monetization in a Tiki administration panel (default site pointer and a paywall text): Alt Text
  • Allow every Tiki user to configure their own pointer (wallet) for website monetization: Alt Text
  • Use wiki Plugin Coil to monetize specific content, acting like a paywall in that only paying viewers can access the content:

Using default paywall text

{COIL()}
The content you're viewing in exclusive. 
Thank you for your contribution.
{COIL}
Enter fullscreen mode Exit fullscreen mode

With a custom paywall text

{COIL()}
The content you're viewing in exclusive. 
Thank you for your contribution.
{ELSE}
This content is exclusive!
To view this content you need to use the Coil extension.
{COIL}
Enter fullscreen mode Exit fullscreen mode

Users can monetize their content.

{COIL(user="admin")}
The content you're viewing in exclusive. 
Thank you for your contribution.
{ELSE}
This content is exclusive!
To view this content you need to use the Coil extension.
{COIL}
Enter fullscreen mode Exit fullscreen mode

Code changes are shown in the merge request: https://gitlab.com/tikiwiki/tiki/-/merge_requests/767
Demo website to experiment the new web monetization feature: http://grantfortheweb.wikisuite.org/

Processing Online Payments : Create modules and integrate ILP in Tiki websites for sending and receiving online payments for products or services.

As a way to enable fair and open access to enable payments in Tiki we want to add support to leverage Interledger payments. Tiki currently already has the building blocks for e-commerce and subscriptions and we planned to add support for payments using Interledger. In the vision any Tiki owner would be able to use Interledger to take payments on their websites, that process was envisioned to be the simplest possible, lowering the barrier to adoption. The approach taken was to build a library that would offer a consistent interface to request payments using multiple providers and have that library published as an asset by itself, and then integrate that library in Tiki, so that the Tiki website owner would mostly need to supply the credentials of the platform/wallet to use and the process would "just work".

Unfortunately when trying to implement this idea, we found that in the market there are primarily two ILP-enabled wallets upHold and GateHUB, and of them only GateHUB allows you to use ILP Pointers as targets for payment. Additionally, we would need an "invoice" creation interface so that different ILP Pointers could be created by invoice so we could track the settlement of an order. Neither of the above providers offer such a facility and in this area only Anypay offers the kind of interface that we would need (https://docs.anypayinc.com/invoices/create-invoice) but unfortunately they don't offer ILP yet. This clearly represents a big gap in the market and a risk/challenge for wider adoption of ILP.

This delayed progress as we needed to go back to the drawing board. Nevertheless, we still believe the concept described above is a valid one, so we are in the process of doing the following adaptations that will allow us to prove the concept and make it robust enough for anyone that wants to run their own SPSP invoice server to be able to integrate with Tiki. We will keep the concept of a library, but for now with a single back end (https://github.com/interledgerjs/ilp-spsp-invoice-server) and we will integrate that with Tiki.

This approach will require a deeper level of integration with ILP than expected, when compared with integrating with existing wallet providers, but it will be able to showcase the usage of ILP payment that we envisioned for this project. The current limitation of this approach is that, for the moment, money would only connect to the community network, not the ILP livenet.

What’s next?

Although more work remains on ILP integration, the development team is glad to be on track. We will continue to make the necessary efforts to meet our objectives. The next steps include a detailed and thorough testing of the newly implemented features with the designed prototype. The testing process will involve detailed testing of the features along with fixing any bugs that are found during the process. Once the bugs are fixed, the team will ensure seamless execution of the newly integrated features in Tiki and will implement any required improvements.

Furthermore, detailed documentation incorporating details about the latest features will be compiled to enable the Tiki community of users to leverage the advanced, efficient, and easy mechanism for online payments and website monetization. After the testing and documentation, the task to publish the details of the latest features on social media will be carried out in order to guide and illuminate both Tiki users and others around the globe.

What community support would benefit your project?

WikiSuite is a part of the global community of over 20,000 individuals invested in the creation and development of Open Source software. The team always seeks new people interested to join the Tiki community to contribute to Open Source development. The extensive community enables further enhancement and improvement of the developed features along with providing answers to users' questions. It is not possible for one developer to create a foolproof solution and eliminate all the issues or bugs in a feature or a software solution. However, if done by a community of hundreds or thousands, then each individual, having their own experiences, skills, and perspectives, can contribute to significantly improve and enhance the software solution or feature. Anyone interested is welcome to join our active community and start contributing now at https://gitlab.com/tikiwiki.

Discussion (2)

Collapse
joepio profile image
Joep Meindertsma

we found that in the market there are primarily two ILP-enabled wallets upHold and GateHUB, and of them only GateHUB allows you to use ILP Pointers as targets for payment.

That seems very interesting! I was under the impression that the existing wallets did not support sending money to an ILP Payment Pointer, only receiving (such as Uphold). I wasn't able to find docs on GateHUB for sending to ILP, only receiving.

Anyway, our project kind of depends on programmatically sending money to payment pointers, but we haven't figures out yet how to do this, so if GateHUB does support it, our problem could be solved!

Collapse
wikisuite profile image
Forem Open with the Forem app