GB Batm Installationmanual v2 0
GB Batm Installationmanual v2 0
GB Batm Installationmanual v2 0
GENERAL BYTES s.r.o.
Content
Content 2
1. Overview 2
1.1. Scope of this document 2
1.3. Revision history 2
2. Solution overview 4
3. Terminal 4
3.1. System requirements 4
3.2. Additional notes 4
3.3. Terminal installation 5
3.4. Connecting terminal to your server 7
3.5. Security guidelines 7
4. Server 8
4.1. Minimal system requirements 8
4.2. Server Installation 9
4.3. Security guidelines 9
5. Best Practices 10
6. Counters 12
6.1. Buy Counters 12
6.2. Sell Counters 13
7. AML/KYC explained 13
GENERAL BYTES s.r.o.
1. Overview
GENERAL BYTES s.r.o.
2. Solution overview
3. Terminal
BATM Terminal is responsible for interacting with end-customer, accepting cash and
sending requests to the BATM server for sending cryptocurrency to end-customer or
vice versa.
GENERAL BYTES s.r.o.
GENERAL BYTES s.r.o.
BATMTwo https://www.generalbytes.c
Configuration om/vid_batm2config
GENERAL BYTES s.r.o.
GENERAL BYTES s.r.o.
4. Server
BATM Server uses these network connections, make sure that your firewall doesnt
block them:
GENERAL BYTES s.r.o.
https://www.generalbytes.com/vid_serverinstall
Please note that videos may describe older version of the software then you use.
GENERAL BYTES s.r.o.
Allow connecting users to SSH only with SSH-keys. Dont let them use the
password.
Dont give access to the servers operating system to untrusty persons even
with the non admin accounts. There are still possibilities of local privilege
escalation in Linux OS.
Dont give the admin access to Administration interface to untrustworthy
people.
Use strong passwords for operation system users and change them regularly
Use strong passwords for MySQL database root access
Use strong passwords for Administration interface users and change them
regularly.
Use strong and different passwords for Crypto exchange and Hot Wallet
Keep your servers public IP address secret.
5. Best Practices
Test all of the functions of the ATM before putting it into production. Play
around with it for a while. Check also what Notification Policies offer. Test
that the camera has right focus for scanning ID cards.
Notify shops staff that you are going to open the ATM - every time.
Always before taking cash from ATM make a photo of the counters in
terminal administration. Make a photo of dispenser banknote counts in
administration when refilling cash (applies only to two-way ATMs)
Always clear short counters when taking out the cash (right after making
photo of counters)
When taking out the cash take out also cash from reject cashbox part of
top dispenser cassette where banknotes are rejected. Applies to 2-way ATMs
only.
Dont leave the keys from the ATM in same shop as the ATM is. Somebody
else might take cash out instead of you - regularly.
Check displayed buy and sell exchange rates on ATM and perform calculation
verifying that your exchange rate is profitable.
Place ATM in front of the camera(CCTV). It discourages people trying to get
into the ATM or steel it.
Check support page for new versions often. New versions might contain bug
fixes for serious bugs.
Dont upgrade to todays release version. Let other test it first. Upgrade day
after unless support tells you otherwise.
GENERAL BYTES s.r.o.
GENERAL BYTES s.r.o.
6. Counters
To keep track of money flow ATM uses counters. Counters are always increasing
and never decreasing. Counters exist always in pairs Long and Short. Short
counters can be reseted by administrator to 0 for instance in order to mark the fact
that cash has been taken out from the machine. Long counters cannot be reseted
and keep increasing for the lifetime of the machine. Every time some counter is
increased Short and Long counter pair is increased together.
Machines counters are stored on server. Machine doesnt store them, only displays
them. If you connect ATM to different server it will fetch different counters.
ERROR (fiat currency) Increased every time transaction fails. (When fiat is not
converted to cryptocurrency)
GENERAL BYTES s.r.o.
OUT (crypto currency) Increased every time crypto amount is received from
customer and is sent to hot wallet or sold on
exchange.
OUT (fiat currency) Increased every time banknote is dispensed from the
ATM during withdrawal.
ERROR (crypto currency) Increased every time transaction fails. When crypto
amount sell fails on exchange or send to hot wallet.
7. AML/KYC explained
AML = Anti-Money Laundering
KYC = Know Your Customer
BATM server allows you to set how much information about the customer is
collected by ATM based on the amount of cash customer is wishing to transact.
BATM enables you to classify customer based on cash level to 3 different groups:
Anonymous, Unregistered, Registered.
For Anonymous group none of the information about the customer is collected.
You typically allow customers buy bitcoins for low cash amount as the risk of Money
Laundering is low.
GENERAL BYTES s.r.o.
ATM operator is notified about new registration request (Enrollment) via SMS or
e-mail. Customer is notified about successful registration by SMS or e-mail.
ATM can be configured to allow only selected groups to perform buy and sale. For
instance allowing only buy and sell to registered customers.
Following picture illustrates which states customers identity can have and how the
screen flow is for each group.