Development of a payment acceptance system:
we created a product for app monetization from scratch
In brief, regarding the project:
- Mobile app monetization service
- To launch software which allows apps to work with major mobile operators
- Find additional way to monetize client’s products
- Develop payment acceptance system for mobile operators’ apps
- We reached an agreement on the documentation and operation algorithm with the operator’s technical specialists
- We integrated the customer’s system with the operators’ billing system
- We launched payment acceptance system on time
- All completed in one year of development
500+ mobile apps in the ecosystem
AppClick is a mobile apps monetization ecosystem from Russia. It earns commissions from in-app sales, for example, paying for subscriptions, disabling ads, or buying currency for games. More than 30 developers and more than 500 applications are registered in the ecosystem.
Issue: the client has an idea for a new product, but no development resources
AppClick came up with an idea for a new product — a payment acceptance system built into the application in which you can use the user’s balance with a mobile operator to pay.
According to an assessment of the service, such a system would be in demand among mobile operators as an additional source of income, and among users as a convenient way to make payments. And most importantly, AppClick itself would be able to earn commissions on transfers.
Developers and app owners
- Integrate AppClick SDK in their app
- Publish their products on AppClick portal
- Install app on their phones
- Pay for a service or a feature
AppClick and Mobile operator
- Identify users
- Accept their payments
- Enters information regarding the payment
Mobile operator and AppClick
- Receive a commission for payment processing
- Receives the rest of the user’s payment
Potential partners liked the idea of the system, but did not immediately agree to cooperate. In 2016, when AppClick launched the system, this payment algorithm was still new. Therefore, the partners first wanted to make sure that the money was charged correctly, and that user data remained safe so that there was no risk for participants.
AppClick analyzed its capabilities and realized that there were not enough resources for development and coordination with the partners’ technical departments. Either the company would risk its time and money, or it could hire an external developer where it would be guaranteed to receive a complete system.
Another challenge for prospective partnership was to negotiate with the operators’ technical specialists. It would be necessary to discuss and agree on the documentation, algorithm, billing features, fulfill security requirements, deal with protocols, and other tasks.
Solution: delegate development to a contractor
AppClick analyzed the situation and came to the conclusion that it was more profitable to outsource the payment system development. The company turned to the Orbitsoft team since we had already collaborated on other projects.
Using our resources, we met all needs for the product launch: planning, development, testing, and so on. The customer also avoided the bureaucracy and paperwork routine involved in such projects. Our specialists figured out the protocols, lawyers’ requests, and security services requirements.
- Development tasks
- Technical documentation
- Work plan and time frames
Coordination with lawyers and operator’s security service
- Discussion of the process and software architecture, for example, how the system will charge off money, identify the user, etc.
- Draw up documentation with a detailed description of system operation
- Coordination with lawyers and security service of operators
Engineering and development
- Payment acceptance system development
- SDK implementation for developers
- Integration with operators’ billing systems
Testing and fixing bugs
- Functional testing
- Load testing
- System testing in conjunction with a mobile carrier
- Fixing bugs
Commercial launch with operators
Analysis and coordination with lawyers and security service
Before starting the development, our team discussed the technical and legal aspects of the project with AppClick and operators. We immediately agreed on key issues, for example, how we would:
- Charge off money
- identify users
- confirm consent to purchase
As a result of the discussion, a document was drawn up with a description of the set of functions, financial and legal scheme, and architecture of the system. This document was once again finalized with the customer, lawyers, and the operator’s security service, and the finished document was handed over to the customer and their partners.
Planning and development
To prevent AppClick from wasting resources on administrative work, we discussed technical issues with the operator directly.
To begin with, we chose the software and discussed with the operator options for the tariff scale: a one-time purchase or a subscription. We then began development.
As part of the development process, we did the following:
- researched the experience of other SDKs for payment and developed templates for integration on their basis
- wrote a set of libraries for developers, a control panel, and a module for working with operator’s billing
- made three parts for the management model: for an app developer, for a mobile operator, and for a call center (in case of conflict situations)
- compiled a single version of the system for mobile developers
- made a branded subdomain for the operator
Before launching the system, we double checked if it worked correctly on the side of the customer and operators, and made sure that the user would not encounter bugs. For this, we conducted functional and load testing. Then, together with the operator, we tested each link separately, and then the entire system.
As a result, we found errors, but eliminated them before launch. Among the errors were the following:
- the payment went through, but the money was not debited in the billing
- the data was not included in the statistics
- the user subscribed, but the subscription did not work
- the user did not receive a payment confirmation
After successful tests, we launched the system and tracked the results. There were no failures. To better understand how the system works, we show algorithms and service scenarios.
- Request from the user’s mobile phone to us
- A request from us to our own server from the operator’s system
- Interaction of the server with the operator’s billing to charge off money from a subscriber
Work algorithm of the whole system
- A developer publishes an app with the integrated AppClick payment SDK to the platform
- AppClick, together with the operator, identifies users and accepts their payments
- The mobile operator, together with AppClick, informs all participants about the actual charge-offs
A user launches an app
Selects a paid option
AppClick SDK creates a landing page with a payment form
If the payment goes through
- The landing page with the payment form closes
- The user automatically returns to the home screen
If the payment fails
- AppClick SDK creates a landing page with a notification
- The user is automatically switched to this page
- On the landing page there is a confirmation that the payment did not go through, and a list of possible reasons
Results: we agreed on technical and legal details with operators and launched the system to monetize customer services
It took 18 months to negotiate, create, and agree on technical documentation and to develop the system. The system launched in the second quarter of 2016.
Development was not difficult. We had already had a similar experience. The main difficulty was to fulfill the technical and legal conditions of the operators so as not to disrupt the terms of the entire project:
- Each stage had to be coordinated with several departments at once. To meet the deadlines, we involved a product manager: this way the developers were not distracted and the tasks were not stalled.
- In order to gain access to the servers, part of our team was hired as part-time operators.
There were many such conditions, and they took time. We understood that this was part of working with big business, so we simply put more hours into the project and found specialists with experience in working with corporations.
Results of the work of the system for December 2019 — January 2020
MTS and Beeline users paid for services and options through the AppClick system
Technical block of the project
CodeIgniter PHP Framework
Zend — PHP Framework / library
WURFL — Mobile Device Database