You have your nice SpreadsheetConverter order form, and the next step is to start managing the payments.
How to Connect order form to PayPal's payment service
You have made your order form, and included all the necessary calculations. The next problem is how your customers are going to pay.
An easy solution is that to use PayPal. All you need is a PayPal account which allows you to "sell online", for example an PayPal Premier account. PayPal will charge about 2.9%
- Step 1. Create the form in Excel
- Step 2. In the form, create a link to PayPal in a hidden text field. The link needs to contain 3 things: the amount the customer needs to pay, your email address, and an extra parameter $orderno$. More details about the format below.
- Step 3. Convert the Excel spreadsheet to a web page using SpreadsheetConverter
- Step 4. Publish the form to your site.
It will work like this:
- The customer opens your form. He decides what to order
- The customer presses the Submit button. You can change the text to "Proceed"
- The user is redirected to PayPal, and enters his address, credit card information etc, and presses Order. PayPal verifies the information.
- You, the seller, will get 2 emails, first the SpreadsheetConverter generated, where you see everything the customer ordered, and a separate email from PayPal saying that the payment is processed.
A sample: SpreadsheetConverter Upgrade Calculator and Order tool
We used the technique described here to create our upgrade page. Since we have many products, and many versions, there are a lot of combinations. You can view the page at
Set up a cell called xl_redirect_success with the url to PayPal
You build the url using Excel text functions. The url should contain at least the total amount and the $order_no$. The $order_no$ is used to pair the email from the form with the receipt from PayPal.
A minimul PayPal url is something like this:
="https://www.paypal.com/cart/add=1 &email@example.com &item_name=Order&item_number=$orderno$&amount=" & total
However, there are many more separate fields you can send, for example "shipping". For a complicated PayPal url, see paypal-sample.xls
There are other services, for example, we use SWREG. It is more expensive than PayPal, but they handle the VAT issues, which gets very complicated if you sell to more than 60 countries in the world.
For SWREG, the url is as easy as this:
="https://usd.swreg.org/cgi-bin/s.cgi?s=4519&p=4519 units&v=0&d=0&q=" & total & "&t=Order-$orderno$"
The only part that we need to change is the total amount and the order no. Our Advanced Submit Service will replace the $order_no$ in the url by a unique identifier, currently a letter followed by digits, like B1, B2, B3,…., B10, B11,…..
You can download our spreadsheet used to create this page from here
Enter the receiver code
Request and enter the receiver code. I selected Advanced Submit Service, but this will work with the Free Submit Service too. You do not need to enter any "Success url", since it is set from the calculator
Name the Submit button Proceed or similar
Submit is not a good title for a order button. So we change it
Verify that everything works
After SpreadsheetConverter generated the page, verify that everything works. For our SWREG sample, there are only 2 pieces of data visible on the order page, the amount and the order number.
Tip 1: Hide rows and columns with data you do not want the user to see
If there are values you do not want the user to see, place them on worksheets you do not show, or hide the rows or columns.
Tip 2: If you use the Advanced Submit Service, use the -quick.htm version
We generate two pages, one ending with .htm and one with the -quick.htm. The difference is that the non-quick contains information on how the email should look. This information only needs to be transferred once to our server. So, you should press submit at least from the non-quick version, and then use the -quick.htm version.
Security and tampering
If you redirect like this to PayPal from an HTML-page, the values can be manipulated. Therefore, when you get an order, double-check that the total is correct, and that actually the customer paid the correct amount.
If you want to have a 100% tamper-proof form, use SpreadsheetConverter ASP.NET and use an ASP.NET page instead of an HTML page. However, even in this case you need to verify that the total in the order form and the total in the PayPal receipt is the same.