Разработка ПО для платежных терминалов и сенсорных киосков


- В поисках терминального ПО?
- Желаете меньше отдавать, но больше получать?
- Нужно купить терминал?
Звоните нам!

8-800-700-32-60

info@PayPRO.ru

Номер телефона:

Иван Тряпичкин, Челябинская область

Я работаю с данным ПО уже около года. В свое время меня привлекло в этом комплексе то, что можно работать одновременно с несколькими платежными системами одновременно, гибкие и удобные настройки и выделяющийся дизайн. Структура программы интересна тем что если будет какой то сбой то он заденет только 1 терминал, нет единого сервера как у других, ошибка которого нарушает работу всей сети. Также радует постоянное совершенствование программы, конечно это может вызывать сбои, но никто не запрещает пользоваться только стабильными версиями, а новые функции добавлять после их тестирования. Желаю коллективу разработчиков всяческих благ, процветания и побольше клиентов. Спасибо.

Read more...
Error
  • JLIB_APPLICATION_ERROR_COMPONENT_NOT_LOADING
  • JLIB_APPLICATION_ERROR_COMPONENT_NOT_LOADING
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1
  • Error loading component: com_content, 1

Новости

 

In this article, we describe our experience in creating cryptocurrency acquiring system and crypto exchange platforms seen as a product.

Same mechanism is used with cryptocurrency exchange platforms, cryptoprocessing and other payment systems for cryptocurrency work.

 

1. In place of a Foreword. What is a mining fee

Mining fees is a transaction fee that goes to those miners who service the system, create new blocks with operations on the blockchain. It can be seen as a fee for making payments. This fee is taken not by a specific organization, but by any distributed miners. It is more likely that a pool of miners with a distribution of remuneration that is proportional to the hashrate, as single miners are no longer able to create blocks ahead of schedule.

As a rule, when the entire limited amount of coins is "mined", it is the transaction fee that will ensure the operation of cryptocurrency distribution. Transaction fees provide financial incentives to maintain a distributed blockchain system.

Each cryptocurrency has its own blockchain with its own characteristics, including its own transaction fee.

The size of the fee is set at the time the transfer operation is performed. There is a minimum fee, but in this case, the operation will get a low priority. In different systems, this can take up more than one day.

To speed up the transaction, you can set an increased fee for processing it. In this case, the priority of such a transfer will be higher and it will be processed much faster.

 

2. Miner fee rates

Currently, the minimum miner fee (network fee) equals to:

Bitcoin: 1 Satoshi

1 Satoshi = 0.00000001 BTC = 0.000094 USD (as of June 21, 2020)

Ethereum: 1 gwei for 21000 gas minimum

1 gwei = 0.000000001 ETH = 0.00000023 USD USD (as of June 21, 2020)

 

Bitcoin

Bitcoin

Recommended Network Fee (by blockchain.com):

Minimum: 1 Satoshi

Regular: 3 Satoshi

Priority: 19 Satoshi

 

Ethereum

Recommended Network Fee (by blockchain.com):

Minimum price gas: 1 Gwei

Regular price gas: 16 Gwei

Priority price gas: 19 Gwei

*as of June 21, 2020

 

Information on different fees can be easily seen when trying to complete an operation.

It is useful to analyze how the queue for processing the operation is distributed depending on the size of the fee.

Using the example of Bitcoin, at the time of writing on June 21, 2020, the statistical dependence is presented below (it is updated based on operations in the blockchain every 3 hours):

 

 

The fastest operations are possible with a minimum fee of 21-22 Satoshi.

In this case, there is no queue for processing and the operation will fall into the nearest block.

Each new block in the blockchain is created approximately every 5-15 minutes.

Most often people make a transaction either with a minimum fee (1 satoshi) or with a “recommended minimum” (3 satoshi). At the same time, the transaction time for 1 satoshi is the longest, because operations are 4 times longer than in the long mempool.

Next we are going to look at the business model of the cryptoexchange platform and cryptoacquiring system and the impact a different network fee has on different business process options.

 

3. Crypto acquiring and crypto exchange platform business model

There are several schemes of how such systems work, but all of them can be divided into 3 types:

  • 1) With no wallet and no personal account
  • 2) With your own wallet
  • 3) Hybrid
  •  

By and large, hybrid options are a kind of system with their own wallet. In fact, they allow you to carry out operations both using your own wallet but no registration required.

In this case, having your own wallet means not organizing your own cryptocurrency with your own blockchain. A wallet in a payment system is an opportunity for customers to deposit their cryptocurrency to addresses belonging to the system.

In fact, customers place their money on your cryptocurrency wallet and they must trust your payment system (this will be discussed in more detail below).

Both of these models have their pros and cons.

 

3.1. Crypto acquiring system without a wallet

This is the most simple cryptocurrency payment system in set up and use.

We add a unique address to the system for a particular transaction and offer the client to make a deposit. The system should regularly check the balance and the number of confirmations for all established addresses. If the system has detected a deposit, it means that it was our client who made a deposit (since the created wallet is unique and only the client knew about it).

 The wallet can be replenished several times, in practice when using systems with no wallet and registration, a unique wallet is usually created for each client operation.

 

A model without a wallet can exist as an independent product, or it can be the first step in developing a more functional crypto-acquiring system with a wallet. This causes no difficulties and this stage is often used as an MVP (minimum viable product) and as a pilot project to assess the prospects for further investments in product development.

This payment mode can be easily added to the existing form of acquiring system. All a customer needs to do is to create a new payment method - cryptocurrency (along with cards, e-wallets, paychecks, etc.). For merchants, no new technical requirements are reqiured (the requirements can vary depending on a country).

Key Features:

  1. - A unique address is generated for the client, where all the transfers go
  2. - The transaction can take some time which brings exchange rate risks
  3.  

You can reduce exchange rate risks by:

  1. - Reducing the number of necessary confirmations that the transfer is received
  2. - Send funds for withdrawal to fiat at the time of receipt of a client transfer, fixing the rate (if there is a fixed fee for withdrawal to fiat you can withdraw a whole sum or make several withdrawals once an hour or once a day)

 

Pros:

+ easy to implement

+ easy payment process

+ highest reliability and safety (no need to store other people's funds for a long time)

+ no additional technical actions are required from the merchant

Cons:

- the payment is not instant and can take long for some cryptocurrencies and a low network fee

- high exchange rate risks due to the low payment rate

- high payment for network fee, as you need to cash in every received payment (there may be options)

- inability to use funds on client wallet accounts

 

3.2. Crypto-acquiring system with a wallet

This option involves registration and preliminary replenishment. Funds are stored on the wallet in the transferred cryptocurrency.

If the service has an internal wallet, then the operation takes very little time, since the balance of the internal wallet is a virtual account, just a number. It can be instantly reduced without real movement of funds between wallets. This is the most profitable and quick option as internal transfers are not charged, the transaction can be made within seconds.

 

The wallet  solves the problem of exchange rate risks once and for all. If necessary, you can withdraw the client's cryptocurrency to fiat and fix the exchange rate without any delay, because client funds are already into the system. If there is not enough money in the wallet, then the client needs to replenish the wallet taking the exchange rate risks himself.

Guarantee and reliability

Processing, payment systems, electronic wallets and other systems that store funds have one important problem - liquidity. This problem exists in banks but bank liquidity is regulated by law. Other fintech projects are also trying to introduce regulations, but the problem is still urgent.

The root of the problem is that a large amount of funds is excluded from operating cash flow and are  accumulate on customer accounts. There is a great temptation to use these funds for various purposes: from investment to personal. Our experience in the payment sector has shown that liquidity problems can lead to fintech projects shutdowns (including even strictly regulated banks). In most cases, customers do not receive their funds back, as they were spent a long time ago (and before the crises there were no withdrawals).

In this regard, there are two modes of operation of the wallet.

3.2.1. Fully Virtual Accounts

When using virtual balances on accounts, there is no real cryptocurrency movement. Everything passes only in the form of a virtual change in the state of the balance of accounts of different currencies. Such operations take place instantly inside processing without the participation of the blockchain.

When a client replenishes their wallet, they see the address tied to the client’s account. The address is reusable and it can be replenished an unlimited number of times. In this case, you can create new addresses if the client adheres to the rule "one operation - one address".

All addresses belong to the company and are tied to the client forever, therefore a client can use all of them.

However, in the model with fully virtual accounts the addresses are used only to define the replenishment. Cryptocurrency is stored on the account for a short time and funds are transferred within a day to a company address, where all fixed assets are stored.

It is convenient to collect funds from all customer wallets once a day. In this case, we pay a single fee for the operation of collecting balances from many wallets in the system. For your safety, you can use not one but several wallets.

In this model, the client sees that there is 1 BTC on the account, but in reality there are no funds on this wallet, because they were transferred to the permanent address of the company.

Pros of a common wallet system:

+ instant payment from the wallet

+ complete absence of exchange rate risks

+ no additional technical actions are required from the merchant

+ the ability to use funds from client wallet accounts

+ stimulates to create an account and use other services of the company

+ facilitates further use

+ client binding

Advantages of the virtual model:

+ saving money when creating a single group collection operation from all addresses to a single one

+ the ability to use funds for investment

Cons of common wallet systems:

- higher implementation complexity

- a more complex process of first payment due to required registration (although it can be made relatively simple)

- lower reliability due to the possibility of losing control over customer funds

Cons of the virtual model:

- the risk of losing customer funds

- low transparency of the system for an external user

- low ratings in an independent audit

 

3.2.2. Real Wallets

To confirm reliability and guarantee that a system is not a soap bubble crypto-wallets need to undergo an independent audit. To do this, you should keep clients' money not on virtual addresses, but on real ones. In this case, the funds are constantly stored where the client transferred them. When paying or withdrawing from the wallet the funds should be transferred to another address and so the real balance is reduced.

This option is a guarantee that the addresses of the system store the funds of all customers. This means that the owners of the system cannot withdraw money from the system. It eliminates the hidden situation that large amounts of funds displayed on virtual customer accounts can be fake.

With money in real wallets, we demonstrate the highest liquidity and security more than any bank with state regulated reserve standards. 100% liquidity is not required for operating activities and is only an open demonstration of the system reliability.

Since the funds are actually stored at our internal addresses, the transaction inside the system using the blockchain becomes completely transparent. In this case, when a customer purchases, we transfer cryptocurrency from the customer’s real address (within our wallet) to the system address of the company. So we get a combination of instant transactions and maintaining a real balance at customer addresses.

Using a real wallets model, you will have to pay a fee for real operations inside the blockchains of different currency wallets. In this case, perfect transaction transparency is achieved while maintaining the maximum speed of the operation (we cannot wait for confirmations from the blockchain, because the operations are performed between the addresses belonging to one user).

Pros of a common wallet system:

+ instant payment from wallet

+ no exchange rate risks

+ no additional technical actions are required from the merchant

+ the ability to use funds on client wallet accounts

+ stimulates to create an account and use other services of the company

+ facilitates further use

+ we bind the client to ourselves

Advantages of the virtual model:

+ high ratings in independent audits

+ high transparency of the system for an external user

+ the ability to use funds for investment

+ you can moderate spending on fees

Cons of common wallet systems:

- higher implementation complexity

- a more complex process of first payment due to a required registration (can be made relatively simple)

- lower reliability due to the possibility of losing control over customer funds

- transaction takes more time, the client may refuse to pay at all

Cons of the virtual model:

- danger of wasting customer funds

Ways to offset the disadvantages:

+ reduce the fee by performing synchronous transfer operations from address to address, making them not instant, but in the form of group times per hour / day

+ offer payment with registration optionally, saving the option of quick payment without registration

+ when paying without registering a client, you can register automatically and send account information

+ offer a bonus for payment with registration

What pros we need to intense:

+ passing an independent audit as a guarantee

+ part of the metrics can be published openly to confirm high reliability

+ tell more about the security of our system and how it works

+ talk about instant payment speed

+ an easy way to receive cryptocurrency, while receiving a conservative fiat for merchants

 

It is possible to make several tariffs for working with virtual wallets and with true addresses.

Those who value the highest level of transparency and liquidity guarantees will use true addresses with real funds in wallets.

Those who are less concerned about maximum security can use a cheaper option with virtual addresses.

Such option can be called an “investment rate”, which officially allows you to use part of the funds from wallets for your investments.

One of the main disadvantages - additional features will somewhat complicate the perception of the system. However, presenting them as two different rates solves this problem - this becomes an entity   from everyday life, understandable and familiar to everyone.

This can become the USP, which is not yet on the market. This is also part of the openness and transparency that everyone, including customers and investors, love but without disclosing operating indicators.

 

4. Product metrics

The need for a particular metric depends on the goal.

If we believe that the goal is profit (and not gaining market share at any cost), then the list of metrics presented below will be useful.

It is advisable to break down the metrics in accordance with the stages of product launch.

 

 

1. 1.       Market entry phase

 
Metric, indicator value Change per day% Change per week % Change per month % Change per month % a year ago
Registered Customers        
Active customers (first payment)        
Registration without activity        
Active customers (multiple payments)        
Ставшие активными клиенты (первая оплата)        
Client CTR: Registration -> Use        
Registered Merchants        
Merchants that became active (first cryptocurrency intake)        
Registration of merchants without activity        
Active merchants (multiple cryptocurrency intake)        
Merchants CTR: Registration -> Use        
Service use without registration        
Service use with registration        
No registration share        
Registration share        

 

 

2. Active growth phase

 
Metric, indicator value Change per day% Change per week % Change per month % Change per month % a year ago
Number of operations        
Operations value USD        
Operations value in cryptocurrency        
Registered client ROI        
Active client ROI        
Registered merchant ROI        
Active merchant ROI        
Average number of visits        
Average per cent of profile fill-in        
Average per cent of report views        

 

 

3. Sales promotion phase

 
Metric, indicator value Change per day% Change per week % Change per month % Change per month % a year ago
Revenue per customer        
Profit per client        
Average transaction number (per Client)        
Average revenue per one merchant        
Average profit per one merchant        
Merchant transaction number per day        
Customer Returns, Repeatability        
Average payment        
Average cryptocurrency replenishment rate        
Maximum transaction number per hour        
Gross profit of crypto acquiring services        
Total capitalization        
Current assets        
Current assets to total capitalization share        
Current assets daily turnover        
The amount of unused funds on customer accounts        
Frozen funds average term        
Cryptocurrency rate (to study correlation)        

 

 

Additional SEO Metrics

 
Metric, indicator value Change per day% Change per week % Change per month % Change per month % a year ago
Citation of themed pages        
themed pages traffic        
Number of reviews        
Positive reviews        
Negative reviews        
Positive reviews share        
Negative reviews share        

Technical support flow

 

       

Metrics working tool is necessary for getting samples of indicators by customers with the ability to sort and filter them make cuts by sex, age, countries / regions, make graphs, charts and reports.

It is necessary to decide which of the metrics can be made public.

The purpose of public metrics is to demonstrate the reliability of funds storage and company long-term goals. If we publish a turnover of 100 million dollars, and there will be 10 bitcoins on internal wallets, the company will get no trust. Therefore, it is important to show reliability, but not disclosing profitability and performance indicators.

Technical metrics:

 

Technical metrics should be determined by a Project Manager.

There are many- from availability of servers and services / microservices, to the size of blockchains.

5. Technical architecture:

When we are going to keep other people's money, one of the first problems and risks is the issue of security and the withdrawal of this money. This is extremely important!

Technically, the security issue must be ensured by the correct modern architecture.

For such projects, a cloud architecture such as Amazon Web Services is an ideal option.

AWS advantages:

- Excellent scalability: autoscaling, load balancer, common dimensionless drives and much, much more

- highest security: Parameter Store, developed system of rights, policies and roles, creation of infrastructure as a code, divided deploy

- the ability to use on premises services located in your own data centers (or office)

- Developed CDN for fast static output around the world

- High Availability (HA): through the use of duplication on servers in different data centers, managed services including databases, container clusters (including Kubernetes)

Right architecture when working with cryptocurrency wallets is extremely important.

Basic measures to be implemented:

- it is extremely important to separate product, test and development  code deployment

- no programmer should know the product passwords

- while being tested the code should automatically be transferred to the product infrastructure with its own set of credentials in the Parameter Store

- of course, there should not be any passwords in the code, and even more so in the version control system (git)

- the system should not store secrets in environment variables, but use the Parameter Store with automatic rotation of secrets

- no one should have access to the servers via SSH (if updates are necessary, create new servers and delete old ones)

- all code must be revised to prevent attempts to remove "secrets"

- regular internal and external security audits

- monitoring access to resources with a notification

- the use of modern methods of proactive blocking of attacks, including Honeypot, etc.

 

Conclusion

Behind the scenes of this article is market research, the formation of functional requirements, promotion issues and a roadmap.

All these issues vary from project to project, and therefore require a case study.

Choose us If you want to create your own cryptocurrency acquiring system or cryptocurrency exchange platform - you can fully rely on our experience in this field.

 

В данной статье мы опишем наш опыт создания криптовалютных эквайрингов и криптообменников с продуктовой точки зрения.

На основе этих же моделей работают и криптобиржи, криптопроцессинги и другие платёжные системы для криптовалюты.

 

1. Вместо вступления. Что такое miningfee

Mining fees - это плата за транзакции, которая идёт тем майнерам, которые обслуживают систему, создают новые блоки с операциями в блокчейне. Можно считать аналогом комиссии за проведение платежей. Только эта комиссия не конкретной организации, а неопределённым распределённым майнерам (если точнее, то скорее пулу майнеров с распределением вознаграждения пропорционально хэшрейту, т.к. простые одиночные майнеры уже не в состоянии опережающе создавать блоки первыми).

Считается, что когда весь ограниченный объём монет будет "добыт", то именно плата за транзакции будет обеспечивать работу распределённой криптовалюты. Плата за транзакции обеспечивает финансовую заинтересованность в обслуживании распределённой системы блокчейна.

У каждой криптовалюты свой блокчейн со своими особенностями, в том числе свой размер платы за проведение транзакции.

Размер платы устанавливается в момент создания операции перевода. Есть минимальный размер платы, но в этом случае операция будет проходить с низким приоритетом. В разных системах это может занимать до более суток.

Для ускорения проведения транзакции можно задавать повышенную плату за её обработку. В этом случае приоритет такого перевода будет выше и он обработается значительно быстрее.

 

2. Размер mining fee

На текущий момент минимальный размер miningfee (networkfee) составляет:

Bitcoin: 1 сатоши

1 сатоши = 0,00000001 BTC = 0.000094 USD(на 21 июня 2020)

 

Ethereum: 1 gweiза 21000 gas минимум

1 gwei= 0.000000001 ETH = 0.00000023 USD USD(на 21 июня 2020)

 

Информацию по комиссии можно легко увидеть при попытке совершения операции.

 

Bitcoin

Bitcoin

Рекомендуемый blockchain.com размер Network Fee:

Минимальный: 1 сатоши

Обычный: 3 сатоши

Приоритетный: 19 сатоши

 

Ethereum

Рекомендуемый blockchain.com размер NetworkFee:

Минимальная цена gas: 1 Gwei

Обычная цена gas: 16 Gwei

Приоритетная цена gas: 19 Gwei

* Данные на момент написания материала 21 июня 2020.

 

Полезным является анализ как распределяется очередь на обработку операции в зависимости от размера fee.

На примере Bitcoin, на момент написания материала 21.06.2020 статистическая зависимость представлена ниже (актуализируется на основе операций в блокчейне за последние 3 часа):

Видно, что самое быстрое проведение операций возможно при минимальном размере платы в 21-22 сатоши.

В этом случае очереди на обработку нет и операция попадёт в ближайший блок.

Каждый новый блок в блокчейне создаётся примерно раз в 5-15 минут.

Характерно, что основная масса людей проводит операции либо с минимальной комиссией (1 сатоши), либо с «рекомендованной минимальной» системой (3 сатоши). При этом скорость проведения за 1 сатоши самая долгая, т.к операции в 4 раза дольше находятся в длительной временно необрабатываемой очереди mempool.

Дальше в разделе про бизнес-модель работы крипто-обменника и крипто-эквайринга мы рассмотрим влияние networkfeeна разные варианты бизнес-процессов.

 

3. Бизнес-модель работы крипто-эквайринга и крипто-обменника

Есть несколько схем, как работают такие системы, но все их можно разделить на 3 типа:

  • 1) Без собственного кошелька и без личного кабинета
  • 2) С собственным кошельком
  • 3) Гибридные

 

По большому счёту гибридные являются разновидностью системы с собственным кошельком. Фактически они позволяют проводить операции как с собственного кошелька, так и без регистрации в системе.

Под кошельком в данном случае имеется ввиду не организация собственной криптовалюты с собственным блокчейном. Кошелёк в контексте системы приёма платежей - это возможность клиентам заводить свою криптовалюту на адреса, принадлежащие системе.

Фактически клиенты располагают свои деньги на вашем криптокошельке и для этого они должны доверять вашей платёжной системе (о доверии подробнее речь ещё пойдёт ниже).

Обе эти модели имеют свои плюсы и минусы.

 

3.1. Система крипто-эквайринга без кошелька

Это наиболее простая в организации и использовании система приёма платежей криптовалютой.

Мы добавляем в систему уникальный адрес для данной конкретной операции и предлагаем клиенту пополнить его. Система должна регулярно проверять баланс и количество подтверждений для всех заведённых адресов. Если система обнаружила пополнение на данный адрес – значит, его пополнил именно наш клиент (так как кошелёк создавали уникальный и его знал только он).

В теории этот кошелёк можно пополнять несколько раз, но в системах без внутреннего кошелька и без регистрации - практикуется создание уникальных кошельков для каждой клиентской операции.

Модель без кошелька может существовать как самостоятельный продукт, а может быть первым этапом в разработке более функциональной крипто-эквайринговой системы с внутренним кошельком. За счёт относительной простоты реализации данный этап можно использовать как MVP(minimumviableproduct) и как пилотный проект для оценки перспектив дальнейших вложений в развитие продукта.

Данный режим оплаты может быть относительно легко добавлен в существующую форму эквайринга. Так, клиенту достаточно предоставить ещё один способ оплаты - криптовалютой (наравне с банковской картой, электронными кошельками, банковским платежом и др.). Для мерчантов вовсе никаких новых технических требований не предоставляется (юридически могут быть нюансы в разных юрисдикциях).

Ключевые особенности:

  1. - Клиенту генерируется уникальный адрес для оплаты, на который он должен самостоятельно совершить перевод
  2. - Перевод клиента может идти достаточно долго, что несёт курсовые риски

 

Одним из способов снижения курсовых рисков можно использовать:

  1. - Уменьшить количество необходимых подтверждений, когда мы считаем перевод клиента поступившим
  2. - Отправлять средства на вывод в фиат в момент поступления клиентского перевода, тем самым фиксируя курс (при наличии фиксированной платы за вывод в фиат - можно выводить накопительно или периодически раз в час или раз в сутки)

 

Плюсы системы без кошелька:

+ простота реализации

+ простой процесс оплаты

+ высочайшая надёжность и безопасность (нет необходимости долговременно хранить чужие средства)

+ не требуется дополнительных технических действий от мерчанта

Минусы системы без кошелька:

- платёж не мгновенный и может быть долгим для некоторых криптовалют и низком размере networkfee

- высокие курсовые риски из-за низкой скорости платежа

- повышенная плата за networkfee, т.к. нужно выводить каждый поступивший платёж (могут быть варианты)

- отсутствие возможности использовать остатки на клиентских счетах кошельков

 

3.2. Система крипто-эквайринга с внутренним кошельком

Данный вариант предполагает регистрацию и предварительное пополнение клиентом его внутреннего кошелька. На этом кошельке средства хранятся непосредственно в той криптовалюте, в который клиент перевёл её.

Если у сервиса есть внутренний кошелёк, то операция проходит мгновенно, так как, по сути, баланс внутреннего кошелька - это виртуальный счёт, просто цифра. Её можно мгновенно уменьшить без реального движения средств между кошельками. Это наиболее выгодный и быстрый вариант: крипто-эквайринг и крипто-обменник не платит комиссию за внутренний перевод, плюс операция проходит мгновенно.

Кошелёк радикально решает проблему курсовых рисков. При необходимости вы можете вывести криптовалюту клиента в фиат и тем самым зафиксировать курс без каких-либо задержек, т.к. средства клиента уже заведены в систему. А в случае если в кошельке недостаточно средств, то клиенту необходимо пополнить кошелёк и курсовые риски он берёт на себя.

Вопрос гарантии и надёжности

В процессингах, платёжных системах, электронных кошельках и других системах хранящих средства на своих счетах существует важная проблема - ликвидность. Такая проблема существует и в банках, но их размер ликвидности регулируется законодательно. Другие fintechпроекты также пытаются регулировать, но проблема актуальна.

Корень проблемы в том, что на счетах клиентов накапливается большое количество остатков, которые не участвуют в операционной деятельности. Существует большой соблазн воспользоваться этими средствами в разных целях: от инвестиционных, до личных. Наш опыт работы в платёжной сфере много раз показывал, что проблемы с ликвидностью регулярно приводят к закрытию fintechпроектов (включая даже строго регулируемые банки). В большинстве случаев клиенты не получают назад свои средства, т.к. они были давно потрачены (но до критической ситуации изъятие средств не проявлялось).

В связи с этим можно выделить два режима работы кошелька.

Полностью виртуальные счета

При использовании виртуальных балансов на счетах - реального движения криптовалюты нет. Всё проходит лишь в виде виртуального изменения состояния баланса счетов разных валют. Такие операции проходят моментально внутри процессинга без участия блокчейна.

Когда клиент пополняет свой кошелёк, то видит его адрес и он действительно привязан к аккаунту клиента. Адрес многоразовый и его можно пополнять неограниченное количество раз. При этом можно создать новые адреса, если клиент придерживается правила «одна операция - один адрес».

Таким образом, все адреса принадлежат компании и все они навсегда привязаны к клиенту, поэтому все являются рабочими для клиента.

Однако в модели с полностью виртуальными счетами - эти адреса фактически используются только для определения пополнения. Криптовалюта хранится на них кратковременно и средства в течение суток передаются на единый адрес компании, на котором хранятся все основные средства.

Удобно собирать средства со всех кошельков клиентов раз в сутки. В этом случае мы платим единственную эмиссию за операцию сбора остатков с множества кошельков в системе. Для безопасности можно собирать не на один централизованный, а на несколько независимых кошельков.

В этой модели клиент в своём кабинете видит, что у него 1 BTC, но в реальности на этом кошельке средств нет, т.к. они были переведены на постоянный адрес компании.

Плюсы общие системы с кошельком:

+ мгновенное проведение платежа с кошелька

+ полное отсутствие курсовых рисков

+ не требуется дополнительных технических действий от мерчанта

+ возможность использовать остатки на клиентских счетах кошельков

+ стимулирует завести аккаунт и пользоваться другими сервисами компании

+ облегчает дальнейшее использование

+ привязываем клиента к себе

Плюсы виртуальной модели:

+ экономия на комиссиях при создании единой групповой операции сбора со всех адресов на единый

+ возможность использовать средства для инвестиций

Минусы общие системы с кошельком:

- выше сложность реализации

- более сложный процесс первой оплаты за счёт регистрации (можно сделать относительно простой, но она есть)

- ниже надёжность, за счёт возможности утратить контроль над средствами клиентов

Минусы виртуальной модели:

- опасность соблазна растратить средства клиентов

- низкая прозрачность работы системы для внешнего наблюдателя

- низкие рейтинги при прохождении независимого аудита

 

Реальные тру-адреса в кошельках

Для подтверждения надёжности и как гарант, что система не мыльный пузырь - крипто-кошелькам необходимо проходить независимый аудит. Для этого следует держать деньги клиентов не на виртуальных адресах, а на реальных. В этом случае средства постоянно хранятся на том адресе, куда их перечислил клиент. А при оплате или выводе с его кошелька - они действительно должны синхронно перевестись с его адреса и уменьшить его реальный баланс.

Такой вариант работы является гарантией, что на адресах системы действительно лежат суммы всех клиентов. Это означает, что владельцы системы не изъяли деньги из системы. Исключает скрытую ситуацию, что отображая большие суммы на виртуальных счетах клиентов - на деле обеспечения этим деньгам нет.

Располагая деньги на реальных кошельках, мы демонстрируем высочайшую ликвидность и обеспеченность. Причём намного большую, чем даже банки с их государственным строго регулируемыми нормами резервов. Такая 100% ликвидность не требуется для операционной деятельности и является только открытой демонстрацией гарантии надёжности системы.

Поскольку средства хранятся фактически на наших внутренних адресах, то мы можем полностью доверять операции реального перевода адреса на адрес внутри системы используя блокчейн. В этом случае при покупке клиентом мы переводим криптовалюту с реального адреса клиента (в рамках нашего кошелька) на единый системный адрес компании. Так мы сможем обеспечить сочетание мгновенного совершения операции и поддержания реального обеспеченного состояния на адресах клиентов.

При модели с реальными кошельками придётся платить комиссию за реальные синхронные операции внутри блокчейнов разных валютных кошельков. Но в этом случае достигается идеальная прозрачность транзакции при сохранении максимальной скорости операции (мы можем не дожидаться подтверждений от блокчейн, т.к. операции внутри адресов принадлежащих нам).

Плюсы общие системы с кошельком:

+ мгновенное проведение платежа с кошелька

+ отсутствие курсовых рисков

+ не требуется дополнительных технических действий от мерчанта

+ возможность использовать остатки на клиентских счетах кошельков

+ стимулирует завести аккаунт и пользоваться другими сервисами компании

+ облегчает дальнейшее использование

+ привязываем клиента к себе

Плюсы виртуальной модели:

+ высокие рейтинги при прохождении независимого аудита

+ высокая прозрачность работы системы для внешнего наблюдателя

+ возможность использовать средства для инвестиций

+ умеренная трата на комиссии

Минусы общие системы с кошельком:

- выше сложность реализации

- более сложный процесс первой оплаты за счёт регистрации (можно сделать относительно простой, но она есть)

- ниже надёжность за счёт возможности утратить контроль над средствами клиентов

- из-за длины пути, клиент может вовсе отказаться от оплаты

Минусы виртуальной модели:

- опасность растратить средства клиентов

Способы компенсировать минусы:

+ оптимизировать комиссию, совершая синхронные операции перевода с адреса на адрес, совершая их не мгновенно, а в виде групповых раз в час/день

+ предлагать оплату с регистрацией опционально, сохранив вариант быстрой оплаты без регистрации

+ при оплате без регистрации клиента можно зарегистрировать автоматически и прислать данные аккаунта

+ предлагать бонус за оплату с регистрацией

Какие плюсы мы должны двигать:

+ прохождение независимого аудита как гарант отсутствия мыльного пузыря

+ часть метрик можно публиковать открыто для подтверждения высокой надёжности

+ доносить безопасность нашей системы и как она устроена

+ говорить про мгновенную скорость прохождения платежей

+ для мерчантов лёгкий способ приёма криптовалюты, при этом получая на счёт консервативный фиат

 

Возможно сделать несколько тарифов на работу с виртуальными кошельками и с тру-адресами.

Тогда те, кто ценит высочайший уровень прозрачности и гарантий ликвидности, будут пользоваться тру-адресами с реальными суммами на кошельках.

Те, кто менее озабочен максимальной безопасностью - может пользоваться более дешёвым тарифом с виртуальными адресами.

Такой тариф можно назвать «инвестиционным тарифом», официально позволяющим использовать часть средств с таких кошельков для ваших инвестиций.

Из основных минусов - дополнительные возможности несколько усложнят восприятие системы. Однако эту проблему решает преподнесение их как два тарифных плана - это уже знакомая из бытовой жизни сущность, понятная и привычная всем.

Всё вместе это может стать тем самым УТП, которого ещё нет на рынке. Это тоже часть открытости и прозрачности, которую любят все, включая клиентов и инвесторов. Но без раскрытия операционных показателей.

 

4. Метрики продуктовые

Необходимость той или иной метрики зависит от цели.

Если считаем, что цель извлечение прибыли (а не завоевание доли рынка любой ценой), то будет полезным список метрик, представленный ниже.

Целесообразно разбить метрики по этапам запуска продукта.

 

 

1. Этап выхода на рынок

 
Метрика, значение показателя Изменение за день % Изменение за неделю % Изменение % за месяц Изменение % за месяц год назад
Зарегистрированные клиенты        
Ставшие активными клиенты (первая оплата)        
Регистрация без активности        
Активные клиенты (неважна какая по счёту оплата)        
Ставшие активными клиенты (первая оплата)        
CTR клиента: регистрация -> использование        
Зарегистрированные мерчанты        
Ставшие активными мерчанты (первый приём криптовалюты)        
Регистрация мерчантов без активности        
Активные мерчанты (неважно какой по счёту приём оплаты криптовалютой)        
CTR мерчанта: регистрация -> использование        
Количество использования сервисом без регистрации        
Количество использования сервисом с регистрацией        
Доля использования без регистрации        
Доля использования с регистрацией        

 

 

2. Этап активного роста

 
Метрика, значение показателя Изменение за день % Изменение за неделю % Изменение % за месяц Изменение % за месяц год назад
Количество операций        
Сумма операций в USD        
Сумма операций в криптовалюте        
ROI зарегистрированного клиента        
ROI ставшего активным клиента        
ROI зарегистрированного мерчанта        
ROI ставшего активным мерчанта        
Среднее количество входов в кабинет одного клиента)        
Средний процент заполненности профиля        
Средний процент просмотров отчётов        

 

 

3. Этап рабочего стимулирования продаж

 
Метрика, значение показателя Изменение за день % Изменение за неделю % Изменение % за месяц Изменение % за месяц год назад
Выручка в среднем с одного клиента        
Прибыль в среднем с одного клиента        
Количество операций в день одного клиента        
Выручка в среднем с одного мерчанта        
Прибыль в среднем с одного мерчанта        
Количество операций в день одного мерчанта        
Возвращаемость клиента, повторяемость        
Средний платёж        
Средняя скорость пополнения криптовалютой        
Пиковое количество операций в час        
Валовая прибыль услуги крипто-эквайринга        
Общая капитализация        
Размер оборотных средств        
Доля оборотных средств к общей капитализации        
Дневная оборачиваемость оборотных средств        
Размер неиспользуемого остатка на счетах клиентов        
Средний срок внесённых на кошелёк средств без движения        
Курс криптовалюты (для изучения корреляции)        

 

 

Дополнительные SEO-метрики

 
Метрика, значение показателя Изменение за день % Изменение за неделю % Изменение % за месяц Изменение % за месяц год назад
Цитируемость тематических страниц        
Посещаемость тематических страниц сайта        
Количество отзывов        
Количество отзывов положительных        
Количество отзывов отрицательных        
Доля положительных отзывов        
Доля отрицательных отзывов        

Количество обращений в техподдержку

 

       

От инструмента работы с метриками необходима возможность получать выборки показателей по клиентам с возможностью их сортировки и фильтрации, делать срезы по полу, возрасту, странам/регионам. Графики, диаграммы, отчёты.

Нужно определиться какие из метрик можно сделать публичными.

Цель публичных метрик - продемонстрировать надёжность хранения средств и долгосрочные цели компании. Если мы будем публиковать оборот 100 млн.долларов, а на внутренних кошельках будет 10 биткоинов - доверия такой компании не будет. Поэтому важно показать надёжность, но не раскрывая доходность и операционные показатели.

Метрики технические:

Технические метрики должен определить Project Manager. Их множество: от доступности серверов и сервисов/микросервисов, до размеров блокчейнов.

5. Техническая архитектура:

Когда мы собираемся хранить большие чужие деньги, то одна из первых проблем и рисков - это вопрос безопасности и увода этих денег. Он чрезвычайно важный!

Технически вопрос безопасности должен быть обеспечен правильной современной архитектурой для таких решений.

Под подобные проекты технически идеально подходит облачная архитектура типа AmazonWebServices.

 

Плюсы AWS:

- отличная масштабируемость: autoscaling, loadbalancer, общие безразмерные диски и многое-многое другое

- высочайшая безопасность: ParameterStore, развитая система прав, политик и ролей, создание инфраструктуры как кода, разделённый деплой

- возможность использования onpremises сервисов, расположенных в собственных дата-центрах (или офисе)

- развитый CDNдля быстрой выдачи статики по всему миру

- HighAvailability (HA): за счёт использования дублирования на серверах в разных дата-центрах, управляемые сервисы включая базы данных, кластеры контейнеров (включая Kubernetes)

 

Крайне важным является правильная архитектура при работе с криптовалютными кошельками.

Базовые меры, которые должны быть внедрены и соблюдаться:

- чрезвычайно важно разделить деплой кода продуктового, тестового и девелоперского

- ни один программист не должен знать продуктовых паролей с которыми он работает

- при прохождении всех видов тестирования - код должен автоматически переноситься в продуктовую инфраструктуру со своим набором credentials в ParameterStore

- естественно, не должно быть никаких паролей в коде, а уж тем более в системе контроля версий (git)

- система не должна хранить секреты в переменных окружения, а использовать Parameter Store с автоматической ротацией секретов

- к серверам не должно быть ни у кого доступа по SSH (при необходимости обновления - создавать новые сервера, а старые удалять)

- весь код должен проходить ревизию, чтобы не допустить попытки увода "секретов"

- регулярный внутренний и внешний аудит безопасности

- мониторинг доступа к ресурсам с уведомлением

- применение современных методик проактивной блокировки атак, включая Honeypot и др.

 

Заключение

За кадром данной статьи осталось исследование рынка, формирование функциональных требований, вопросы продвижения и составление дорожной карты.

Все эти вопросы индивидуальны от проекта к проекту, поэтому требуют проработки под конкретный проект.

Если вы желаете создать свой криптовалютный эквайринг и криптообменник, то, обратившись к нам, можете полностью полагаться на наш опыт в этой сфере.

 

Мы выполнили интересный заказ Новосибирского Государственного Университета!

В НГУ обучаются более 8000 студентов, которые оплачивают различные услуги вуза. Мы упростили и автоматизировали процесс приёма многочисленных оплат, с помощью нашего программного обеспечения в платёжных терминалах, расположенных на территории вуза.

Процесс оплаты выглядит следующим образом:

- плательщик выбирает на дисплее вид услуг («Интернет» или «Общежитие»)

- при выборе услуги «Интернет» происходит переход на форму ввода номера договора с автозаполненным префиксом. Затем происходит проверка возможности совершения платежа и переход на форму приёма наличных денег. После приёма и подтверждения суммы печатается чек. Программное обеспечение в этом случае работает в связке с биллингом – платёж за интернет моментально отправляется  на биллинг;

- при нажатии на кнопку «Общежитие» появляется список всех доступных для оплаты общежитий. При выборе нужного общежития происходит переход на форму ввода номера договора с автозаполненным префиксом. Далее происходит переход на форму ввода периода проживания, после чего производится онлайн-проверка возможности совершения оплаты. В этот момент ПО обращается к 1Cклиента, проверяя выставленные счета для конкретного пользователя. Затем пользователь видит форму, где указано имя и номер договора, а также список необходимых для оплаты услуг с суммой платежа. До момента перехода на форму ввода наличных, плательщик имеет возможность вернуться назад и изменить список услуг, которые желает оплатить в данный момент.

Во время инкассации формируется запрос с данными на сервер 1C, по которому автоматически формируются приходные кассовые ордеры в 1C.

Наглядно работа программы продемонстрирована в данном видео по ссылке:

https://youtu.be/SaWCKulr8fQ

 

Вместе с программой клиент получает:

- возможность самостоятельно создавать новых провайдеров (оплату любых других услуг) на базе ПО PayPRO;

- гарантию на работу;

- ежемесячное абонентское обслуживание;

- обратную связь и оперативное решение возникающих проблем.

Вы можете заказать индивидуальное программное обеспечение для своего бизнеса, для этого свяжитесь с менеджером по горячей линии 8-800-700-3260 или напишите запрос на нашу почту This email address is being protected from spambots. You need JavaScript enabled to view it. . Нам нравится реализовывать ваши идеи!

Еще один пример практического соединения программного обеспечения PayPRO с контроллерами.

При соединении PayPRO и контроллера управления электрозамками обнаружилось, что представленная Заказчиком библиотека DLL (идущая вместе с контроллером,произведенным в Китае) работает нестабильно, а описанный протокол далеко не полон.

Это было печальное открытие, но выход был найден.

Спустя многие годы работы с программным обеспечение PayPRO понимаешь, что возможности программы ограничены только нашим представлением о ней.

Смотрите, какое необычную работу мы выполнили по тех.заданию одного из наших клиентов.

Тех.задание звучало как "Разработка собственного провайдера в ПО PayPRO для работы с контроллером управления электрозамками".