smartCommerce Quickstart - M2
Contents
Aims & Preparation
Most of this is included if you get the Installation & Setup Service
smartCommerce for Magento 2 has been designed for fast & easy setup - if you're already familiar with M2 extension install, you'll work it out by just diving in (we even built a setup Guide into the plugin).
We'll go over the process in more detail here, so if you're not familiar with setting up a Magento plugin and/or are new to crypto payments, don't worry!
- If you haven't installed it yet, follow the Easy Install Guide (M2) to get smartCommerce running.
Crypto Basics
You're in charge
Crypto is a new industry - security & safety guidelines change often. It's up to you to keep informed! Keep up-to-date with Smart on the project page: https://smartcash.cc. The code we provide is not encrypted, as is the Electrum wallet which you'll also need.
Security
As everywhere - never give your private key to anyone. This is equivalent to giving away access to your funds. We will ask for the Master Public Key. You still shouldn't give this away to anyone, but it's safe to save to your website. You can read more about MPKs here.
Exchange Rates
Crypto values have (in)famously rocketed and plummeted the last few years. Sometimes this happens in the space of a few days. If you're getting paid in any crypto currency/token (not just Smart) then you should be clear that the fiat (eg. USD) value of those holdings may change (either direction). You might want to exchange out some (or all) of it on a regular basis.
You can get the latest SmartCash exchange rate here.
Your Wallet = Your Funds = Your Responsibility
As part of accepting SmartCash on your site, you're going to need a SmartCash Electrum wallet. Whoever you give access to use this wallet will have access to your funds - bear this in mind when setting this up.
Setup Electrum Wallet
You need a SmartCash Electrum wallet so that we can generate deposit addresses.
It also makes it really easy for you to transfer out payments as Electrum supports 'sweep' style transfers, where it'll move funds from multiple addresses, in one go, from your wallet.
1. Download the Smart Electrum wallet
Get the latest SmartCash Electrum wallet for your system on the project page: https://smartcash.cc/wallets/#electrum.
Currently there are versions for Mac, Windows, and Linux.
Install that on your local system.
2. Make a fresh Smart wallet
You should setup up a new wallet for your store, even if you already have a Smart wallet.
Don't be tempted to use a previously-used wallet, you might end up losing funds as the plugin assumes a zero balance on all addresses
- Head to Electrum appFileNew/Restore
- Name your wallet (eg. 'Magento Store Wallet')
- Choose 'Standard Wallet' in the next step, as we're making a new wallet
- Then 'Create a new seed'
- It'll then give you 12 words. It's very important that you note these down:
- Somewhere safe
- Somewhere not easily accessible by other people
- Not electronically
- Where you won't lose them! Some people recommend splitting it into two or more parts and storing those in different locations
- * If you lose access to these words, or forget them, you'll potentially lose access to the funds in your wallet in the future
- You'll then need to re-enter the same words to access the wallet
- Congratulations - you now have a working Smart Wallet!
Don't forget that access to this wallet (and the 12 backup words) provides direct access to your funds
Setup inside Magento
- Check your smartCommerce plugin is running
- In your plugin config section, check there's an entry for SmartCash in the sidebar:
- Magento Admin sidebarMoogentoSmartcash Config.
-
- Copy across the MPK
- In your Electrum wallet, choose 'Get Info' and copy the entire Master Public Key.
-
- In your Magento smartCommerce config page you'll see an entry for MPK - paste the MPK in here and save the config page.
-
- Enable SmartCash as a Magento payment method
- In the Magento Payment Methods config page, enable SmartCash as a payment method.
-
- Check you're showing green ticks
- In the config page there are a couple core checks for the setup.
-
- Test!
- Try buying something in your store, and check that SmartCash is now an option in the checkout.
- If all is good - congratulations, you now accept Smart on your site!
Reports
We've built in an advanced reports system, linking with the Magento reports structure.
Just head to Reports > Smartcash Settlement.
You'll be able to export a CSV or an XML file (suitable for eg Excel), and from there you'll have all the info you need to do your business accounting.
FAQ
What's SmartCash?
It's a community-centric crypto project, designed for fast & cheap payments. Read more on the project website: smartcash.cc
What's the difference between SmartCash and Smart?
SmartCash is the project name; Smart is the currency name.
ie. You'll be paid in Smart.
How do I spend the Smart I've been paid?
You can either find other great stores (like yours!) that accept Smart, or transfer from your wallet to an exchange. Depending on the exchange, you can sell direct into fiat or into eg. bitcoin and then from there into fiat.
Can I change my wallet?
We use the unique Master Public Key (MPK) to determine your wallet, and also which address is given to your customer to send Smart to.
Firstly we should remind you not to re-use an old wallet.
If you want to use a different wallet (to one that has already been set in the plugin config), no worries.
Just:
- Disable the plugin in the Magento payments page:
- [Sidebar - System] -> Stores - Configuration -> Sales - Payment Methods - SmartCash
- Clear the cache:
- [Sidebar - System] -> System - Cache Management -> (Select All) -> Refresh Cache / Submit
- Copy & paste the new MPK in the plugin config field
- Clear the cache again
- Re-enable the plugin in the Magento payment section
- Log out then in
- Double-check that the checkout is showing an address from your new wallet
I don't see some recent transactions in my wallet
Your Electrum wallet can deal with an infinite number of addresses.
That would take a long time to check :) so it only checks ahead a number of addresses (called the 'gap'), from the last address with some 'action' (ie. a transaction).
If you have more addresses with no 'action' than you have set as your 'gap' then the wallet won't see them.
You can expand your 'gap' in your wallet Console section, eg. to 30:
wallet.change_gap_limit(30)
wallet.storage.write()
To view/verify the current gap limit:
wallet.gap_limit