PayPal Website Payments Standard (Buy Now Button, Subscription Button etc..) uses HTML forms to submit payment request to PayPal. If you would not like to expose your BuyNow button's form data to public, you would need to encrypt your BuyNow button's HTML markup and that is called Encrypted Website Payment buttons.
In order to generate your encrypted button on the fly, you need to have 4 credentials handy. Your private PKCS12 Certificate file, your PKCS12 certificate password, PayPal Public Certificate file and the Certificate ID you receive from PayPal when you uploaded your public certificate file to your PayPal profile. Sounds complicated, right ? If so, then, you are on the right page. Oh yes!! Why ? because, SpiceLogic offers a tool that will generate all the certificates for you.
If you fill up this form and hit the 'Generate Certificates Now' button, then, this program will generate your private PKCS12 certificate file and your public certificate file. You should keep the pkcs12 certificate file with you along with the password you used to generate it. Your public certificate file needs to be uploaded to your PayPal profile so that you can get a Certificate ID. You can learn the details about how you can upload your public certificate file to your PayPal profile and collect the certificate ID. Also you should download the PayPal public certificate file from your PayPal profile. Now, you see, you already got the 4 credentials. 1. The generated PKCS12 private certificate file, 2. Your pkcs12 certificate password, 3, PayPal public certificate file and 4. the Certificate ID you received from PayPal after uploading your public certificate file to your PayPal profile. Thats all. Now, you can use your scripts to generate the PayPal Encrypted Website Payment Buttons programmatically.
If you are an ASP.NET Developer, then, your are luckier. You do not need to worry about writing your own complicated programs to generate encrypted website payment buttons. SpiceLogic offers ASP.NET PayPal Control for Website Payments Standard, it is a complete e-commerce Web Form Control / ASP.NET MVC Component for solving the problem of PayPal Integration into your ASP.NET Website. Even if you can write your own program to generate EWP, think about maintainability. The more code you write, more errors you invite. But our controls and components are well tested and you can concentrate on your business logic layer when you are using this control/component. Just try the free never expiring trial version and see how useful it is.
So, What is the magic ? Well, it does use OpenSSL internally to generate the certificates for you. OpenSSL is a command line utility that is used for generating self signed encryption certificates. It is not convenient to use a Command Line tool for rapid development. Moreover, using a command line tool is error prone, tedious, inefficient and painful. So, this tool encapsulates the usage of that OpenSSL internally and offers you a nice GUI Wizard. Moreover this tool knows exactly what PayPal requires to generate the certificates, so it will guide you accordingly. For example, look into the following screen-shot, it is giving you hint according to the PayPal specification. If you used OpenSSL manually, you might not aware about some PayPal specific requirements.
Ok, lets get back to the discussion about OpenSSL. This program does not embed OpenSSL. It rather try to find if OpenSSL is installed or not in your machine. If it cannot find OpenSSL, it will ask your permission to download and install OpenSSL from our server. Once you permit, it will do the rest. It will remember to install the program after downloading and finally generating the certificates for you. Once this process is done, next time the certificates will be generated by a single mouse click because OpenSSL is already there in your machine at that time.