Bittylicious Client: Difference between revisions
No edit summary |
|||
(21 intermediate revisions by 2 users not shown) | |||
Line 15: | Line 15: | ||
* PHP working via the command line. | * PHP working via the command line. | ||
* The PHP cURL module. | * The PHP cURL module. | ||
* The PHP XML/DOM module. This may be called php7.0-xml or similar. | |||
* Your OpenSSL private key saved as ''private.key'' in the Bittylicious client directory. | * Your OpenSSL private key saved as ''private.key'' in the Bittylicious client directory. | ||
* The bank account details set up as per the ''Bank account setup'' section. | * The bank account details set up as per the ''Bank account setup'' section. | ||
Line 24: | Line 25: | ||
===How can I get this?=== | ===How can I get this?=== | ||
When you send a signed NDA to the administrator and have successfully completed at least | When you send a signed NDA to the administrator and have successfully completed at least ten good manual trades, he will provide you with it. | ||
===How often does the client log into the bank account=== | ===How often does the client log into the bank account=== | ||
Line 47: | Line 48: | ||
curl.cainfo=c:\path\to\cacert.pem | curl.cainfo=c:\path\to\cacert.pem | ||
That needs to be changed to reflect where the BittyClient folder is on your computer. So if it is in a folder called BittyClient on your desktop, the line would be | |||
curl.cainfo=c:\Users\yourname\Desktop\BittyClient\cacert.pem | |||
===I get an unable to download/failed to download trade list error=== | |||
This is also caused by the cacert file not being specified in the php.ini file as with the SSL certificate above. | |||
===How can I edit the files?=== | |||
We strongly recommend not using Windows notepad to change any of the files necessary, it tends to put all of the lines onto one long line making it very difficult to edit. We'd recommend something like [https://notepad-plus-plus.org/ Notepad++] or [https://www.geany.org/ Geany] | |||
=Bank account setup= | =Bank account setup= | ||
Line 54: | Line 66: | ||
===Halifax=== | ===Halifax=== | ||
Status: '''Production quality''' | Status: '''Production quality''', Current version: 20180125 | ||
Current version: | |||
$bank = new UK_Halifax("''Username''", "''Password''", "''Memorable word''", "''Account name''"); | $bank = new UK_Halifax("''Username''", "''Password''", "''Memorable word''", "''Account name''"); | ||
Line 64: | Line 75: | ||
Notes: | Notes: | ||
* The ''Account name'' is as it appears on your Internet banking screen. | * The ''Account name'' is as it appears on your Internet banking screen. | ||
* Halifax seems to log users out that are connecting from VPNs, VPSs and in particular non-UK IP addresses. | |||
===Santander=== | ===Santander=== | ||
Status: ''' | Status: '''Production quality''', | ||
Current version: | Current version: 20181005 | ||
$bank = new UK_Santander(''Account type'', "''Banking ID''", "''Registration or Security number''", "''Passcode''", "''Account name''", array("''memorable question 1''" => "''answer 1''", "''memorable question 2''" => "''answer 2''")); | $bank = new UK_Santander(''Account type'', "''Banking ID''", "''Registration or Security number''", "''Passcode''", "''Account name''", array("''memorable question 1''" => "''answer 1''", "''memorable question 2''" => "''answer 2''")); | ||
Line 83: | Line 95: | ||
===Lloyds Bank (personal accounts)=== | ===Lloyds Bank (personal accounts)=== | ||
Status: ''' | Status: '''Not working''' | ||
Current version: 20140407 | Current version: 20140407 | ||
Latest revision as of 11:34, 31 January 2019
NDA
You are only permitted to use the Bittylicious client if you have filled in the NDA. This is available in the following formats:
- File:NDA.pdf PDF (preferred, but do not use Adobe Reader. On Windows, use something like Foxit Reader)
- File:NDA.odt ODT (OpenOffice/LibreOffice)
- File:NDA.doc DOC (Microsoft Word; use only as a last resort)
Please fill in the relevant files and email admin@bittylicious.com. Also state which type of bank account (see below) you use.
Overall client setup
In order to run the Bittylicious client, you must have:
- PHP working via the command line.
- The PHP cURL module.
- The PHP XML/DOM module. This may be called php7.0-xml or similar.
- Your OpenSSL private key saved as private.key in the Bittylicious client directory.
- The bank account details set up as per the Bank account setup section.
The Bittylicious client checks whether you have any active trades from Bittylicious every 60 seconds. If one is active, it will log into your bank account to fetch a transaction list. If a transaction matches, the client will sign the transaction on your behalf and notify Bittylicious that the trade has been found.
FAQ
How can I get this?
When you send a signed NDA to the administrator and have successfully completed at least ten good manual trades, he will provide you with it.
How often does the client log into the bank account
The client will only log into the bank account when there is at least one active and paid trade for your offers. These are trades in the PAID state.
The client will log into the bank account and every minute attempt a refresh (either the equivalent of pressing F5 or going to another page and pack to the statement page). It will not restart the login process unless necessary.
Once there are no more active trades, the client will attempt to log out cleanly.
Is there any feedback sent from the client?
There is no feedback if trades are not found. Once a trade enters the DISPUTE state, an email will be sent by the main Bittylicious system.
What happens if a reference number does not match, or the amount is wrong
The client will not consider a bank transaction a match unless at least the reference number matches. In the code, there is a tolerance value and any transactions within that tolerance (but never for less than the trade fiat value) will be matched.
I get SSL certificate errors on Windows
Some of the bank login clients require an up to date certificates file. If you get any errors concerning SSL certificates, add the following to php.ini:
curl.cainfo=c:\path\to\cacert.pem
That needs to be changed to reflect where the BittyClient folder is on your computer. So if it is in a folder called BittyClient on your desktop, the line would be
curl.cainfo=c:\Users\yourname\Desktop\BittyClient\cacert.pem
I get an unable to download/failed to download trade list error
This is also caused by the cacert file not being specified in the php.ini file as with the SSL certificate above.
How can I edit the files?
We strongly recommend not using Windows notepad to change any of the files necessary, it tends to put all of the lines onto one long line making it very difficult to edit. We'd recommend something like Notepad++ or Geany
Bank account setup
UK
Halifax
Status: Production quality, Current version: 20180125
$bank = new UK_Halifax("Username", "Password", "Memorable word", "Account name");
Example:
$bank = new UK_Halifax("mm34789", "P@ssw0rd", "M3M0RABLE", "Easycash");
Notes:
- The Account name is as it appears on your Internet banking screen.
- Halifax seems to log users out that are connecting from VPNs, VPSs and in particular non-UK IP addresses.
Santander
Status: Production quality, Current version: 20181005
$bank = new UK_Santander(Account type, "Banking ID", "Registration or Security number", "Passcode", "Account name", array("memorable question 1" => "answer 1", "memorable question 2" => "answer 2"));
Example:
$bank = new UK_Santander(SANTANDER_BUSINESS, "19031846985", "12345", "P@ssw0rd", "BUSINESS CURRENT ACCOUNT", array("maiden" => "Shelly", "car" => "Polo", "born" => "London"));
Notes:
- The memorable questions work on a substring basis, e.g. maiden will be a match for What is your mother's maiden name and car is a match for What make was your first car.
- The Account name is as it appears on your Internet banking screen.
- The Account type is SANTANDER_BUSINESS or SANTANDER_PERSONAL.
Lloyds Bank (personal accounts)
Status: Not working Current version: 20140407
$bank = new UK_LloydsBank(Customer ID, "Customer password", "Memorable word", "Account number");
Co-Operative, HSBC, Lloyds TSB (business accounts)
These are lower priority as they will require human input because a physical token or card reader even to log in. This is bad and annoying so consider switching to another bank.
Nationwide, Natwest
There will never be a client for Nationwide as they do not provide any payment references online, nor Natwest as they don't show payee information for one day. This is bad and insecure so consider switching to another bank.