Tutorial/Walktrough/Quick start (work in progress)
Step 1 (only needed once)- Surf to https://www.mocacinno.com/invoice/login.php (1)
- Click on Register New account
- Enter your username (2) and password (twice) (3+4)
- OPTIONALLY, you can enter your email, bitcoin address and an external page containing a list of all your addresses (as a verification purpose)
- Click on Register your account (5)
Step 2 (needed every time you log in)IF the registration was succesfull, you'll be redirected back to the login page (there will be no confirmation). If you try to register, but are not redirected to the login page, you can assume something went wrong... The error messages still need some finetuning, but usually you'll see what was going wrong straight from the incomplete error message.
If you are redirected back to the login page, just fill in your username and password, and click "login"
Step 3 (needed at least once => the very first time you log in AND in case you want to add extra profiles)The first time you log in, click on "invoices" => "default profiles" (without at least one profile, you cannot generate a new invoice)
Step 4 (needed every time you want to add a new profile, at least once at the very beginning)enter the following information:
- The name of your profile (1), this is for INTERNAL reference only, and will never be shown to your clients
- Select wether or not this is the default profile (2), there is no check to find out if you have multiple default profiles, if you select multiple, the system will randomly take one of the default profiles as default profile... A default profile will be pre-selected when generating an invoice, however, all generated profiles can be used (non-default profiles just require one extra click)
- The default ruleset for the invoice (3), i've added some standard default rules as a demo, they can be deleted or changed if you want to... Lines need to end by a linebreak (\r\n)
After filling in the form, click on "add profile" (4)
Step 5 (needed once every time you want to add coins to your profile)Just click the coincount number (indicated by the red arrow). The first time adding coins to a profile, the coincount will be 0
Step 6 (needed everytime you want to add coins to your profile)- Pick any coin you want to accept from the dropdown list (1)
- Add a fixed fee that will be added ON TOP of the conversion to the coin picked in step 5.1 (2). This fee can be usefull to cover miner's fees, deposit fees for the exchange when you're exchanging an altcoin to BTC, or just to discourage the use of this (alt)coin in case you prefer a different one
- Add a procentual fee that will be added ON TOP of the conversion to the coin picked in step 5.1 (3). This fee can be usefull to promote or discourage a certain altcoin. Only integers are accepted (-99 <> 999)
- Add a fluctuation penalty (0-999) that will be added ON TOP of the conversion to the coin picked in step 5.1 (4). If the price drops, the penalty's percent will be added to the total value. For example you added a 10% fluctuation penalty... When using this profile, you'd need to pay (for example) 100 Democoin, but Democoin's price has dropped by 10% over the last 24 hours, in this case 10% of the 10% decrease will be added as a penalty, and the final value will be 101 Democoin
- Indicate how many numbers after the comma have to be shown (5)...
- Enter the default address for this coin. When creating a new invoice, this address will automatically be proposed. It can manually be changed to any address you want tough! (6)
- Click on Add coin
- Repeat these steps for all the coins you want to add to your profile
Step 7 (Just an example of step 6)Here you see that I've added 3 coins to my first profile: i added Ethereum, and i added bitcoin twice (1 and 2). As you can see, i'm favoring getting my segwit address funded. There is a small penalty of 0.0001 BTC + 10% if somebody wants to fund my non-segwit address. There is also a penalty for using ETH, and i actually didn't want to add a penalty for using my segwit address (but i messed up, and added a 5% penalty... I fixed this problem, but didn't want to take new screenshots
)
Step 8 (needed every time you want to create a new invoice)In the top menu, chose "invoices" => "new invoice"
Step 9 (needed every time you want to create a new invoice)Chose which profile (defined in step 4) has to be used for this invoice
Step 10 (needed every time you want to create a new invoice)Chose an INTERNAL name FOR YOUR OWN reference... Pick something usefull for yourself, something you can use to identify this invoice
Step 11 (needed every time you want to create a new invoice)IF you have premium credits left AND you want your client to receive a copy of the link to the invoice in his mailbox, enter his email right here... Always double check tough, emails sent from my server usually end up in the spamfilter (i'll fix this IF my service ever becomes a success)
Step 12 (needed every time you want to create a new invoice)Enter following info:
- The date AND time from when the invoice is valid (1)
- The date AND time until when the invoice is valid (2)
- If you want to divert from the default rules entered in your profile, you can make changes here (3)
- The reason why you're sending this invoice, will be printed on the invoice (for example, "payment for fixing your serverconfiguration" or "payment for quote #512245") (4)
Step 13 (needed every time you want to create a new invoice)Chose the basic value and coin for your invoice. Any coin other than bitcoin (and also USD) will be converted to bitcoin first, then it'll be converted to the coins you chose in your profile
Step 14 (needed every time you want to create a new invoice)In this screen, you'll be able to change the default addresses (1), the calculated values based on the formula you entered in step 6 (2), you can show the calculation of the value (3) and see when the coin's exchange rate was last refreshed (4).
It is also possible to add extra coins to your invoice... Please note that these extra coins are just "free text" coins, no conversion rates are known, no full name, no link to a block explorer,... Use at your own discretion
Step 15 (needed every time you want to create a new invoice)Just click on continue... The inputfield for this step was removed since it was no longer needed. In the future, i'll probably put a form to remove coins in this step
Step 16 (needed every time you want to create a new invoice)Review the overview shown in this step... Up untill this step, the data you entered isn't commited into the database, just upon this step, you can always re-start without any problems. Once you click on the continue button, the data will be entered into the database, which is immutable (at least, for my users)... Also, if you own premium credits, one premium credit will be distracted from your total as soon as you continue...
Step 17 (needed every time you want to create a new invoice)This screen will show you:
- The quote id (1). This is the ONLY id you should ever share with your client
- The link to the quote (2), review this page and send the link to the client
- (3) + (4) => cryptographic proof. If you safe the proofs + the hashes AND send the hashes to your client in EVERY communication about the invoice, there is no way your client can accuse you of tampering with the coins, the amounts, the rules, the reason... Since any tampering will change the hash
Step 18 (needed every time you want to manage existing invoices)You can see your invoices by clicking on "invoices" => "view invoices"
Step 19 (overview you get when after step 18)Some of the usefull information consists of a link to the invoice and an indication wether or not your client indicated he'd payed the invoice
Step 20 (Client's view)- Accepted combinations of amount, coin and address (1)
- A link to the blockchain explorer, showing the address which needs to be funded if this coin is used as a form of payment (2)
- A dropdown that can be used to indicate which coin was used to pay (3)
- A text field that can be used to enter the payment tx id (4)
Step 21 (Client's view)Demo of a payment coin + txid... The client can now click on "validate payment". In reality, the payment isn't actually "validated", but the cointype, txid AND timestamp are stored into my database
Step 22 (Client's view)This is what the client sees after validating his payment
Step 23 (admin view, reviewing invoices)Go to "invoice" => "view invoices"
Step 23 (admin view, reviewing invoices)Now you'll see wether or not the invoice was payed, using which coin, which address was funded, everything linked to a block explorer (if available for this type of coin)