very briefly most important things about the development process

01 September 2021

Given that JoinPAY processes tens of thousands of financial transactions every day, and serves socially significant industries (for example, public transport), we have no right to be down. Of course, we have offline modes of terminal equipment operation everywhere with subsequent cumulative upload to the host, but the fewer such switches there are, the better.

Therefore, the task was to get a cluster that survives the loss of any server, or even several servers, and can put servers into operation after accidents automatically. There were different approaches and synthetic tests, but we stopped at the PostgreSQL+Patroni+Haproxy+etcd bundle.

When simulating the master node getting down, switching takes 4-6 seconds in our case and occurs automatically. The node status is checked at an interval of 1 second, 3 unsuccessful responses are required to bring the server down (code 500), 2 successful responses are required to switch the server back up (code 200).

26 August 2021

Just recently, we came across such a cool thing as Conventional Commits.

I do not know where it has been all this time! Now we use it in our projects! Of course, we had a decent conventional commit before, but now we have a little more order in the projects.

If anyone needs to know why, here is the information: https://www.conventionalcommits.org/en/v1.0.0/#why-use-conventional-commits

Nevertheless, the biggest advantage for us is that there is no need now to fill in the changelog manually, because our developers dislike doing this from the bottom of their hearts. And when expanding the team, it is much easier when there is some convention to adhere to.

12 August 2021

Dashboards surprise nobody. They are available in almost any service. We also had them, but they were with a unified data set for all types of businesses. And we serve very different businesses.

Now the dashboard has become fully customized for the type of business, and the merchant himself can connect the necessary data set and create his own dashboard preset.

In the further development of dashboards, it will be possible to customize the widgets themselves, selecting data for any period, as well as viewing more detailed data sets.

09 August 2021

We recently updated our backend, which resulted in major advantages. Of course, migration problems were unavoidable, but they were not too complicated and we solved them with a couple of commits.

The main advantage that we got is support for asynchronous programming.

Although some parts of the code are still synchronous, soon we will also rewrite them in accordance with the new approach.

In general, even without a full migration, the framework has already shown a significant increase in the speed of work!

3 August 2021

We have accelerated dramatically in the development of the entire JoinPAY platform and its individual parts. Today, our ESLIP receipt repository has started saving fiscal receipts. It does not matter whether it is cloud fiscalization or directly at the checkout. The Salyut-12F cash register in the SDK has the ability to transfer all the necessary fiscal features.

The signs are transmitted to the platform and settle in the desired receipt, and then we pull the API of the Federal Tax Service and form a full-fledged cash receipt. Thus, in eslip, for each transaction, information with bank slip details and a fiscal receipt is provided.

31 July 2021

We continue to improve the JoinPAY products. This week, it is the Salyut-12f cash register's turn.

As you probably already know, our cash register software is universal, and has several configurations for different types of businesses. As the functionality of the cash register grew, the user menu also grew. Now we have come to the moment when not all the items simply fit on the screen. In addition, the visual style of the menu had a lot of room for improvement.

Now everything has changed for the better. We have separated all the navigation on a separate screen, and divided it into logical sections so that our customers can quickly find the necessary functions or sections. A three-word summary: it became convenient.

26 July 2021

Not forgetting about the UX, we rolled out a cool softpos update. In the new version, we have updated the user menus so that merchants can find the necessary functions even faster. In addition, a shopping cart has appeared in the catalog, which shows the total amount and the number of selected products.

Now it is easy to make a full-fledged cash register (in accordance with Federal Law 54-FZ), you need to click "select BT-printer" in the menu and select an available fiscal printer in the menu that appears.

The task is to make softpos easy in terms of onboarding for customers both when connecting acquiring and Faster Payments System, as well as the fiscal part. The reference point is not more expensive than 10 thousand rubles for the launch (you do not need to buy smart cash registers, pay for commodity accounting functions and loyalty). Everything is out of the box.

3 July 2021

Now our softpos supports fiscalization via Bluetooth of all devices of the ISKRA factory.

Moreover, another trick is that in a restaurant (as an example), you can put one such printer and "set" all the softpos on it. That is, each waiter immediately fiscalizes transactions at the table.

In the nearest future, the ISKRA factory will release a PRIM-05 fiscal printer. Thus, it will be the cheapest and at the same time one of the most technologically advanced solutions in the market that ensures compliance with Federal Law No. 54-FZ.

High reliability and speed of operation, as well as low price and cost of ownership, are the major advantages of PRIM-05. At the same time, you can buy a battery pack for it at any time and it will become autonomous.