Broker Setup: Difference between revisions

From Bittylicious
Jump to navigation Jump to search
 
(28 intermediate revisions by 2 users not shown)
Line 3: Line 3:
===Payment Details===
===Payment Details===


Here, you are required to enter all information required in order for a buyer to pay you. The ''position'' field corresponds to the position in which this will be displayed, from low to high. Typically this would be bank account information, but it could also be things such as phone numbers for methods such as PingIt.
Here, you are required to enter all information required in order for a buyer to pay you. The ''position'' field corresponds to the position in which this will be displayed, from low to high. Typically this would be bank account information, but it could also be things such as phone numbers for methods such as PingIt. The required information is as follows:


Example information would be
====UK bank transfers====


{| class="wikitable"
{| class="wikitable"
Line 17: Line 17:
| 30 || Account name || Mr. J Bloggs
| 30 || Account name || Mr. J Bloggs
|-
|-
| 40 || Bank name || Halifax
| 40 || Account type || Personal account
|}
|}
Please do not enter your bank's name. This is to stop buyers from attempting to pay cash over the counter at the appropriate bank. If the account type is a company one, set the ''Account type'' value to be ''Company account''.
====SEPA bank transfers====
{| class="wikitable"
|-
! Position !! Heading !! Information
|-
| 10 || IBAN || GB29RBOS60161331926819
|-
| 20 || BIC/SWIFT || RBOSGB2L
|-
| 30 || Recipient name || Mr. J Bloggs
|-
| 40 || Recipient address || 42 Sparkly Road, Tinseltown, United Kingdom, TI7 0WN
|-
| 50 || Bank name || RBS
|-
| 60 || Bank address || 36 St Andrew Square, Edinburgh, United Kingdom, EH2 2YB
|}
When offering SEPA payments, you should have fields detailing the account name, IBAN, BIC/SWIFT, name of bank, address and country of bank (all on one line) and ideally the address of the recipient (all on one line). The address of recipient isn't always needed, but apparently some banks want this.
====PingIt or PayM====
One field with your phone number and one with your real name, this gives buyers a double check that they've not made a typo with the phone number after entering it.
{| class="wikitable"
|-
! Position !! Heading !! Information
|-
| 10 || Number || 07123456789
|-
| 20 || Name || Joe Bloggs
|}
===Notifications===
Also, you absolutely must set up notifications at both the offer level and seller level, otherwise you will not be notified about new trades or support messages.
The ''Access token'' field is only applicable to certain notification types, and may be left blank for email notifications.


==SSL keys==
==SSL keys==
Line 40: Line 82:
====Automatic (using the [[Bittylicious Client]])====
====Automatic (using the [[Bittylicious Client]])====


# Download Openssl from [http://gnuwin32.sourceforge.net/packages/openssl.htm]. Select the first option ''Complete package, except sources''
# Download Openssl from [http://gnuwin32.sourceforge.net/packages/openssl.htm http://gnuwin32.sourceforge.net/packages/openssl.htm]. Select the first option ''Complete package, except sources''
# Run the downloaded file and install ''openssl-'''(version)'''-setup.exe''
# Run the downloaded file and install ''openssl-'''(version)'''-setup.exe''
# Download and run our batch file [https://bittylicious.com/downloads/bittykey.bat bittykey.bat]
# Download and run our batch file [https://bittylicious.com/downloads/bittykey.bat bittykey.bat] if you have not already generated a private/public keypair.
# Send ''public.key'', which will have opened up automatically, to admin@bittylicious.com
# Add the contents of ''public.key'' to the relevant place on your seller application


====Manual====
====Manual====
Line 66: Line 108:
===Windows PHP Instructions===
===Windows PHP Instructions===


* Download the latest PHP installer from [http://windows.php.net/download/ PHP.net] and run it. You need to download a version with ''Installer'' in the title. At the time of writing, only PHP 5.3 has this available. It doesn't matter whether you use the ''Thread safe'' or ''Non thread safe'' version.
* Download the latest Thread safe PHP package from [http://windows.php.net/download/ PHP.net]. Choose the x64 version only if you have a 64-bit version of Windows.
* On the ''Web Server Setup'' page, click ''Do not setup a web server''.
* Unpack the ZIP file somewhere suitable. We suggest ''C:\PHP''.
* On the ''Choose Items to Install'' page, ensure that ''Script Executable'' is selected as ''Entire feature will be installed on local hard drive''. Leave all other settings as their defaults - do '''not''' install everything.
* Go into this directory and rename ''php.ini-production'' to ''php.ini''
* Open up ''php.ini'' and uncomment (remove the '';'') on the line reading '';extension=php_curl.dll'' so it just reads ''extension=php_curl.dll''. Do this also with the lines ''extension=php_openssl.dll'' and ''extension_dir = "ext"''. This enables the curl and OpenSSL modules which are required.  On more recent versions/downloads of PHP these lines are '';extension=curl'' and '';extension=openssl'' so you may need to check for both and remove the semi colons as appropriate
* You'll also usually need to add the PHP directory to your PATH.  [http://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-command-line-access/ This page] and the section below has a fairly good description of how to do that. In your case you will probably want to add '';C:\PHP'', assuming that's where you extracted the files to.
 
* If you used the batch file in the OpenSSL section:
* If you used the batch file in the OpenSSL section:
** Run ''cmd'' from the start menu
** Run ''cmd'' from the start menu
Line 74: Line 119:
** Type ''php sign.php 1 1 1'' to test the program.
** Type ''php sign.php 1 1 1'' to test the program.
* If you did not use the batch file in the OpenSSL section:
* If you did not use the batch file in the OpenSSL section:
** Extract ''sign.php'' from the download above to a suitable location.
** Extract ''sign.php'' from the download above to a suitable location. Make sure that your private.key is in the same directory as sign.php.
** Run ''cmd'' from the start menu.
** Run ''cmd'' from the start menu.
** ''cd'' to the location that you extracted sign.php to.
** ''cd'' to the location that you extracted sign.php to.
** Type ''php sign.php 1 1 1'' to test the program.
** Type ''php sign.php 1 1 1'' to test the program.
** Copy and paste the output, ensuring it doesn't have any spaces in and all characters are copied. This may involve increasing the size of the cmd prompt window by dragging the bottom right tab.


If, when running ''php'', you get the error '' 'php' is not recognized as an internal or external command, operable program or batch file.'' then the PHP installer probably did not correctly change your Windows path. To change this manually yourself, do the following:
====Common Errors====


* In the start menu, run the ''Edit the system environment variables'' program.
*'' 'php' is not recognized as an internal or external command, operable program or batch file.''
* Click on ''Environment Variables...' in the bottom left.
If, when running ''php'', you get this then PHP has not been added to the PATH correctly so please refer to the instructions above
* Find Variable ''Path'' in the ''System Variables'' box in the lower half of the windows.
*''VCRUNTIME140.dll.dll is missing''
* Click on this variable so it is highlighted blue and then click ''Edit...'
Download the Vistual C++ Redistributable from https://www.microsoft.com/en-GB/download/details.aspx?id=48145 Even if you are running 64 bit windows, get the x86 version here
* In the ''Variable value:'' box, add the text ''C:\Program Files (x86)\PHP\;'' on the leftmost side. This means the text box will probably look like ''C:\Program Files (x86)\PHP\;%SystemRoot'' etc. Do not forget the semicolon - this is important.
*''MSVCR110.dll is missing'' (or similar errors)
* Click ''OK'' in all the windows to exit the ''System Properties'' window.
Usually this will happen in Windows 8 or 10 machines. You need to install the correct 'Visual C++ Redistributable for Visual Studio 2012 Update 4' package from [http://www.microsoft.com/en-us/download/details.aspx?id=30679 this link on the Microsoft site]. Get the 64 bit version if you have 64 bit Windows or 32 bit version if you have 32 bit Windows
* Try and run ''php'' again.


===Linux PHP Instructions===
===Linux PHP Instructions===


* Install php using your package manager, e.g. ''apt-get install php''
* Install php using your package manager, e.g. ''apt-get install php'' or ''apt-get install php5-cli''.
 
===MacOS X PHP Instructions===
 
* Visit [http://php-osx.liip.ch/ PHP-OSX]
* Download a suitable version. For example, installing PHP 5.5 requires that you open terminal and run the following command: ''curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5''
* Place your public.key, private.key and sign.php in a folder
* in terminal type “cd “ (note the space) and then drag the folder you just setup from Finder to the terminal window. This will fill in the full path for you and then, once you hit enter, you’ll have navigated to that path in terminal
* Type ''php sign.php 1 1 1'' to test the program.


===Javascript Instructions (Beta)===
===Javascript Instructions (Beta)===

Latest revision as of 16:23, 8 July 2021

Offers

Payment Details

Here, you are required to enter all information required in order for a buyer to pay you. The position field corresponds to the position in which this will be displayed, from low to high. Typically this would be bank account information, but it could also be things such as phone numbers for methods such as PingIt. The required information is as follows:

UK bank transfers

Position Heading Information
10 Sort code 123456
20 Account number 72498324
30 Account name Mr. J Bloggs
40 Account type Personal account

Please do not enter your bank's name. This is to stop buyers from attempting to pay cash over the counter at the appropriate bank. If the account type is a company one, set the Account type value to be Company account.

SEPA bank transfers

Position Heading Information
10 IBAN GB29RBOS60161331926819
20 BIC/SWIFT RBOSGB2L
30 Recipient name Mr. J Bloggs
40 Recipient address 42 Sparkly Road, Tinseltown, United Kingdom, TI7 0WN
50 Bank name RBS
60 Bank address 36 St Andrew Square, Edinburgh, United Kingdom, EH2 2YB

When offering SEPA payments, you should have fields detailing the account name, IBAN, BIC/SWIFT, name of bank, address and country of bank (all on one line) and ideally the address of the recipient (all on one line). The address of recipient isn't always needed, but apparently some banks want this.

PingIt or PayM

One field with your phone number and one with your real name, this gives buyers a double check that they've not made a typo with the phone number after entering it.

Position Heading Information
10 Number 07123456789
20 Name Joe Bloggs

Notifications

Also, you absolutely must set up notifications at both the offer level and seller level, otherwise you will not be notified about new trades or support messages.

The Access token field is only applicable to certain notification types, and may be left blank for email notifications.

SSL keys

Linux Instructions

  1. Install openssl using your package manager
  2. Run openssl genrsa 4096 > private.key and keep this key private
  3. Also run openssl rsa -pubout < private.key > public.key and send us the contents of public.key in your application form.

Mac OS X Instructions

  1. Install openssl
  2. Run openssl genrsa -out private.key 4096 and keep this key private
  3. Also run openssl rsa -in private.key -pubout > publickey.pem and send us publickey.pem. This can be done by typing cat publickey.pem.

Windows Instructions

There are two ways to do this. The first is to use our preprepared batch file to generate everything for you, and the second is to do things manually.

Automatic (using the Bittylicious Client)

  1. Download Openssl from http://gnuwin32.sourceforge.net/packages/openssl.htm. Select the first option Complete package, except sources
  2. Run the downloaded file and install openssl-(version)-setup.exe
  3. Download and run our batch file bittykey.bat if you have not already generated a private/public keypair.
  4. Add the contents of public.key to the relevant place on your seller application

Manual

  1. Download Openssl from [1]. Select the first option Complete package, except sources
  2. Run the downloaded file and install openssl-(version)-setup.exe
  3. Run cmd.exe from the Start/Run menu and navigate to the a directory that you own. For example, for your desktop, something like cd C:\Users\Username\Desktop would work, where Username is your Windows username.
  4. Run the OpenSSL binary to generate your key. Running a command like "C:\Program Files (x86)\GnuWin32\bin\openssl.exe" genrsa 4096 > private.key typically works. You might need to remove the ' (x86)' portion depending on your version of Windows.
  5. Run the following command to create public.key: "C:\Program Files (x86)\GnuWin32\bin\openssl.exe" rsa -pubout < private.key > public.key
  6. The files are placed in your Desktop directory, i.e. C:\Users\Username\Desktop so you can retrieve them with Windows Explorer.

Signing trades

In order to accept any trades, whether automatically or manually, you need to sign a message using your private key. The reason for this is that no Bitcoins can be sent without you explicitly authorising them. Even if the main Bittylicious server gets compromised, the service that sends the Bitcoins will refuse to send them unless a message is signed using your private key.

The original software uses PHP so follow the instructions below to use it. The exact command line arguments to run are provided on the page for each trade, but feel free to see if you get suitable output by running sign.php 1 1 1.

If you have trouble getting PHP working, we do have a web/Javascript-based signer that should work on any modern web browser, and this might be particularly useful on the move. It keeps all key information on your local device so should be safe to use.

Click here to download the software: Media:Sign.zip.

Windows PHP Instructions

  • Download the latest Thread safe PHP package from PHP.net. Choose the x64 version only if you have a 64-bit version of Windows.
  • Unpack the ZIP file somewhere suitable. We suggest C:\PHP.
  • Go into this directory and rename php.ini-production to php.ini
  • Open up php.ini and uncomment (remove the ;) on the line reading ;extension=php_curl.dll so it just reads extension=php_curl.dll. Do this also with the lines extension=php_openssl.dll and extension_dir = "ext". This enables the curl and OpenSSL modules which are required. On more recent versions/downloads of PHP these lines are ;extension=curl and ;extension=openssl so you may need to check for both and remove the semi colons as appropriate
  • You'll also usually need to add the PHP directory to your PATH. This page and the section below has a fairly good description of how to do that. In your case you will probably want to add ;C:\PHP, assuming that's where you extracted the files to.
  • If you used the batch file in the OpenSSL section:
    • Run cmd from the start menu
    • Type cd %UserProfile%\Desktop\Bittylicious
    • Type php sign.php 1 1 1 to test the program.
  • If you did not use the batch file in the OpenSSL section:
    • Extract sign.php from the download above to a suitable location. Make sure that your private.key is in the same directory as sign.php.
    • Run cmd from the start menu.
    • cd to the location that you extracted sign.php to.
    • Type php sign.php 1 1 1 to test the program.
    • Copy and paste the output, ensuring it doesn't have any spaces in and all characters are copied. This may involve increasing the size of the cmd prompt window by dragging the bottom right tab.

Common Errors

  • 'php' is not recognized as an internal or external command, operable program or batch file.

If, when running php, you get this then PHP has not been added to the PATH correctly so please refer to the instructions above

  • VCRUNTIME140.dll.dll is missing

Download the Vistual C++ Redistributable from https://www.microsoft.com/en-GB/download/details.aspx?id=48145 Even if you are running 64 bit windows, get the x86 version here

  • MSVCR110.dll is missing (or similar errors)

Usually this will happen in Windows 8 or 10 machines. You need to install the correct 'Visual C++ Redistributable for Visual Studio 2012 Update 4' package from this link on the Microsoft site. Get the 64 bit version if you have 64 bit Windows or 32 bit version if you have 32 bit Windows

Linux PHP Instructions

  • Install php using your package manager, e.g. apt-get install php or apt-get install php5-cli.

MacOS X PHP Instructions

  • Visit PHP-OSX
  • Download a suitable version. For example, installing PHP 5.5 requires that you open terminal and run the following command: curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5
  • Place your public.key, private.key and sign.php in a folder
  • in terminal type “cd “ (note the space) and then drag the folder you just setup from Finder to the terminal window. This will fill in the full path for you and then, once you hit enter, you’ll have navigated to that path in terminal
  • Type php sign.php 1 1 1 to test the program.

Javascript Instructions (Beta)

Access this over the Internet on the Bittylicious site.

Note that we strongly recommend you download this to be run locally in case our web site ever becomes compromised and you inadvertently give away your private key.