Many countries around the globe (and specifically the EU) are being forced to adhere to Financial Action Task Force (FATF, established in 1989 by the G7) guidelines, which includes regulatory requirements designed to prevent money laundering and terrorist financing.
One of these rules is the “Travel Rule”. The Travel Rule mandates that certain information about the sender and receiver of a transaction must "travel" with the transaction itself when money (or value) is transferred between financial institutions or Virtual Asset Service Providers (VASPs). This typically applies where transactions may exceed a certain threshold (typically $1,000 or €1,000).
This wallet generation feature is a method of complying with that Travel Rule.This option is currently available for BitBayCoin (BAY), Bitcoin Cash (BCH), Bitcoin (BTC), Dash (DASH), Ethereum (ETH), Litecoin (LTC), Monero (XMR), and Ripple (XRP). Coins implemented via extensions with support for IPaperWallet
can be edited to support PDF wallets as well (undocumented).
Overview:
CAS version 20241001 (or newer) must be installed.
A one-time CAS setting must be deployed by the Administrator.
The feature is enabled for each BATM in Terminal details.
Your customers will have the option to complete a purchase using the PDF wallet.
The customer is then forced to scan and receive their coin to the new PDF wallet.
...
Determine the URL path. In this example we’ll use:
https://yourcasdomain.com/walletwallets
It must be the domain for your CAS (e.g.
yourcasdomain.com
).The path
/walletwallets
is arbitrary and can be anything that doesn’t conflict with other CAS paths.The protocol must include (and must support) HTTPS.
Create/edit the
/batm/config/webhooks
file and place the URL path as a setting:
...
Add the setting
pdfWalletLinkUrl=https://yourcasdomain.com/walletwallets
Replace the example URL with the one you decided upon in Step 1.
...
Press CTRL-X to save the file and exit (choose “y”, and leave the filename unchanged).
...
The setting will automatically be updated within CAS in approximately 30 seconds.
Expose the webhook
Now that the configuration has been created, you must expose this URL to the world. Installation (or modification) of NGINX is described in this article: https://generalbytes.atlassian.net/wiki/x/AQBlrw
It’s also possible to do it via Cloudflare (instead): https://generalbytes.atlassian.net/l/cp/VLSWb0XA
Yet another (undocumented) option: ngrok
...
The URL path in any case must translate/point to: https://{master_bind_ip}:7743/api/v1/crypto-wallets
Testing
Append “/test
” to the end of the exposed URL. Navigate to the URL using a web browser.
e.g.
https://yourcasdomain.com/wallets
becomes:https://yourcasdomain.com/wallets/test
Navigating to that URL should result in a simple web page “Invalid key” result.
...
Enable the Feature per Terminal
Navigate to your Terminal (or Template) and enable the option in Printing Settings.
...
Adjust the PDF text
You can adjust the content & layout of the PDF document with this Custom String.
Navigate to the appropriate Crypto Setting - CUSTOM STRINGS:
...
Example BUY
The customer initiates a BUY.
Customer selects the button “DON’T HAVE A WALLET?”.
...