1. Create A Public/Private Key Combination For Use With Xero
The first thing we will need to do is create a public/private key
Download and install OpenSSL for Windows the file that you will need do download is highlighted below:
While installing OpenSSL in the Select Additional Tasks window make sure that 'The OpenSSL binaries (/bin) directory' this will make sure that the tools that we require to create the Public/Private key combo are in the correct place!
We will need to open command prompt as administrator, to do this click the start button (or the windows key on your keyboard) then type CMD, right click on 'Command Prompt' and press 'Run as administrator'.
To run the commands below, first you will need open the location that you installed OpenSSL32 on your machine.Then we need to change directory to the OpenSSL32 directory on our computer, and change to the /bin directory. In this example it's installed at: C:\OpenSSL-Win32\bin so for me to change directory to that location we will type cd C:\OpenSSL-Win32\bin into the command prompt window and then press enter.
Then we'll need to type in the following three commands and then press enter:
1. openssl genrsa -out privatekey.pem 1024
2. openssl req -new -x509 -key privatekey.pem -out publickey.cer -days 1825
After typing this command it will ask you a series of questions:
Country, state, locality (suburb/city)
Organisational Unit Name (department)
common name (nickname for the usage of the key or just your name
Just type your responses to each of these questions and press enter. Once this is complete, this will create a certificate (.cer file) containing your public key which we will upload later on in this process when registering your private application which will be located in the /bin folder.
3. openssl pkcs12 -export -out public_privatekey.pfx -inkey privatekey.pem -in publickey.cer
After hitting enter on that command it will ask you to create a password that will be tied to this key that you are about to create (you will need to remember this password for use in later steps).
Now I have the two files that will be required: