261 8 295KB
English Pages 144 [28] Year 2005
Happy About™ Website Payments with PayPal Answers to Over 40 of the Most Commonly Asked Questions By Stephen Ivaskevicius and Patrick O’Neal with a foreword by Patrick Breitenbach WHITE PAPER - Subset of the book available at http://happyabout.info/paypal.php
21265 Stevens Creek Blvd. Suite 205 Cupertino, CA 95014
Happy About™ Website Payments with PayPal: Answers to Over 40 of the Most Commonly Asked Questions Copyright © 2005 by Happy About™ All rights reserved. No part of this book shall be reproduced, stored in a retrieval system, or transmitted by any means electronic, mechanical, photocopying, recording, or otherwise without written permission from the publisher. No patent liability is assumed with respect to the use of the information contained herein. Although every precaution has been taken in the preparation of this book, the publisher and author(s) assume no responsibility for errors or omissions. Neither is any liability assumed for damages resulting from the use of the information contained herein. First Printing: July 2005 ISBN 978-0-9633302-7-7
Trademarks All terms mentioned in this book that are known to be trademarks or service marks have been appropriately capitalized. Happy About™ cannot attest to the accuracy of this information. Use of a term in this book should not be regarded as affecting the validity of any trademark or service mark. PayPal is a registered trademark of PayPal Inc. eBay is a registered trademark of eBay Inc.
Warning and Disclaimer Every effort has been made to make this book as complete and as accurate as possible, but no warranty of fitness is implied. The information provided is on an “as is” basis. The authors and the publisher shall have neither liability nor responsibility to any person or entity with respect to any loss or damages arising from the information contained in this book. The views expressed in this book are those of Happy About™, and do not necessarily reflect those of PayPal Inc. or eBay Inc.
c o n t e n t s
foreword
Foreword by Patrick Breitenbach - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1
chapter 1
Introduction - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -3
chapter 2
Shopping Cart - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -5 The Basics- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -6 Shopping Cart Solution Advice: What is the Best Cart to Use? - - - - - - - - -7 Using the PayPal Shopping Cart on more than one Website - - - - - - - - - - -9 HTML Editors: Examining a View Cart Button Issue - - - - - - - - - - - - - - - - 11 HTML Help: Fixing Alignment Issues in a Table - - - - - - - - - - - - - - - - - - - 13 Checkout Window Manipulation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 16 I have my own Shopping Cart, How do I use it with PayPal? - - - - - - - - - - 18 Dynamic Pricing Shopping Cart Button - - - - - - - - - - - - - - - - - - - - - - - - - 20 Conclusion of Shopping Cart - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 22
chapter 3
Subscriptions - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 23 The Basics- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 24 Modifying Subscriptions - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 25 Billing for Past Month: Using Invoicing as a Workaround- - - - - - - - - - - - - 27 Minimum Term Subscription: You need a Contract - - - - - - - - - - - - - - - - - 29 Dynamic Subscription Pricing - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 30 Managing Subscriptions - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 34 Subscription IPN's: When are they Triggered? - - - - - - - - - - - - - - - - - - - - 36 PayPal Password Management Basics - - - - - - - - - - - - - - - - - - - - - - - - - 38 Conclusion of Subscriptions- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 42
chapter 4
Shipping & Tax - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 43 The Basics - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 44 Can you Ship to the US only? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 46 The no_shipping variable and Other Code-level Shipping Variables - - - - - 47 Overriding Tax - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 49 How to Charge for Standard vs. Express Shipping - - - - - - - - - - - - - - - - - 50
Happy About Website Payments with PayPal Whitepaper
Page iii
How to do Tax and Shipping for Subscriptions - - - - - - - - - - - - - - - - - - - 52 PayPal Fees and Shipping Charges- - - - - - - - - - - - - - - - - - - - - - - - - - - 54 Dynamic Shipping based on Location - - - - - - - - - - - - - - - - - - - - - - - - - 55 Conclusion of Shipping & Tax - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 57 chapter 5
Payment Data Transfer (PDT) - - - - - - - - - - - - - - - - - - - - - - - - 59 Why You May Want to Use PDT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 61 Using PDT with Auto Return - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 63 Using PDT to Limit Access to Displayed Information - - - - - - - - - - - - - - - 65 Using PDT with Inventory Control - - - - - - - - - - - - - - - - - - - - - - - - - - - - 67 Limitations of PDT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 69 PDT and eBay- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 70 PDT Sample Code - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 72 How you Generate a PDT Token - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 74 Conclusion of PDT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 76
chapter 6
Instant Payment Notification (IPN) - - - - - - - - - - - - - - - - - - - - - 77 Getting Started with IPN: The Basics - - - - - - - - - - - - - - - - - - - - - - - - - - 79 How to Use IPN on Multiple Sites - - - - - - - - - - - - - - - - - - - - - - - - - - - - 80 Troubleshooting HTTP 500 Errors - - - - - - - - - - - - - - - - - - - - - - - - - - - - 81 The ‘rm’ Variable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 82 Practicing IPN: Updating a Database and Sending an Email to a Customer after Payment.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 83 IPN Script Planning - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 84 Just Starting Out with IPN- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 87 Deciphering payment_status=Pending, pending_reason=unilateral - - - - 89 Shopping Cart IPNs Explained - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 90 IPN and Subscriptions - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 92 Conclusion for IPN- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 93
Page iv
Contents
chapter 7
Conclusion - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 95
appendix A
Tidbits - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 97 Multi User Access, is it Needed for a Developer? - - - - - - - - - - - - - - - - - - 98 Split Payments - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 100 How to “see” PayPal Account Optional - - - - - - - - - - - - - - - - - - - - - - - - 102 Get Paid Using PayPal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 104 Conclusion- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 105
authors
About the Authors- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 107
NOTE: This is the TOC for the Book which can purchased at Amazon, your local book retailer or from Happy About™ at http://happyabout.info/paypal.php
Happy About Website Payments with PayPal Whitepaper
Page v
f o r e w o r d
Foreword by Patrick Breitenbach It's no secret that PayPal is one of the most successful services to hatch during the dot com era. From its humble beginnings in a small office building in downtown Palo Alto, California, (previous tenant: Google) through the growing pains of adolescence to young adulthood under the wing of online auction giant eBay, PayPal has achieved what few other Silicon Valley startups have: global recognition, hyper growth, financial success and most of all, a vibrant community of active users. I've had the distinct privilege to witness most of PayPal's lifespan from its public introduction in late 1999, through a public offering during the IPO doldrums, to a buyout by eBay to its current phase of maturation. The ride has been amazing. But it is that community of loyal users that has proven so fascinating and so crucial to both PayPal and eBay's success. Both companies managed to understand at an early stage that success was rooted in the community. Lots of companies are extremely customer centric but PayPal and eBay are practically directed by their users. Who could have predicted auto sales on eBay? Certainly not eBay. But when cars started getting sold, frequently "sight unseen", eBay Motors was born. When PayPal became "the way to pay on eBay", eBay scrapped its advantaged competitor Billpoint and purchased PayPal. When it came to Web developers, PayPal's community was even more pronounced. Over 300,000 developers registered for the PayPal Developers Network in the first 2 years. Instant Payment Notification (aka "IPN") scripts sprouted up like weeds all over the Internet. Over 200 developers attended the first PayPal developers conference in 2002 in San Francisco, California. And significantly, PayLoadz developer Shannon Sofield, created PayPalDev.org as a place for the PayPal developer community to share tips, answer questions and offer integration services. While a handful of PayPal employees participated on "the boards", the most value clearly came from the community. The genesis of this book came when long time PayPal employees and PayPalDev.org participants Stephen Ivaskevicius ("PayPalStephen") and Patrick O'Neal ("PayPal_PatrickO") wanted to pull together a compendium of the most-asked questions. Scouring the forums and sifting through hundreds of threads and thousands of posts, Stephen and Patrick culled the topics down to 43 and that is the book you are holding in your hand. Patrick and Stephen are eminently qualified in the task having been in PayPal Developer Technical
Happy About Website Payments with PayPal Whitepaper
Page 1
Support for several years each. Both have represented PayPal several times at the annual eBay Live confabs. And they, more than anyone at PayPal are on the developer front line, handling phone calls, turning around emails and monitoring the online forums. And so without further adieu, I am happy to present to you "Happy About Website Payments with PayPal". Please enjoy it and I have no doubt that you will express your feelings about the material at the Web forums! Patrick Breitenbach, Manager, PayPal Merchant Services
Page 2
foreword
c h a p t e r
1
Introduction
We are very "Happy About Website Payments with PayPal", so much that we want to help merchants and developers in using PayPal. In this book, we will provide real examples of common issues and questions merchants and developers have asked on the PayPalDev.org Message Board (http://paypaldev.org). PayPalStephen and PayPal_PatrickO work for PayPal Developer Technical Support. Most of the solutions they provide can be found on the PayPal Developer Network (http://paypal.com/pdn) or on PayPalTech.com (http://paypaltech.com). We have provided five chapters with commonly asked and some unique questions about using and integrating PayPal into Websites. We will cover shopping carts, subscriptions, shipping and tax, payment data transfer (PDT) and instant payment notification (IPN). These five chapters will help you set up the right front end needed to send information to PayPal to process your transaction and the back end needed to provide the product or service to your customer and update your records. The front end chapters are Shopping Cart, Subscription and Shipping & Tax. The back-end chapters are PDT and IPN. The Appendix (Tidbits) contains the stuff we could not fit into the existing chapters. Some excerpts from the forum may have been altered to fit the formatting of this book. A description of each topic will be provided, since some customers solve their issues or ask additional questions via the PayPal web forum or phone.
Happy About Website Payments with PayPal Whitepaper
Page 3
c h a p t e r
2
Shopping Cart
PayPal offers an easy-to-use HTML shopping cart with eight pass-through variables. PayPal’s cart can use the shipping, tax, color scheme, redirects and some required fields such as phone number or payment blocking. https://paypal.com/cgi-bin/webscr?cmd=p/xcl/rec/sc-intro-outside When these solutions do not fit your needs, you can usually find an answer on the message boards. The answers may be a turn key, customized, or open source solution. This chapter covers some of the basic solutions posted to the message boards that describe how to pass additional information (or calculate products and cost before passing the customer) to PayPal to process the payment.
Happy About Website Payments with PayPal Whitepaper
Page 5
The Basics Below is the basic code you would need to use PayPal's shopping cart.