SlideShare a Scribd company logo
Website Payments
Standard Integration
Guide
Last updated: June 2008
PayPal Website Payments Standard Integration Guide
Document Number: 100000.en_US-200806
© 2008 PayPal, Inc. All rights reserved. PayPal is a registered trademark of PayPal, Inc. The PayPal logo is a trademark of PayPal, Inc. Other
trademarks and brands are the property of their respective owners.
The information in this document belongs to PayPal, Inc. It may not be used, reproduced or disclosed without the written approval of PayPal, Inc.
Copyright © PayPal. All rights reserved. PayPal S.à r.l. et Cie, S.C.A., Société en Commandite par Actions. Registered office: 22-24 Boulevard Royal, L-
2449, Luxembourg, R.C.S. Luxembourg B 118 349
Consumer advisory: The PayPal™ payment service is regarded as a stored value facility under Singapore law. As such, it does not require the approval
of the Monetary Authority of Singapore. You are advised to read the terms and conditions carefully.
Notice of non-liability:
PayPal, Inc. is providing the information in this document to you “AS-IS” with all faults. PayPal, Inc. makes no warranties of any kind (whether express,
implied or statutory) with respect to the information contained herein. PayPal, Inc. assumes no liability for damages (whether direct or indirect), caused
by errors or omissions, or resulting from the use of this document or the information contained in this document or resulting from the application or use
of the product or service described herein. PayPal, Inc. reserves the right to make changes to any information herein without further notice.
Website Payments Standard Integration Guide June 2008 3
Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
About This Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Where to Go for More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Documentation Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Chapter 1 Single-Item Payments – Buy Now Buttons . . . . . . . . .15
Getting Started With Buy Now Buttons. . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
The Checkout Experience With Buy Now Buttons . . . . . . . . . . . . . . . . . . . . . . 16
Begin – Buyers are Ready to Purchase Your Item on Your Website . . . . . . . . . . 17
1 – Buyers Enter Their Billing Information or They Log In to PayPal . . . . . . . . . . 18
2 – Buyers Confirm Their Transaction Details Before Paying . . . . . . . . . . . . . . 20
3 – Buyers View and Print Their PayPal Payment Confirmations . . . . . . . . . . . . 20
End – Buyers Receive Payment Authorization Notices by Email . . . . . . . . . . . . 22
Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Managing Buy Now Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Using Email Notices to Track Buy Now Transactions . . . . . . . . . . . . . . . . . . 24
Using Recent Activity to Track Buy Now Transactions . . . . . . . . . . . . . . . . . 25
Using Transaction History to Track Buy Now Transactions . . . . . . . . . . . . . . . 25
Using Downloadable History Logs to Track Buy Now Transactions . . . . . . . . . . . 26
Using Instant Payment Notification to Track Buy Now Transactions . . . . . . . . . . 26
Creating Advanced Buy Now Buttons on the PayPal Website. . . . . . . . . . . . . . . . 26
Buy Now Code for Payment Buttons and Email Payment Links. . . . . . . . . . . . . 26
Pages in the Button Creation Tool for Buy Now Buttons. . . . . . . . . . . . . . . . . 26
Specifying the Basic Features of the Buy Now Button. . . . . . . . . . . . . . . . . . 27
Adding More Details to the Buy Now Button. . . . . . . . . . . . . . . . . . . . . . . 30
Copying and Pasting the Buy Now Code . . . . . . . . . . . . . . . . . . . . . . . . 33
Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . . 35
Sample HTML Code for a Buy Now Button . . . . . . . . . . . . . . . . . . . . . . . . . 35
Sample URL Code for a Buy Now Email Payment Link . . . . . . . . . . . . . . . . . . . 37
Contents
4 June 2008 Website Payments Standard Integration Guide
Chapter 2 Contribution Payments – Donate Buttons . . . . . . . . . .39
Getting Started With Donate Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
The Checkout Experience With Donate Buttons. . . . . . . . . . . . . . . . . . . . . . . 40
Begin – Donors are Ready to Contribute on Your Website . . . . . . . . . . . . . . . 41
1 – Donors Enter Their Billing Information or They Log In to PayPal . . . . . . . . . . 42
2 – Donors Confirm Their Contribution Details Before Paying. . . . . . . . . . . . . . 44
3 – Donors View and Print Their PayPal Contribution Confirmations . . . . . . . . . . 44
End – Donors Receive Contribution Authorization Notices by Email . . . . . . . . . . 46
Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Managing Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Using Email Notices to Track Donate Transactions . . . . . . . . . . . . . . . . . . . 49
Using Recent Activity to Track Donate Transactions . . . . . . . . . . . . . . . . . . 49
Using Transaction History to Track Donate Transactions . . . . . . . . . . . . . . . . 50
Using Downloadable History Logs to Track Donate Transactions . . . . . . . . . . . . 50
Using Instant Payment Notification to Track Donate Transactions . . . . . . . . . . . 50
Creating Advanced Donate Buttons on the PayPal Website. . . . . . . . . . . . . . . . . 51
Donate Code for Payment Buttons and Email Payment Links. . . . . . . . . . . . . . 51
Pages in the Button Creation Tool for Donate Buttons . . . . . . . . . . . . . . . . . 51
Specifying the Basic Features of the Donate Button. . . . . . . . . . . . . . . . . . . 51
Adding More Details to the Donate button. . . . . . . . . . . . . . . . . . . . . . . . 53
Copying and Pasting the Donation Code . . . . . . . . . . . . . . . . . . . . . . . . 56
Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . . 57
Sample HTML Code for Donate Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Sample URL Code for Donate Email Payment Links . . . . . . . . . . . . . . . . . . . . 59
Chapter 3 Recurring Payments – Subscribe Buttons . . . . . . . . .61
Getting Started With Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
The Checkout Experience With Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . 63
Begin – Subscribers Are Ready to Sign Up on Your Website . . . . . . . . . . . . . . 64
1 – Subscribers Enter Their Billing Information or They Log In to PayPal. . . . . . . . 64
2 – Subscribers Confirm Their Subscription Details Before Signing Up . . . . . . . . . 67
3 – Subscribers View and Print Their Subscription Confirmations. . . . . . . . . . . . 68
End – Subscribers Receive Subscription Authorization Notices by Email. . . . . . . . 69
Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Managing Subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Tracking Subscription Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
How Billing Cycles and Recurring Payments Work . . . . . . . . . . . . . . . . . . . 74
Downloading Subscriber Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Website Payments Standard Integration Guide June 2008 5
Contents
Canceling Individual Subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Canceling Multiple Subscriptions at One Time . . . . . . . . . . . . . . . . . . . . . 77
End of Term Messages Sent Through Instant Payment Notification. . . . . . . . . . . 79
Advanced Features of Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Offering Trial Periods and Introductory Rates With Subscribe Buttons . . . . . . . . . 80
Limiting the Number of Billing Cycles With Subscribe Buttons . . . . . . . . . . . . . 81
Working With Modify Subscription Buttons . . . . . . . . . . . . . . . . . . . . . . . 81
Working With Cancel Subscription Buttons . . . . . . . . . . . . . . . . . . . . . . . 84
Generating Usernames and Passwords With Subscribe Buttons . . . . . . . . . . . . 85
Reattempting Failed Recurring Payments With Subscribe Buttons . . . . . . . . . . . 87
Creating Advanced Subscribe Buttons on the PayPal Website . . . . . . . . . . . . . . . 88
Subscribe Code for Payment Buttons and Email Payment Links . . . . . . . . . . . . 88
Pages in the Button Creation Tool for Subscribe Buttons . . . . . . . . . . . . . . . . 89
Specifying The Basic Features of the Subscribe Button. . . . . . . . . . . . . . . . . 89
Adding More Details to the Subscribe Button . . . . . . . . . . . . . . . . . . . . . . 92
Copying and Pasting the Subscribe Code . . . . . . . . . . . . . . . . . . . . . . . . 95
Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . . 98
Sample HTML Code for Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . 98
Sample HTML Code for a Basic Subscribe Button . . . . . . . . . . . . . . . . . . . 98
Sample HTML Code for a Subscribe Button With Trial Periods . . . . . . . . . . . . . 99
Sample HTML Code for a Subscribe Button With Limits on Billing Cycles . . . . . . .100
Sample HTML Code for a Modify Subscription Button . . . . . . . . . . . . . . . . .101
Sample HTML Code for a Cancel Subscription Button . . . . . . . . . . . . . . . . .102
Sample HTML Code for a Subscribe Button With Password Management . . . . . . .103
Sample HTML Code for a Subscribe Button That Reattempts Payments . . . . . . . .103
Sample URL Code for Subscribe Email Payment Links . . . . . . . . . . . . . . . . . . .104
Chapter 4 The PayPal Shopping Cart – Add to Cart and View Cart
Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Getting Started With The PayPal Shopping Cart. . . . . . . . . . . . . . . . . . . . . . .107
Getting Started With Add To Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . .108
Getting Started With View Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . . .109
The Checkout Experience With the PayPal Shopping Cart . . . . . . . . . . . . . . . . .110
Begin – Shoppers Add Your Items to the PayPal Shopping Cart . . . . . . . . . . . .112
1 – Shoppers Enter Their Billing Information or They Log In To PayPal. . . . . . . . .113
2 – Shoppers Confirm Their Transaction Details Before Paying. . . . . . . . . . . . .115
3 – Shoppers View and Print Their PayPal Payment Confirmations . . . . . . . . . .115
End – Shoppers Receive Payment Authorization Notices by Email . . . . . . . . . . .117
Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
Contents
6 June 2008 Website Payments Standard Integration Guide
Managing PayPal Shopping Cart Transactions . . . . . . . . . . . . . . . . . . . . . . .120
Using Email Notices to Track PayPal Shopping Cart Transactions . . . . . . . . . . .120
Using Recent Activity to Track PayPal Shopping Cart Transactions . . . . . . . . . .121
Using Transaction History to Track PayPal Shopping Cart Transactions . . . . . . . .121
Using Downloadable History Logs to Track PayPal Shopping Cart Transactions . . . .122
Using Instant Payment Notification to Track PayPal Shopping Cart Transactions . . .122
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website. . . . . . . . .122
HTML Code for Add to Cart and View Cart Buttons . . . . . . . . . . . . . . . . . . .122
Pages in the Button Creation Tool for Add to Cart and View Cart Buttons . . . . . . .123
Pricing Items in Multiple Currencies . . . . . . . . . . . . . . . . . . . . . . . . . . .123
Specifying the Basic Features of the Add to Cart Button . . . . . . . . . . . . . . . .123
Adding More Details to the PayPal Shopping Cart Button. . . . . . . . . . . . . . . .125
Copying and Pasting the PayPal Shopping Cart HTML Code. . . . . . . . . . . . . .129
Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . .130
Sample HTML Code for Add to Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . .130
Sample HTML Code for View Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . . .132
Chapter 5 Third-Party Shopping Carts – The Cart Upload Command 135
How A Third Party Shopping Cart Works . . . . . . . . . . . . . . . . . . . . . . . . . .135
What The Shopper Sees With Third Party Shopping Carts . . . . . . . . . . . . . . .135
What Merchants See . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
Integrating PayPal with Third Party Shopping Carts . . . . . . . . . . . . . . . . . . . . .141
Required Third Party Shopping Cart Variables . . . . . . . . . . . . . . . . . . . . .141
Passing Individual Item Details to PayPal . . . . . . . . . . . . . . . . . . . . . . . .141
Setting the Tax for the Entire Cart . . . . . . . . . . . . . . . . . . . . . . . . . . . .143
Setting the Shipping Charge for the Entire Cart . . . . . . . . . . . . . . . . . . . . .143
Passing the Aggregate Shopping Cart Amount to PayPal. . . . . . . . . . . . . . . .143
Securing Your Shopping Cart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143
Chapter 6 Securing Your Website Payments Standard Buttons . . . 145
Creating an Encrypted Button on the PayPal Website. . . . . . . . . . . . . . . . . . . .146
Verifying Each Payment Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .146
Verifying Payments With Instant Payment Notification. . . . . . . . . . . . . . . . . . . .147
Encrypting Buttons Dynamically With Encrypted Website Payments . . . . . . . . . . . .147
Prerequisites for Using Encrypted Website Payments . . . . . . . . . . . . . . . . .148
Public Key Encryption Background . . . . . . . . . . . . . . . . . . . . . . . . . . .148
Setting Up The Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .148
Encrypting Your HTML Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151
Website Payments Standard Integration Guide June 2008 7
Contents
Blocking Non-encrypted Website Payments . . . . . . . . . . . . . . . . . . . . . . . . .152
Chapter 7 Using Your PayPal Account Profile . . . . . . . . . . . . 153
The Account Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153
Account Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153
Financial Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153
Selling Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154
Correspondence Between Profile Settings and HTML Variables . . . . . . . . . . . .154
Co-Branding the PayPal Checkout Pages . . . . . . . . . . . . . . . . . . . . . . . . . .155
Working With Custom Payment Pages . . . . . . . . . . . . . . . . . . . . . . . . .156
Adding or Editing a Page Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . .157
Making a Page Style Primary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158
Overriding Page Styles On Individual Payment Buttons. . . . . . . . . . . . . . . . .158
Overriding Co-Branding Options on Individual Payment Buttons . . . . . . . . . . . .159
Tailoring the Checkout Experience. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159
Auto Return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159
Getting Contact Telephone Numbers . . . . . . . . . . . . . . . . . . . . . . . . . .162
PayPal Account Optional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163
Automatic Calculation of Sales Tax . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
Displaying the Sales Tax that PayPal Calculates During Checkout . . . . . . . . . . .173
Accessing Your Sales Tax Rates in Your Account Profile . . . . . . . . . . . . . . . .173
Setting Up Domestic Sales Tax Rates . . . . . . . . . . . . . . . . . . . . . . . . . .174
Setting Up International Sales Tax Rates . . . . . . . . . . . . . . . . . . . . . . . .176
Resolving Overlapping Sales Tax Rates. . . . . . . . . . . . . . . . . . . . . . . . .176
Editing or Deleting Sales Tax Rates . . . . . . . . . . . . . . . . . . . . . . . . . . .177
Overriding Sales Tax Calculations on Individual Transactions . . . . . . . . . . . . .177
Automatic Calculation of Shipping Charges (U.S. Merchants Only) . . . . . . . . . . . .177
Displaying the Shipping Charges that PayPal Calculates During Checkout. . . . . . .178
Shipping Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
Shipping Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
Shipping Rate Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
Shipping Rate Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
Shipping Rates and Currencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182
Adding Shipping Rates for the First Time . . . . . . . . . . . . . . . . . . . . . . . .182
Adding Shipping Methods by Using a Wizard . . . . . . . . . . . . . . . . . . . . . .183
Viewing, Editing, and Adding Shipping Rates . . . . . . . . . . . . . . . . . . . . . .185
Viewing the Configuration of an Existing Shipping Method . . . . . . . . . . . . . . .187
Editing the Configuration Settings of an Existing Shipping Method . . . . . . . . . . .187
Deleting Shipping Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188
Contents
8 June 2008 Website Payments Standard Integration Guide
Examples of Rate Bases and Shipping Calculations . . . . . . . . . . . . . . . . . .189
Overriding Shipping Calculations on Individual Transactions . . . . . . . . . . . . . .190
Automatic Calculation of Shipping Charges (non-U.S. Merchants Only) . . . . . . . . . .191
Examples of Cost Methods and Shipping Calculations . . . . . . . . . . . . . . . . .192
Overriding Shipping Calculation on Individual Transactions. . . . . . . . . . . . . . .193
Blocking Certain Kinds of Payments . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
Accessing Your Payment Receiving Preferences to Block Payments . . . . . . . . . .194
Blocking Payments From U.S. Payers Without a Confirmed Address. . . . . . . . . .195
Blocking Payments in Currencies That You Do Not Hold . . . . . . . . . . . . . . . .196
Blocking Payments from Payers With Non-U.S. PayPal Accounts . . . . . . . . . . .196
Blocking Payments Initiated Through the Pay Anyone Subtab . . . . . . . . . . . . .197
Blocking Payments by Credit Card Instead of Bank Account . . . . . . . . . . . . . .197
Blocking Payments Funded With eChecks . . . . . . . . . . . . . . . . . . . . . . .197
Adding Your Credit Card Statement Name. . . . . . . . . . . . . . . . . . . . . . . . . .197
Allowing Multiple Users to Access Your PayPal Account . . . . . . . . . . . . . . . . . .199
Adding a User Login to Your Account . . . . . . . . . . . . . . . . . . . . . . . . . .199
Changing the Privileges for a User Login . . . . . . . . . . . . . . . . . . . . . . . .200
Resetting the Password for a User Login . . . . . . . . . . . . . . . . . . . . . . . .201
Removing a User Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
Handling Multiple Currencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
Managing Currency Balances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .203
Accepting or Denying Cross-Currency Payments . . . . . . . . . . . . . . . . . . . .204
Language Encoding Your Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204
About Language Encoding for Exchanging Data With PayPal . . . . . . . . . . . . .204
Changing Your Default Language Encoding. . . . . . . . . . . . . . . . . . . . . . .205
Chapter 8 Using Authorization & Capture . . . . . . . . . . . . . . 209
Basic Authorization Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .209
Honor Period and Authorization Period . . . . . . . . . . . . . . . . . . . . . . . . .209
Basic Authorization & Capture Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . .210
Capturing A Single Authorization . . . . . . . . . . . . . . . . . . . . . . . . . . . .211
Batch Capturing Multiple Authorizations. . . . . . . . . . . . . . . . . . . . . . . . .211
Voiding an Authorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212
Capture Within 3 Days. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213
Capture From 4 - 29 Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213
One Authorization, Multiple Captures, and a Refund . . . . . . . . . . . . . . . . . .214
Lower Capture Amount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215
Capture Up to 115% . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216
Authorization Expires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217
Website Payments Standard Integration Guide June 2008 9
Contents
Void . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218
Reattempted Capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .219
Recommendations for Best Use of Authorization & Capture . . . . . . . . . . . . . . . .220
Capturing Funds on Basic Authorizations . . . . . . . . . . . . . . . . . . . . . . . .220
Buyer Approval for Basic Authorizations. . . . . . . . . . . . . . . . . . . . . . . . .220
Voiding Basic Authorizations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220
Chapter 9 Issuing Refunds . . . . . . . . . . . . . . . . . . . . . . 221
Refunding Within 60 Days of Payment. . . . . . . . . . . . . . . . . . . . . . . . . . . .221
Refunding After 60 Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221
Chapter 10 Testing Payment Buttons in the PayPal Sandbox . . . . . 223
Chapter 11 HTML Form Basics for Website Payments Standard . . . 225
Form Attributes – ACTION and METHOD . . . . . . . . . . . . . . . . . . . . . . . . . .225
Hidden Input Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225
Specifying the Website Payments Standard Product – cmd . . . . . . . . . . . . . . . . .226
Variations on Basic Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .226
Record Keeping with Passthrough Variables . . . . . . . . . . . . . . . . . . . . . .226
Setting the Character Set – charset . . . . . . . . . . . . . . . . . . . . . . . . . . .227
Setting The Return URL on Individual Transactions. . . . . . . . . . . . . . . . . . .227
Desired Currency on Individual Transactions . . . . . . . . . . . . . . . . . . . . . .228
Prepopulating FORMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228
Sample HTML for FORM Prepopulation. . . . . . . . . . . . . . . . . . . . . . . . .228
Overriding Addresses Stored With PayPal. . . . . . . . . . . . . . . . . . . . . . . . . .229
Sample HTML for Overriding Addresses Stored With PayPal . . . . . . . . . . . . . .229
Instant Payment Notification – notify_url . . . . . . . . . . . . . . . . . . . . . . . . . . .230
Appendix A HTML Variables for Website Payments Standard . . . . . 233
Technical HTML Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233
HTML Variables for Individual Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . .234
HTML Variables for Payment Transactions . . . . . . . . . . . . . . . . . . . . . . . . .236
HTML Variables for Shopping Carts . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238
HTML Variables for Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . .240
HTML Variables for Displaying PayPal Checkout Pages . . . . . . . . . . . . . . . . . .245
HTML Variables for Prepopulating PayPal Checkout Pages. . . . . . . . . . . . . . . . .247
Contents
10 June 2008 Website Payments Standard Integration Guide
Appendix B Address Handling (U.S. Merchants Only) . . . . . . . . . 249
Address Handling With PayPal Account Optional Turned On . . . . . . . . . . . . . . . .250
Endpoint A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250
Endpoints B, C, and D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Endpoint E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Endpoints F and H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Endpoint G. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Endpoint I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Endpoints J and L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Endpoint K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Address Handling With PayPal Account Optional Turned Off . . . . . . . . . . . . . . . .252
Endpoint A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Endpoints B, C, and D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Endpoint E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Endpoints F and H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
Endpoints G and K. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
Endpoint I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
Endpoints J and L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
Appendix C Country Codes . . . . . . . . . . . . . . . . . . . . . . 255
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Website Payments Standard Integration Guide June 2008 11
P Preface
About This Guide
The Website Payments Standard Integration Guide describes how to integrate your website
with PayPal by using HTML buttons and forms. Website Payments Standard lets you accept
payments for:
Single-item purchases with Buy Now buttons – Sell from websites that offer single or
mutually exclusive products.
Multiple-item purchases with Add to Cart and View Cart buttons – Sell from online
stores with catalogs and shopping carts.
Contribution payments with Donate buttons – Raising financial support for any cause.
Recurring bills with Subscribe buttons – Collect membership dues, set up installment
plans, and offer other subscription services.
The following table summarizes the contents of this guide.
TABLE P.1 Summary of the Contents of This Guide
Feature Description See
Buy Now Buttons Accept payments for single items. Chapter 1, “Single-Item
Payments – Buy Now
Buttons”
Donate Buttons Accept donation and contribution payments. Chapter 2, “Contribution
Payments – Donate Buttons”
Subscribe Buttons Accept recurring payments for membership dues,
installment plans, and other subscription services.
Chapter 3, “Recurring
Payments – Subscribe
Buttons”
The PayPal Shopping
Cart
Accept payments for multiple items at one time. Chapter 4, “The PayPal
Shopping Cart – Add to Cart
and View Cart Buttons”
Third-Party Shopping
Carts
Develop a third-party shopping cart that is
compatible with PayPal and Website Payments
Standard.
Chapter 5, “Third-Party
Shopping Carts – The Cart
Upload Command”
Button Protection and
Encrypted Website
Payments
Protect against fraudulent payments by protecting
the code in your payment buttons with the
encryption setting when you create buttons on the
PayPal website or with Encrypted Website
Payments when you write or generate payment
buttons yourself.
Chapter 6, “Securing Your
Website Payments Standard
Buttons”
Preface
About This Guide
P
12 June 2008 Website Payments Standard Integration Guide
Automatic Calculation
of Sales Tax
Specify tax rates that PayPal uses to calculate taxes
automatically.
“Automatic Calculation of
Sales Tax” on page 172
Automatic Calculation
of Shipping Charges
Specify shipping rates that PayPal uses to calculate
shipping charges automatically.
“Automatic Calculation of
Shipping Charges (U.S.
Merchants Only)” on
page 177
– or –
“Automatic Calculation of
Shipping Charges (non-U.S.
Merchants Only)” on
page 191
Custom Payment Pages Brand the PayPal checkout pages with your own
logo and colors.
“Co-Branding the PayPal
Checkout Pages” on page 155
PayPal Account
Optional
Let people pay by credit card without having to
sign up for a PayPal account.
“PayPal Account Optional”
on page 163
Auto Return Redirect people to your website automatically after
they pay you on PayPal.
“Auto Return” on page 159
Payer Contact
Telephone
Prompt people for their contact telephone numbers
when they pay you on Paypal.
“Getting Contact Telephone
Numbers” on page 162
Multi-User Access Create separate user names for your account with
different permission levels.
“Allowing Multiple Users to
Access Your PayPal Account”
on page 199
Authorization &
Capture
Authorize payments during checkout, and capture
payment amounts or portions of them later.
Chapter 8, “Using
Authorization & Capture”
Refunds Refund entire payments or portions of them. Chapter 9, “Issuing Refunds”
TABLE P.1 Summary of the Contents of This Guide
Feature Description See
Website Payments Standard Integration Guide June 2008 13
Preface
Intended Audience
P
Intended Audience
This guide is for:
Merchants and developers who want to understand:
– The checkout experiences that people go through when they make payments with
Website Payments Standard payment buttons
– How account profile settings affect the way that Website Payments Standard works
Developers who want to learn how to implement Website Payments Standard
Revision History
The following table lists the revisions made to the Website Payments Standard Integration
Guide.
TABLE P.2 Revision History for This Guide
Date Published Description
June 2008 Added chapter on Subscribe buttons; see Chapter 3, “Recurring Payments –
Subscribe Buttons.” Added chapter on Third-Party Shopping Carts; see
Chapter 5, “Third-Party Shopping Carts – The Cart Upload Command.”
March 2008 Changes to definition of authorization honor periods; see “Honor Period and
Authorization Period” on page 209.”
January 2008 Separate checkout experience and command for Donate buttons; see Chapter 2,
“Contribution Payments – Donate Buttons.”
August 2007 Shipping calculations with tiered rates in different destination regions; see
“Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on
page 177.
May 2007 Added information on securing buttons; see Chapter 6, “Securing Your
Website Payments Standard Buttons.”
April 2007 Added Appendix B, “Address Handling (U.S. Merchants Only).”
October 2006 Minor clarifications.
August 2006 New PayPal Shopping Cart variable, shopping_url
The value _ext-enter of the cmd variable for FORM prepoulation is now no
longer necessary.
Clarification of values for the rm variable – 0, 1, or 2; not the strings "GET" or
"POST".
July 2006 Added information on how to use PayPal Authorization & Capture with Website
Payments Standard, including how to capture multiple authorizations in batches
on the PayPal website; see Chapter 8, “Using Authorization & Capture.”
Preface
Where to Go for More Information
P
14 June 2008 Website Payments Standard Integration Guide
Where to Go for More Information
Merchant Gift Certificates Guide
Order Management Integration Guide
Sandbox User Guide
Password Management Installation Guide
Documentation Feedback
Help us improve this guide by sending feedback to:
documentationfeedback@paypal.com
March 2006 Miscellaneous minor corrections.
Expanded description of creating Encrypted Website Payments buttons.
TABLE P.2 Revision History for This Guide
Date Published Description
Website Payments Standard Integration Guide June 2008 15
1 Single-Item Payments – Buy Now
Buttons
Use Buy Now buttons to accept single-item purchase payments. A Buy Now button can sell
one or more units of a single item. Make additional Buy Now buttons for additional items that
you want to sell.
Read the following topics to learn more about Buy Now buttons:
“Getting Started With Buy Now Buttons” on page 15
“The Checkout Experience With Buy Now Buttons” on page 16
“Managing Buy Now Transactions” on page 24
“Creating Advanced Buy Now Buttons on the PayPal Website” on page 26
“Sample HTML Code for a Buy Now Button” on page 35
“Sample URL Code for a Buy Now Email Payment Link” on page 37
Getting Started With Buy Now Buttons
The easiest way to add a Buy Now button to your website is by using the button creation tool
on the PayPal website. As soon as you add the button, you can begin accepting payments on
your website.
To add a basic Buy Now button to your website:
1. Log in to your PayPal account at https://www.paypal.com.
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
16 June 2008 Website Payments Standard Integration Guide
2. Click the Merchant Services tab.
The Tools for existing PayPal merchants page opens.
3. Click the Buy Now Button link.
The Buy Now buttons page opens.
4. Enter the details of your item.
– Item name/service – Enter the name of the item or service that you wish to sell.
– Price – (optional) Enter a fixed price for your item. If you leave the field blank, buyers
“name their own price” after they click the Buy Now button.
IMPORTANT: PayPal recommends that you enter a price so that you collect an
appropriate amount for the item.
5. Scroll to the bottom of the page, and click the Create Button Now button.
The Add a Buy Now button to your website page displays the generated code.
6. Click the HTML code for Websites text box to select all of the generated HTML code.
7. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
8. In your web editing tool, open the webpage where you want the button to be seen.
IMPORTANT: Be sure that your tool is ready for you to paste HTML code.
9. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
The Checkout Experience With Buy Now Buttons
This section demonstrates the PayPal checkout experience for people who click Buy Now
buttons on your website. The following diagram illustrates the steps.
Website Payments Standard Integration Guide June 2008 17
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
FIGURE 1.1 The Checkout Experience with Buy Now Buttons
Read these topics to better understand the checkout experience with Buy Now buttons:
“Begin – Buyers are Ready to Purchase Your Item on Your Website” on page 17
“1 – Buyers Enter Their Billing Information or They Log In to PayPal” on page 18
“2 – Buyers Confirm Their Transaction Details Before Paying” on page 20
“3 – Buyers View and Print Their PayPal Payment Confirmations” on page 20
“End – Buyers Receive Payment Authorization Notices by Email” on page 22
“Enhanced Checkout Experiences” on page 23
Begin – Buyers are Ready to Purchase Your Item on Your Website
The basic checkout experience with Buy Now begins when someone on your website is ready
to purchase your item.
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
18 June 2008 Website Payments Standard Integration Guide
FIGURE 1.2 Buyers Begin on Your Website When They Are Ready To Buy Your Item
In this example, Steve begins on Herschel’s Hot Sauce website and decides to try a bottle. He
clicks the Buy Now button for a single 12 oz. bottle to checkout.
1 – Buyers Enter Their Billing Information or They Log In to PayPal
PayPal displays a billing information/log-in page, which lets buyers enter their credit card
information or log in to PayPal to pay.
Website Payments Standard Integration Guide June 2008 19
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
FIGURE 1.3 Buyers Enter Their Billinng information or Log In to PayPal
For Buy Now buttons, the PayPal billing information/log-in page shows transaction details
near the top, such as item name and transaction subtotal. If buyers are satisfied with the details,
they enter their billing information and email addresses to pay by credit card. Buyers with
PayPal accounts enter their email addresses and passwords to pay with their PayPal accounts.
In this case, Steve is satisfied with the total transaction amount of $5.95 USD. He enters his
billing information and email address, and then he clicks the Review Order and Continue
button.
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
20 June 2008 Website Payments Standard Integration Guide
2 – Buyers Confirm Their Transaction Details Before Paying
PayPal displays a transaction confirmation page to let buyers confirm the details before they
complete their transactions and authorize their payments.
FIGURE 1.4 Buyers Confirm Their Payment Details Before Paying
In this case, Steve reviews the transaction details and clicks the Pay $5.95 Now button to
complete the transaction and make his payment.
3 – Buyers View and Print Their PayPal Payment Confirmations
PayPal displays a payment confirmation page after buyers pay to let them know that they have
completed their transactions and authorized their payments successfully.
Website Payments Standard Integration Guide June 2008 21
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
FIGURE 1.5 Buyers View Their Payment Confirmations
From the payment confirmation page, buyers can:
View the PayPal Receipt ID – the transaction ID – to reconcile their payments.
Click the View Printable Receipt link to print receipts for their records.
FIGURE 1.6 Buyers Print Their PayPal Payment Receipts
In this case, Steve prints the PayPal payment receipt for his records.
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
22 June 2008 Website Payments Standard Integration Guide
End – Buyers Receive Payment Authorization Notices by Email
PayPal sends buyers a payment authorization notice by email to confirm the transaction that
they made with the merchant.
FIGURE 1.7 Buyers Receive Payment Authorization Notices by Email
In this case, PayPal sends Steve an email message notifying him of his transaction with
Herschel’s Hot Sauce and his authorization for payment of $5.95 USD.
Website Payments Standard Integration Guide June 2008 23
Single-Item Payments – Buy Now Buttons
The Checkout Experience With Buy Now Buttons
1
Enhanced Checkout Experiences
Website Payments Standard offers these features to enhance the basic checkout experience for
your buyers:
Calculating Tax and Shipping Amounts
Co-Branding the Checkout Pages with Your Logo and Colors
Prepopulating the Checkout Pages With Billing and Shipping Addresses
Returning People to Your Website After They Check Out
Calculating Tax and Shipping Amounts
The basic checkout experience requires tax and shipping amounts to be included in your item
price. Set up tax rates and shipping rates in your account profile to enhance the checkout
experience for buyers so that they can see tax and shipping costs separately. When people
check out, PayPal calculates tax and shipping automatically and includes the amounts in the
transaction total.
You can specify tax and shipping rates in your account profile, and PayPal calculates the
charges automatically for each transaction. In addition, you can specify tax and shipping
charges individually for items in the payment buttons that you create.
For more information, see:
“Automatic Calculation of Sales Tax” on page 172
“Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177
“Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191
Co-Branding the Checkout Pages with Your Logo and Colors
The basic checkout experience displays your email address or your business name in the upper
left corner of the checkout pages. Use any of the following techniques to enhance the checkout
experience with your logo and colors, so that the checkout pages match more closely the style
of your website.
Set up custom payment pages in your account profile
Include a page style variable on individual buttons.
Include customizing of payment page variables on individual buttons
To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155.
Prepopulating the Checkout Pages With Billing and Shipping Addresses
The basic checkout experience has forms for filling in billing and shipping information. You
can enhance the checkout experience by prepopulating the forms with information that you
have on your website about the buyer.
To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.
Single-Item Payments – Buy Now Buttons
Managing Buy Now Transactions
1
24 June 2008 Website Payments Standard Integration Guide
Returning People to Your Website After They Check Out
The basic checkout experience leaves people on the PayPal website after they check out. Use
one of the following techniques to enhance the checkout experience so that people return to
your website, instead.
Return URL – Let people return to a page on your website if they click a return link or
button on the PayPal payment confirmation page.
To learn more, see Step 3 of “Adding More Details to the Buy Now Button” on page 30 or
“HTML Variables for Displaying PayPal Checkout Pages” on page 245.
Auto Return – Have PayPal return people automatically to page on your website.
IMPORTANT: PayPal recommends that you turn Payment Data Transfer on when you
turn Auto Return on. With Auto Return on, PayPal redirects people to your
website from an alternative PayPal payment confirmation page that does
not display a View Printable Receipt link, so people cannot print PayPal
payment receipts. Payment Data Transfer provides the transaction
information that you need to let people print receipts from your website.
To learn more, see “Auto Return” on page 159.
Payment Data Transfer – PayPal includes information about the completed transaction
when you use a return URL or Auto Return to send people back to your website. Use the
information to display a “thank you, print your receipt” page on your website.
To learn more, see the Order Management Integration Guide.
Managing Buy Now Transactions
Read the following topics to learn how PayPal helps you manage Buy Now transactions:
Using Email Notices to Track Buy Now Transactions
Using Recent Activity to Track Buy Now Transactions
Using Transaction History to Track Buy Now Transactions
Using Downloadable History Logs to Track Buy Now Transactions
Using Instant Payment Notification to Track Buy Now Transactions
Using Email Notices to Track Buy Now Transactions
PayPal sends you email notices when:
Payments are made.
Payments are pending.
Payments are canceled.
Generally, PayPal sends email notices to the primary email address of your account.
Website Payments Standard Integration Guide June 2008 25
Single-Item Payments – Buy Now Buttons
Managing Buy Now Transactions
1
PayPal can send email notices to an alternate email address, such as to someone in your
organization who handles order processing or accounting. Add the additional email address to
your account profile. Then, use that email address as the one to receive payments when you
use the button creation tool on the PayPal website. Specify the alternate email address as the
value for the business HTML variable when you write the HTML code yourself.
For more information, see Step 6 in the instructions for “Adding More Details to the Buy Now
Button” on page 30, or Appendix A, “HTML Variables for Website Payments Standard.”
Using Recent Activity to Track Buy Now Transactions
PayPal displays Buy Now transactions in your recent activity, soon after buyers complete their
transactions by clicking Buy Now buttons on your website.
FIGURE 1.8 Using Recent Activity to Track Buy Now Transactions
To view your recent history:
1. Log in to you PayPal account.
2. Navigate to My Account > Overview.
The My Account Overview opens.
3. Scroll down to the Recent Activity table near the bottom of the page.
Using Transaction History to Track Buy Now Transactions
PayPal lets you search for Buy Now transactions on the History page. The status of payments
found there can be:
Completed – Transactions were successful, and funds were credited to your account
Cleared – Payments cleared senders’ accounts, and funds were credited to your account
Uncleared – Payments have not cleared sender’s accounts, and funds were not credited
To learn how to work with transaction history, see the Order Management Integration Guide.
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
26 June 2008 Website Payments Standard Integration Guide
Using Downloadable History Logs to Track Buy Now Transactions
PayPal lets you download your Buy Now transactions to your computer from the History page.
You can specify a date range for the transactions and the file format of the download file.
To learn how to work with downloadable history logs, see the Order Management Integration
Guide.
Using Instant Payment Notification to Track Buy Now Transactions
PayPal lets your web server receive messages about Buy Now transactions and payment
activity on your account. If you activate Instant Payment Notification, PayPal sends messages
when:
Payments are first made, with a status of completed or pending.
Payments clear, fail, or are denied, if the initial status was pending.
To learn more about Instant Payment Notification, see “Instant Payment Notification –
notify_url” on page 230 and the Order Management Integration Guide.
Creating Advanced Buy Now Buttons on the PayPal Website
You can use the button creation tool on the PayPal website to create Buy Now buttons,
including buttons with these advanced features:
Buyer-specified quantities
Tax and shipping options
Option fields
Custom payment pages
Notes and special instructions from buyers
Buy Now Code for Payment Buttons and Email Payment Links
When you create Donate buttons with the button creation tool, PayPal generates HTML code
for payment buttons. Copy and paste the HTML code for payment buttons onto the pages of
your website.
In addition, PayPal can generate URL code for email payment links. Copy and paste the URL
code for email payment links into email templates messages. If your web editing tool or your
service provider does not permit you to add HTML code to your pages, you may be able to
paste the URL code for email payment links onto your webpages, instead.
Pages in the Button Creation Tool for Buy Now Buttons
The button creation tool for Buy Now buttons has three pages:
Website Payments Standard Integration Guide June 2008 27
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
Buy Now buttons – the initial page to specify the required and most often used optional
features
Buy Now buttons – Page 2 – an optional page to specify additional, advanced features
Add a Buy Now button to your website – the final page that has the generated code for
your payment button
You can switch between the first and second pages until you click the Create Button Now
button to display the third page that has the generated code.
Specifying the Basic Features of the Buy Now Button
To create code for a Buy Now button or email payment link by using a tool on the PayPal
website:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the Merchant Services tab.
3. Click the Buy Now Button link.
The Buy Now buttons page opens.
4. Enter the details of your item.
– Item name/service – Enter the name of the item or service that you wish to sell. If you
do not enter anything in this field, buyers can fill it in at the time of purchase. PayPal
recommends entering an item name to make it easier for you to ship the order.
– Item ID/number – (optional) Enter the inventory ID or tracking number of your item.
The value that you enter is displayed to buyers at the time of payment, and it is displayed
in the transaction details that both by merchants and buyers can view on the PayPal
website.
– Price – (optional) Enter a fixed price for your item. If you leave the field blank, buyers
“name their own price” after they click the Buy Now button.
IMPORTANT: PayPal recommends that you enter an a price so that you collect an
appropriate amount for the item.
– Currency – From the dropdown menu, select the currency in which you priced the item
or in which you want the prices that buyers name to be denominated. The dropdown
menu automatically selects the currency of your primary balance.
– Buyer’s default country – From the dropdown menu, select a country for the PayPal
log-in or sign-up page that buyers see when they click the button. The content on the page
will be appropriate for the country you select. Buyers can change the country that you
select, after the log-in or sign-up page appears.
5. Choose a button style for your Buy Now button.
Select the radio button next to the image that you want to use, if you are going to be
accepting payments from your website instead of using an email payment link. Button
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
28 June 2008 Website Payments Standard Integration Guide
images that read “Pay Now” are suitable if you accept payments for single services instead
of single goods. The image that you select is hosted by PayPal.
To display your own image that is hosted on your website:
– Click the Use your own button image link.
An additional radio button and text box appear.
– In the Button Image URL text box, enter the URL of your button image.
If your image is hosted securely, change the entry to begin with https//.
6. Specify whether to use button encryption.
– Select the Yes radio button to encrypt the generated code for the payment button.
– or –
– Select the No radio button to leave the generated code for the payment button and the
email payment link as clear text.
PayPal highly recommends that you use button encryption to protect the HTML code of
your payment button. Encryption protects payment details from fraudulent alteration by
third parties, thus increasing the security of the payments you accept. However, consider
the limitations that encryption imposes:
– Encrypted HTML code does not support option fields, which you can specify on the Buy
Now buttons – Page 2 page.
Select the No radio button if you want to add option fields to your Buy Now button.
– Encrypted HTML code cannot be edited.
Select the No radio button if you want to edit the HTML code for your button after the
code is generated.
Website Payments Standard Integration Guide June 2008 29
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
– Encrypted HTML code cannot be used for email payment links.
Select the No radio button if you want to create an email payment link instead of or in
addition to your button.
If you select the No radio button for any reason, use an alternative strategy described in
Chapter 6, “Securing Your Website Payments Standard Buttons” to secure the payments
you receive from the payment button or the email payment link.
IMPORTANT: Merchants with significant payment volume are required to take
precautions on securing Website Payment Standard buttons.
7. Specify a shipping method option.
– Select the Use my shipping calculations radio button if you set up shipping rates for
your account and you want the shipping charges for the item to be calculated
automatically.
– or –
– Select the Use a flat rate amount radio button if you have not set up shipping rates for
your account or you want to exclude the item from automatic calculation of shipping
charges.
In the text box, enter a fixed amount that will be added to the shipping charges for
purchases that include the item. Enter zero (0.00) for items that do not incur shipping
charges. The currency for the amount that you enter is the same as the currency for the
item.
For more information, see “Automatic Calculation of Shipping Charges (U.S. Merchants
Only)” on page 177 or “Automatic Calculation of Shipping Charges (non-U.S. Merchants
Only)” on page 191.
8. Specify a sales tax option.
– Select the Use my sales tax calculations radio button if you set up tax rates for your
account and you want taxes on the item to be calculated automatically.
– or –
– Select the Use a flat rate amount radio button if you have not set up sales tax
calculations for your account or you want to exclude the item from automatic calculation
of taxes.
In the text box, enter a fixed amount that will be added to the taxes for purchases that
include the item. Enter zero (0.00) for non-taxable items. The currency for the amount
that you enter is the same as the currency for the item.
For more information, see “Automatic Calculation of Sales Tax” on page 172.
9. If you have additional details to specify for your button, such as option fields or a custom
payment page style that has your own logo and colors, click the Add More Options button
and follow the instructions for “Adding More Details to the Buy Now Button” on page 30.
– or –
If you entered all the details and options for your button, go to “Copying and Pasting the
Buy Now Code” on page 33.
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
30 June 2008 Website Payments Standard Integration Guide
Adding More Details to the Buy Now Button
Use the Buy Now buttons – Page 2 page to specify the following additional details for your
button.
1. Add option fields to your button.
Option fields lets buyers select or specify options when they purchase the item, such as
color or size. Options must not change the price of the item.
Buy Now buttons can have one or two option fields. You can use a dropdown menu, with
choices that you specify, or a text box, in which buyers type their option choice.
– Option Field Type – Select either “drop-down menu” or “text box” as the type of option
field.
– Option Name – Enter the name of your option, for example, “Size” or “Color”. Enter no
more than 60 characters.
– Drop-Down Menu Choices – (if applicable) If you selected “drop-down menu” as the
type of option field, enter the menu choices. Choices cannot exceed 30 characters. Use a
carriage return (press ENTER) to separate choices. Enter no more than 10 choices.
IMPORTANT: Option fields cannot be used if you are creating an email payment link. To
include Buy Now links in email messages for items with options, either
send HTML emails with links to Buy Now buttons on your website that
have option fields, or ask buyers to enter the option information in the Note
field.
2. Customize your payment pages.
Use these settings to give donors a visually seamless payment experience by customizing
the PayPal payment pages to match the visual style of your website.
– Primary Page Style – (display only) The payment pages that your donors see are
displayed with the page style that is specified here, unless you select a different custom
payment page style below.
– Custom Payment Page Style – (optional) If you already added Custom Payment Page
Styles in your account profile, they are listed here. Choose the page style that you would
like to appear when buyers click your Buy Now button.
To learn more about creating page styles, see “Co-Branding the PayPal Checkout
Pages” on page 155.
– Preview – Click the Preview button to see a mock-up of the payment page style that
donors see when they click your Buy Now button.
Website Payments Standard Integration Guide June 2008 31
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
3. Customize your buyer’s experience.
Use these settings to give buyers a payment experience that is easy to navigate.
– Successful Payment URL – (optional) Do one of the following:
Enter the URL of a page on your website that you want buyers redirected to after they
complete their payments. The URL that you enter is used by this payment button only.
Click the Edit button to change the return URL that this button and all your other
payment buttons use to redirect buyers to your website after they complete their
payments. For more information, see “Auto Return” on page 159.
– Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off
for all your payment buttons.
For more information about Payment Data Transfer, see the Order Management
Integration Guide.
– Cancel Payment URL – (optional) Enter the URL for the page on your website that you
want buyers redirected to if they cancel their payments at any point before completing
the checkout. If you do not enter a URL, buyers who cancel are taken to a PayPal
webpage. The URL that you enter is used by this payment button only.
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
32 June 2008 Website Payments Standard Integration Guide
4. Select your quantity and shipping preferences.
Use these settings to control how many units of the item you want to let buyers and how
you collect shipping addresses from buyers.
– Select the Yes radio button to let buyers purchase more than one unit of the item or
service when they click the Buy Now button that you are creating.
If you leave the No radio button selected, buyers can purchase only a single unit of the
item when they click the Buy Now button.
– Select the radio button that matches your need to collect shipping addresses from buyers:
Make shipping optional – Select this radio button if you want to prompt buyers to
enter their shipping addresses as an option.
– or –
Yes, require shipping – Select this radio button if you want to require buyers to enter
their shipping addresses.
– or –
No shipping needed – Select this radio button if the product does not require shipping,
such as a digital good that buyers download, or if the item is a service that does not
require on-site delivery.
Website Payments Standard Integration Guide June 2008 33
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
5. Collect customer notes and special instructions from buyers.
Use these settings to prompt buyers to enter notes or special handling instructions.
– Select the Yes radio button if you want buyers to enter notes to you when they make their
payments. If you leave the No radio button selected, buyers cannot include notes.
– Note Title – If you selected the Yes radio button, change the default value for the field
label to prompt buyers for specific information, such as their customer IDs or special
handling instructions. Enter no more than 30 characters.
6. Select an email address to receive payment.
(optional) In the Email Address dropdown menu, select the email address through which
you want to receive payments when people click the payment button that you are creating.
The dropdown menu selects your primary email address by default. You might select the
email address of the person in your organization who handles order fulfillment or
accounting. All payments are deposited to your PayPal account balance, regardless of
which email addresses receive particular payments. Only confirmed email addresses can be
used to receive payments.
7. If you want to change any of the details that you entered on the previous page, click the
Edit button and follow the instructions for “Specifying the Basic Features of the Buy Now
Button” on page 27, beginning with Step 4.
– or –
If you have entered all the details and options for your button, go to “Copying and Pasting
the Buy Now Code” on page 33.
Copying and Pasting the Buy Now Code
After you enter the details and options that you want for your Buy Now button, click the
Create Button Now button. PayPal generates Buy Now code for:
a payment button, which you can paste onto your website
an email payment link, which you can paste into email
Single-Item Payments – Buy Now Buttons
Creating Advanced Buy Now Buttons on the PayPal Website
1
34 June 2008 Website Payments Standard Integration Guide
The Add a Buy Now button to your website page displays the generated code.
Copying and Pasting the HTML Code for the Buy Now Button
To copy and paste the HTML code for the Buy Now payment button:
1. Click the HTML code for Websites text box to select all of the generated HTML code.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. In your web editing tool, open the webpage where you want the button to be seen.
4. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Copying and Pasting the Code for the Buy Now Email Payment Link
PayPal does not generate code for email payment links if you select the Yes radio button in the
Button Encryption section on the first page of the button creation tool. To turn button
encryption off, return to the first page and click the No radio button in the Button Encryption
section. Then click the Create Button Now button again.
NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment
links. Secure the payments you receive from email payment links by using an
alternative method that does not involve encryption, as described in Chapter 6,
“Securing Your Website Payments Standard Buttons.”
To copy and paste the code for the Buy Now email payment link:
1. Click the Link for Emails text box to select all of the generated URL code.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. Open the email template or message that you want to send.
4. Paste the text that you copied from the clipboard into your email, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Website Payments Standard Integration Guide June 2008 35
Single-Item Payments – Buy Now Buttons
Sample HTML Code for a Buy Now Button
1
Creating More Buy Now Buttons
After you copy and paste the Buy Now code, you can create another Buy Now button for a
different item. Scroll to the bottom of the Add a Buy Now button to your website page and
click the Create Another Button button. Then follow the instructions for “Specifying the
Basic Features of the Buy Now Button” on page 27, beginning with Step 4. The pages of the
button creation tool retain the options that you previously specified.
Avoiding Problems With Pasted HTML Code
After you paste the code into your webpage or email, ensure that it matches exactly the code
that you copied from PayPal. Pasted code may not match the generated code for the following
reasons:
You did not copy all of the generated code.
Your editing tool may have special areas for pasting HTML code and other areas for
pasting URLs and display text. Be sure you paste the generated code into a field that
accepts HTML code or URLs.
Your editing tool might change some characters in the pasted code.
Sample HTML Code for a Buy Now Button
You can write your own HTML code for Buy Now buttons.
To protect against malicious users tampering with the HTML code for your Buy Now buttons
and submitting fraudulent payments, see Chapter 6, “Securing Your Website Payments
Standard Buttons.”
IMPORTANT: Merchants with significant payment volume are required to take precautions
on securing Website Payment Standard buttons.
You can use the following HTML code as a starting point for writing your own HTML code
for Buy Now buttons.The value for the business variable must match a confirmed email
address on file with your PayPal account. You can change the values for other variables, with
the exception of cmd.
EXAMPLE 1.1 HTML For a Buy Now Button
<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr"
method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="seller@hatsgalore.com">
<!-- Specify a Buy Now button. -->
<input type="hidden" name="cmd" value="_xclick">
<!-- Specify details about the item that buyers will purchase. -->
Single-Item Payments – Buy Now Buttons
Sample HTML Code for a Buy Now Button
1
36 June 2008 Website Payments Standard Integration Guide
<input type="hidden" name="item_name" value="Baseball Hat">
<input type="hidden" name="item_number" value="12345">
<input type=”hidden” name="amount” value=”12.95”>
<input type="hidden" name="currency_code" value="USD">
<!-- Allow buyers to enter their desired quantities. -->
<input type="hidden" name="undefined_quantity" value="1">
<!-- Provide the buyer with a dropdown menu option field. -->
<table>
<tr>
<td>
<input type="hidden" name="on0" value="Size">Size
</td>
<td>
<select name="os0">
<option value="Select a Size">Select a Size</option>
<option value="Small">Small</option>
<option value="Medium">Medium</option>
<option value="Large">Large</option>
</select>
</td>
</tr>
</table>
<!-- Require a shipping address from the buyer during checkout. -->
<input type="hidden" name="no_shipping" value="2">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
The sample code above produces the following result:
Paste the code onto your webpage below an image or a text description of the item.
Website Payments Standard Integration Guide June 2008 37
Single-Item Payments – Buy Now Buttons
Sample URL Code for a Buy Now Email Payment Link
1
Sample URL Code for a Buy Now Email Payment Link
You can write your own URL code for Buy Now email payment links.
The same variables and values that you include in HTML code for Buy Now buttons can be
used in Buy Now email payment links. Separate the variables and their values from each other
with ampersands (&). Do not enclose values in quotation marks; use plus signs (+) as
substitutes for spaces in values, if needed.
NOTE: You cannot include variables for option fields in email payment links.
You can use the following URL as a starting point for writing your own URL for Buy Now
email payment links.The value for the business variable must match a confirmed email
address on file with your PayPal account. You can change the values for other variables, with
the exception of _xclick.
EXAMPLE 1.2 URL for a Buy Now Email Payment Link
https://www.paypal.com/cgi-
bin/webscr?cmd=_xclick&business=seller@hatsgalore.com&item_name=Baseball+Ha
t&item_number=12345&amount=12%2e95&currency_code=USD
Single-Item Payments – Buy Now Buttons
Sample URL Code for a Buy Now Email Payment Link
1
38 June 2008 Website Payments Standard Integration Guide
Website Payments Standard Integration Guide June 2008 39
2 Contribution Payments – Donate
Buttons
Use Donate buttons to collect contribution payments. Donate buttons let you collect pre-
determined amounts or amounts entered by donors.
Read the following topics to learn more about Donate buttons:
“Getting Started With Donate Buttons” on page 39
“The Checkout Experience With Donate Buttons” on page 40
“Managing Contributions” on page 49
“Creating Advanced Donate Buttons on the PayPal Website” on page 51
“Sample HTML Code for Donate Buttons” on page 57
“Sample URL Code for Donate Email Payment Links” on page 59
Getting Started With Donate Buttons
The easiest way to add a Donate button to your website is by using the button creation tool on
the PayPal website. As soon as you add the button, you can begin accepting contribution
payments on your website.
To add a basic Donate button to your website that lets donors enter their own contribution
amount:
1. Log in to your PayPal account at https://www.paypal.com.
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
40 June 2008 Website Payments Standard Integration Guide
2. Click the Merchant Services tab.
The Tools for existing PayPal merchants page opens.
3. Under the Create Buttons heading, click the Donate link.
The Donations page opens.
4. Enter the donation details of your button.
– Donation name/service – Enter the reason for the donation or the name of your
organization. If you do not enter anything in this field, your donors can complete this
field.
5. Scroll to the bottom of the page, and click the Create Button Now button.
The Add a Donate button to your website page displays the generated code.
6. Click the HTML code for Websites text box to select all of the generated HTML code.
7. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
8. In your web editing tool, open the webpage where you want the button to be seen.
IMPORTANT: Be sure that your tool is ready for you to paste HTML code.
9. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
The Checkout Experience With Donate Buttons
This section demonstrates the PayPal checkout experience for people who click Donate
buttons on your website. The following diagram illustrates the steps.
Website Payments Standard Integration Guide June 2008 41
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
FIGURE 2.1 The Checkout Experience with Donate Buttons
Read these topics to better understand the checkout experience with Donate buttons:
“Begin – Donors are Ready to Contribute on Your Website” on page 41
“1 – Donors Enter Their Billing Information or They Log In to PayPal” on page 42
“2 – Donors Confirm Their Contribution Details Before Paying” on page 44
“3 – Donors View and Print Their PayPal Contribution Confirmations” on page 44
“End – Donors Receive Contribution Authorization Notices by Email” on page 46
“Enhanced Checkout Experiences” on page 47
Begin – Donors are Ready to Contribute on Your Website
The basic checkout experience with Donate buttons begins when someone on your website is
ready to contribute.
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
42 June 2008 Website Payments Standard Integration Guide
FIGURE 2.2 Donors Begin on Your Website When They Are Ready to Contribute
In this example, Mary begins on the website of her favorite cause and wants to contribute to
the Fall Cleanup Campaign. Mary clicks the Donate button to checkout.
1 – Donors Enter Their Billing Information or They Log In to PayPal
PayPal displays a billing information/log-in page, which lets donors enter their credit card
information or log in to PayPal to pay.
Website Payments Standard Integration Guide June 2008 43
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
FIGURE 2.3 Donors Enter Their Billinng information or Log In to PayPal
For Donate buttons, the PayPal billing information/log-in page shows transaction details near
the top, such as the name of the contribution and the contribution total. If donors are satisfied
with the details, they enter their billing information and email addresses to contribute by credit
card. Donors with PayPal accounts enter their email addresses and passwords to contribute
with their PayPal accounts.
In this case, Mary is satisfied with her contribution to Friends of the Park in the amount of
$25.00 USD. She enters her billing information and email address, and then she clicks the
Review Order and Continue button.
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
44 June 2008 Website Payments Standard Integration Guide
2 – Donors Confirm Their Contribution Details Before Paying
PayPal displays a transaction confirmation page to let donors confirm the details before they
complete their transactions and authorize their payments.
FIGURE 2.4 Donors Confirm Their Contribution Details Before Paying
In this case, Mary reviews the transaction details clicks the Donate $25.00 USD Now button
to complete the transaction and make her payment.
3 – Donors View and Print Their PayPal Contribution Confirmations
PayPal displays a payment confirmation page after donors pay to let them know that they have
made their contributions successfully.
Website Payments Standard Integration Guide June 2008 45
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
FIGURE 2.5 Donors View Their Donation Confirmations
From the payment confirmation page, donors can:
View the PayPal Confirmation number – the transaction ID – to reconcile their payments.
Click the View Printable Receipt link to print receipts for their records.
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
46 June 2008 Website Payments Standard Integration Guide
FIGURE 2.6 Donors Print Their PayPal Contribution Receipts
In this case, Mary prints the PayPal contribution receipt for her records.
End – Donors Receive Contribution Authorization Notices by Email
PayPal sends donors a contribution authorization notice by email to confirm the transaction
that they made with the contribution coordinator.
Website Payments Standard Integration Guide June 2008 47
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
FIGURE 2.7 Donors Receive Payment Authorization Notices by Email
In this case, PayPal sends Mary an email message notifying her of her transaction with Friends
of the Park and her authorization for payment of $25.00 USD.
Enhanced Checkout Experiences
Website Payments Standard offers these features to enhance the basic checkout experience for
your donors:
Co-Branding the Checkout Pages with Your Logo and Colors
Contribution Payments – Donate Buttons
The Checkout Experience With Donate Buttons
2
48 June 2008 Website Payments Standard Integration Guide
Prepopulating the Checkout Pages With Billing Addresses
Returning People to Your Website After They Check Out
Co-Branding the Checkout Pages with Your Logo and Colors
The basic checkout experience displays your email address or your business name in the upper
left corner of the checkout pages. Use any of the following techniques to enhance the checkout
experience with your logo and colors, so that the checkout pages match more closely the style
of your website.
Set up custom payment pages in your account profile
Include a page style variable on individual buttons.
Include customizing of payment page variables on individual buttons
To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155.
Prepopulating the Checkout Pages With Billing Addresses
The basic checkout experience has forms for filling in billing addresses. You can enhance the
checkout experience by prepopulating the forms with information that you have on your
website about the donor.
To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.
Returning People to Your Website After They Check Out
The basic checkout experience leaves people on the PayPal website after they check out. Use
one of the following techniques to enhance the checkout experience so that people return to
your website, instead.
Return URL – Let people return to a page on your website if they click a return link or
button on the PayPal payment confirmation page.
To learn more, see Step 2 of “Adding More Details to the Donate button” on page 53 or
“HTML Variables for Displaying PayPal Checkout Pages” on page 245.
Auto Return – Have PayPal return people automatically to page on your website.
IMPORTANT: PayPal recommends that you turn Payment Data Transfer on when you
turn Auto Return on. With Auto Return on, PayPal redirects people to your
website from an alternative PayPal payment confirmation page that does
not display a View Printable Receipt link, so people cannot print PayPal
payment receipts. Payment Data Transfer provides the transaction
information that you need to let people print receipts from your website.
To learn more, see “Auto Return” on page 159.
Payment Data Transfer – PayPal includes information about the completed transaction
when you use a return URL or Auto Return to send people back to your website. Use the
information to display a “thank you, print your receipt” page on your website.
To learn more, see the Order Management Integration Guide.
Website Payments Standard Integration Guide June 2008 49
Contribution Payments – Donate Buttons
Managing Contributions
2
Managing Contributions
Read the following topics to learn how PayPal helps you manage Donate transactions.
Using Email Notices to Track Donate Transactions
Using Recent Activity to Track Donate Transactions
Using Transaction History to Track Donate Transactions
Using Downloadable History Logs to Track Donate Transactions
Using Instant Payment Notification to Track Donate Transactions
Using Email Notices to Track Donate Transactions
PayPal sends you email notices when:
Payments are made.
Payments are pending.
Payments are canceled.
Generally, PayPal sends email notices to the primary email address of your account.
PayPal can send email notices to an alternate email address, such as to someone in your
organization who handles accounting. Add the additional email address to your account
profile. Then, use that email address as the one to receive payments when you use the button
creation tool on the PayPal website. Specify the alternate email address as the value for the
business HTML variable when you write the HTML code yourself.
For more information, see Step 5 in the instructions for “Adding More Details to the Donate
button” on page 53, or Appendix A, “HTML Variables for Website Payments Standard.”
Using Recent Activity to Track Donate Transactions
PayPal displays Donate transactions in your recent activity, soon after donors complete their
transactions by clicking Donate buttons on your website.
Contribution Payments – Donate Buttons
Managing Contributions
2
50 June 2008 Website Payments Standard Integration Guide
FIGURE 2.8 Using Recent Activity to Track Donate Transactions
To view your recent history:
1. Log in to you PayPal account.
2. Navigate to My Account > Overview.
The My Account Overview opens.
3. Scroll down to the Recent Activity table near the bottom of the page.
Using Transaction History to Track Donate Transactions
PayPal lets you search for Donate transactions on the History page. The status of payments
found there can be:
Completed – Transactions were successful, and funds were credited to your account
Cleared – Payments cleared senders’ accounts, and funds were credited to your account
Uncleared – Payments have not cleared sender’s accounts, and funds were not credited
To learn how to work with transaction history, see the Order Management Integration Guide.
Using Downloadable History Logs to Track Donate Transactions
PayPal lets you download your Donate transactions to your computer from the History page.
You can specify a date range for the transactions and the file format of the download file.
To learn how to work with downloadable history logs, see the Order Management Integration
Guide.
Using Instant Payment Notification to Track Donate Transactions
PayPal lets your web server receive messages about Donate transactions and payment activity
on your account. If you activate Instant Payment Notification, PayPal sends messages when:
Payments are first made, with a status of completed or pending.
Website Payments Standard Integration Guide June 2008 51
Contribution Payments – Donate Buttons
Creating Advanced Donate Buttons on the PayPal Website
2
Payments clear, fail, or are denied, if the initial status was pending.
To learn more about Instant Payment Notification, see “Instant Payment Notification –
notify_url” on page 230 and the Order Management Integration Guide.
Creating Advanced Donate Buttons on the PayPal Website
You can use the button creation tool on the PayPal website to create Donate buttons, including
buttons with these advanced features:
Custom payment pages
Collecting address information from donors
Notes and special instructions from donors
Donate Code for Payment Buttons and Email Payment Links
When you create Donate buttons with the button creation tool, PayPal generates HTML code
for payment buttons. Copy and paste the HTML code for payment buttons onto the pages of
your website.
In addition, PayPal can generate URL code for email payment links. Copy and paste the URL
code for email payment links into email templates and messages. If your web editing tool or
your service provider does not permit you to add HTML code to your webpages, you may be
able to paste the URL code for email payment links onto your webpages, instead.
Pages in the Button Creation Tool for Donate Buttons
The button creation tool for Donate buttons has three pages:
Donations – the initial page to specify the required and most often used optional features
Donations – Page 2 – an optional page to specify additional, advanced features
Add a Donate button to your website – the final page that has the generated code for your
payment button
You can switch between the first and second pages until you click the Create Button Now
button to display the third page that has the generated code.
Specifying the Basic Features of the Donate Button
To create code for a Donate button or email payment link by using a tool on the PayPal
website:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the Merchant Services tab.
Contribution Payments – Donate Buttons
Creating Advanced Donate Buttons on the PayPal Website
2
52 June 2008 Website Payments Standard Integration Guide
3. Under the Create Buttons heading, click the Donate link.
The Donations page opens.
4. Enter the donation details of your button.
– Donation name/service – Enter the reason for the donation or the name of your
organization. If you do not enter anything in this field, your donors can complete this
field.
– Donation ID/number – (optional) Enter a value to help identify different kinds of
contribution payments. For example, you might enter the name of your current fund-
raising campaign. The value that you enter is displayed to donors at the time of payment,
and it is displayed in the transaction details that both contribution coordinators and
donors can view on the PayPal website.
– Amount – (optional) Enter a fixed contribution amount. If you leave the field blank,
donors enter their own contribution amount after they click the Donate button.
– Currency – From the dropdown menu, select the currency in which you specified the
fixed contribution amount or in which you want the amounts that donors enter to be
denominated. The dropdown menu automatically selects the currency of your primary
balance.
– Buyer’s default country – From the dropdown menu, select a country for the PayPal
log-in or sign-up page that donors see when they click the button. The content on the
page will be appropriate for the country you select. Donors can change the country that
you select, after the log-in or sign-up page appears.
5. Choose a button style for your Donate button.
Select the radio button next to the image that you want to use, if you are going to be
accepting payments from your website instead of by using an email payment link. The
image that you select is hosted by PayPal.
To display your own image that you host on your website:
Website Payments Standard Integration Guide June 2008 53
Contribution Payments – Donate Buttons
Creating Advanced Donate Buttons on the PayPal Website
2
– Click the Use your own button image link.
An additional radio button and text box appear.
– In the Button Image URL text box, enter the URL of your button image.
If your image is hosted securely, change the entry to begin with https//.
6. Specify whether to use button encryption.
– Select the Yes radio button to encrypt the generated code for the payment button.
– or –
– Select the No radio button to leave the generated code for the payment button and the
email payment link as clear text.
PayPal highly recommends that you use button encryption to protect the HTML code of
your payment button. Encryption protects payment details from fraudulent alteration by
third parties, thus increasing the security of the payments you accept. However, consider
the limitations that encryption imposes:
– Encrypted HTML code cannot be edited.
Select the No radio button if you want to edit the HTML code for your button after the
code is generated.
– Encrypted HTML code cannot be used for email payment links.
Select the No radio button if you want to create an email payment link instead of or in
addition to your button.
If you select the No radio button for any reason, use an alternative strategy described in
Chapter 6, “Securing Your Website Payments Standard Buttons” to secure the payments
you receive from the payment button or the email payment link.
IMPORTANT: Merchants with significant payment volume are required to take
precautions on securing Website Payment Standard buttons.
7. If you have additional details to specify for your button, such as a custom payment page
that has your own logo and colors, click the Add More Options button and follow the
instructions for “Adding More Details to the Donate button” on page 53.
– or –
If you entered all the details and options for your button, go to “Copying and Pasting the
Donation Code” on page 56.
Adding More Details to the Donate button
Use the Donations – Page 2 page to specify the following additional details for your button.
1. Customize your payment pages.
Use these settings to give donors a visually seamless payment experience by customizing
the PayPal payment pages to match the visual style of your website.
Contribution Payments – Donate Buttons
Creating Advanced Donate Buttons on the PayPal Website
2
54 June 2008 Website Payments Standard Integration Guide
– Primary Page Style – (display only) The payment pages that your donors see are
displayed with the page style that is specified here, unless you select a different custom
payment page style below.
– Custom Payment Page Style – (optional) If you already added Custom Payment Page
Styles in your account profile, they are listed here. Choose the page style that you would
like to appear when donors click your Donate button.
To learn more about creating page styles, see “Co-Branding the PayPal Checkout
Pages” on page 155.
– Preview – Click the Preview button to see a mock-up of the payment page style that
donors see when they click your Donate button.
2. Customize your donor’s experience.
Use these settings to give donors a payment experience that is easy to navigate.
– Successful Payment URL – (optional) Do one of the following:
Enter the URL of a page on your website that you want donors redirected to after they
complete their payments. The URL that you enter is used by this payment button only.
Click the Edit button to change the return URL that this button and all your other
payment buttons use to redirect donors to your website after they complete their
payments. For more information, see “Auto Return” on page 159.
– Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off
for all your payment buttons.
For more information about Payment Data Transfer, see the Order Management
Integration Guide.
Website Payments Standard Integration Guide June 2008 55
Contribution Payments – Donate Buttons
Creating Advanced Donate Buttons on the PayPal Website
2
– Cancel Payment URL – (optional) Enter the URL for the page on your website that you
want donors redirected to if they cancel their payments at any point before completing
the checkout. If you do not enter a URL, donors who cancel are taken to a PayPal
webpage. The URL that you enter is used by this payment button only.
3. Select your shipping preferences.
Select the radio button that matches your need to collect addresses from donors:
Make shipping optional – Select this radio button if you want to prompt donors to enter
their addresses as an option.
– or –
Yes, require shipping – Select this radio button if you want to require donors to enter their
addresses.
– or –
No shipping needed – Select this radio button if you do not require addresses from donors.
You might want to collect addresses from donors so that you can send paper contribution
acknowledgement letters or ship contribution thank-you gifts.
4. Collect notes and special instructions from donors.
Use these settings to prompt donors to enter notes or special instructions.
– Select the Yes radio button if you want donors to enter notes to you when they make their
payments. If you leave the No radio button selected, donors cannot include notes.
– Note Title – If you selected the Yes radio button, change the default value for the field
label to prompt donors for specific information, such as In memory of. Enter no more
than 30 characters.
5. Choose an email address to receive payment.
(optional) In the Email Address dropdown menu, select the email address through which
you want to receive payments when people click the payment button that you are creating.
The dropdown menu selects your primary email address by default. You might select the
email address of the person in your organization who handles accounting. All payments are
Contribution Payments – Donate Buttons
Creating Advanced Donate Buttons on the PayPal Website
2
56 June 2008 Website Payments Standard Integration Guide
deposited to your PayPal account balance, regardless of which email addresses receive
particular payments. Only confirmed email addresses can be used to receive payments.
6. If you want to change any of the details that you entered on the previous page, click the
Edit button and follow the instructions for “Specifying the Basic Features of the Donate
Button” on page 51, beginning with Step 4.
– or –
If you have entered all the details and options for your button, go to “Copying and Pasting
the Donation Code” on page 56.
Copying and Pasting the Donation Code
After you enter the details and options that you want for your Donate button, click the Create
Button Now button. PayPal generates Donation code for:
a payment button, which you can paste onto your website
an email payment link, which you can paste into email
The Add a Donate button to your website page displays the generated code.
Copying and Pasting the HTML Code for the Donate button
To copy and paste the HTML code for the Donation payment button:
1. Click the HTML code for Websites text box to select all of the generated HTML code.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. In your web editing tool, open the webpage where you want the button to be seen.
4. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Copying and Pasting the Code for the Donate Email Payment Link
PayPal does not generate code for email payment links if you select the Yes radio button in the
Button Encryption section on the first page of the button creation tool. To turn button
encryption off, return to the first page and click the No radio button in the Button Encryption
section. Then click the Create Button Now button again.
NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment
links. Secure the payments you receive from email payment links by using an
Website Payments Standard Integration Guide June 2008 57
Contribution Payments – Donate Buttons
Sample HTML Code for Donate Buttons
2
alternative method that does not involve encryption, as described in Chapter 6,
“Securing Your Website Payments Standard Buttons.”
To copy and paste the code for the Donate email payment link:
1. Click the Link for Emails text box to select all of the generated URL code.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. Open the email template or message that you want to send.
4. Paste the text that you copied from the clipboard into your email, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Creating More Donate buttons
After you copy and paste the Donation code, you can create another Donate button for a
different contribution purpose or amount. Scroll to the bottom of the Add a Donation button
to your website page and click the Create Another Button button. Then follow the
instructions for “Specifying the Basic Features of the Donate Button” on page 51, beginning
with Step 4. The pages of the button creation tool retain the options that you previously
specified.
Avoiding Problems With Pasted HTML Code
After you paste the code into your webpage or email, ensure that it matches exactly the code
that you copied from PayPal. Pasted code may not match the generated code for the following
reasons:
You did not copy all of the generated code.
Your editing tool may have special areas for pasting HTML code and other areas for
pasting URLs and display text. Be sure you paste the generated code into a field that
accepts HTML code or URLs.
Your editing tool might change some characters in the pasted code.
Sample HTML Code for Donate Buttons
You can write your own HTML code for Donate buttons.
Contribution Payments – Donate Buttons
Sample HTML Code for Donate Buttons
2
58 June 2008 Website Payments Standard Integration Guide
To protect against malicious users tampering with the HTML code for your Donate buttons
submitting fraudulent contributions, see Chapter 6, “Securing Your Website Payments
Standard Buttons.”
IMPORTANT: Organizations with significant payment volume are required to take
precautions on securing Website Payment Standard buttons.
Use the following HTML code as a starting point for writing your own HTML code for
Donate buttons. The value for the business variable must match a confirmed email address
on file with your PayPal account. You can change the values for other variables, with the
exception of cmd.
EXAMPLE 2.1 HTML For a Donate button
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business"
value="donations@kcparkfriends.org">
<!-- Specify a Donate button. -->
<input type="hidden" name="cmd" value="_donations">
<!-- Specify details about the contribution -->
<input type="hidden" name="item_name" value="Friends of the Park">
<input type="hidden" name="item_number" value="Fall Cleanup Campaign">
<input type="hidden" name="currency_code" value="USD">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_donate_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
The sample code above produces the following result:
Paste the code onto your website wherever you want donors to click and make a contribution
in amounts that donors choose.
Website Payments Standard Integration Guide June 2008 59
Contribution Payments – Donate Buttons
Sample URL Code for Donate Email Payment Links
2
Sample URL Code for Donate Email Payment Links
You can write your own URL code for Donate email payment links.
The same variables and values that you include in HTML code for Donate buttons can be used
in Donate email payment links. Separate the variables and their values from each other with
ampersands (&). Do not enclose values in quotation marks; use plus signs (+) as substitutes for
spaces in values, if needed.
You can use the following URL as a starting point for writing your own URL for Donate email
payment links.The value for the business variable must match a confirmed email address on
file with your PayPal account. You can change the values for other variables.
EXAMPLE 2.2 URL for a Donate Email Payment Link
https://www.paypal.com/cgi-
bin/webscr?cmd=_donations&business=donations@kcparkfriends.org&item_name=Fr
iends+of+the+Park&item_number=Fall+Cleanup+Campaign&amount=25%2e00&currency
_code=USD
Contribution Payments – Donate Buttons
Sample URL Code for Donate Email Payment Links
2
60 June 2008 Website Payments Standard Integration Guide
Website Payments Standard Integration Guide June 2008 61
3 Recurring Payments – Subscribe
Buttons
Use Subscribe buttons to bill customers on a regular basis, charge membership dues, or offer
subscription services and installment plans.
Read the following topics to learn more about Subscribe buttons:
“Getting Started With Subscribe Buttons” on page 61
“The Checkout Experience With Subscribe Buttons” on page 63
“Managing Subscriptions” on page 71
“Advanced Features of Subscribe Buttons” on page 80
“Creating Advanced Subscribe Buttons on the PayPal Website” on page 88
“Sample HTML Code for Subscribe Buttons” on page 98
“Sample URL Code for Subscribe Email Payment Links” on page 104
Getting Started With Subscribe Buttons
The easiest way to add a Subscribe button to your website is by using the button creation tool
on the PayPal website. As soon as you add the button, you can begin selling subscriptions on
your website.
To add a basic Subscribe button to your website:
1. Log in to your PayPal account at https://www.paypal.com.
Recurring Payments – Subscribe Buttons
Getting Started With Subscribe Buttons
3
62 June 2008 Website Payments Standard Integration Guide
2. Click the Merchant Services tab.
The Tools for existing PayPal merchants page opens.
3. Under the Create Buttons heading, click the Subscribe link.
The Subscriptions & Recurring Payments page opens.
4. Enter the following information:
– Subscription name – Enter a name for the subscription; for example, enter “Alice’s
Monthly Digest”.
– Subscription price – Enter the amount you want to bill subscribers for each billing
cycle; for example, enter “10.00”.
– Billing cycle – Select a number and a unit of duration.
The following example shows how to select a monthly billing cycle:
5. Scroll to the bottom of the page, and click the Create Button Now button.
The Add a Subscribe button to your website page opens.
6. Click the HTML code for Websites text box to select all of the generated HTML code.
7. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
8. In your web editing tool, open the webpage where you want the button to be seen.
IMPORTANT: Be sure that your tool is ready for you to paste HTML code.
9. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Website Payments Standard Integration Guide June 2008 63
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
The Checkout Experience With Subscribe Buttons
This section demonstrates the PayPal checkout experience for people who click Subscribe
buttons on your website. The following diagram illustrates the steps.
FIGURE 3.1 The Checkout Experience with Subscribe Buttons
Read these topics to better understand the checkout experience with Subscribe buttons:
“Begin – Subscribers Are Ready to Sign Up on Your Website” on page 64
“1 – Subscribers Enter Their Billing Information or They Log In to PayPal” on page 64
“2 – Subscribers Confirm Their Subscription Details Before Signing Up” on page 67
“3 – Subscribers View and Print Their Subscription Confirmations” on page 68
“End – Subscribers Receive Subscription Authorization Notices by Email” on page 69
“Enhanced Checkout Experiences” on page 70
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
64 June 2008 Website Payments Standard Integration Guide
Begin – Subscribers Are Ready to Sign Up on Your Website
The basic checkout experience with Subscribe buttons begins on your website when someone
is ready to sign up for your subscription.
FIGURE 3.2 Subscribers Begin on Your Website When They Are Ready to Sign Up
In this example, Bob begins on Alice’s Used Books website and decides to sign up for a
subscription to Alice’s Weekly Digest. He clicks the Subscribe button to checkout.
1 – Subscribers Enter Their Billing Information or They Log In to PayPal
PayPal displays a billing information/log-in page, which lets subscribers enter their credit card
information to sign up. Two radio buttons near the top of the page let subscribers switch
between entering billing information and logging in to PayPal to sign up.
Website Payments Standard Integration Guide June 2008 65
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
FIGURE 3.3 Subscribers Enter Their Billing Information to Sign Up with Credit Cards
In this case, Bob does not have a PayPal account. He enters his billing information, his email
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
66 June 2008 Website Payments Standard Integration Guide
address, and then he clicks the Continue button. PayPal prompts him to enter a password to
create his new PayPal account.
FIGURE 3.4 Subscribers New to PayPal Enter Passwords to Create New PayPal Accounts
In this case, Bob enters the password he wants for his new PayPal account and confirms it by
typing it again. Then, he clicks the Continue button.
Subscribers who already have PayPal accounts click the PayPal radio button near the top of
the billing information page in order to sign up. The page changes to let them log in to PayPal.
Website Payments Standard Integration Guide June 2008 67
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
FIGURE 3.5 Subscribers Log In to PayPal to SIgn Up
2 – Subscribers Confirm Their Subscription Details Before Signing Up
PayPal displays a transaction confirmation page to let subscribers confirm the details before
they complete their transactions and authorize their signups for subscriptions and for new
PayPal accounts.
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
68 June 2008 Website Payments Standard Integration Guide
FIGURE 3.6 Subscribers Confirm Their Subscription Details Before Signing Up
In this case, Bob reviews the details of his subscription and recurring payments. Then, he
clicks the Pay button to complete his signup for the subscription his signup for a new PayPal
account.
3 – Subscribers View and Print Their Subscription Confirmations
PayPal displays a payment confirmation page after subscribers pay to let them know that they
have signed up successfully.
Website Payments Standard Integration Guide June 2008 69
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
FIGURE 3.7 Subscribers View and Print Their Subscription Confirmations
In this case, Bob prints the subscription confirmation page for his records.
End – Subscribers Receive Subscription Authorization Notices by Email
PayPal sends subscribers a subscription authorization notice by email to confirm the
subscription that they signed up for.
Recurring Payments – Subscribe Buttons
The Checkout Experience With Subscribe Buttons
3
70 June 2008 Website Payments Standard Integration Guide
FIGURE 3.8 Subscribers Receive Subscription Authorization Notices by Email
In this case, PayPal sends Bob an email message notifying him of his subscription to Alice’s
Weekly Digest and his future recurring payments.
Enhanced Checkout Experiences
Website Payments Standard offers these features to enhance the basic checkout experience for
your subscribers:
Co-Branding the Checkout Pages with Your Logo and Colors
Prepopulating the Checkout Pages With Billing Addresses
Returning People to Your Website After They Check Out
Website Payments Standard Integration Guide June 2008 71
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
Co-Branding the Checkout Pages with Your Logo and Colors
The basic checkout experience displays your email address or your business name in the upper
left corner of the checkout pages. Use any of the following techniques to enhance the checkout
experience with your logo and colors, so that the checkout pages match more closely the style
of your website.
Set up custom payment pages in your account profile
Include a page style variable on individual buttons.
Include customizing of payment page variables on individual buttons
To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155.
Prepopulating the Checkout Pages With Billing Addresses
The basic checkout experience has forms for filling in billing addresses. You can enhance the
checkout experience by prepopulating the forms with information that you have on your
website about the subscriber.
To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.
Returning People to Your Website After They Check Out
The basic checkout experience with Subscribe buttons leaves subscribers on a PayPal
webpage when they complete their subscription signups. Use one of the following techniques
to alter the basic checkout experience so that subscribers return to your website:
Return URL – Let people return to a page on your website if they click a return link or
button on the PayPal payment confirmation page.
To learn more, see Step 4 of “Adding More Details to the Subscribe Button” on page 92 or
“HTML Variables for Displaying PayPal Checkout Pages” on page 245.
Auto Return – Have PayPal return people automatically to page on your website.
To learn more, see “Auto Return” on page 159.
Managing Subscriptions
Read the following topics to learn about managing subscriptions:
“Tracking Subscription Transactions” on page 71
“How Billing Cycles and Recurring Payments Work” on page 74
“Downloading Subscriber Lists” on page 75
“Canceling Individual Subscriptions” on page 76
“Canceling Multiple Subscriptions at One Time” on page 77
Tracking Subscription Transactions
Read the following topics to learn how PayPal helps you manage Donate transactions.
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
72 June 2008 Website Payments Standard Integration Guide
Using Email Notices to Track Subscription Transactions
Using Recent Activity to Track Subscribe Transactions
Using Transaction History to Track Subscribe Payments
Using Downloadable History Logs to Track Subscribe Payments
Using Instant Payment Notification to Track Subscribe Transactions
Using Email Notices to Track Subscription Transactions
PayPal sends you email notices when:
People sign up for new subscriptions.
Subscription payments are made.
Subscriptions end or are canceled.
Generally, PayPal sends email notices to the primary email address of your account.
PayPal can send email notices to an alternate email address, such as to someone in your
organization who handles accounting or manages access to members-only content. Add the
additional email address to your account profile. Then, use that email address as the value for
the business HTML variable when you write the HTML code yourself for your Subscribe
buttons.
For more information, see Appendix A, “HTML Variables for Website Payments Standard.”
Using Recent Activity to Track Subscribe Transactions
PayPal displays Subscribe transactions in your recent activity, soon after subscribers complete
their subscription signups.
FIGURE 3.9 Using Recent Activity to Track Subscribe Transactions
To view your recent history:
1. Log in to you PayPal account.
2. Navigate to My Account > Overview.
The My Account Overview opens.
Website Payments Standard Integration Guide June 2008 73
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
3. Scroll down to the Recent Activity table near the bottom of the page.
Using Transaction History to Track Subscribe Payments
PayPal lets you search for Subscribe payments on the History page. The status of payments
found there can be:
Completed – Transactions were successful, and funds were credited to your account
Cleared – Payments cleared senders’ accounts, and funds were credited to your account
Uncleared – Payments have not cleared sender’s accounts, and funds were not credited
To learn how to work with transaction history, see the Order Management Integration Guide.
Using Downloadable History Logs to Track Subscribe Payments
PayPal lets you download a file that contains all of your subscription payment history for a
time frame that you specify. You can choose comma delimited, tab delimited, Quicken, or
QuickBooks as the file format.
To download a file with your subscription payment history:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the History subtab.
The History page opens.
3. Click the Download My History link.
The Download History page opens.
4. Click the Customize Download Fields link.
The Customize My Download History page opens.
5. Scroll down the page, and select the Subscription Number check box.
6. Click the Save button.
The Download History page opens again.
7. Specify the time frame for the subscription payments you want to download and the file
type you want.
8. Click the Download History button, and follow the onscreen instructions.
For more information on the Download History page, see the Order Management Integration
Guide.
Using Instant Payment Notification to Track Subscribe Transactions
PayPal lets your web server receive messages about Subscribe transactions and payment
activity on your account. If you activate Instant Payment Notification, PayPal sends messages
when:
Payments are first made, with a status of completed or pending.
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
74 June 2008 Website Payments Standard Integration Guide
Payments clear, fail, or are denied, if the initial status was pending.
Subscriptions begin, end, or are canceled, if you use Subscriptions Password Management.
To learn more, see:
“Instant Payment Notification – notify_url” on page 230
“Generating Usernames and Passwords With Subscribe Buttons” on page 85
Order Management Integration Guide
How Billing Cycles and Recurring Payments Work
PayPal attempts to collect recurring payments from subscribers on the day after the previous
billing cycle or trial period ends. Billing cycles can be daily, weekly, monthly or yearly,
depending on the terms of the original subscription.
How Subscriptions with Weekly Billing Cycles Work
For weekly billing cycles, recurring payments are collected on the same day of the week.
EXAMPLE 3.1 When Weekly Recurring Payments Are Due and Collected
The subscription terms are:
$10 USD a week; the subscriber signs up on Tuesday, December 23.
The subscriber is billed as follows:
Tuesday, December 23 = $10.00 USD
Tuesday, December 30 = $10.00 USD
Tuesday, January 6 = $10.00 USD
and so on...
How Subscriptions with Monthly Billing Cycles Work
For monthly billing cycles, recurring payments are collected on the same day of the month. If
the initial recurring payment falls on the 31st, PayPal eventually adjusts the billing cycle to the
1st of the month. If the initial recurring payment falls on the 29th or 30th, PayPal adjusts the
billing cycle to the 1st of the month on the following February.
EXAMPLE 3.2 When Monthly Recurring Payments Are Due and Collected on the 31st
The subscription terms are:
$25.99 USD a month; the subscriber signs up on Thursday, July 31.
The subscriber is billed as follows:
Thursday, July 31 = $25.99 USD
Saturday, August 31 = $25.99 USD
Wednesday, October 1= $25.99 USD
Saturday, November 1= $25.99 USD
Website Payments Standard Integration Guide June 2008 75
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
and so on...
Notice that no recurring monthly payment was collected in September, but recurring payments
were collected roughly every 30 days.
EXAMPLE 3.3 When Monthly Recurring Payments Are Due and Collected on the 30th
The subscription terms are:
$25.99 USD a month; the subscriber signs up on Tuesday, December 30.
The subscriber is billed as follows:
Tuesday, December 30 = $25.99 USD
Friday, January 30 = $25.99 USD
Sunday, March 1= $25.99 USD
Wednesday, April 1= $25.99USD
and so on...
Notice that no recurring monthly payment was collected in February, but recurring payments
were collected roughly every 30 days.
How Subscriptions with Yearly Billing Cycles Work
For yearly billing cycles, recurring payments are collected on the same month and day each
year. If the initial recurring payment falls on February 29th of a leap year, PayPal adjusts the
billing cycle to March 1st the following year.
EXAMPLE 3.4 When Yearly Recurring Payments Are Due and Collected
The subscription terms are:
$125.99 USD a year; the subscriber signs up on a Friday, February 29.
The subscriber is billed as follows:
Friday, February 29, 2008 = $125.99 USD
Sunday, March 1, 2009 = $125.99 USD
Sunday, March 1, 2010 = $125.99 USD
and so on...
Downloading Subscriber Lists
You can download a text file that contains all of your non-payment subscription history –
signups, cancellations, and ends of term. You can manipulate the download file to produce
these kinds of lists:
All current and past subscribers – Exclude “Subscription Cancellation” and
“Subscription Completion” activity
All active subscribers – Include activity with an “active,” “active-completed,” or “active-
cancelled” status
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
76 June 2008 Website Payments Standard Integration Guide
To download a file with your non-payment subscription history:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the History subtab.
The History page opens.
3. Click the Download My History link.
The Download History page opens.
4. Specify the time frame for the subscription activity you want to download.
5. From the File Types for Download dropdown menu, select “Subscriptions.”
NOTE: The “Subscriptions” choice is available in the dropdown menu only after someone
has signed up for a subscription with you.
6. Click the Download History button, and follow the onscreen instructions.
For more information on the Download History page, see the Order Management Integration
Guide.
Canceling Individual Subscriptions
As a subscription service provider, you can the cancel the subscriptions of individual
subscribers from the Subscription Details page of your PayPal account. In addition, your
subscribers can cancel the subscriptions that they have with you from their Subscription
Details pages. The procedure, described below, is the same in either case.
NOTE: For the convenience of you and your subscribers, consider adding a Cancel
Subscription button to your website.
For more information, see “Working With Cancel Subscription Buttons” on page 84.
To cancel an individual subscription:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the History subtab.
The History page opens.
3. From the Show dropdown menu, select “Subscriptions.”
4. Specify the time frame in which the subscription was set up.
5. Click the Search button.
The History pages displays a list of subscription transactions.
6. In the Subscriptions list, locate the subscription you want to cancel.
Make sure of the following:
Website Payments Standard Integration Guide June 2008 77
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
– The Type column reads, “Subscription Creation.”
– The Status column reads, “Active.”
7. In the row for the subscription you want to cancel, click the Details link.
The Subscription Details page opens.
8. Scroll to the bottom of the page, and click the Cancel Subscription button.
Canceling Multiple Subscriptions at One Time
As a subscription service provider, you can cancel multiple subscriptions at one time from the
Subscription Details page of your PayPal account.
Follow the procedures described in this section to cancel multiple subscriptions at one time:
Requesting Mass Subscription Cancellations
Monitoring the Progress of Mass Subscription Cancellations
Requesting Mass Subscription Cancellations
Before you begin this procedure, create a text file that contains the email addresses of the
subscribers whose subscriptions you want to cancel. Enter each email addresses on a separate
line. You will upload this mass cancellation file during Step 7 of the procedure below.
IMPORTANT: If a subscriber in your text file has more than one subscription with you, all
of that person’s subscriptions will be canceled.
To request the cancellation of multiple subscriptions at one time:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the History subtab.
The History page opens.
3. From the Show dropdown menu, select “Subscriptions.”
4. Click the Search button.
The History pages displays a list of subscription transactions.
5. In the row for any subscription where the Status column reads “Active,” click the Details
link.
The Subscription Details page opens.
6. Scroll to the bottom of the page, and click the Cancel several subscribers link.
The Mass Subscription Cancellation page opens.
7. In the Attach Mass Cancellation File text box, enter the path and filename of the mass
cancellation file that you created earlier, or click the Browse… button to locate the file on
your local computer.
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
78 June 2008 Website Payments Standard Integration Guide
8. Click the Continue button.
The Mass Cancellation page opens to display the number of email addresses that PayPal
found in your mass cancellation file.
9. Confirm the number of email address found by PayPal against the number of email
addresses in your mass cancellation file. Then, click then Cancel Subscriptions button.
The Mass Cancellation page refreshes to inform you that your mass cancellation file has
been registered by PayPal and will be processed.
Monitoring the Progress of Mass Subscription Cancellations
It may take PayPal a while to process your mass cancellation file. You can monitor the
progress from the History page by looking at the status of the cancellation transaction.
NOTE: It may take up to one hour to process your mass subscription cancellation.
To check the status of your mass subscription cancellation:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the History subtab.
The History page opens.
3. From the Show dropdown menu, select “All Activity - Simple View.”
4. Specify the time frame in which you requested the mass subscription cancellation.
Generally, select the Within radio button and select “The Past Day” from the dropdown
menu.
5. Click the Search button.
The History pages displays a list of subscription transactions.
6. In the Subscriptions list, locate the row where the Type column reads “Mass Subscription
Cancellation.”
The Status column reads “Processed” after PayPal finishes processing your mass
cancellation file.
7. Click the Details link to see statistics about your mass subscription cancellation and to
download a mass cancellation log file.
The Transaction Details page opens to display the following statistics:
– Total Emails – Number of email addresses uploaded from your file.
– Emails Matched – Number of email addresses that matched one or more active
subscriptions.
– Emails Not Matched – Number of email addresses that matched no active subscriptions
or matched subscriptions that were already completed or canceled.
Website Payments Standard Integration Guide June 2008 79
Recurring Payments – Subscribe Buttons
Managing Subscriptions
3
– Successful Cancellations – Number of subscriptions canceled. This number may be
higher than the number of emails matched if any email address had more than one active
subscription.
8. Click the View Details button to download a mass cancellation log file.
PayPal prompts you to open or save a file named BatchLog.txt. Each line in the file
represents the actions taken against a subscription. Each line begins with the subscription
ID and has the email address of the subscriber and the processing date. The log file reports
the following processing results:
– Success – The subscription was canceled.
– Failed Already cancelled – The subscription was canceled already.
– Failed Already completed – The subscription ended already.
– Failed – A general failure occurred, as identified by the failure code.
– No Match – The email address did not match any of your subscriptions.
End of Term Messages Sent Through Instant Payment Notification
Instant Payment Notification sends end of term messages when subscriptions end. Use these
messages to automatically terminate subscription password access to members only content.
For more information about Subscriptions Password Management, see “Generating
Usernames and Passwords With Subscribe Buttons” on page 85.
For subscriptions with no recurring payments, end of term messages are sent when the
subscription period ends. For subscriptions with recurring payments and a limited number of
billing cycles, end of term messages are sent at the end of the last billing cycle. For
subscriptions that are canceled, end of term messages are sent when the subscription period or
the current billing cycle ends. For subscriptions that PayPal cancels due to failures in attempts
to collect recurring payments, end of term messages are sent immediately.
EXAMPLE 3.5 End of Term Examples
Term – $10 USD for 6 months, paid on the 1st of March
End of Term – sent on the 1st of September, 7 months after signup
Term – $9.99 USD per month, paid on the 1st of March
Cancellation – manually on the 15th of June
End of Term – sent on the 1st July, at the end of the current billing cycle
Term – $10 USD for 6 months, paid on the 1st of March, with reattempts of failed recurring
payments enabled
Payment failure – on the 1st of June
1st reattempt failure – on the 4th of June
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
80 June 2008 Website Payments Standard Integration Guide
2nd reattempt failure – on the 9th of June
Cancellation – final payment failure on the 9th of June
End of Term – sent on the 9th of June
For more information, see “Reattempting Failed Recurring Payments With Subscribe Buttons”
on page 87.
Advanced Features of Subscribe Buttons
Read the following topics to learn about these advanced features of Subscribe buttons:
“Offering Trial Periods and Introductory Rates With Subscribe Buttons” on page 80
“Limiting the Number of Billing Cycles With Subscribe Buttons” on page 81
“Working With Modify Subscription Buttons” on page 81
“Working With Cancel Subscription Buttons” on page 84
“Generating Usernames and Passwords With Subscribe Buttons” on page 85
“Reattempting Failed Recurring Payments With Subscribe Buttons” on page 87
Offering Trial Periods and Introductory Rates With Subscribe Buttons
Offer trial periods to let people try your subscription service before their regular subscription
and its recurring payments begin. You can set the prices and durations of trial periods
independently of the regular subscription price and billing cycle.
How Subscriptions With Trial Periods Work
The following example shows how subscribers are billed for trial periods.
EXAMPLE 3.6 Subscriptions That Include Trial Periods
Subscription Terms:
An initial trial period, free of charge, that lasts for 7 days
A second trial period for $5 USD, that lasts three additional 3 weeks
A regular subscription for $10 USD a month thereafter
The Subscriber signs up on Aug.1, and is billed as follows:
Aug. 1 = $0.00 USD
Aug. 9 = $5.00 USD
Aug. 31 = $10.00 USD
Specifying Trial Periods With Subscribe Buttons
Do one of following to add Subscribe buttons to your website that include trial periods:
Website Payments Standard Integration Guide June 2008 81
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
Specify trial periods when you create Subscribe buttons by using the creation tool on the
PayPal website.
See Step 5 of “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88.
Specify trial periods in the HTML button code that you write manually.
See “Sample HTML Code for a Subscribe Button With Trial Periods” on page 99.
Limiting the Number of Billing Cycles With Subscribe Buttons
Limit the number of billing cycles with your subscriptions to set up installment plans. The
number that you specify stops recurring payments on subscriptions after that number of billing
cycles has been reached.
How Subscriptions With Limited Billing Cycles Work
The following example shows how subscribers are billed on installment plans with a limited
number of billing cycles.
EXAMPLE 3.7 Subscription Terms That Limit the Number of Billing Cycles
Subscription Terms:
A regular subscription for $19.95 USD a month, for a total of 3 months
The Subscriber signs up on Aug.15, and is billed as follows:
Aug. 15 = $19.95 USD
Sept. 15 = $19.95 USD
Oct. 15 = $19.95 USD
Specifying the Limit on Billing Cycles With Subscribe Buttons
Do one of following to add Subscribe buttons to your website that have a limited number of
billing cycles:
Specify the limit that stops recurring payments after a certain number when you create
Subscribe buttons by using the creation tool on the PayPal website.
See Step 6 of “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88.
Specify the limit in the HTML button code that you write manually.
See “Sample HTML Code for a Subscribe Button With Limits on Billing Cycles” on
page 100.
Working With Modify Subscription Buttons
Let subscribers modify their active subscriptions by adding a Modify Subscription button to
your website. If you offer different subscriptions levels, Modify Subscription buttons let you
subscribers upgrade to a higher level without an interruption in service.
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
82 June 2008 Website Payments Standard Integration Guide
How PayPal Lets Subscribers Modify Their Subscriptions
Modify Subscription buttons let subscribers accept a new set of subscriptions terms and
pricing for their current, active subscriptions.
You can write the HTML code for Modify Subscription buttons that allow subscribers to:
Modify their active subscriptions, or sign up for new subscriptions
Modify their active subscriptions only
The following example shows how subscribers use Modify Subscription buttons to upgrade
their subscriptions from one level of service to another.
EXAMPLE 3.8 Subscribers Use Modify Subscription Buttons
Subscription terms:
A basic subscription for $29.95 USD a month, for one year
A premium subscription for $69.95 USD every six months
Bob signed up on Feb. 15 for a basic subscription.
On Apr. 26, he decides to upgrade his basic subscription to a premium subscription:
– Bob visits the subscription website, finds a webpage that lets him upgrade his
subscription, and clicks the Subscribe button.
– PayPal displays a log-in page. Bob enters his PayPal credentials and logs in.
– PayPal displays the Review Subscription Details page, which lets Bob see his current
subscription terms and the new terms is about to agree to.
Bob retains his current subscription with Alice’s Used Books.
Website Payments Standard Integration Guide June 2008 83
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
The new terms take effect at the end of the current billing cycle, Sept. 15.
Specifying Options for Modify Subscription Buttons
To create a Modify Subscription button, you must be able to write HTML code. You can
generate most of the button code with the button creation tool on the PayPal website. Then,
you add code to it manually.
To create a Modify Subscription button:
1. Follow the procedure for “Creating Advanced Subscribe Buttons on the PayPal Website”
on page 88.
– Specify the terms and pricing that will apply after the subscriptions are modified.
– Select a button image that reads “Subscribe.”
– Make sure you select the No radio button in the section about button encryption.
2. Click the Create Button Now button.
The Add a Subscribe button to your website page opens.
3. For a payment button, follow the procedure for “Copying and Pasting the HTML Code for
the Subscribe Button” on page 96 to copy and paste everything in the HTML code for
Websites text box onto your webpage. Then, add the following code.
Do one of the following between the <form> and </form> tags in the pasted code:
– To let subscribers modify their active subscriptions or sign up for new, additional
subscriptions, insert the following line of code:
<input type="hidden" name="modify" value="1">
If a subscriber has an active subscription, PayPal displays a page during checkout for
accepting the new terms and pricing, with a link to a page to sign up for a new,
additional subscription with the new terms and pricing.
If a subscriber has a prior subscription that ended or was canceled, PayPal lets the
subscriber sign up for a new subscription with the modified terms and prices.
– To let subscribers modify existing subscriptions only, insert the following line of code:
<input type="hidden" name="modify" value="2">
If a a subscriber has an active subscription, PayPal displays a page during checkout for
accepting the new terms and pricing. The page does not allow subscribers to sign up for
new subscriptions.
4. For an email payment link, follow the procedure for “Copying and Pasting the Code for the
Subscribe Email Payment Link” on page 96 to copy and paste everything in the Link for
Emails text box into your email. Then, add the following code.
Do one of the following at the end of the pasted URL:
– To let subscribers modify their active subscriptions or sign up for new, additional
subscriptions, add the following variable and value:
modify=1
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
84 June 2008 Website Payments Standard Integration Guide
– To let subscribers modify existing subscriptions only, add the following variable and
value:
modify=2
For more information, see “Sample HTML Code for a Modify Subscription Button” on
page 101.
Working With Cancel Subscription Buttons
Let subscribers cancel their active subscriptions by adding a Cancel Subscription button to
your website.
How PayPal Cancels Subscriptions
When subscribers cancel subscriptions, they avoid future recurring payments.If subscribers
cancel their subscriptions before payment is sent on the day that a recurring payment is due,
their subscriptions are canceled immediately and no payments are made.
The following example shows how subscribers use Cancel Subscription buttons to cancel their
subscriptions.
EXAMPLE 3.9 Subscribers Cancel Their Subscriptions
Subscription terms:
A regular subscription for $20.00 USD a month, for one year
Bob signs up for a subscription on Feb. 15:
On Aug. 28, Bob decides to cancel his subscription:.
Website Payments Standard Integration Guide June 2008 85
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
– Bob visits the subscription website, finds a webpage that lets him cancel his subscription,
and clicks the Unsubscribe button.
– PayPal displays a log-in page. Bob enters his PayPal credentials and logs in.
– PayPal displays the Subscription Details page for his subscription.
– Bob scrolls to the bottom of the page and clicks the Cancel Subscription button.
Bob’s subscription remains active through Sep. 14.
PayPal collects no more recurring payments from Bob.
Creating Cancel Subscription Buttons
Do one of following to add Cancel Subscription buttons to your website:
Add more options to Subscribe buttons when you create them by using the creation tool on
the PayPal website. PayPal generates code for Cancel Subscription buttons whenever you
visit the second page of the tool.
See “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88.
Write the HTML code for Cancel Subscription buttons manually.
See “Sample HTML Code for a Cancel Subscription Button” on page 102.
Generating Usernames and Passwords With Subscribe Buttons
Let PayPal generate unique usernames and passwords for your subscribers when they sign up
for subscription memberships to your website. Use PayPal Subscriptions Password
Management to enable access to members only content on your website automatically.
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
86 June 2008 Website Payments Standard Integration Guide
IMPORTANT: Subscriptions Password Management and Auto Return are incompatible.
Turn Auto Return off if you want PayPal to manage subscription passwords.
For more information, see “Auto Return” on page 159.
How Subscriptions Password Management Works
After subscribers sign up for your subscription, PayPal generates their usernames and
passwords automatically. PayPal displays the generated values to subscribers on the PayPal
payment confirmation page and in the PayPal confirmation email. In addition, PayPal displays
generated usernames and initial passwords to subscribers from their PayPal accounts.
Your website uses the generated usernames and initial passwords to set up new accounts so
that your subscribers can log in. Your website receives new subscription messages through
Instant Payment Notification, which requires advanced programming skills to implement.
After you implement Instant Payment Notification on your website, you write additional
programming code that captures the generated usernames and initial passwords for new
subscriptions. You should also write code to capture cancellation and end-of-term notices, so
that you can update your member database to turn off access to members only content.
For more information about Instant Payment Notification, see the Order Management
Integration Guide.
Downloading the Subscriptions Password Management Perl Script
PayPal provides a Perl script that you can use to help automate access to members only
content for new subscribers, provided your website uses “Basic Authentication” with an
Apache web server that runs on Linux. The Perl script interacts with Instant Payment
Notification to automatically activate and deactivate subscriber accounts on your website.
NOTE: You must agree to the terms of use before you can download the installation manual
and the Perl script from the PayPal website.
To download the manual and the Perl script for use with Subscriptions Password Management:
1. Log in to your PayPal Business account at https://www.paypal.com.
2. Click the Merchant Services tab.
The Tools for existing PayPal merchants page opens.
3. Under the Create Buttons heading, click the Subscribe link.
The Subscriptions & Recurring Payments button page opens.
4. In the text beside the first checkbox on the page, click the IPN and server modifications
required link.
The Subscriptions Password Management page opens.
5. Scroll to the bottom of the page, and click the Download the Perl script link.
The User Agreement page opens.
Website Payments Standard Integration Guide June 2008 87
Recurring Payments – Subscribe Buttons
Advanced Features of Subscribe Buttons
3
6. Read the PayPal software license agreement, and then click the I agree button.
The Subscriptions Download page opens.
7. Do both of the following:
– Click the Donwload Manual link to download the PayPal Password Management
Installation Guide in PDF format.
– Click the Download Script link to download a tar file with script and a copy of the
license agreement.
Specifying to Generate Usernames and Passwords With Subscribe Buttons
Do one of following to add Subscribe buttons to your website that generate usernames and
passwords automatically for subscribers:
Specify that you want PayPal to generate usernames and passwords when you create
Subscribe buttons by using the creation tool on the PayPal website.
See Step 4 of “Specifying The Basic Features of the Subscribe Button” on page 89.
Specify that you want PayPal to reattempt failed recurring payments in the HTML button
code that you write manually.
See “Sample HTML Code for a Subscribe Button With Password Management” on
page 103.
Reattempting Failed Recurring Payments With Subscribe Buttons
PayPal cancels subscriptions when recurring payments fail. A recurring payment fails if funds
cannot be moved from the subscriber’s PayPal account to your own. Limits on the availability
of funds in PayPal accounts occur rarely, for a variety of reasons.
Temporary limits that PayPal places on subscribers’ accounts are often lifted quickly. To avoid
unnecessary cancellations, you can specify in the HTML button code that PayPal should
reattempt failed payments before canceling subscriptions.
How PayPal Reattempts Failed Recurring Payments
PayPal reattempts to collect recurring payments three days after the day on which recurring
payments fail. If the first reattempt to collect a recurring payment fails, PayPal waits 5 days to
reattempt a second time. If the second reattempt fails, PayPal cancels the subscription.
NOTE: Payments made with bank accounts are automatically reattempted 3 days after PayPal
notifies subscribers that their payments failed.
Reattempts will not occur if another subscription payment is scheduled within 14 days of the
failed payment, so payments do not overlap.
The following example shows how PayPal reattempts to collect a failed recurring payment.
EXAMPLE 3.10
Subscription Terms:
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
88 June 2008 Website Payments Standard Integration Guide
A regular subscription for $20.00 USD a month, for one year
Bob signs up for a subscription on Feb. 12.
On Apr. 12, PayPal attempts to collect Bob’s recurring $20.00 payment, but the payment
fails because of a temporary limit placed on Bob’s PayPal account.
On Apr. 15, PayPal reattempts to collect Bob’s recurring $20.00 payment for April, but the
payment fails again because the temporary limit remains on Bob’s PayPal account.
On Apr. 18, Bob takes action on his PayPal account, and PayPal lifts the temporary limit.
On Apr. 20, PayPal reattempts to collect Bob’s recurring $20.00 payment for April, and the
payment succeeds.
On May 12, PayPal attempts to collect Bob’s recurring $20.00 payment for May, and the
payment succeeds.
Specifying to Reattempt Failed Recurring Payments With Subscribe Buttons
Do one of following to add Subscribe buttons to your website that reattempt failed recurring
payments instead of canceling subscriptions immediately:
Specify that you want PayPal to reattempt recurring payments when you create Subscribe
buttons by using the creation tool on the PayPal website.
See Step 6 of “Specifying The Basic Features of the Subscribe Button” on page 89.
Specify that you want PayPal to reattempt failed recurring payments in the HTML button
code that you write manually.
See “Sample HTML Code for a Subscribe Button That Reattempts Payments” on page 103.
Creating Advanced Subscribe Buttons on the PayPal Website
You can use the button creation tool on the PayPal website to create Subscribe buttons,
including buttons with these advanced features:
Trial periods
Limited numbers of billing cycles
Usernames and passwords generated by PaPal
Reattempts by PayPal to collect failed recurring payments
To learn more about these features, see “Advanced Features of Subscribe Buttons” on page 80.
Subscribe Code for Payment Buttons and Email Payment Links
When you create Subscribe buttons with the button creation tool, PayPal generates HTML
code for payment buttons. Copy and paste the HTML code for payment buttons onto the pages
of your website.
Website Payments Standard Integration Guide June 2008 89
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
In addition, PayPal can generate URL code for email payment links. Copy and paste the URL
code for email payment links into email messages. If your web editing tool or your service
provider does not permit you to add HTML code to your pages, you may be able to paste the
URL code for email payment links onto your webpages, instead.
Pages in the Button Creation Tool for Subscribe Buttons
The button creation tool for Subscribe buttons has three pages:
Subscriptions & Recurring Payments button – the initial page to specify the required
and most often used optional features
Subscriptions & Recurring Payments – Page 2 – an optional page to specify additional,
advanced features
Add a Subscribe button to your website – the final page that has the generated code for
your payment button
You can switch between the first and second pages until you click the Create Button Now
button to display the third page that has the generated code.
Specifying The Basic Features of the Subscribe Button
To create code for an advanced Subscribe button or email payment link:
1. Log in to your PayPal Business account at https://www.paypal.com.
2. Click the Merchant Services tab.
The Tools for existing PayPal merchants page opens.
3. Under the Create Buttons heading, click the Subscribe link.
The Subscriptions & Recurring Payments button page opens.
4. Enter the subscription details of your button.
– Subscription name/service – Enter a name for the subscription that people sign up for
when they click the Subscribe button.
– Reference number – (optional) If you offer different kinds of subscriptions, such as
monthly and annual payment plans, enter an identifying code for this subscription.
– Currency – From the dropdown menu, select the currency in which you will specify the
prices for trial periods and the regular subscription. The dropdown menu automatically
selects the currency of your primary balance.
– Buyer’s default country – From the dropdown menu, select a country for the PayPal
log-in or sign-up page that donors see when they click the button. The content on the
page will be appropriate for the country you select. Subscribers can change the country
that you select, after the log-in or sign-up page opens.
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
90 June 2008 Website Payments Standard Integration Guide
– Select the checkbox at the bottom of the details section if you would like PayPal to
generate usernames and passwords for your subscribers.
For more information, see “Generating Usernames and Passwords With Subscribe
Buttons” on page 85.
5. Specify trial periods for the subscription (optional).
– In the Trial Period #1 text box, enter the amount you want to bill subscribers for the
initial trial period. Enter 0 for a free initial trial period.
– In the Trial Period #1 dropdown menus for how long this trial period should last,
select a number and a unit of duration.
The following example shows how to select three-day trial period:
– In the Trial Period #2 text box, enter the amount you want to bill subscribers for a
subsequent trial period.
– In the Trial Period #2 dropdown menus for how long this trial period should last,
select a number and a unit of duration.
For more information, see “Offering Trial Periods and Introductory Rates With Subscribe
Buttons” on page 80.
6. Specify the regular billing cycle for the subscription.
– Subscription Price – Enter the amount that you want to bill subscribers for regular
billing cycles that occur after trial periods end.
– Under the recurring basis link, select the No radio button if you want the subscription
to expire after the end of the first regular billing cycle.
– In the dropdown menus for the length of each billing cycle, select a number and a unit
of duration.
– Under the text that reads stop the recurring payments after a certain number, select
the Yes radio button if you want to limit the number of regular billing cycles for a
subscription.
– If you select the Yes radio button in the previous step, select the number of times you that
want the regular billing cycle to recur before the subscription expires.
Website Payments Standard Integration Guide June 2008 91
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
– Under the text that reads if payment fails for the subscription, select the No radio
button if you want subscriptions to cancel immediately after attempts to collect recurring
payments fail.
For more information, see “Reattempting Failed Recurring Payments With Subscribe
Buttons” on page 87
The following example shows how to set up regular billing cycles for a year-long
installment plan with 12 equal, monthly payments.
For more information, see “Limiting the Number of Billing Cycles With Subscribe
Buttons” on page 81.
7. Choose a button style for your Subscribe button.
Select the radio button next to the image that you want to use, if you are going to be
receiving payments from your website instead of by using an email payment link. The
image that you select is hosted by PayPal.
To display your own image that you host on your website:
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
92 June 2008 Website Payments Standard Integration Guide
– Click the Use your own button image link.
An additional radio button and text box appear.
– In the Button Image URL text box, enter the URL of your button image.
If your image is hosted securely, change the entry to begin with https//.
8. Specify whether to use button encryption.
– Select the Yes radio button to encrypt the generated code for the payment button.
– or –
– Select the No radio button to leave the generated code for the payment button and the
email payment link as clear text.
PayPal highly recommends that you use button encryption to protect the HTML code of
your payment button. Encryption protects payment details from fraudulent alteration by
third parties, thus increasing the security of the payments you accept. However, consider
the limitations that encryption imposes:
– Encrypted HTML code cannot be edited.
Select the No radio button if you want to edit the HTML code for your button after the
code is generated.
– Encrypted HTML code cannot be used for email payment links.
Select the No radio button if you want to create an email payment link instead of or in
addition to your button.
If you select the No radio button for any reason, use an alternative strategy described in
Chapter 6, “Securing Your Website Payments Standard Buttons” to secure the payments
you receive from the payment button or the email payment link.
IMPORTANT: Merchants with significant payment volume are required to take
precautions on securing Website Payment Standard buttons.
9. If you have additional details to specify for your button, such as a custom payment page
that has your own logo and colors, or you want PayPal to generate a Cancel Subscription
button, click the Add More Options button and follow the instructions for “Adding More
Details to the Subscribe Button” on page 92.
– or –
If you entered all the details and options for your button, go to “Copying and Pasting the
Subscribe Code” on page 95.
Adding More Details to the Subscribe Button
Use the Subscriptions & Recurring Payments – Page 2 page to specify the following
additional details for your button.
Website Payments Standard Integration Guide June 2008 93
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
1. Add option fields to your button.
Option fields lets subscribers select or specify options when they sign up for a subscription,
such as the choice of HTML or plain text format subscriptions to electronic newsletters.
Options must not change the price of the subscription.
Subscribe buttons can have one or two option fields. You can use a dropdown menu, with
choices that you specify, or a text box, in which subscribers type their option choice.
– Option Field Type – Select either “drop-down menu” or “text box” as the type of option
field.
– Option Name – Enter the name of your option, for example, “Format”. Enter no more
than 60 characters.
– Drop-Down Menu Choices – (if applicable) If you selected “drop-down menu” as the
type of option field, enter the menu choices, for example “HTML” and “Plain Text”.
Choices cannot exceed 30 characters. Use a carriage return (press ENTER) to separate
choices. Enter no more than 10 choices.
IMPORTANT: Option fields cannot be used if you are creating an email payment link. To
include Subscribe links in email messages for items with options, either
send HTML emails with links to Subscribe buttons on your website that
have option fields, or ask buyers to enter the option information in the Note
field.
2. Create a Cancel Subscription button (optional).
Choose a button style for your Cancel Subscription button, which PayPal generates
automatically when you visit Page 2 to create a Subscribe button.
Select the radio button next to the image that you want to use. The image that you select is
hosted by PayPal.
– or –
To display your own image that you host on your website:
– Click the Use your own button image link.
An additional radio button and text box appear.
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
94 June 2008 Website Payments Standard Integration Guide
– In the Button Image URL text box, enter the URL of your button image.
If your image is hosted securely, change the entry to begin with https//.
To learn more, see “Working With Cancel Subscription Buttons” on page 84.
3. Customize your payment pages.
Use these settings to give subscribers a visually seamless payment experience by
customizing the PayPal payment pages to match the visual style of your website.
– Primary Page Style – (display only) The payment pages that your subscribers see are
displayed with the page style that is specified here, unless you select a different custom
payment page style below.
– Custom Payment Page Style – (optional) If you already added Custom Payment Page
Styles in your account profile, they are listed here. Choose the page style you would like
to appear when subscribers click your Subscribe button.
To learn more about creating page styles, see “Co-Branding the PayPal Checkout
Pages” on page 155.
– Preview – Click the Preview button to see a mock-up of the payment page style that
donors see when they click your Subscribe button.
4. Customize your subscribers’s experience.
Use these settings to give subscribers a payment experience that is easy to navigate.
Website Payments Standard Integration Guide June 2008 95
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
– Successful Payment URL – (optional) Do one of the following:
Enter the URL of a page on your website that you want subscribers redirected to after
they complete their payments. The URL that you enter is used by this payment button
only.
Click the Edit button to change the return URL that this button and all your other
payment buttons use to redirect subscribers to your website after they complete their
payments. For more information, see “Auto Return” on page 159.
– Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off
for all your payment buttons.
For more information about Payment Data Transfer, see the Order Management
Integration Guide.
– Cancel Payment URL – (optional) Enter the URL for the page on your website that you
want subscribers redirected to if they cancel their payments at any point before
completing the checkout. If you do not enter a URL, subscribers who cancel are taken to
a PayPal webpage. The URL that you enter is used by this payment button only.
5. Select your shipping preferences.
Select the radio button that matches your need to collect addresses from subscribers:
Make shipping optional – Select this radio button if you want to prompt subscribers to
enter their addresses as an option.
– or –
Yes, require shipping – Select this radio button if you want to require subscribers to enter
their addresses.
– or –
No shipping needed – Select this radio button if you do not require addresses from
subscribers.
6. If you want to change any of the details that you entered on the previous page, click the
Edit button and follow the instructions for “Specifying The Basic Features of the Subscribe
Button” on page 89, beginning with Step 4.
– or –
If you have entered all the details and options for your button, go to “Copying and Pasting
the Subscribe Code” on page 95.
Copying and Pasting the Subscribe Code
After you enter the details and options that you want for your Subscribe button, click the
Create Button Now button. PayPal generates Subscribe code for:
a payment button, which you can paste onto your website
an email payment link, which you can paste into email
optionally, a button and an email link to let subscribers cancel their subscriptions
The Add a Subscribe button to your website page displays the generated code.
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
96 June 2008 Website Payments Standard Integration Guide
Copying and Pasting the HTML Code for the Subscribe Button
To copy and paste the HTML code for the Subscribe payment button:
1. Click the HTML code for Websites text box to select all of the generated HTML code.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. Open the webpage where you want the button to be seen.
4. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Copying and Pasting the Code for the Subscribe Email Payment Link
PayPal does not generate code for email payment links if you select the Yes radio button in the
Button Encryption section on the first page of the button creation tool. To turn button
encryption off, return to the first page and click the No radio button in the Button Encryption
section. Then click the Create Button Now button again.
NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment
links. Secure the payments you receive from email payment links by using an
alternative method that does not involve encryption, as described in Chapter 6,
“Securing Your Website Payments Standard Buttons.”
To copy and paste the code for the Subscribe email payment link:
1. Click the Link for Emails text box to select all of the generated URL code.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. Open the email template or message that you want to send.
4. Paste the text that you copied from the clipboard into your email, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Website Payments Standard Integration Guide June 2008 97
Recurring Payments – Subscribe Buttons
Creating Advanced Subscribe Buttons on the PayPal Website
3
Copying and Pasting the Code for the Cancel Subscription Button
PayPal generates HTML code for the Cancel Subscription button if you visit the
Subscriptions and Recurring Payments – Page 2 page to add more options to your
Subscribe button.
To copy and past the HTML code for the Cancel Subscription button:
1. Select everything in the first text box under the Copy 'Cancel Subscription' Button
HTML heading by clicking the text with your mouse.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. In your web editing tool, open the webpage where you want the button to be seen.
4. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Copying and Pasting the Code for the Cancel Subscription Email Payment Link
PayPal generates code for the Cancel Subscription email payment link if visit the
Subscriptions and Recurring Payments – Page 2 page to add more options. However,
PayPal does not generate code for email payment links if you select the Yes radio button in the
Button Encryption section on the first page of the button creation tool. To turn button
encryption off, return to the first page and click the No radio button in the Button Encryption
section. Then click the Create Button Now button again.
NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment
links. Secure the payments you receive from email payment links by using an
alternative method that does not involve encryption, as described in Chapter 6,
“Securing Your Website Payments Standard Buttons.”
To copy and paste the code for the Cancel Subscription email payment link:
1. Select everything in the second text box under the Copy 'Cancel Subscription' Button
HTML heading by clicking the text with your mouse.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. Open the email that you want to send.
Recurring Payments – Subscribe Buttons
Sample HTML Code for Subscribe Buttons
3
98 June 2008 Website Payments Standard Integration Guide
4. Paste the text that you copied from the clipboard into your email, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Creating More Subscribe Buttons
After you copy and paste the Subscribe code, you can create another Subscribe button for a
different kind of subscription. Scroll to the bottom of the Add a Subscribe button to your
website page and click the Create Another Button button. Then follow the instructions for
“Specifying The Basic Features of the Subscribe Button” on page 89, beginning with Step 4.
The pages of the button creation tool retain the options that you previously specified.
Avoiding Problems With Pasted HTML Code
After you paste the code into your webpage or email, ensure that it matches exactly the code
that you copied from PayPal. Pasted code may not match the generated code for the following
reasons:
You did not copy all of the generated code.
Your editing tool may have special areas for pasting HTML code and other areas for
pasting URLs and display text. Be sure you paste the generated code into a field that
accepts HTML code or URLs.
Your editing tool might change some characters in the pasted code.
Sample HTML Code for Subscribe Buttons
The sample HTML code in this section demonstrates various features of Subscribe buttons:
“Sample HTML Code for a Basic Subscribe Button” on page 98
“Sample HTML Code for a Subscribe Button With Trial Periods” on page 99
“Sample HTML Code for a Subscribe Button With Limits on Billing Cycles” on page 100
“Sample HTML Code for a Modify Subscription Button” on page 101
“Sample HTML Code for a Cancel Subscription Button” on page 102
“Sample HTML Code for a Subscribe Button With Password Management” on page 103
“Sample HTML Code for a Subscribe Button That Reattempts Payments” on page 103
Sample HTML Code for a Basic Subscribe Button
The sample HTML code below illustrates a basic Subscribe button with these features:
No trial periods
Website Payments Standard Integration Guide June 2008 99
Recurring Payments – Subscribe Buttons
Sample HTML Code for Subscribe Buttons
3
A subscription price of $5.00 USD
A 1-month billing cycle
No limit on the number of billing cycles
The subscription ends only when canceled by the merchant or the subscriber.
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="alice@mystore.com">
<!-- Specify a Subscribe button. -->
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<! -- Identify the subscription. -->
<input type="hidden" name="item_name" value="Alice's Weekly Digest">
<input type="hidden" name="item_number" value="DIG Weekly">
<! -- Set the terms of the regular subscription. -->
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="a3" value="5.00">
<input type="hidden" name="p3" value="1">
<input type="hidden" name="t3" value="M">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
Sample HTML Code for a Subscribe Button With Trial Periods
The sample HTML code below illustrates a Subscribe button with these features:
An initial trial period that is free and lasts for 7 days.
A second trial periods that costs $5.00 USD and lasts for an additional 3 weeks.
The regular subscription begins 4 weeks after the subscriber signs up. It ends only when
canceled by the merchant or the subscriber.
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="alice@mystore.com">
<!-- Specify a Subscribe button. -->
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<! -- Identify the subscription. -->
Recurring Payments – Subscribe Buttons
Sample HTML Code for Subscribe Buttons
3
100 June 2008 Website Payments Standard Integration Guide
<input type="hidden" name="item_name" value="Alice's Weekly Digest">
<input type="hidden" name="item_number" value="DIG Weekly">
<! -- Set the terms of the 1st trial period. -->
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="a1" value="0">
<input type="hidden" name="p1" value="7">
<input type="hidden" name="t1" value="D">
<! -- Set the terms of the 2nd trial period. -->
<input type="hidden" name="a2" value="5.00">
<input type="hidden" name="p2" value="3">
<input type="hidden" name="t2" value="W">
<! -- Set the terms of the regular subscription. -->
<input type="hidden" name="a3" value="49.99">
<input type="hidden" name="p3" value="1">
<input type="hidden" name="t3" value="Y">
<input type="hidden" name="src" value="1">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
For more information, see “Offering Trial Periods and Introductory Rates With Subscribe
Buttons” on page 80.
Sample HTML Code for a Subscribe Button With Limits on Billing Cycles
The sample HTML code below illustrates a Subscribe button that establishes an installment
plan with this features:
An initial payment of $129.95 USD
5 additional monthly payments of $69.95 USD
The subscriber pays a total of $497.70 USD over the 6-month course of the installment plan.
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="alice@mystore.com">
<!-- Specify a Subscribe button. -->
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<! -- Identify the subscription. -->
<input type="hidden" name="item_name" value="Alice's Weekly Digest">
Website Payments Standard Integration Guide June 2008 101
Recurring Payments – Subscribe Buttons
Sample HTML Code for Subscribe Buttons
3
<input type="hidden" name="item_number" value="DIG Weekly">
<! -- Set the initial payment. -->
<input type="hidden" name="a1" value="129.95">
<input type="hidden" name="p1" value="1">
<input type="hidden" name="t1" value="M">
<! -- Set the terms of the recurring payments. -->
<input type="hidden" name="a3" value="69.95">
<input type="hidden" name="p3" value="1">
<input type="hidden" name="t3" value="M">
<! -- Limit the number of billing cycles. -->
<input type="hidden" name="src" value="1">
<input type="hidden" name="srt" value="5">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
For more information, see “Limiting the Number of Billing Cycles With Subscribe Buttons”
on page 81.
Sample HTML Code for a Modify Subscription Button
The sample HTML code in this topic illustrates a Modify Subscription button, which lets
subscribers convert their current subscriptions to a new set of terms. Modify Subscription
buttons are useful for letting subscribers upgrade from one subscription level to another. The
subscription number remains the same as before; only the terms of the subscription change.
The sample code illustrates a Modify Subscription button with these features:
A subscription price of $69.95 USD
A 6-month billing cycle
No limit on the number of billing cycles
Subscribers can modify their current subscriptions to the above terms only; they cannot
sign up for additional, new subscriptions while keeping their current subscriptions.
The subscription ends only when canceled by the merchant or the subscriber.
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="alice@mystore.com">
<!-- Specify a Subscribe button. -->
Recurring Payments – Subscribe Buttons
Sample HTML Code for Subscribe Buttons
3
102 June 2008 Website Payments Standard Integration Guide
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<! -- Identify the subscription. -->
<input type="hidden" name="item_name" value="Alice's Weekly Digest">
<input type="hidden" name="item_number" value="DIG Weekly">
<! -- Set the revised subscription price and terms. -->
<input type="hidden" name="a3" value="69.95">
<input type="hidden" name="p3" value="6">
<input type="hidden" name="t3" value="M">
<! -- Let current subscribers modify only. -->
<input type="hidden" name="modify" value="2">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
For more information, see “Working With Modify Subscription Buttons” on page 81
Sample HTML Code for a Cancel Subscription Button
Instead of an HTML form like other payment buttons, Cancel Subscribe buttons are image
links to the subscription cancellation function on the PayPal website. The URL for the image
link is specified with the HREF attribute, and it includes these URL-encoded parameters
cmd – identifies the action as a request to cancel the active subscription of the PayPal
account holder who clicked the button.
alias – identifies the email address on file with the service provider’s PayPal account
through which the subscriber originally signed up.
In the example below, the email address alice@mystore.com is URL encoded by
substituting “@” with “%40” and “.” with “%2e”.
The sample code below illustrates a Cancel Subscription button that lets subscribers cancel
their current, active subscriptions.
<A HREF="https://www.paypal.com/cgi-bin/webscr?cmd=_subscr-
find&alias=alice%40mystore%2ecom">
<IMG BORDER="0"
SRC="https://www.paypal.com/en_US/i/btn/btn_unsubscribe_LG.gif">
</A>
Website Payments Standard Integration Guide June 2008 103
Recurring Payments – Subscribe Buttons
Sample HTML Code for Subscribe Buttons
3
The sample code above produces the following result:
Paste the code onto you webpage near text that explains how subscription cancellations work.
For more information, see “Working With Cancel Subscription Buttons” on page 84
Sample HTML Code for a Subscribe Button With Password Management
The sample HTML code below illustrates a Subscribe button that has PayPal generate
usernames and passwords automatically.
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="business" value="alice@mystore.com">
<!-- Specify a Subscribe button. -->
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<! -- Identify the subscription. -->
<input type="hidden" name="item_name" value="Alice's Weekly Digest">
<input type="hidden" name="item_number" value="DIG Weekly">
<! -- Set the terms of the regular subscription. -->
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="a3" value="19.95">
<input type="hidden" name="p3" value="1">
<input type="hidden" name="t3" value="M">
<! -- Have PayPal generate usernames and passwords. -->
<input type="hidden" name="usr_manage" value="1">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
For more information, see “Generating Usernames and Passwords With Subscribe Buttons” on
page 85.
Sample HTML Code for a Subscribe Button That Reattempts Payments
The sample HTML code below illustrates a Subscribe button that has PayPal reattempt failed
recurring payments before canceling subscriptions.
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
Recurring Payments – Subscribe Buttons
Sample URL Code for Subscribe Email Payment Links
3
104 June 2008 Website Payments Standard Integration Guide
<input type="hidden" name="business" value="alice@mystore.com">
<!-- Specify a Subscribe button. -->
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<! -- Identify the subscription. -->
<input type="hidden" name="item_name" value="Alice's Weekly Digest">
<input type="hidden" name="item_number" value="DIG Weekly">
<! -- Set the terms of the regular subscription. -->
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="a3" value="19.95">
<input type="hidden" name="p3" value="1">
<input type="hidden" name="t3" value="M">
<! -- PayPal reattempts failed recurring payments. -->
<input type="hidden" name="sra" value="1">
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
For more information, see “Reattempting Failed Recurring Payments With Subscribe Buttons”
on page 87.
Sample URL Code for Subscribe Email Payment Links
The sample URL code below illustrates a basic Subscribe email payment link with these
features:
No trial periods
A subscription price of $5.00 USD
A 1-month billing cycle
No limit on the number of billing cycles
The subscription ends only when canceled by the merchant or the subscriber.
https://www.paypal.com/cgi-bin/webscr?cmd=_xclick-
subscriptions&business=alice@mystore.com&item_name=Alice%27s%20Weekly%20Dig
est&a3=5.00&p3=1&t3=M&currency_code=USD
Website Payments Standard Integration Guide June 2008 107
4 The PayPal Shopping Cart – Add
to Cart and View Cart Buttons
With the PayPal Shopping Cart, you can let shoppers select multiple items on your website
and pay for them with a single payment. Shoppers click Add to Cart buttons to add items to
their virtual PayPal Shopping Carts, and they click View Cart buttons to review the items in
their carts before they proceed to checkout and make their payments.
Read the following topics to learn more about the PayPal Shopping Cart:
“Getting Started With The PayPal Shopping Cart” on page 107
“The Checkout Experience With the PayPal Shopping Cart” on page 110
“Managing PayPal Shopping Cart Transactions” on page 120
“Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website” on page 122
“Sample HTML Code for Add to Cart Buttons” on page 130
“Sample HTML Code for View Cart Buttons” on page 132
Getting Started With The PayPal Shopping Cart
The easiest way to add the PayPal shopping cart to your website is to create Add to Cart and
View Cart buttons by using a tool on the PayPal website and adding the buttons the pages of
your website. As soon as you add the buttons, you can begin accepting payments on your
website.
Do the following to add the PayPal Shopping Cart to your website:
“Getting Started With Add To Cart Buttons” on page 108
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Getting Started With The PayPal Shopping Cart
4
108 June 2008 Website Payments Standard Integration Guide
“Getting Started With View Cart Buttons” on page 109
Getting Started With Add To Cart Buttons
You need to add an Add to Cart button to your website for each item that you offer for sale.
You can use a tool on the PayPal website to create the buttons. For each Add to Cart button
you create, copy the HTML button code and paste it onto your webpage next to the item.
To add a basic Add to Cart button to your website:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the Merchant Services tab.
The Tools for existing PayPal merchants page opens.
3. Click the Add to Cart Button link.
The PayPal Shopping Cart page opens.
4. Enter the details of your item.
– Item name/service – Enter the name of your item or service.
– Price – Enter a fixed price of your item.
– Weight (optional) – Enter the weight of the item. Select Lbs or Kgs from the dropdown
menu to specify the unit of measure. If you set up shipping rates for your account with a
basis of weight, PayPal uses the value you enter here to calculate shipping charges for
orders that include the item.
5. Scroll to the bottom of the page, and click the Create Button Now button.
The Add a shopping cart to your site page displays the generated code.
6. Click the “Add to Cart” button code text box to select all of the generated HTML code.
7. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
8. In your web editing tool, open the webpage where you want the button to be seen.
IMPORTANT: Be sure that your tool is ready for you to paste HTML code.
9. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Website Payments Standard Integration Guide June 2008 109
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Getting Started With The PayPal Shopping Cart
4
Repeat the above procedure for each item that you want to offer for purchase on your website.
Getting Started With View Cart Buttons
You need to create only one View Cart button, regardless of the number of Add to Cart buttons
that you create and add to your website. Place several copies of the View Cart button on your
website, wherever you want to let shoppers view the current contents of their shopping carts
and begin the checkout process.
Each time you create an Add to Cart button, the tool on the PayPal website generates code for
a View Cart button. You can use the generated HTML code for any of these View Cart buttons
– the code is identical. Paste the same HTML button code onto your webpages for as many
View Cart buttons as you need.
Too add a View Cart button to your website:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the Merchant Services tab.
The Tools for existing PayPal merchants page opens.
3. Click the Add to Cart Button link.
The PayPal Shopping Cart page opens.
4. Enter the details of your item.
– Item name/service – Enter a name.
– Price – Enter a price.
5. Scroll to the bottom of the page, and click the Create Button Now button.
The Add a shopping cart to your site page displays the generated code.
6. Click the “View Cart” button code text box to select all of the generated HTML code.
7. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
8. In your web editing tool, open the webpage where you want the button to be seen.
IMPORTANT: Be sure that your tool is ready for you to paste HTML code.
9. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
110 June 2008 Website Payments Standard Integration Guide
– right-clicking your mouse, and selecting Paste.
10.Repeat this procedure beginning at Step 6 to place as many copies of the View Cart button
as you want on other webpages of your website.
The Checkout Experience With the PayPal Shopping Cart
This section demonstrates the PayPal checkout experience for people who click Add to Cart
and View Cart buttons on your website. The following diagram illustrates the steps.
Website Payments Standard Integration Guide June 2008 111
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
FIGURE 4.1 The Checkout Experience with Add to Cart and View Cart Buttons
Read these topics to better understand the checkout experience with Add to Cart and View
Cart buttons:
“Begin – Shoppers Add Your Items to the PayPal Shopping Cart” on page 112
“1 – Shoppers Enter Their Billing Information or They Log In To PayPal” on page 113
“2 – Shoppers Confirm Their Transaction Details Before Paying” on page 115
“3 – Shoppers View and Print Their PayPal Payment Confirmations” on page 115
“End – Shoppers Receive Payment Authorization Notices by Email” on page 117
“Enhanced Checkout Experiences” on page 119
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
112 June 2008 Website Payments Standard Integration Guide
Begin – Shoppers Add Your Items to the PayPal Shopping Cart
The basic checkout experience with the PayPal Shopping Cart begins when someone on your
website adds your items to the cart and then views it to check out.
FIGURE 4.2 Shoppers Add Your Items to the PayPal Shopping Cart
In this example, George begins on Kin’s Kards website, looking for birthday cards. George
clicks the Add to Cart buttons under two cards that he wants. Then, he clicks the View Cart
button to review his selections.
PayPal displays a shopping cart page, which lets shoppers review their selections, specify
quantities, and remove items before proceeding to checkout.
Website Payments Standard Integration Guide June 2008 113
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
FIGURE 4.3 Shoppers Review Their Selections in the Pal Shopping Cart
In this case, George is satisfied with his selections and the transaction amount. He clicks the
Proceed to Checkout button.
1 – Shoppers Enter Their Billing Information or They Log In To PayPal
PayPal displays a billing information/log-in page, which lets shoppers enter their credit card
information or log in to PayPal to pay.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
114 June 2008 Website Payments Standard Integration Guide
FIGURE 4.4 Shoppers Enter Their Billing Information or Log In to PayPal
For the PayPal Shopping Cart, the PayPal billing information/log-in page shows transaction
details near the top, such as the count of items and the transaction total. If shoppers are
satisfied with the details, they enter their billing information and email addresses to pay by
credit card. Buyers with PayPal accounts enter their email addresses and passwords to pay
with their PayPal accounts.
In this case, George is satisfied with the total transaction amount of $6.90 USD. He enters his
billing information and email address, and then he clicks the Review Order and Continue
button.
Website Payments Standard Integration Guide June 2008 115
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
2 – Shoppers Confirm Their Transaction Details Before Paying
PayPal displays a transaction confirmation page to let shoppers confirm the details before they
complete their transactions and authorize their payments.
FIGURE 4.5 Shoppers Confirm Their Payment Details Before Paying
In this case, George reviews the transaction details and clicks the Pay $6.90 Now button to
complete the transaction and make his payment.
3 – Shoppers View and Print Their PayPal Payment Confirmations
PayPal displays a payment confirmation page after shoppers pay to let them know that they
have completed their transactions and authorized their payments successfully.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
116 June 2008 Website Payments Standard Integration Guide
FIGURE 4.6 Shoppers View Their Payment Confirmations
From the payment confirmation page, shoppers can:
View the PayPal Receipt ID – the transaction ID – to reconcile their payments.
Click the View Printable Receipt link to print receipts for their records.
FIGURE 4.7 Shoppers Print Their PayPal Payment Receipts
In this case, George prints the PayPal payment receipt for his records.
Website Payments Standard Integration Guide June 2008 117
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
End – Shoppers Receive Payment Authorization Notices by Email
PayPal sends shoppers a payment authorization notice by email to confirm the transaction that
they made with the merchant.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
118 June 2008 Website Payments Standard Integration Guide
FIGURE 4.8 Shoppers Receive Payment Authorization Notices by Email
In this case, PayPal sends George an email message notifying him of his transaction with Kin’s
Kards and his authorization for payment of $6.90 USD.
Website Payments Standard Integration Guide June 2008 119
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
The Checkout Experience With the PayPal Shopping Cart
4
Enhanced Checkout Experiences
Website Payments Standard offers these features to enhance the basic checkout experience for
your shoppers:
Calculating Tax and Shipping Amounts
Co-Branding the Checkout Pages with Your Logo and Colors
Prepopulating the Checkout Pages With Billing and Shipping Addresses
Returning People to Your Website After They Check Out
Calculating Tax and Shipping Amounts
The basic checkout experience requires tax and shipping amounts to be included in your item
price. Set up tax rates and shipping rates in your account profile to enhance the checkout
experience for shoppers so that they can see tax and shipping costs separately. When people
check out, PayPal calculates tax and shipping automatically and includes the amounts in the
transaction total.
You can specify tax and shipping rates in your account profile, and PayPal calculates the
charges automatically for each transaction. In addition, you can specify tax and shipping
charges individually for items in the payment buttons that you create.
For more information, see:
“Automatic Calculation of Sales Tax” on page 172
“Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177
“Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191
Co-Branding the Checkout Pages with Your Logo and Colors
The basic checkout experience displays your email address or your business name in the upper
left corner of the checkout pages. Use any of the following techniques to enhance the checkout
experience with your logo and colors, so that the checkout pages match more closely the style
of your website.
Set up custom payment pages in your account profile
Include a page style variable on individual buttons.
Include customizing of payment page variables on individual buttons
To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155.
Prepopulating the Checkout Pages With Billing and Shipping Addresses
The basic checkout experience has forms for filling in billing and shipping information. You
can enhance the checkout experience by prepopulating the forms with information that you
have on your website about the shopper.
To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Managing PayPal Shopping Cart Transactions
4
120 June 2008 Website Payments Standard Integration Guide
Returning People to Your Website After They Check Out
The basic checkout experience leaves people on the PayPal website after they check out. Use
one of the following techniques to enhance the checkout experience so that people return to
your website, instead.
Return URL – Let people return to a page on your website if they click a return link or
button on the PayPal payment confirmation page.
To learn more, see Step 4 of “Adding More Details to the PayPal Shopping Cart Button” on
page 125 or “HTML Variables for Displaying PayPal Checkout Pages” on page 245.
Auto Return – Have PayPal return people automatically to page on your website.
IMPORTANT: PayPal recommends that you turn Payment Data Transfer on when you
turn Auto Return on. With Auto Return on, PayPal redirects people to your
website from an alternative PayPal payment confirmation page that does
not display a View Printable Receipt link, so people cannot print PayPal
payment receipts. Payment Data Transfer provides the transaction
information that you need to let people print receipts from your website.
To learn more, see “Auto Return” on page 159.
Payment Data Transfer – PayPal includes information about the completed transaction
when you use a return URL or Auto Return to send people back to your website. Use the
information to display a “thank you, print your receipt” page on your website.
To learn more, see the Order Management Integration Guide.
Managing PayPal Shopping Cart Transactions
Read the following topics to learn how PayPal helps you manage PayPal Shopping Cart
transactions:
Using Email Notices to Track PayPal Shopping Cart Transactions
Using Recent Activity to Track PayPal Shopping Cart Transactions
Using Transaction History to Track PayPal Shopping Cart Transactions
Using Downloadable History Logs to Track PayPal Shopping Cart Transactions
Using Instant Payment Notification to Track PayPal Shopping Cart Transactions
Using Email Notices to Track PayPal Shopping Cart Transactions
PayPal sends you email notices when:
Payments are made.
Payments are pending.
Payments are canceled.
Generally, PayPal sends email notices to the primary email address of your account.
Website Payments Standard Integration Guide June 2008 121
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Managing PayPal Shopping Cart Transactions
4
PayPal can send email notices to an alternate email address, such as to someone in your
organization who handles order processing or accounting. Add the additional email address to
your account profile. Then, use that email address as the one to receive payments when you
use the button creation tool on the PayPal website to create your Add to Cart buttons. Specify
the alternate email address as the value for the business HTML variable when you write the
HTML code yourself for your Add to Cart buttons.
For more information, see Step 4 in the instructions for “Adding More Details to the PayPal
Shopping Cart Button” on page 125, or Appendix A, “HTML Variables for Website Payments
Standard.”
Using Recent Activity to Track PayPal Shopping Cart Transactions
PayPal displays PayPal Shopping Cart transactions in your recent activity, soon after shoppers
complete them by clicking Add to Cart buttons and checking out on your website.
FIGURE 4.9 Using Recent Activity to Track PayPal Shopping Cart Transactions
To view your recent history:
1. Log in to you PayPal account.
2. Navigate to My Account > Overview.
The My Account Overview opens.
3. Scroll down to the Recent Activity table near the bottom of the page.
Using Transaction History to Track PayPal Shopping Cart Transactions
PayPal lets you search for PayPal Shopping Cart transactions on the History page. The status
of payments found there can be:
Completed – Transactions were successful, and funds were credited to your account
Cleared – Payments cleared senders’ accounts, and funds were credited to your account
Uncleared – Payments have not cleared sender’s accounts, and funds were not credited
To learn how to work with transaction history, see the Order Management Integration Guide.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
122 June 2008 Website Payments Standard Integration Guide
Using Downloadable History Logs to Track PayPal Shopping Cart
Transactions
PayPal lets you download your PayPal Shopping Cart transactions to your computer from the
History page. You can specify a date range for the transactions and the file format of the
download file.
To learn how to work with downloadable history logs, see the Order Management Integration
Guide.
Using Instant Payment Notification to Track PayPal Shopping Cart
Transactions
PayPal lets your web server receive messages about PayPal Shopping Cart transactions and
payment activity on your account. If you activate Instant Payment Notification, PayPal sends
messages when:
Payments are first made, with a status of completed or pending.
Payments clear, fail, or are denied, if the initial status was pending.
To learn more about Instant Payment Notification, see “Instant Payment Notification –
notify_url” on page 230 and the Order Management Integration Guide.
Creating Advanced PayPal Shopping Cart Buttons on the
PayPal Website
You can use the button creation tool on the PayPal website to create Add to Cart and View Cart
buttons.
IMPORTANT: The button creation tool for PayPal Shopping Cart buttons does not support
encryption of the code it generates. Secure your button code for Add to Cart
buttons by using an alternative strategy described in Chapter 6, “Encrypting
Buttons Dynamically With Encrypted Website Payments.” View Cart buttons
do not require encryption.
HTML Code for Add to Cart and View Cart Buttons
With the button creation tool for the PayPal Shopping Cart, you create individual Add to Cart
buttons for the items that you want to sell, and you paste the generated HTML code for the
buttons next to the items on your website.
The button creation tool also generates HTML code for View Cart buttons. You need to create
only one View Cart button for the PayPal Shopping Cart. Place copies of the generated HTML
code for the View Cart button wherever you want shoppers to click to view their shopping
carts and proceed to checkout.
Website Payments Standard Integration Guide June 2008 123
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
Pages in the Button Creation Tool for Add to Cart and View Cart Buttons
The button creation tool for Add to Cart and View Cart buttons has three pages:
PayPal Shopping Cart – the initial page to specify the required and most often used
optional features
PayPal Shopping Cart – Page 2 – an optional page to specify additional, advanced
features
Add a shopping cart to your site – the final page that has the generated code for your
payment button
You can switch between the first and second pages until you click the Create Button Now
button to display the third page that has the generated code.
Pricing Items in Multiple Currencies
All items that shoppers add to carts must be priced in the same currency. The first item that
shoppers add to carts or the currency specified with the currency_code variable determines
the currency for shopping carts.
After a shopper adds the first item to a shopping cart, the shopper cannot add items priced in
other currencies. To change the currency of a shopping cart, a shopper must purchase the items
in the cart with the current currency or empty the cart and add items priced in the other
currency.
To avoid shopping difficulties that arise with multiple currencies, price all of your items in the
same currency. If you must price items in multiple currencies, let shoppers choose the
currency for viewing your catalog and display prices on your website only in the currency that
the shopper selected.
Specifying the Basic Features of the Add to Cart Button
To create HTML code for an Add to Cart button using a tool on the PayPal website:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the Merchant Services tab.
3. Click the Add to Cart Button link.
The PayPal Shopping Cart page opens.
4. Enter the details of your item.
– Item name/service – Enter the name of your item or service.
– Item ID/number – (optional) Enter the inventory ID or tracking number of your item.
The value you enter is displayed to shoppers at the time of payment, and it is displayed
in the transaction details that both merchants and shoppers can view on the PayPal
website.
– Price – Enter a fixed price of your item.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
124 June 2008 Website Payments Standard Integration Guide
– Currency – From the dropdown menu, select the currency in which you priced the item.
The dropdown menu automatically selects the currency of your primary balance.
For more information, see “Pricing Items in Multiple Currencies” on page 123.
– Buyer’s default country – From the dropdown menu, select a country for the PayPal
log-in or sign-up page that shoppers see when they click the button. The content on the
page will be appropriate for the country you select. Shoppers can change the country that
you select, after the log-in or sign-up page appears.
– Weight (optional) – Enter the weight of the item. Select Lbs or Kgs from the dropdown
menu to specify the unit of measure. If you set up shipping rates for your account with a
basis of weight, PayPal uses the value you enter here to calculate shipping charges for
orders that include the item.
5. Choose a button style for your Add to Cart button.
Select the radio button next to the image that you want to use. The image that you select is
hosted by PayPal.
– or –
To display your own image that you host on your website:
– Click the Use your own button image link.
An additional radio button and text box appear.
– In the Button Image URL text box, enter the URL of your button image.
If your image is hosted securely, change the entry to begin with https//.
6. Specify a shipping method option.
– Select the Use my shipping calculations radio button if you set up shipping rates for your
account and you want the shipping charges for the item to be calculated automatically.
– or –
– Select the Use a flat rate amount radio button if you have not set up shipping rates for
your account or you want to exclude the item from automatic calculation of shipping
charges.
In the text box, enter a fixed amount that will be added to the shipping charges for
purchases that include the item. Enter zero (0.00) for items that do not incur shipping
Website Payments Standard Integration Guide June 2008 125
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
charges. The currency for the amount that you enter is the same as the currency for the
item.
For more information, see “Automatic Calculation of Shipping Charges (U.S. Merchants
Only)” on page 177 or “Automatic Calculation of Shipping Charges (non-U.S. Merchants
Only)” on page 191.
7. Specify a sales tax option.
– Select the Use my sales tax calculations radio button if you set up tax rates for your
account and you want taxes on the item to be calculated automatically.
– or –
– Select the Use a flat rate amount radio button if you have not set up sales tax calculations
for your account or you want to exclude the item from automatic calculation of taxes.
In the text box, enter a fixed amount that will be added to the taxes for purchases that
include the item. Enter zero (0.00) for non-taxable items. The currency for the amount
that you enter is the same as the currency for the item.
For more information, see “Automatic Calculation of Sales Tax” on page 172.
8. If you have additional details to specify for your button, such as option fields or a custom
payment page style that has your own logo and colors, click the Add More Options button
and follow the instructions for “Adding More Details to the PayPal Shopping Cart Button”
on page 125.
– or –
If you entered all the details and options for your button, go to “Copying and Pasting the
PayPal Shopping Cart HTML Code” on page 129.
Adding More Details to the PayPal Shopping Cart Button
Use the PayPal Shopping Cart – Page 2 page to specify the following additional details for
your button.
1. Add option fields to your button.
Option fields lets shoppers select or specify options when they purchase the item, such as
color or size. Options must not change the price of the item.
Add to Cart buttons can have one or two option fields. You can use a dropdown menu, with
choices that you specify, or a text box, in which shoppers type their option choice.
– Option Field Type – Select either “drop-down menu” or “text box” as the type of option
field.
– Option Name – Enter the name of your option, for example, “Size” or “Color”. Enter no
more than 60 characters.
– Drop-Down Menu Choices – (if applicable) If you selected “dropdown menu” as the
type of option, enter your menu choices. Choices cannot exceed 30 characters. Use a
carriage return (press ENTER) to separate choices. Enter no more than 10 choices.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
126 June 2008 Website Payments Standard Integration Guide
2. Choose a button style for your View Cart button.
Select the radio button next to the image that you want to use. The image that you select is
hosted by PayPal.
– or –
To display your own image that you host on your website:
– Click the Use your own button image link.
An additional radio button and text box appear.
– In the Button Image URL text box, enter the URL of your button image.
If your image is hosted securely, change the entry to begin with https//.
NOTE: You need to create only one View Cart button for the PayPal Shopping Cart. Place
copies of the generated HTML code for the View Cart button wherever you want
shoppers to click to view their shopping cart and begin the checkout process.
3. Customize your payment pages.
Use these settings to give shoppers a visually seamless payment experience by customizing
the PayPal payment pages to match the visual style of your website.
– Primary Page Style (display only) – The payment pages that your shoppers see are
displayed with the page style that is specified here, unless you select a different custom
payment page style below.
– Custom Payment Page Style (optional) – If you already added Custom Payment Page
Styles in your account profile, they are listed here. Choose the page style you would like
to appear when shoppers check out and pay from the PayPal Shopping Cart.
To learn more about creating page styles, see “Co-Branding the PayPal Checkout
Pages” on page 155.
– Preview – Click the Preview button to see a mock-up of the payment page style that
shoppers see.
Website Payments Standard Integration Guide June 2008 127
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
4. Customize your buyer’s experience.
Use these settings to give shoppers a payment experience that is easy to navigate.
– Successful Payment URL – (optional) Enter the URL for the page on your website that
you want shoppers redirected to after they complete their payments.
If Auto Return is off, the button uses the Successful Payment URL that you specify
here.
If Auto Return is on, this field contains the Return URL that you specified when you
turned Auto Return on. Click the Edit button to change the Return URL and the
Successful Payment URL that this button uses.
For more information, see “Auto Return” on page 159.
– Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off
for all your payment buttons.
For more information about Payment Data Transfer, see the Order Management
Integration Guide.
– Cancel Payment URL – (optional) Enter the URL for the page on your website that you
want shoppers redirected to if they cancel their payments at any point in the PayPal
Shopping Cart checkout experience.
If you do not enter a cancel payment URL, shoppers who cancel their payments are
taken to a PayPal webpage.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
128 June 2008 Website Payments Standard Integration Guide
5. Select your shipping preferences.
Select the radio button that matches your need to collect shipping addresses from shoppers:
Make shipping optional – Select this radio button if you want to prompt shoppers to enter
their shipping addresses as an option.
– or –
Yes, require shipping – Select this radio button if you want to require shoppers to enter
their shipping addresses.
– or –
No shipping needed – Select this radio button if your products not require shipping, such
as digital goods that shoppers download, or if your items are services that do not require
on-site delivery.
6. Collect customer notes and special instructions from shoppers.
Use these settings to prompt shoppers to enter notes or special handling instructions.
– Select the Yes radio button if you want shoppers to enter notes to you when they make
their payments. If you leave the No radio button selected, shoppers cannot include notes.
– Note Title – If you selected the Yes radio button, change the default value for the field
label to prompt shoppers for specific information, such as their customer IDs or special
handling instructions. Enter no more than 30 characters.
7. Select an email address to receive payment.
(optional) In the Email Address dropdown menu, select the email address through which
you want to receive payments when people click the payment button that you are creating.
The dropdown menu selects your primary email address by default. You might select the
email address of the person in your organization who handles order fulfillment or
accounting. All payments are deposited to your PayPal account balance, regardless of
which email addresses receive particular payments. Only confirmed email addresses can be
used to receive payments.
Website Payments Standard Integration Guide June 2008 129
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website
4
8. If you want to change any of the details that you entered on the previous page, click the
Edit button and follow the instructions for “Specifying the Basic Features of the Add to
Cart Button” on page 123, beginning with Step 4.
– or –
If you have entered all the details and options for your button, go to “Copying and Pasting
the PayPal Shopping Cart HTML Code” on page 129.
Copying and Pasting the PayPal Shopping Cart HTML Code
After you enter the details and options that you want for your Shopping Cart buttons, click the
Create Button Now button. PayPal generates HTML code for two PayPal Shopping Cart
buttons:
an Add to Cart button, which is used for the item you want to sell.
A View Cart button, which takes shoppers to a webpage hosted by PayPal that displays all
the items that shoppers have added to their carts and from where they check out and pay.
The Add a shopping cart to your site page displays the generated code.
Copying and Pasting the HMTL Code for the Add to Cart Button
To copy and past the HTML code for the Add to Cart button:
1. Click the “Add to Cart” button code text box to select all of the generated HTML code.
2. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
3. In your web editing tool, open the webpage where you want the button to be seen.
4. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Copying and Pasting the HTML Code for the View Cart Button
You need to paste at least one View Cart button onto your website. Paste the View Cart button
HTML code onto your website in locations where shoppers can easily see them and click to
checkout. PayPal generates the same HTML code for the View Cart button every time you
create an Add to Cart button. View Cart buttons do not contain any payment information.
To copy and past the HTML code for the View Cart button:
1. Scroll down the Add a shopping cart to your site page to the View Cart Button section.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Sample HTML Code for Add to Cart Buttons
4
130 June 2008 Website Payments Standard Integration Guide
2. Click the “View Cart” button code text box to select all of the generated HTML code.
3. Copy the text that you selected to the clipboard, by:
– pressing Ctrl+C.
– or –
– right-clicking your mouse, and selecting Copy.
4. Open the webpage where you want the button to be seen.
5. Paste the text that you copied from the clipboard onto your webpage where you want the
button to appear, by:
– pressing Ctrl+V.
– or –
– right-clicking your mouse, and selecting Paste.
Creating More Add to Cart Buttons
After you copy and paste the PayPal Shopping Cart code, you can create another Add to Cart
button for a different item. Scroll to the bottom of the Add a shopping cart to your site page
and click the Create Another Button button. Then follow the instructions for “Creating
Advanced PayPal Shopping Cart Buttons on the PayPal Website” on page 122, beginning with
Step 4. The pages of the button creation tool retain the options that you specified previously.
Avoiding Problems With Pasted HTML Code
After you paste the HTML code onto your webpage, ensure that it matches exactly the HTML
code you copied from PayPal. Pasted code may not match the generated code for the following
reasons:
You did not copy all of the generated code.
Your HTML editing tool may have special areas for pasting HTML code and other areas
for pasting display text. Be sure you paste the generated code into a field that accepts
HTML code.
Your HTML editing tool might change some characters in the pasted code.
Sample HTML Code for Add to Cart Buttons
You can write your own HTML code for Add to Cart buttons.
To protect against malicious users tampering with the HTML code for your Add to Cart
buttons and obtaining fraudulent prices, see Chapter 6, “Securing Your Website Payments
Standard Buttons.”
IMPORTANT: Merchants with significant payment volume are required to take precautions
on securing Website Payment Standard buttons.
Website Payments Standard Integration Guide June 2008 131
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Sample HTML Code for Add to Cart Buttons
4
Use the following HTML code as a starting point for writing your own HTML code for Add to
Cart buttons. The value for the business variable must match a confirmed email address on
file with your PayPal account. You can change the values for other variables, with the
exception of cmd and add.
EXAMPLE 4.1 HTML for PayPal Shopping Cart “Add to Cart” Button
<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr"
method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="seller@hatsgalore.com">
<!-- Specify a PayPal Shopping Cart Add to Cart button. -->
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name=”add” value="1">
<!-- Specify details about the item to be added to the cart-->
<input type="hidden" name="item_name" value="Baseball Hat">
<input type="hidden" name="item_number" value="12345">
<input type="hidden" name="amount" value="12.9"”>
<input type="hidden" name="currency_code" value="USD">
<!-- Provide the shopper with a dropdown menu option field. -->
<table>
<tr>
<td>
<input type="hidden" name="on0" value="Size">Size
</td>
<td>
<select name="os0">
<option value="Select a Size">Select a Size
<option value="Small">Small
<option value="Medium">Medium
<option value="Large">Large
</select>
</td>
</tr>
</table>
<!-- Display the payment button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_cart_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Sample HTML Code for View Cart Buttons
4
132 June 2008 Website Payments Standard Integration Guide
The sample code above produces the following result:
Paste the code onto your webpage below an image or a text description of the item.
Sample HTML Code for View Cart Buttons
You can write your own HTML code for View Cart buttons. View Cart buttons contain no
payment information, so you do not need to take on precautions on securing them.
Use the following HTML code as a starting point for writing your own HTML code for View
Cart buttons. The value for the business variable must match a confirmed email address on
file with your PayPal account, and it must match the value you used for the business
variables on your Add to Cart buttons. You can change the values for other variables, with the
exception of cmd and display.
EXAMPLE 4.2 HTML for PayPal Shopping Cart “View Cart” Button
<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr"
method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="seller@hatsgalore.com">
<!-- Specify a PayPal Shopping Cart View Cart button. -->
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="display" value="1">
<!-- Display the View Cart button. -->
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_viewcart_LG.gif"
alt="PayPal - The safer, easier way to pay online">
<img alt="" border="0" width="1" height="1"
src="https://www.paypal.com/en_US/i/scr/pixel.gif" >
</form>
Website Payments Standard Integration Guide June 2008 133
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Sample HTML Code for View Cart Buttons
4
The sample code above produces the following result:
Paste the code onto the pages or your website wherever you want shoppers to click to view the
contents of their PayPal Shopping Carts and begin the checkout process.
The PayPal Shopping Cart – Add to Cart and View Cart Buttons
Sample HTML Code for View Cart Buttons
4
134 June 2008 Website Payments Standard Integration Guide
Website Payments Standard Integration Guide June 2008 135
5 Third-Party Shopping Carts – The
Cart Upload Command
This chapter describes how to develop a third-party shopping cart that is compatible with
PayPal and Website Payments Standard.
NOTE: If you are not a third-party developer, you can easily add a PayPal Shopping Cart
which is hosted by PayPal to your site. See Chapter 4, “The PayPal Shopping Cart –
Add to Cart and View Cart Buttons.”
Read the following topics to learn more about third-party shopping carts:
“How A Third Party Shopping Cart Works” on page 135
“Integrating PayPal with Third Party Shopping Carts” on page 141
How A Third Party Shopping Cart Works
This example shows how a third party shopping cart works with PayPal and Website Payments
Standard. The example merchant has the following account profile settings:
PayPal Account Optional is turned on. The shopper can pay without an existing PayPal
account and is offered the chance to sign up for one after completing the payment.
For more information, see “PayPal Account Optional” on page 163.
Shipping Calculations have been set up. PayPal calculates the shipping charges
automatically and adds them to the order.
For more information, see “Automatic Calculation of Shipping Charges (U.S. Merchants
Only)” on page 177 or “Automatic Calculation of Shipping Charges (non-U.S. Merchants
Only)” on page 191.
Auto Return is turned off. Shoppers must click a Return to Merchant button to redirect
their browsers to the merchant website after completing their payments with PayPal.
For more information, see “Auto Return” on page 159.
What The Shopper Sees With Third Party Shopping Carts
Bob is shopping for photos on the DesignerFotos website. He selects several photos for
purchase by clicking the Add to Cart button underneath each one.
Third-Party Shopping Carts – The Cart Upload Command
How A Third Party Shopping Cart Works
5
136 June 2008 Website Payments Standard Integration Guide
FIGURE 5.1 Third Party Shopping Cart – Add to Cart
In this example integration, the third party shopping cart is programmed by the vendor to
display the contents of the cart each time Bob clicks an Add to Cart button. In addition, Bob
can click the View Cart link at any time to review the items already in the cart and to begin the
PayPal Website Payments Standard checkout experience.
FIGURE 5.2 Third Party Shopping Cart – View Shopping Cart
After selecting the items he wants to buy and specifying their quantities, Bob clicks the
Proceed to Checkout button.
Website Payments Standard Integration Guide June 2008 137
Third-Party Shopping Carts – The Cart Upload Command
How A Third Party Shopping Cart Works
5
Bob’s browser is redirected to the PayPal website. Shoppers with PayPal accounts can enter
their PayPal account credentials and click the Log In button to access information already on
file with PayPal, such as shipping addresses.
FIGURE 5.3 Third Party Shopping Cart – PayPal Payment Login Page
Bob does not have a PayPal account, so he enters his payment and billing information on the
payment login page and clicks the Review Payment button. Bob is taken to a review page that
shows the details of his payment.
Third-Party Shopping Carts – The Cart Upload Command
How A Third Party Shopping Cart Works
5
138 June 2008 Website Payments Standard Integration Guide
FIGURE 5.4 Third Party Shopping Cart – PayPal Payment Review Page
DesignerFotos has set up Shipping Calculations in the account profile, so PayPal calculates
shipping costs automatically and adds them to the order.
Bob clicks the Pay $505.00 Now! button to complete the payment.
In response, the browser takes Bob to a payment confirmation page. DesignerFotos has Auto
Return turned off in the account profile, so the page displays a button to return to the
DesignerFotos website.
Bob can:
Click the Return to DesignerFotos button to return to the merchant website.
Click the View Printable Receipt link to view and print a PayPal payment receipt.
Click the Create Account button to sign up for a PayPal account.
Bob does not have a PayPal account yet, and he chooses to open one by entering his email
address, a password, and clicking the Create Account button. The payment and shipping
information he used for the transaction is added to his PayPal account automatically.
Website Payments Standard Integration Guide June 2008 139
Third-Party Shopping Carts – The Cart Upload Command
How A Third Party Shopping Cart Works
5
FIGURE 5.5 Third PartyShopping Cart – PayPal Payment Confirmation Page
PayPal sends Bob an email notice of his payment to DesignerFotos.
Third-Party Shopping Carts – The Cart Upload Command
How A Third Party Shopping Cart Works
5
140 June 2008 Website Payments Standard Integration Guide
FIGURE 5.6 Email Payment Receipt from PayPal to Shopper
What Merchants See
PayPal sends DesignerFotos an email notice of Bob’s payment.
FIGURE 5.7 Email Payment Receipt from PayPal to Merchant
NOTE: DesignerFotos (the user seller@designerfotos.com) can also see the payment in the
PayPal account history.
Website Payments Standard Integration Guide June 2008 141
Third-Party Shopping Carts – The Cart Upload Command
Integrating PayPal with Third Party Shopping Carts
5
Integrating PayPal with Third Party Shopping Carts
Instead of relying on the PayPal Shopping Cart, many merchants use third party shopping carts
that are already integrated with PayPal. The section describes how developers of third party
carts integrate with PayPal using Website Payments Standard.
Required Third Party Shopping Cart Variables
Your HTML code requires at least the following hidden HTML variables. For a complete list
of variables, see Appendix A, “HTML Variables for Website Payments Standard.”
There are two ways to integrate your third party shopping cart with PayPal and Website
Payments Standard:
Pass the details of the individual items.
Pass the aggregate amount of the total cart payment, rather than the individual item details.
Passing Individual Item Details to PayPal
If you code your third party shopping cart to pass individual items to PayPal, information
about the items is included in shoppers’ and the merchants’ transaction histories and
notifications.
1. Set the cmd variable to _cart.
2. Include the upload variable:
<input type="hidden" name="upload" value="1">
3. Define item details for each item in the cart.
Specify the required variables and any optional variables listed inTable A.1, “Allowable
Values for the cmd HTML Variable.” Append _x to the variable name, where x is the item
number, starting with 1 and increasing by one for each item added to the cart. The first item in
the cart must be defined with variables ending in _1, like item_name_1, amount_1, and
quantity_1; the second item with variables like item_name_2, amount_2, and
TABLE 5.1 Required Third Party Shopping Cart Variables
Name Description
amount_1 Price of a single item or the total price of all items in the
shopping cart
business Email address of your PayPal account
item_name_1 Name of the item or a name for the entire shopping cart
upload Indicates the use of third party shopping cart
Third-Party Shopping Carts – The Cart Upload Command
Integrating PayPal with Third Party Shopping Carts
5
142 June 2008 Website Payments Standard Integration Guide
quantity_2; the third item with variables like item_name_3, amount_3, and
quantity_3; and so on.
IMPORTANT: The _x values must increment by one continuously in order to be recognized.
If you skip from item #1 to item #3 without defining an item #2, the third
item will be ignored.
The minimum required HTML for your post to PayPal looks similar to the following.
EXAMPLE 5.1 HTML for Passing Individual Item Detail to PayPal
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="upload" value="1">
<input type="hidden" name="business" value="seller@designerfotos.com">
<input type="hidden" name="item_name_1" value="Item Name 1">
<input type="hidden" name="amount_1" value="1.00">
<input type="hidden" name="item_name_2" value="Item Name 2">
<input type="hidden" name="amount_2" value="2.00">
<input type="submit" value="PayPal">
</form>
Setting Currency in the Cart
All monetary variables (amount_x., shipping_x., shipping2_x, handling_x, tax_x.,
and tax_cart) are interpreted in the currency designated by the currency_code variable
posted with the payment. Because currency_code is not item-specific, there is no need to
append _x to the currency_code variable name. If no currency_code variable is posted,
all monetary values default to U.S. Dollars.
Setting Tax on Individual Items
Use the tax_x variable to specify the tax for a particular item in the cart. For example, the
following line specifies that the tax on item 2 in the cart is 15 cents:
<INPUT TYPE="hidden" name="tax_2" value=".15">
Setting Shipping Charges on Individual Items
Use the weight_x and weight_unit variables to specify item weights if the merchant’s
profile-based shipping rates are based on weight. For example, the following lines specify the
weight of item 3 in the cart as 1.5 kg.
<INPUT TYPE="hidden" name="weight_3" value="1.5">
<INPUT TYPE="hidden" name="weight_unit" value="kgs">
Use the quantity_x variable if the merchant’s profile-based shipping rates are based on
quantity. For example, the following line specifies that the quantity for item 3 in the cart is 6.
<INPUT TYPE="hidden" name="quantity_3" value="6">
Website Payments Standard Integration Guide June 2008 143
Third-Party Shopping Carts – The Cart Upload Command
Integrating PayPal with Third Party Shopping Carts
5
Setting the Tax for the Entire Cart
Use the tax_cart variable to specify a tax amount that applies to the entire transaction,
rather than to individual items. The tax_cart variable overrides any per-item tax amount
specified with tax_x.
Setting the Shipping Charge for the Entire Cart
Use the shipping variable without additional shipping2 variables to specify the shipping
charge for the entire transaction. The value of shipping is used for the shipping charges,
regardless of the merchant’s profile-based shipping rates and rate basis.
Use the weight_cart and weight_unit variables to specify the total order weight if the
merchant’s profile-based shipping rates are configured with a basis of weight. The
weight_cart variable overrides any per-item weights specified with weight_x.
Passing the Aggregate Shopping Cart Amount to PayPal
You can aggregate your entire shopping cart and pass the total amount to PayPal. You must
post a single item_name_1 for the entire cart and the total price of the cart contents in
amount_1 as though it were a purchase of a single item.
NOTE: One drawback with passing aggregate cart information is that shoppers do not see the
individual items in their order on the PayPal payment pages.
The following HTML is identical to “HTML for Passing Individual Item Detail to PayPal” on
page 142 except the individual items amounts and item names are aggregated into a single
amount and a single item.
EXAMPLE 5.2 HTML for Aggregate Cart Detail to PayPal
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="upload" value="1">
<input type="hidden" name="business" value="seller@designerfotos.com">
<input type="hidden" name="item_name_1" value="Aggregated items">
<input type="hidden" name="amount_1" value="3.00">
<input type="submit" value="PayPal">
</form>
Securing Your Shopping Cart
After you have customized you third party shopping cart, protect against malicious users
tampering with the button code and submitting an incorrect charge by using one of the
methods described in Chapter 6, “Encrypting Buttons Dynamically With Encrypted Website
Payments.”
Third-Party Shopping Carts – The Cart Upload Command
Integrating PayPal with Third Party Shopping Carts
5
144 June 2008 Website Payments Standard Integration Guide
Website Payments Standard Integration Guide June 2008 145
6 Securing Your Website Payments
Standard Buttons
Because non-encrypted buttons are in clear text in the source view of your webpages, the
button code can be viewed by anyone. A malicious user could copy a page, change button
variables such as price, and make a fraudulent payment.
IMPORTANT: Merchants with significant payment volume are required to take precautions
on securing Website Payment Standard buttons.
PayPal provides the following strategies for securing Website Payments Standard buttons. Use
one or more of the following security strategies to prevent and/or detect tampering with your
buttons:
Creating an Encrypted Button on the
PayPal Website
Create an encrypted button by using a button creation tool
on the PayPal website.
Best if you sell just a few items and don’t need to change
pricing often. This is also the easiest way to secure your
buttons.
Verifying Each Payment Manually Manually check the price of each payment in your PayPal
account before shipping.
Good if you accept donations or you sell items individually
with prices thad do not change. You can review transaction
history on the PayPal website, or you can download a
transaction report from the PayPal website.
You are required to reconcile your payments, especially if
you have non-encrypted buttons.
Verifying Payments With Instant
Payment Notification
With Instant Payment Notification, PayPal posts a message
to your server when someone pays you.
You are required to reconcile your payments, especially if
you have non-encrypted buttons. With Instant Payment
Notification, you can automate the reconciliation process.
Otherwise, you must reconcile your payments manually.
Encrypting Buttons Dynamically
With Encrypted Website Payments
Using a script and open-source libraries from OpenSSL,
encrypt your buttons dynamically when rendering your
webpages.
Good if you have previously built a custom payment
solution by using Buy Now or Donate buttons, or you are
using Add to Cart buttons with the PayPal Shopping Cart.
You must be comfortable programming in scripts like PHP
and ASP to use Encrypted Website Payments.
Blocking Non-encrypted Website
Payments
To add extra security to your encrypted buttons, update your
PayPal account to block non-encrypted payments.
Securing Your Website Payments Standard Buttons
Creating an Encrypted Button on the PayPal Website
6
146 June 2008 Website Payments Standard Integration Guide
Creating an Encrypted Button on the PayPal Website
A simple way to make an encrypted button is to use a button creation tool on the PayPal
website. You can create encrypted Buy Now, Donate, and Subscribe buttons by using a tool.
1. Log in to your Business or Premier account.
2. Click the Merchant Services tab.
3. Click the Buy Now Button link or the Donate link, depending on the kind of encrypted
button that you want to create.
4. Enter details about your button, and choose a button image.
5. In the Security Settings section, select the Yes radio button to encrypt your button. This is
the default setting.
6. Click the Create Button Now button to generate the encrypted HTML code.
– or –
Click the Add More Options button to enter optional details about your button.
NOTE: Some settings on the Add More Options page require that you change Security
Settings to No. In such cases, you will have to use an alternative strategy to secure
your buttons. See “Verifying Each Payment Manually” on page 146, and “Verifying
Payments With Instant Payment Notification” on page 147.
7. Update the profile settings on your PayPal account to block non-encrypted website
payments, as described in “Blocking Non-encrypted Website Payments” on page 152.
Verifying Each Payment Manually
If you process a small number of transactions, you can verify each payment manually through
your transaction history and the reporting tools provided by PayPal.
To verify payments found in your transaction history:
1. Log in to your Business or Premier account.
2. In the My Account tab, click the History subtab.
3. In the Show dropdown menu, select “Payments Received”.
4. Specify a time frame for the payments you want to verify.
5. Click the Search button.
6. For each payment that was found, verify that the item amounts match the amounts you
charge.
Website Payments Standard Integration Guide June 2008 147
Securing Your Website Payments Standard Buttons
Verifying Payments With Instant Payment Notification
6
For detailed instructions on using the History subtab, see the Order Management Integration
Guide.
Verifying Payments With Instant Payment Notification
With Instant Payment Notification, PayPal posts a message to your server when someone pays
you. You specify the URL through which you receive Instant Payment Notification messages
in your PayPal account. The Instant Payment Notification message is a text file that includes
payment details, such as the name of the payer and the amount paid. Verify the Instant
Payment Notification amount by comparing it with the price of the product in your database.
To learn more about Instant Payment Notification, see the Order Management Integration
Guide.
Encrypting Buttons Dynamically With Encrypted Website
Payments
To make online payments more secure, use Encrypted Website Payments to protect Website
Payment Standards payment buttons that you generate or write yourself. Encrypted Website
Payments relies on standard public key encryption for protection. With public and private
keys, you can dynamically generate HTML code for payment buttons and encrypt the payment
details before displaying the buttons on your website.
TABLE 6.1 How Encrypted Website Payments Works
Website Actions Payer Actions PayPal Actions
Generate a public key for the website, upload it
to PayPal, and download the PayPal public
certificate to the website.
Generate HTML code for a payment button.
Encrypt the generated code by using the
PayPal public key and then signing the
encrypted code with the website’s private key.
Publish the signed, encrypted HTML code for
the payment button to the website.
Click the published PayPal
payment button.
Check the authenticity of the data
by using the merchant’s public
key previously uploaded to
PayPal.
Decrypt the protected button
code by using the PayPal private
key.
Securing Your Website Payments Standard Buttons
Encrypting Buttons Dynamically With Encrypted Website Payments
6
148 June 2008 Website Payments Standard Integration Guide
Prerequisites for Using Encrypted Website Payments
This section describes how to generate your private and public keys for Encrypted Website
Payments, upload your public key to PayPal, and download a copy of the PayPal public key:
Generate a private key
Generate a public certificate
Upload your public certificate to the PayPal website at https://www.paypal.com/us/cgi-
bin/webscr?cmd=_profile-website-cert
Download the PayPal public certificate from https://www.paypal.com/us/cgi-
bin/webscr?cmd=_profile-website-cert
Public Key Encryption Background
Public key encryption (asymmetric encryption) improves security and convenience by
allowing senders and receivers to have separate public and private encryption keys:
The public key – The public key is the portion of an asymmetric cryptographic key that
receivers give senders who want to send them encrypted information. I
The private key – The private key is the portion of an asymmetric cryptographic key
receivers keep secret and do not send to anyone. The public certificate: The public
certificate consists of the public key and identity information, such as a person's name,
which could be signed by a certificate authority (CA). The CA guarantees that the public
key belongs to the named entity.
The encryption process – Sender use both their private key and the receivers’ public key
to encrypt the information. Receiver use their private key and the senders’ public key to
decrypt the information that was encrypted. This encryption process is also used with
digital signatures to verify the origin of the information.
Setting Up The Certificates
Encrypted Website Payments requires that you upload your public certificate to the PayPal
website. PayPal uses the certificate to verify the authenticity of your encrypted code.
PayPal accepts only X.509 public certificates, not public keys. The difference between a key
and a certificate is that a certificate includes the public key along with information about the
Redirect the payer’s browser to
the appropriate PayPal checkout
experience, as specified in the
HTML variables of the decrypted
button code.
TABLE 6.1 How Encrypted Website Payments Works
Website Actions Payer Actions PayPal Actions
Website Payments Standard Integration Guide June 2008 149
Securing Your Website Payments Standard Buttons
Encrypting Buttons Dynamically With Encrypted Website Payments
6
key, such as when the key expires and who the key belongs to. PayPal accepts public
certificates in OpenSSL PEM format from any established certificate authority, such as
VeriSign.
You can also generate your own private key and public certificate using open source software
such as OpenSSL (http://www.openssl.org), which is detailed in the following section.
Creating Your Private Key Using OpenSSL
Using the openssl program, enter the following command to generate your private key. The
command generates a 1024-bit RSA private key that is stored in the file my-prvkey.pem:
openssl genrsa -out my-prvkey.pem 1024
Creating Your Public Certificate Using OpenSSL
The public certificate must be in PEM format. To generate your certificate, enter the following
openssl command, which generates a public certificate in the file my-pubcert.pem:
openssl req -new -key my-prvkey.pem -x509 -days 365 -out my-pubcert.pem
Uploading Your Public Certificate
To upload your public certificates to the PayPal website:
1. Log in to your Business or Premier PayPal account.
2. Click the Profile subtab.
3. In the Seller Preferences column, click the Encrypted Payment Settings link.
The Website Payment Certificates page appears.
4. Scroll down the page to the Your Public Certificates section, and click the Add button.
The Add Certificate page appears.
5. Click the Browse button, and select the public certificate that you want to upload to PayPal
from your local computer.
NOTE: The file you upload must be in PEM format.
6. Click the Add button.
After your public certificate is uploaded successfully, it appears in the Your Public
Certificates section of the Website Payment Certificates page.
Securing Your Website Payments Standard Buttons
Encrypting Buttons Dynamically With Encrypted Website Payments
6
150 June 2008 Website Payments Standard Integration Guide
7. Store the certificate ID that PayPal assigned to your public certificate in a secure place.
You need the certificate ID that PayPal assigned to encrypt your payment buttons by using
the Encrypted Website Payments program provided by PayPal.
Downloading the PayPal Public Certificate
To download the PayPal public certificate:
1. Log in to your Business or Premier PayPal account.
2. Click the Profile subtab.
3. In the Seller Preferences column, click the Encrypted Payment Settings link.
4. Scroll down the page to the PayPal Public Certificate section.
5. Click the Download button, and save the file in a secure location on your local computer.
Removing Your Public Certificate
IMPORTANT: If you remove your public certificate, its associated certificate ID is no longer
valid for encrypting buttons, and any buttons made by your website that use
the ID will not function correctly.
To remove one or more of your public certificates:
1. Log in to your Business or Premier account.
2. Click the Profile subtab.
3. In the Seller Preferences column, click the Encrypted Payment Settings link.
4. Scroll down the page to the Your Public Certificates section.
5. Select the radio button next to the certificate you want to remove, and click the Remove
button.
The Remove Certificate page appears.
6. Click the Remove button to confirm the removal of the public certificate that you selected.
Website Payments Standard Integration Guide June 2008 151
Securing Your Website Payments Standard Buttons
Encrypting Buttons Dynamically With Encrypted Website Payments
6
Encrypting Your HTML Code
PayPal provides Java and Microsoft Windows software to encrypt your Website Payments
Standard HTML Form variables. Download a program from the following location:
https://www.paypal.com/us/cgi-bin/webscr?cmd=p/xcl/rec/ewp-code
After you download and extract the software, copy your private key, public certificate, p12 file
and the PayPal public certificate to the folder where the software is located.
1. Prepare an input file of Website Payments Standard variables and values for each encrypted
button you want to generate. Each variable and value must be on its own separate line, as in
the following example.
NOTE: The cert_id variable identifies the public certificate you uploaded to PayPal
website.
cert_id=Z24MFU6DSHBXQ
cmd=_xclick
business=sales@company.com
item_name=Handheld Computer
item_number=1234
custom=sc-id-789
amount=500.00
currency_code=USD
tax=41.25
shipping=20.00
address_override=1
address1=123 Main St
city=Austin
state=TX
zip=94085
country=US
no_note=1
cancel_return=http://www.company.com/cancel.htm
2. Run the encryption program. with the appropriate syntax shown in Table 6.2 , “Command
Line Syntax for PayPal Encrypted Website Payments Software.”
3. Copy the encrypted code to your website.
TABLE 6.2 Command Line Syntax for PayPal Encrypted Website Payments Software
Software Command Line
Java java ButtonEncryption CertFile PKCS12File PPCertFile Password InputFile OutputFile [Sandbox]
Microsoft
Windows
PPEncrypt CertFile PrivKeyFile PPCertFile InputFile OutputFile [Sandbox]
Securing Your Website Payments Standard Buttons
Blocking Non-encrypted Website Payments
6
152 June 2008 Website Payments Standard Integration Guide
where:
Blocking Non-encrypted Website Payments
For extra security of your encrypted buttons, update your PayPal account profile to block non-
encrypted payments.
To block payments from non-encrypted Website Payments Standard buttons:
1. Log in to your Business or Premier account.
2. Click the Profile subtab.
3. In the Selling Preferences column, click the Website Payment Preferences link.
4. Scroll down to the Encrypted Website Payments section.
5. Next to the Block Non-encrypted Website Payment label, select the On radio button.
6. Scroll to the bottom of the page, and click the Save button.
TABLE 6.3 Arguments for Encrypted Website Payments Commands
Argument Description
CertFile The pathname to your own public certificate
PKCS12File The pathname to the PKCS12-format of your own public certificate
PPCertFile The pathname to a copy of the PayPal public certificate
Password The passphrase to the PKCS12-format of your own public certificate
InputFile The pathname to file containing the non-encrypted Website Payments
HTML Form variables
OutputFile A file name for the encrypted output
[Sandbox] The optional word Sandbox that lets you test Encrypted Website
Payments code in the PayPal Sandbox
Website Payments Standard Integration Guide June 2008 153
7 Using Your PayPal Account
Profile
This chapter describes how to use your PayPal account profile settings to control how
Website Payments Standard works for people who pay you and how it works to let you accept
the payments that they make.
The Account Profile
Use your PayPal account profile to manage your PayPal account.
To view your account profile:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
Your account profile has three sections:
– Account Information
– Financial Information
– Selling Preferences
The following topics describes the use of each section in more detail.
Account Information
Use the Account Information column for basic account maintenance, including updating
your password, adding and confirming email addresses, managing your business information,
and for business accounts, configuring PayPal account for multi-user.
Financial Information
Use the Financial Information column to organize and maintain the financial instruments
associated with your PayPal account, including managing your credit cards and bank accounts,
activating and managing your PayPal Debit Card, managing multiple currency balances, and
viewing monthly account statements.
Using Your PayPal Account Profile
The Account Profile
7
154 June 2008 Website Payments Standard Integration Guide
Selling Preferences
Use the Selling Preferences column to configure the way you collect payments with PayPal,
including:
Co-branding the PayPal checkout pages with your logo and colors
Tailoring the Website Payments Standard payment experience with:
– Auto Return
– PayPal Account Optional
– Getting contact telephone numbers from payers
Setting sales tax rates to calculate sales taxes automatically
Setting shipping rates to calculate shipping charges automatically
Blocking certain kinds of payments
Setting the language and character encoding of your data
FIGURE 7.1 Selling Preferences on the Profile Summary Page
Correspondence Between Profile Settings and HTML Variables
Many of the selling preferences that you can set in your account profile have equivalent
HTML variables that let you control the behavior of individual transactions. After you enable
settings in your account profile, you can include HTML variables with a transaction that take
advantage of those settings.
Website Payments Standard Integration Guide June 2008 155
Using Your PayPal Account Profile
Co-Branding the PayPal Checkout Pages
7
See the following sections for more information:
“Overriding Page Styles On Individual Payment Buttons” on page 158
“Overriding Sales Tax Calculations on Individual Transactions” on page 177
“Overriding Shipping Calculations on Individual Transactions” on page 190
“Setting the Character Set – charset” on page 227
“Setting The Return URL on Individual Transactions” on page 227
“Desired Currency on Individual Transactions” on page 228
Co-Branding the PayPal Checkout Pages
Custom payment pages let you tailor the PayPal checkout pages presented to payers to match
the style of your website. Custom payment pages work with all Website Payments Standard
buttons. You can add up to three custom page styles.
The pictures in this section demonstrate the types of co-branding that you can achieve with
custom payment pages. Figure 7.2 , “Default PayPal Checkout Page Style,” shows a PayPal
checkout page with no co-branding.
FIGURE 7.2 Default PayPal Checkout Page Style
Figure 7.3 , “Custom Page Style with Co-Branding Options,” shows all the co-branding
options that you can specify for your own, custom payment page styles.
Using Your PayPal Account Profile
Co-Branding the PayPal Checkout Pages
7
156 June 2008 Website Payments Standard Integration Guide
FIGURE 7.3 Custom Page Style with Co-Branding Options
Working With Custom Payment Pages
To configure your custom payment pages:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Custom Payment Pages link.
The Custom Payment Page Styles page appears, as shown below.
Website Payments Standard Integration Guide June 2008 157
Using Your PayPal Account Profile
Co-Branding the PayPal Checkout Pages
7
FIGURE 7.4 Custom Payment Page Styles
From this page, you can add, edit, preview, and remove page styles, and make one of the page
styles the primary page style.
NOTE: The PayPal page style is a default page style. You cannot edit or remove it.
Adding or Editing a Page Style
The settings described here can also be specified with HTML variables for individual
transactions. For more information, see “HTML Variables for Displaying PayPal Checkout
Pages” on page 245.
To add a page style:
1. Begin at the Custom Payment Page Styles page.
2. Click the Add button or the Edit button.
Enter your custom page style preferences:
– Page Style Name (required) – Enter a name up to 30 characters long. The name can
contain letters, numbers, and underscores but no other symbols or spaces. The Page Style
Name is used to refer to the page style in your PayPal account and in the page_style
HTML variable for your Website Payment buttons.
– Header Image URL (optional) – Enter the URL for an image that should appear at the
top left of the payment page. Maximum size of the image is 750 pixels wide by 90 pixels
high; larger images are reduced to this size. The image must be in a valid graphics format
such as gif, jpg, or png.
IMPORTANT: PayPal recommends that you enter an image URL only if the image is
stored on a secure (https) server. Otherwise, your payer’s web browser
displays a message that the payment page contains insecure items.
Using Your PayPal Account Profile
Co-Branding the PayPal Checkout Pages
7
158 June 2008 Website Payments Standard Integration Guide
– Header Background Color (optional)
Enter the background color for the header using HTML hex code. The color code must
be six digits long and should not contain the # symbol. If the Header Image URL is
present, the header is a 750 pixel wide by 90 pixel high space at the top of the payment
page. If the Header Image URL is not present, the header height is only 45 pixels high.
– Header Border Color (optional)
Enter the border color for the header using HTML hex code. The color code must be six
digits long and should not contain the # symbol. The header border is a two-pixel
perimeter around the header space.
– Background Color (optional)
Enter the background color for the payment page using HTML hex code. The color
code must be six digits long and should not contain the # symbol.
3. Click the Preview button to view a mock-up of your page style, or click the Save button to
save it.
Making a Page Style Primary
When you make a page style primary, it is applied to all checkout pages unless you specify
otherwise on individual payment buttons.
NOTE: If you do not designate a page style as Primary, the default PayPal page style is used.
To make a page style primary:
1. Begin at the Custom Payment Page Styles page.
2. Click the radio button next to the page style you that want to make your primary style.
3. Click the Make Primary button.
The Make Custom Page Style Primary page appears.
4. Click the Make Primary button to confirm your choice.
Overriding Page Styles On Individual Payment Buttons
Your primary page style is applied to all your checkout pages unless you specify otherwise.
You can override this behavior by specifying custom page style variables in the HTML code of
your payment buttons.
To change the page style for a button that you created already, replace the value of the
page_style variable with the page style name you want to use. The next time that someone
clicks the payment button, the checkout pages appear in the new style.
Website Payments Standard Integration Guide June 2008 159
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
Overriding Co-Branding Options on Individual Payment Buttons
You can specify variables in the HTML code of payment buttons to override specific co-
branding options. These customizing of payment page variables override page styles set in
your account profile or set with the page_style variable. The customizing of payment page
variables take precedence in the following order:
Tailoring the Checkout Experience
Use any of these settings in your account profile to tailor the checkout experience for people
who pay with Website Payments Standard:
Auto Return
Getting Contact Telephone Numbers
PayPal Account Optional
Auto Return
With Auto Return for Website Payments Standard, you can avoid making people click a button
to return to your website after they complete their payments with PayPal. Auto Return applies
to all Website Payments Standards payment buttons, including Buy Now, Shopping Cart,
Subscription, Gift Certificate, and Donate buttons.
What Payers See with Auto Return On
With Auto Return on, instead of having to click a button on the payment confirmation page,
payers see an alternative payment confirmation page for a few seconds before PayPal returns
them automatically to your website.
TABLE 7.1 Order of Page Style Variables
Custom Option Description
1 Customizing of
Payment Page Variables
on Individual Buttons
See Table A.8, “HTML Variables for Displaying PayPal
Checkout Pages,” on page 245.
2 Page Style Variable on
Individual Buttons
With the page_style variable, you can specify a page style on
individual payment buttons that overrides any page styles set in
your account profile.
3 Primary Page Style in
Account Profile
You can create and set the primary style in your account profile.
4 Default PayPal Page
Style in Account Profile
The default page style used when an alternative is not selected
and designated as primary.
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
160 June 2008 Website Payments Standard Integration Guide
FIGURE 7.5 Momentary Payment Confirmation with Auto Return On
Turning On Auto Return
Auto Return is turned off by default.
To turn on Auto Return:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. Under the Selling Preferences column, click the Website Payment Preferences link.
The Website Payment Preferences page appears, as shown below.
Website Payments Standard Integration Guide June 2008 161
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
4. Under Auto Return for Website Payments, click the On radio button to enable Auto
Return.
5. In the Return URL field, enter the URL to which you want your payers redirected after
they complete their payments.
NOTE: If the Return URL you enter is invalid, PayPal displays the standard payment
confirmation page after people complete their payments.
6. Scroll to the bottom of the page, and click the Save button.
Setting Return URL on Individual Transactions
With Auto Return turned on in your account profile, you can set the value of the return
HTML variable on individual transactions, which overrides the value of the return URL that
you stored on PayPal as part of the Auto Return feature. For example, you might want to
redirect payers to a URL on your site that is specific to that person, perhaps with a session-id
or other transaction-related data included in the URL.
To set the return URL for individual transactions, include the return variable in the HTML
Form:
<INPUT TYPE="hidden" NAME="return" value="URLspecificToThisTransaction">
NOTE: To receive transaction-related data from PayPal, you must turn Payment Data Transfer
on. For more information about Payment Data Transfer, see the Order Management
Integration Guide.
Subscriptions Password Management and Auto Return
If you use or plan to use Subscriptions Password Management, you must make sure that Auto
Return is turned off in order to display the PayPal-generated username and password to the
subscriber.
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
162 June 2008 Website Payments Standard Integration Guide
NOTE: You can use Auto Return with Subscriptions, which is a separate feature from
Subscriptions Password Management. For more information, see Chapter 3,
“Recurring Payments – Subscribe Buttons.
Getting Contact Telephone Numbers
“Contact Information Telephone” is an option that lets you collect a contact telephone number
for from people who pay you. When you activate this option, payers are prompted to include a
contact telephone number with their payment information.
IMPORTANT: In accordance with the PayPal user agreement, you may use this contact
telephone number only to communicate with the payer about the related
payment. You may not use this number for unsolicited messages.
You can make the contact telephone number optional or required, or you can turn it off. “Off”
is the recommended default option because people value their privacy and prefer to minimize
unsolicited communications.
When you require payers’ contact telephone numbers, payers see the prompt during purchase.
FIGURE 7.6 Prompt for A Contact Telephone Number
Activating Contact Telephone Number
To activate the Contact Telephone Number option:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Website Payment Preferences link.
4. Scroll down the page to the Contact Telephone Number section.
Website Payments Standard Integration Guide June 2008 163
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
5. Select one of the following options:
– On (Optional Field) – prompts payers to enter telephone numbers as an option.
– On (Required Field) – requires payers to enter telephone numbers
– Off (Recommended) – does not prompt payers to enter telephone numbers
6. Scroll to the bottom of the page and click the Save button.
PayPal Account Optional
With PayPal Account Optional turned on, people can pay by credit card without signing up for
PayPal accounts. They are offered the chance to sign up for a PayPal account by using the
address and credit card from the completed transaction, but they are not required to. PayPal
Account Optional is turned on by default for new PayPal Premiere and Business accounts.
With PayPal Account Optional turned off, people without PayPal accounts must sign up of a
PayPal account. They can pay by credit card, but they must agree to sign up for a PayPal
account before completing their transactions and making their payments.
NOTE: Only Premiere or Business accounts have PayPal Account Optional in their account
profiles. With Personal accounts, the checkout experience is as if PayPal Account
Optional were turned off.
The Checkout Experience With Account Optional Turned Off
This topic demonstrates the PayPal checkout experience for Website Payments Standard when
PayPal Account Optional is turned off. The following diagram illustrates the steps.
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
164 June 2008 Website Payments Standard Integration Guide
FIGURE 7.7 Checkout Experience with PayPal Account Optional Turned Off
Read these topics to better understand the checkout experience when PayPal Account Optional
is turned off:
“Begin – Buyers are Ready to Purchase on Your Website” on page 165
“1 – Buyers Enter Their Billing Information or They Log In to PayPal” on page 165
“2 – Buyers Confirm Their Transaction Details Before Paying” on page 167
“3 – Buyers View and Print Their PayPal Payment Confirmations” on page 167
“4 – Buyers New to PayPal Confirm the Creation of their PayPal Accounts” on page 169
“End – Buyers Receive Payment Authorization Notices by Email” on page 170
Website Payments Standard Integration Guide June 2008 165
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
Begin – Buyers are Ready to Purchase on Your Website. The checkout experience with
PayPal Account Optional turned off begins when someone on your website is ready to
purchase.
FIGURE 7.8 Buyers Begin on Your Website When They are Rady to Make a Purchase
In this example, Bob begins on the DezignerFotos website and decides to buy a photo of an
orchid. He clicks the Buy Now button to pay.
1 – Buyers Enter Their Billing Information or They Log In to PayPal. PayPal displays a
billing information/log-in page, which lets buyers enter their billing information and
passwords for new PayPal accounts or log in to PayPal.
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
166 June 2008 Website Payments Standard Integration Guide
FIGURE 7.9 Buyers Enter Their Billing Information or Log In to PayPal
In this case, Bob does not have a PayPal account. He enters his billing information and a
password for his new PayPal account. Then, he clicks the Agree and Continue button.
Website Payments Standard Integration Guide June 2008 167
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
2 – Buyers Confirm Their Transaction Details Before Paying. PayPal displays a
transaction confirmation page to let buyers confirm the details before they complete their
transactions and authorize their payments.
FIGURE 7.10 Buyers Confirm Their Payment Details Before Paying
In this case, Bob reviews the transaction details and clicks the Pay $255.00 Now! button to
complete the transaction and make his payment.
3 – Buyers View and Print Their PayPal Payment Confirmations. PayPal displays a
payment confirmation page after buyers pay to let them know that they have completed their
transactions and authorized their payments successfully.
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
168 June 2008 Website Payments Standard Integration Guide
FIGURE 7.11 Buyers View Their Payment Confirmations
From the payment confirmation page, buyers can:
View the PayPal Receipt ID – the transaction ID – to reconcile their payments.
Click the View Printable Receipt link to print receipts for their records.
FIGURE 7.12 Buyers Print Their PayPal Payment Receipts
In this case, Bob prints the PayPal payment receipt for his records.
Website Payments Standard Integration Guide June 2008 169
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
4 – Buyers New to PayPal Confirm the Creation of their PayPal Accounts. Paypal
displays an account confirmation page to buyers who signed up for PayPal accounts in order to
pay. The confirmation page lets buyers know that they have successfully created their PayPal
accounts.
FIGURE 7.13 Buyers View Their New PayPal Account Confirmations
PayPal also sends buyers an account signup notice by email to confirm their new PayPal
accounts.
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
170 June 2008 Website Payments Standard Integration Guide
FIGURE 7.14 Buyers Receive Account Signup Notices by Email
End – Buyers Receive Payment Authorization Notices by Email. PayPal sends buyers a
payment authorization notice by email to confirm the transaction that they made with the
merchant.
Website Payments Standard Integration Guide June 2008 171
Using Your PayPal Account Profile
Tailoring the Checkout Experience
7
FIGURE 7.15 Buyers Receive Payment Authorization Notices by Email
In this case, PayPal sends Bob an email message notifying him of his transaction with
DezignerFotos and his authorization for payment of $255.00 USD.
Turning PayPal Account Optional Off
PayPal Account Optional is available on Premiere and Business accounts only. It is turned on
by default.
To turn PayPal Account Optional off:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
Using Your PayPal Account Profile
Automatic Calculation of Sales Tax
7
172 June 2008 Website Payments Standard Integration Guide
2. Click the Profile subtab.
The Profile Summary page appears.
3. Click the Website Payment Preferences link in the Selling Preferences column.
The Website Payment Preferences page appears.
4. Scroll down to the PayPal Account Optional section of the page.
5. Select the Off radio button to turn PayPal Account optional off.
6. Scroll to the bottom of the page, and click the Save button.
Automatic Calculation of Sales Tax
You can have PayPal calculate sales tax (also called value-added tax or VAT) automatically.
PayPal calculates sales taxes based on rates that you specify in your account profile. You can
set up tax rates as follows:
Domestic (U.S.-only) tax rates by state or zip code
Canadian tax rates by province
International sales tax rates by country or jurisdiction
Read these topics to learn more about automatic calculation of sales tax:
“Displaying the Sales Tax that PayPal Calculates During Checkout” on page 173
“Accessing Your Sales Tax Rates in Your Account Profile” on page 173
“Setting Up Domestic Sales Tax Rates” on page 174
“Setting Up International Sales Tax Rates” on page 176
“Resolving Overlapping Sales Tax Rates” on page 176
“Editing or Deleting Sales Tax Rates” on page 177
“Overriding Sales Tax Calculations on Individual Transactions” on page 177
Website Payments Standard Integration Guide June 2008 173
Using Your PayPal Account Profile
Automatic Calculation of Sales Tax
7
Displaying the Sales Tax that PayPal Calculates During Checkout
After you set up sales tax rates in your account profile, PayPal calculates the tax for purchase
transactions automatically. Buyers see the tax as a separate item during checkout, based on the
shipping addresses that they provide.
FIGURE 7.16 Buyers See Sales Taxes Before They Pay
If buyers change their shipping addresses, PayPal calculates the tax again and displays the new
amount.
Accessing Your Sales Tax Rates in Your Account Profile
To view or modify your sales tax rates in your account profile:
1. Log in to your PayPal account at https://www.paypal.com.
2. Click the Profile subtab of the My Account tab.
3. In the Selling Preferences column, click the Sales Tax link.
Using Your PayPal Account Profile
Automatic Calculation of Sales Tax
7
174 June 2008 Website Payments Standard Integration Guide
FIGURE 7.17 Sales Tax Rates in Your Account Profile
Setting Up Domestic Sales Tax Rates
You can create sales tax rates for a state, zip code, or zip code range. To add a new rate, click
the Add New Sales Tax link in the Set Up Domestic Tax Rates box.
To create a rate for a state
1. Click State for Configure Sales Tax by.
2. Select one or more states for the rate you want to create. Hold down the Ctrl key to select
more than one state.
3. Enter the sales tax rate.
4. Click the checkbox labeled Apply rate to shipping amount, if applicable.
5. Click the Continue button to add the new rate and return to the Sales Tax page
(Figure 7.17 ).
Website Payments Standard Integration Guide June 2008 175
Using Your PayPal Account Profile
Automatic Calculation of Sales Tax
7
6. Click the Create Another button to add the new rate and then add another domestic sales
tax rate.
To create a rate for a specific zip code
1. Click Zip Code for Configure Sales Tax by.
FIGURE 7.18 Setting Up a Domestic Sales Tax Rate by Zip Code
2. Click the Specific radio button.
3. Enter the zip code for the rate you want to create.
4. Enter the sales tax rate.
5. Click the checkbox labeled Apply rate to shipping amount, if applicable.
6. Click the Continue button to add the new rate and return to the Sales Tax page.
7. Click the Create Another button to add the new rate and then add another domestic sales
tax rate.
To create a rate for a zip code range
1. Click Zip Code for Configure Sales Tax by.
2. Click the Range radio button.
3. Enter the starting and ending zip code for the rate you want to create.
4. Enter a the sales tax rate.
5. Click the checkbox labeled Apply rate to shipping amount, if applicable.
Using Your PayPal Account Profile
Automatic Calculation of Sales Tax
7
176 June 2008 Website Payments Standard Integration Guide
6. Click the Continue button to add the new rate and return to the Sales Tax page.
7. Click the Create Another button to add the new rate and then add another domestic sales
tax rate.
Setting Up International Sales Tax Rates
You can create the following types of international sales tax rates:
For Canada, sales tax rates can be for one or more provinces.
For countries other than the U.S. and Canada, sales tax rates apply to the entire country.
To add a new rate, click Add New Sales Tax in the Set Up International Tax Rates box.
1. Select the country for the rate you want to create.
2. If you selected Canada for Country, select one or more provinces or select All Provinces.
Hold down the Ctrl key to select more than one province.
3. Enter the sales tax rate.
4. Click the checkbox labeled Apply rate to shipping amount, if applicable.
5. Click the Continue button to add the new rate and return to the Sales Tax page
(Figure 7.17 ).
6. Click the Create Another button to add the new rate and then add another international
sales tax rate.
Resolving Overlapping Sales Tax Rates
It is possible that more than one sales tax rate will apply to a buyer. For example, in
Figure 7.19 , all three of the domestic sales tax rates apply to a buyer in zip code 94044.
Website Payments Standard Integration Guide June 2008 177
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
FIGURE 7.19 Three Domestic Sales Tax Rates
When multiple rates apply, the most specific rate is used. For a buyer in zip code 94044, the
most specific rate is the single zip code rate of 8.25%. For a buyer in zip code 94056, the most
specific rate is the range of zip codes with a rate of 7.75%.
Editing or Deleting Sales Tax Rates
To edit a sales tax rate, click the checkbox to the left of the rate and then click the Edit button.
To delete a sales tax rate, click the checkbox to the left of the rate and then click the Delete
button.
Overriding Sales Tax Calculations on Individual Transactions
Regardless of a buyer’s location, you can override automatic tax calculation on an individual
transaction or on individual items in a transaction. For more information, see “Setting Tax on
Individual Items” on page 142 and “Setting the Tax for the Entire Cart” on page 143.
Automatic Calculation of Shipping Charges (U.S. Merchants
Only)
You can have PayPal calculate shipping charges automatically. PayPal calculates shipping
charges based on rates that you specify in your account profile. You can set up shipping rates
as follows:
Domestic (U.S.-only) shipping rates for regions defined by state or zip code
International shipping rates for regions define by country or jurisdiction
Within shipping regions, you can specify rates for different shipping methods, such as
standard and express delivery.
Read these topics to learn more about automatic calculation of sales tax:
“Displaying the Shipping Charges that PayPal Calculates During Checkout” on page 178
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
178 June 2008 Website Payments Standard Integration Guide
“Shipping Regions” on page 180
“Shipping Methods” on page 181
“Shipping Rate Bases” on page 181
“Shipping Rates and Currencies” on page 182
“Adding Shipping Rates for the First Time” on page 182
“Adding Shipping Methods by Using a Wizard” on page 183
“Viewing, Editing, and Adding Shipping Rates” on page 185
“Deleting Shipping Methods” on page 188
“Examples of Rate Bases and Shipping Calculations” on page 189
“Overriding Shipping Calculations on Individual Transactions” on page 190
“Editing the Configuration Settings of an Existing Shipping Method” on page 187
Displaying the Shipping Charges that PayPal Calculates During Checkout
After you set up shipping rates in your account profile, PayPal calculates the shipping charges
for purchase transactions automatically. PayPal prompts buyers to enter their shipping
destinations on the first checkout page.
FIGURE 7.20 PayPal Prompts Buyers for Shipping Destinations
Buyers click the calculate total order amount link to enter information about their shipping
destinations.
Website Payments Standard Integration Guide June 2008 179
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
FIGURE 7.21 Buyers Enter Shipping Destinations to Calculate Shipping Charges
Buyers enter information about their shipping destinations, and then they click the Update
button.
FIGURE 7.22 Buyers See Shipping Charges Before They Pay
PayPal calculates the shipping charges using the least expensive shipping method that you set
up for the destination.
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
180 June 2008 Website Payments Standard Integration Guide
FIGURE 7.23 Buyers Select Their Preferred Shipping Methods
PayPal lets buyers select their preferred shipping methods after they enter their billing
information or log in to PayPal. If buyers change their shipping addresses or select a different
shipping method, PayPal calculates the shipping charges again and displays the new amount.
Shipping Regions
Your organize your shipping rates primarily by the states and countries to which you ship your
products. Some merchants make only domestic shipments. Other merchants make both
domestic shipments and international shipments. Depending on territorial size, some
merchants divide their domestic markets into smaller shipping regions, each with their own
shipping rates.
Before you begin setting up the shipping rates that PayPal uses to calculate shipping charges,
decide whether:
You ship only domestically or both domestically and internationally
You want one set of rates for all U.S. domestic shipments or you want rates for different
domestic regions, such as western and eastern states.
You want one set of rates for all international shipments or you want rates for different
international regions, such as Europe and Asia
You can establish one set of shipping rates for all domestic and international destinations, but
your shipping rates should reflect your costs of shipping, which generally vary between
different domestic and international regions.
Website Payments Standard Integration Guide June 2008 181
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
Shipping Methods
Within each shipping region that you define, you specify specific shipping rates for the
different shipping methods you want to offer buyers. A shipping method specifies a mode of
shipment and the general time frame for delivery. For example, you might offer your domestic
buyers two shipping methods: “Standard Shipping,” “Priority.”
For each region in which you offer a specified shipping method, you generally select different
delivery time frames and different rates. Otherwise, you should not set up separate shipping
regions.
For example, your “Standard Shipping” method for the region where your shipments originate
might specify a time frame of “2-3 Days.” A more distant domestic shipping region might
specify a time frame of “3-7 Days.” You set the same rates for “Standard Shipping” in all
regions, but delivery times are longer for more distant ones.
As an alternative to differentiating on delivery time, you might differentiate on rates. For
example, your “Standard Shipping” method for all domestic regions might specify the same
time frame of “2-3 Days.” You set more expensive rates for “Standard Shipping” in more
distant regions, but delivery times are the same for all regions.
Shipping Rate Bases
For each shipping method in each shipping region that you define, you specify the basis upon
which your shipping rates are used to calculate the shipping charges for specific purchases.
You can choose from the following shipping rate bases:
Total order amount
Total order weight
Total item quantity
Generally, you specify the same shipping rate basis for all shipping regions and shipping
methods that you define. Before you begin setting up the shipping rates that PayPal uses to
calculate shipping charges, decide which basis is most suitable for the kinds of products you
sell and the typical orders that your buyers place.
For more information, see “Examples of Rate Bases and Shipping Calculations” on page 189
Shipping Rate Tables
For each shipping method you define, fill in a rate table to specify the rates that PayPal uses to
calculate shipping charges. Rate tables let you specify tiered rates.
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
182 June 2008 Website Payments Standard Integration Guide
FIGURE 7.24 Shipping Rate Table With a Basis of Total Order Amount
Each row in a rate table represents a different tier. Each successive tier encompasses a
successively increasing range within the rate basis. You specify a separate rate for each tier.
In the preceding example rate table, each successive tier encompasses an increasing range of
order amounts. The first tier encompasses orders that total from $0.01 USD through and
including $10.00 USD. The shipping rate for orders that fall within the first tier is 5% of the
total order amount. The shipping charge for an order amount of $6.75 USD is $0.34 USD.
Shipping Rates and Currencies
When you set up shipping methods, specify the same currency for the shipping rates that you
used to price the products on your website. Specify shipping rates for both domestic shipments
and international shipments in your domestic currency, provided that you priced your products
for international buyers in your domestic currency.
If you price your products in multiple currencies, you should specify international shipping
rates in the same currencies that you priced your products for international buyers. For
example, a merchant in London might price products in Pounds Sterling for British buyers,
while also pricing the same products in Euros for Euro-zone buyers and U.S. Dollars for U.S.
buyers.
Adding Shipping Rates for the First Time
The first time you set up shipping rates, the page sequence is tailored for creating your initial
shipping regions, methods, and rates.
To begin adding shipping regions, methods, and rates for the first time:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
Website Payments Standard Integration Guide June 2008 183
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
3. In the Selling Preferences column, click the Set Up Shipping Calculations link.
This Shipping Calculations page appears, as shown below.
FIGURE 7.25 Shipping Calculations Setup Page
From the Shipping Calculations setup page, you can start a domestic or an international
shipping wizard.
Adding Shipping Methods by Using a Wizard
Whenever you add a shipping method, you use one of two wizards to step you through the
process. The domestic shipping wizard lets you configure shipping regions within the U.S.,
and the international shipping wizard lets configure foreign shipping regions. Shipping
wizards let you configure a shipping region and all the shipping methods for it at one time.
You can start a shipping wizard in one of two ways:
Click the Start button from the Shipping Calculations setup page, as shown in
Figure 7.25 , “Shipping Calculations Setup Page.
Click the Add Another Shipping Method link from the Shipping Calculations review
page, as shown in Figure 7.27 , “Shipping Calculations Review Page (U.S. Merchants
Only).
The steps in domestic and international shipping wizards are the same.
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
184 June 2008 Website Payments Standard Integration Guide
FIGURE 7.26 Page Sequence in a Shipping Wizard
1. Setting Up the Shipping Region for a Shipping Wizard. Select the U.S. states or the foreign
countries for the shipping region, and select the currency in which you want to price the
shipping rates for the shipping region.
2. Configuring the Shipping Methods Within the Region of a Shipping Wizard. Select a name
and delivery time frame, a rate basis, and fill in the rate table. Repeat this step to configure
all of the shipping methods you want for the shipping region.
3. Saving the Shipping Methods Configured With a Shipping Wizard. Review the shipping
region and the shipping methods, and change them if you like before you save them.
The following sections describe each step in more detail.
Website Payments Standard Integration Guide June 2008 185
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
Setting Up the Shipping Region for a Shipping Wizard
The first step of a shipping wizard lets you select the U.S. states or foreign countries for one or
your shipping regions. In addition, you select the currency in which you want to price the
shipping rates within the region.
NOTE: You can select the currency at the time you add shipping methods and rates. You
cannot change the currency later when you edit shipping methods. For more
information, see “Shipping Rates and Currencies” on page 182.
After you select the U.S. states or foreign countries you want for the shipping region, click the
Continue button to proceed to the second step of the shipping wizard.
Configuring the Shipping Methods Within the Region of a Shipping Wizard
As the second step of a shipping wizard, you configure the shipping methods that you want for
the shipping region. A shipping wizard lets you configure the name, delivery time frame, rate
basis, and rate table of shipping methods.
Repeat the second step of a shipping wizard to create additional shipping methods for the same
shipping region. Click the Create Another button after completing the configuration of the
current method to begin the configuration of the next one.
After you configure all the shipping methods for the shipping region, click the Continue
button to proceed to the third and final step of the shipping wizard.
Saving the Shipping Methods Configured With a Shipping Wizard
As the final step of a shipping wizard, you review the configuration of the shipping region and
the configuration of the shipping methods for the shipping region. You can change the
shipping region, and you can change and add shipping methods.
In addition, the final step of a shipping wizard lets you enable individual purchase transactions
to override the rates for the shipping methods you defined within the shipping region. Select
the Override profile shipping method... checkbox to permit individual transactions to
override automatic calculation of shipping charges. For more information, see “Overriding
Shipping Calculations on Individual Transactions” on page 190.
After you review the shipping region and its shipping methods, click the Save Shipping
Methods button to preserve the shipping methods that you set up with the shipping wizard.
The shipping methods become available to buyers as soon as you save them.
Viewing, Editing, and Adding Shipping Rates
After you set up some shipping regions, methods, and rates, the page sequence is tailored for
viewing and editing existing shipping methods, as well as for creating additional regions,
methods, and rates.
To begin viewing, editing, or creating additional shipping regions, methods, and rates:
1. Log in to your PayPal account at https://www.paypal.com.
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
186 June 2008 Website Payments Standard Integration Guide
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Shipping Calculations link.
The Shipping Calculations review page appears, as shown below.
FIGURE 7.27 Shipping Calculations Review Page (U.S. Merchants Only)
4. From the Shipping Calculations review page, perform one of the following actions:
– Viewing the Configuration of an Existing Shipping Method. Select the checkbox next to
the shipping method and click the View button.
– Editing the Configuration Settings of an Existing Shipping Method. Select the checkbox
next to the shipping method and click the Edit button.
Website Payments Standard Integration Guide June 2008 187
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
– Deleting Shipping Methods. Select the checkboxes next to the shipping methods and
click the Delete button.
– Adding Shipping Methods by Using a Wizard. Click the Add Another Shipping
Method link.
Viewing the Configuration of an Existing Shipping Method
To view the configuration of a shipping method:
1. From the Shipping Calculations review page, select the checkbox next to the shipping
method you want to view.
2. Click the View button.
The View Domestic Shipping Method page or the View International Shipping Method
page appears.
3. From the review page, perform one of the following actions:
– To change the shipping method, click the Edit Settings button.
– When you are finished viewing the shipping method, click the Back to Shipping
Methods button.
Editing the Configuration Settings of an Existing Shipping Method
To edit the configuration settings of an existing shipping method:
1. From the Shipping Calculations review page, select the checkbox next to the shipping
method you want to change.
2. Click the Edit button.
The Edit Domestic Shipping Method page or the Edit International Shipping Method
page appears.
3. Change any of the following settings:
TABLE 7.2 Shipping Method Settings
Setting Action
Status Select whether the shipping method is actively used to calculate
shipping charges. Allowable values:
Active – the shipping method is available for buyers to choose
Inactive – the shipping method is hidden from buyers
Region Displays the domestic regions or foreign countries currently selected
for the shipping region. To select different regions or countries, click
the Change link.
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
188 June 2008 Website Payments Standard Integration Guide
4. Click the Save Changes button.
Deleting Shipping Methods
You can delete one or more domestic or international shipping methods at one time. Follow
the procedure below in either the Domestic Shipping Methods section or the International
Shipping Methods section of the Shipping Calculations review page.
IMPORTANT: After you delete a shipping method, it cannot be recovered for use in future
shipping calculations.
To delete one or more shipping methods:
1. From the Shipping Calculations review page, select the checkboxes next to the shipping
methods that you want to delete.
2. Click the Delete button.
3. Click the Yes button in the Delete Confirmation message box.
Override shipping methods
per transaction
Select whether the shipping rates can be overridden by individual
transactions if the information is passed to PayPal with HTML
variables in the transaction. Allowable values:
Yes
No
IMPORTANT: Changing the Override shipping methods per
transaction.setting of a specific shipping method
changes the setting for all U.S. domestic and
international shipping methods that use the same
currency.
Shipping Method Name From the dropdown menu, select a name for the shipping method.
Delivery Time (Optional) From the dropdown menu, select a delivery time.
Based On Select the rate basis for the shipping method. Allowable values:
By Amount – based on the total amount of the order
By Weight – based on the total weight of items in the order
By Quantity – based on total quantity of items in the order
For more information, see “Examples of Rate Bases and Shipping
Calculations” on page 189
Shipping Rates Reconfigure the rows in the rate table to change the shipping rates
that PayPal uses to calculate shipping charges when buyer select the
shipping method.
NOTE: Changes that you make to active shipping methods become
effective after a momentary delay.
TABLE 7.2 Shipping Method Settings
Setting Action
Website Payments Standard Integration Guide June 2008 189
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
Examples of Rate Bases and Shipping Calculations
The following examples demonstrate how the different kinds of shipping rates are applied
when calculating shipping charges:
Calculating Shipping Charges Based on Amount of Purchase
Calculating Shipping Charges Based on Weight of Shipment
Calculating Shipping Charges Based on Quantity of Items Shipped
Calculating Shipping Charges Based on Amount of Purchase
When you choose Total Order Amount or By Amount as the basis for shipping rates, tiers in
the rate table represent increasing ranges of order amounts. Generally, you select By Amount
as the rate basis if you want to encourage your buyers to buy more with increasing discounts
on shipping charges.
You can choose between specifying a flat rate for each tier or specifying a percentage of the
order amount. Click the Flat Rate or the Percent links in the Shipping Rate section to make
your choice.
EXAMPLE 7.1 Flat Rate Shipping Calculations
Assume the following shipping rate table with a basis of By Order and fixed amount pricing
selected:
From(EUR) To(EUR) Rate(EUR)
0.01 49.99 3.00
50.00 and up 2.00
The shipping charge for an order amount of €36.50 EUR is €3.00 EUR. The shipping charge
for an order amount of €66.50 EUR is €2.00 EUR This rate structure encourages buyers to
purchase more with discounted shipping on larger orders.
EXAMPLE 7.2 Percentage Rate Shipping Calculation
Assume the following shipping rate table with a basis of By Order and percentage rate pricing
selected:
From(JPY) To(JPY) Rate(%)
0.01 49.99 5
50.00 and up 4
The shipping charge for an order amount of ¥36.50 JYP is ¥1.38 JYP (36.50 x 5%). The
shipping charge for an order amount of ¥66.50 JYP is ¥2.66 JYP (66.50 x 4%).
Calculating Shipping Charges Based on Weight of Shipment
When you choose Total Order Weight or By Weight as the basis for shipping rates, tiers in
the rate table represent increasing ranges of order weights. Generally, you select By Weight as
the rate basis if you want to recover your shipping costs.
You can choose between specifying order weights in pounds or kilograms. Click the Lbs or
the Kgs links in the Shipping Rate section to make your choice.
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (U.S. Merchants Only)
7
190 June 2008 Website Payments Standard Integration Guide
EXAMPLE 7.3 Weight-Based Shipping Calculations
Assume the following shipping rate table with a basis of By Weight:
From(Kgs) To(Kgs) Rate(GBP)
0.01 49.99 3.00
50.00 and up 6.00
The shipping charge for an order that weights 36.50 kg is £3.00 GBP. The shipping charge for
an order that weights 66.50 kg is £6.00 GBP.
Calculating Shipping Charges Based on Quantity of Items Shipped
When you choose Total Order Quantity or By Quantity as the basis for shipping rates, tiers
in the rate table represent increasing ranges of order item counts. Generally, select By
Quantity as the rate basis if all your products have a generally uniform size and weight, such
as shoes.
EXAMPLE 7.4 Quantity-Based Shipping Calculations
Assume the following shipping rate table with a basis of By Quantity:
From To Rate(USD)
1 49 3.00
50 and up 6.00
The shipping charge for an order with 36 items is $3.00 USD. The shipping charge for an order
with 66 items is $6.00 USD.
Overriding Shipping Calculations on Individual Transactions
Sometimes you want to set special shipping rates for certain items, such as especially heavy
ones that cost more to ship, or services and digital downloads that do not require shipping.
Prerequisites for Overriding Shipping Rates on Individual Transactions
To override your profile-based shipping rates:
Enable overrides of your shipping rates; overrides are enabled for new shipping methods
by default
Set the special shipping rates for individual items or entire transactions with special HTML
variables of Buy Now, Donation, Add to Cart, and View Cart buttons
For more information, see “Setting Shipping Charges on Individual Items” on page 142
and “Setting the Tax for the Entire Cart” on page 143.
Disabling the Override of Shipping Rates on Individual Transactions
By default, shipping methods enable the override of shipping rates on individual transactions.
You can disable overrides by:
Editing any shipping method and changing the Override shipping methods per
transaction.setting.
Adding a new shipping method and changing the default value of the Override shipping
methods per transaction setting
Website Payments Standard Integration Guide June 2008 191
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)
7
Regardless of how you disable overrides, the override setting you specify for a specific
shipping methods applies to the setting for all shipping methods of the same currency.
To enable or disable overrides of a shipping method:
1. From the Shipping Calculations review page, select the checkbox next to any of the
shipping methods for a specific currency.
2. Click the Edit button.
The Edit Domestic Shipping Method or the Edit International Shipping Method page
appears.
3. For the Override shipping methods per transaction.setting, select one of the following
radio buttons:
– Yes – enables transaction-specific shipping charges to override the shipping rates
– No – prohibits transaction-specific shipping charges
IMPORTANT: Changing the Override shipping methods per transaction.setting of a
specific shipping method changes the setting for all U.S. domestic and
international shipping methods that use the same currency.
4. Click the Save Changes button.
Automatic Calculation of Shipping Charges (non-U.S.
Merchants Only)
You can set up shipping rates in your account profile and let PayPal calculate shipping charges
automatically.
To view or modify your shipping rates:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Shipping Calculations link.
The Shipping Calculations page appears, as shown below.
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)
7
192 June 2008 Website Payments Standard Integration Guide
FIGURE 7.28 Shipping Calculations Page (non-U.S. Merchants Only)
Examples of Cost Methods and Shipping Calculations
The following examples demonstrate how different cost methods are applied when calculating
shipping charges.
Website Payments Standard Integration Guide June 2008 193
Using Your PayPal Account Profile
Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)
7
Calculating Shipping Charges with the Flat Amount Cost Method
When you choose Flat Amount as the cost method for shipping rates, costs for each price
range are expressed as fixed amounts.
EXAMPLE 7.1 Flat Amount Cost Method and Shipping Calculations
Assume the following shipping rates with a cost method of Flat Amount:
Cost Price Ranges
€3,00 EUR €0,00 EUR - €49,99 EUR
€6,00 EUR €50,00 EUR - and up
The shipping charge for an order price of €36,50 is €3,00. The shipping charge for an order
price of €66,50 is €6,00. This rate structure helps you recover your shipping costs from buyers.
Calculating Shipping Charges with the Percentage Cost Method
When you choose Percentage as the cost method for shipping rates, costs for each price range
are expressed as percentages of the actual order price.
EXAMPLE 7.2 Percentage Cost Method and Shipping Calculations
Assume the following shipping rates with a cost method of Percentage:
Cost Price Ranges
5.00 GBP % £0.00 GBP - £49.99 GBP
4.00 GBP % £50.00 GBP - and up
The shipping charge for an order price of £36.50 is £1.83. The shipping charge for an order
price of £66.50 is £2.66. This rate structure encourages buyers to purchase more with
discounted shipping rates on larger orders
Overriding Shipping Calculation on Individual Transactions
Sometimes you want to set special shipping rates for certain items, such as especially heavy
ones that cost more to ship, or services and digital downloads that do not require shipping.
Prerequisites for Overriding Shipping Rates on Individual Transactions
To override your profile-based shipping rates:
Enable overrides of your shipping rates for individual transactions; overrides are disabled
by default.
Set the special shipping rates for individual items or entire transactions with special HTML
variables of Buy Now, Donation, Add to Cart, and View Cart buttons
For more information, see “Setting Shipping Charges on Individual Items” on page 142
and “Setting the Tax for the Entire Cart” on page 143.
Enabling the Override of Shipping Rates on Individual Transactions
To enable overrides of shipping rates:
1. Log in to your PayPal account at https://www.paypal.com.
Using Your PayPal Account Profile
Blocking Certain Kinds of Payments
7
194 June 2008 Website Payments Standard Integration Guide
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Shipping Calculations link.
The Shipping Calculations page appears
4. Click the checkbox labelled Click here to allow transaction-based shipping values to
override the profile shipping settings listed above (if profile settings are enabled).
5. Click the Save button.
Blocking Certain Kinds of Payments
Payment receiving preferences let you block.
Payments from U.S. payers without a confirmed address
Payments in currencies you do not hold
Payments from payers with non-U.S. accounts
Payments initiated through the Pay Anyone Subtab
Payments by credit card instead of a bank account
Payments funded with eChecks
Accessing Your Payment Receiving Preferences to Block Payments
To access your Payment Receiving Preferences to block different types of payments:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Payment Receiving Preferences link.
The Payment Receiving Preferences page appears, as shown below.
Website Payments Standard Integration Guide June 2008 195
Using Your PayPal Account Profile
Blocking Certain Kinds of Payments
7
FIGURE 7.29 Payment Receiving Preferences Page
Blocking Payments From U.S. Payers Without a Confirmed Address
Using Your PayPal Account Profile
Blocking Certain Kinds of Payments
7
196 June 2008 Website Payments Standard Integration Guide
You can better manage your risk by blocking payments where the payer chooses not to share
his Confirmed Address with you. PayPal provides Confirmed Addresses to help you make
informed decisions when shipping goods. To be eligible for PayPal's Seller Protection Policy
(SPP), and to help reduce your risk of dealing with fraudulent buyers, ship to a buyer’s
Confirmed Address.
There are three choices for this preference:
Yes – All payments from U.S. payers without a Confirmed Address are blocked. All U.S.
payers must provide a Confirmed Address in order to pay you.
No – All payments are accepted. To maximize your sales, select No.
Ask Me – You can choose whether to accept or deny payment without a Confirmed
Address on a case-by-case basis. This option lets decide whether to take on the risk of not
having the payer’s Confirmed Address for each transaction. If you accept the payment, it
becomes a completed transaction. If you deny a particular payment, the sender of the
payment is notified that the payment has been denied and is credited with the payment
amount. PayPal does not charge fees for denied payments.
For a detailed description of how Confirmed Address and other settings affect the PayPal
billing and shipping addresses, see Appendix B, “Address Handling (U.S. Merchants Only).”
Blocking Payments in Currencies That You Do Not Hold
When you receive a payment in a currency you do not hold, PayPal prompts you to open a
balance for that currency, convert it to your primary balance, or deny the payment. Payments
in currencies for which you hold a balance are applied to the appropriate balance. You see a
summary of each currency balance in your Account Overview page.
There are three choices for this preference:
Yes – Accept the payment regardless of the currency in which the payment is made.
No, accept them and convert them to U.S. Dollars – Accept the payment but
automatically converts to U.S. Dollars.
Ask Me – Transaction-by-transaction, you can choose to accept or deny a payment in a
currency you do not currently hold. If you accept the payment, it becomes a completed
transaction. If you deny a particular payment, the sender of the payment is notified that the
payment has been denied and is credited with the payment amount. PayPal does not charge
fees for denied payments.
For more informations, see “Managing Currency Balances” on page 203.
Blocking Payments from Payers With Non-U.S. PayPal Accounts
Because many international addresses cannot be confirmed, you may choose to block
payments from users with non-U.S. PayPal accounts in order to qualify for the Seller
Protection Policy.
Website Payments Standard Integration Guide June 2008 197
Using Your PayPal Account Profile
Adding Your Credit Card Statement Name
7
Blocking Payments Initiated Through the Pay Anyone Subtab
You can choose whether or not to receive payments initiated via the Pay Anyone subtab of the
Send Money tab on the PayPal website. Selecting this option might help you manage your
account, because the payments you receive will be associated with a specific item or
transaction that you defined.
If you block these payments, you accept only payments initiated from Buy Now, PayPal
Shopping Cart, Gift Certificate, Subscription, and Donate buttons, as well as Winning Buyer
Notification, Mass Payments, Money Requests, Smart Logos, or eBay Checkout Payments.
Blocking Payments by Credit Card Instead of Bank Account
You can force people to pay you with a bank account or funds in their PayPal balances if they
are able to do so. However, if they cannot pay using a bank account or their PayPal balances,
they still have the option to pay with a credit card.
This preference can also help to reduce your risk of chargebacks. Verified members are people
who have confirmed their bank accounts with PayPal or who have been otherwise verified by
PayPal. Because most Verified members have the option of paying with their bank accounts
(via eCheck or Instant Transfer), this preference does not prevent them from sending you
money. When they pay with PayPal’s Instant Transfer, you receive the payment instantly, just
as when they pay with a credit card. Members who have not confirmed their bank accounts
with PayPal can still send you money funded by credit cards.
Blocking Payments Funded With eChecks
You can block payments from PayPal members who pay with eChecks. Because eCheck
payments take three to four business days to clear, you might want to block them for your
Instant Purchase and Buy Now buttons.
If you choose to block these payments, users who attempt to pay via eCheck are prompted to
add a credit card to their account before completing the transaction.
If you choose not to block these payments, you can receive eCheck payments through PayPal
Website Payments or Auction Logos. eCheck payments are listed as Pending and are not
credited to your PayPal account for three to four business days.
Adding Your Credit Card Statement Name
When PayPal members pay with credit cards on file with their PayPal accounts, the
transactions appear on their credit card statements in the following format in the description:
PAYPAL*MERCHANT
By default, MERCHANT is:
For premiere accounts, the mailbox name of the email addressed that you specified when
you signed up your account.
Using Your PayPal Account Profile
Adding Your Credit Card Statement Name
7
198 June 2008 Website Payments Standard Integration Guide
For business accounts, the business name that you specified when you signed up for your
account.
The value you specified is converted to all upper-case letters, spaces are removed, the result is
truncated to eleven characters. The result is stored in your account profile as your Credit Card
Statement Name
The default value for your Credit Card Statement Name may be difficult for payers to
understand. To reduce chargebacks and payer confusion, replace the default Credit Card
Statement Name with one that accurately reflects your business or legal name.
To specify your Credit Card Statement Name:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Payment Receiving Preferences link.
The Payment Receiving Preferences page appears.
4. Scroll down the page to the Credit Card Statement Name section, as shown below.
FIGURE 7.30 Specifying Your Credit Card Statement Name
5. Change the following settings:
TABLE 7.3 Shipping Method Settings
Setting Action
Credit Card Statement
Name
Enter up to 11 characters and spaces. Do not include special
characters, such as “&,” “#”, or “_”. The value is converted to all
capital letters and might be truncated by some credit card processors.
Website Payments Standard Integration Guide June 2008 199
Using Your PayPal Account Profile
Allowing Multiple Users to Access Your PayPal Account
7
6. Scroll to the bottom of the page and click the Save button.
Allowing Multiple Users to Access Your PayPal Account
If you have a PayPal business account, you can set up multiple logins with different
permissions to allow multiple people in your organization to access your PayPal account.
Multi-user access lets you give different employees access to different parts of your account,
based on their business functions.
For example, you can give your customer service representatives their own logins with limited
privileges that let them only view balances and make refunds but not let them edit profiles,
send money, or withdraw funds.
IMPORTANT: Remember to remove user logins for people who leave your organization.
Adding a User Login to Your Account
To create a user login for your PayPal business account:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Account Information column, click the Multi-User Access link.
The Multi-User Access-Current Users page appears.
4. Click the Add User button if you have not added users yet, or the Add button if already
have additional users on your account.
The Add Users page appears.
Extended Credit Card
Statement Name
Enter up to 19 characters and spaces. Do not include special
characters, such as “&,” “#”, or “_”.The value is converted to all
capital letters and might be truncated by some credit card processors.
TABLE 7.3 Shipping Method Settings
Setting Action
Using Your PayPal Account Profile
Allowing Multiple Users to Access Your PayPal Account
7
200 June 2008 Website Payments Standard Integration Guide
5. Enter information in the following settings:
6. Click the Save button.
Changing the Privileges for a User Login
After you add a user login, you can change the privileges of the login. You cannot change the
user’s name or the user ID.
To change the privileges of a user login:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
TABLE 7.4 New User Login Settings
Setting Action
User’s Name Enter the first and last name of the person to whom you want to give
access to your account.
User ID Enter a combination of between 10 and 16 letters and numbers.
Re-enter User ID Enter the same combination of letters and numbers that you entered
for User ID.
Password Enter a combination of between 8 and 20 letters and numbers.
Re-enter Password Enter the same combination of letters and numbers that you entered
for Password.
Multi-User Access Select any of the checkboxes to grant the user specific privileges
within your account:
Send Money
Mass Payments
Request Money
Add Funds
Refunds
Withdraw Money
Cancel Payments
View Balance
View Profile
Edit Profile
History and Reports
API Activation & Authorization
Discuss Account with Customer
Authorization & Settlement
PayPal Shipping
Recurring Payments
Website Payments Standard Integration Guide June 2008 201
Using Your PayPal Account Profile
Allowing Multiple Users to Access Your PayPal Account
7
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Account Information column, click the Multi-User Access link.
The Multi-User Access - Current Users page appears, as shown below:
FIGURE 7.31 Multi-User Access - Current Users Page
4. Select the radio button next to the User Name, and click the Edit button.
The Change Multi-User Access page appears, with the User Name and User ID
displayed as read-only text.
5. Select and deselect checkboxes for the privileges you want to grant to or revoke from the
user login.
6. Click the Save changes.
Resetting the Password for a User Login
When employees forget or loose their passwords, you can log in and reset them.
To reset the password for a user login:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Account Information column, click the Multi-User Access link.
The Multi-User Access - Current Users page appears.
Using Your PayPal Account Profile
Handling Multiple Currencies
7
202 June 2008 Website Payments Standard Integration Guide
4. Select the radio button next to the User Name for the user login, and click the
Change Password button.
The Change User Password page appears, with the User Name and User ID displayed as
read-only text.
5. Enter a new password for the user login:
6. Click the Save button.
Removing a User Login
When someone leaves your organization, you should remove the person’s user login from your
account.
To remove a user login:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Account Information column, click the Multi-User Access link.
The Multi-User Access-Current Users page appears.
4. Select the radio button next to the User Name for the user login, and click the Remove
button.
The Remove User page appears, with the User Name and User ID displayed as read-only
text.
5. Click the Remove button to permanently remove the user login from your account, or click
the Cancel button to retain the user login.
Handling Multiple Currencies
PayPal helps you handle multiple currencies in the following ways:
TABLE 7.5 Change User Login Password Settings
Setting Action
Password Enter a combination of between 8 and 20 letters and numbers.
Re-enter Password Enter the same combination of letters and numbers that you entered
for Password.
Website Payments Standard Integration Guide June 2008 203
Using Your PayPal Account Profile
Handling Multiple Currencies
7
Managing Currency Balances
Accepting or Denying Cross-Currency Payments
Managing Currency Balances
Use the Currency Balances section of your account profile to manage your currency
balances, including:
Selecting your primary currency balance
Opening or closing currency balances
Converting funds from one currency balance to funds in another currency balance.
People can pay you in the following currencies; you maintain PayPal balances only in those
currencies that you specify.
NOTE: Use the IS0-4217 code for the currency_code HTML variable of HTML buttons with
monetary amounts in currencies in other than USD.
TABLE 7.6 Currencies Allowed for Transactions and Balances
Currency ISO-4217 Code
Australian Dollar AUD
Canadian Dollar CAD
Swiss Franc CHF
Czech Koruna CZK
Danish Krone DKK
Euro EUR
Pound Sterling GBP
Hong Kong Dollar HKD
Hungarian Forint HUF
Japanese Yen JPY
Norwegian Krone NOK
New Zealand Dollar NZD
Polish Zloty PLN
Swedish Krona SEK
Singapore Dollar SGD
U.S. Dollar USD
Using Your PayPal Account Profile
Language Encoding Your Data
7
204 June 2008 Website Payments Standard Integration Guide
Accepting or Denying Cross-Currency Payments
You choose which currencies you accept and how you would like to accept them. You can set
your Payment Receiving Preferences to handle cross-currency payments. See “Blocking
Certain Kinds of Payments” on page 194.
When people make payments in currencies that you hold, the funds appear in your account in
the balance of that currency. When people make payments in currencies that you do not hold,
you can accept or deny the payments.
FIGURE 7.32 Accepting or Denying a Cross-Currency Payment
Receiving fees are assessed in the currency in which the funds were sent. Payments converted
to your primary currency are converted at a competitive exchange rate.
Language Encoding Your Data
Websites that use PayPal in different parts of the world work with different languages and
different character encoding schemes. PayPal refers collectively to these differences as
language encoding.You can set the default language encoding that your website uses to
exchange data with PayPal. The default settings are used for all transactions sent from your
website to PayPal and all automated notifications sent from PayPal to your website. You can
override the default settings on individual transactions with the charset HTML Form
variable.
For more information on overrides, see “Setting the Character Set – charset” on page 227.
About Language Encoding for Exchanging Data With PayPal
Computer systems represent human languages in terms of character sets and character
encoding.
Website Payments Standard Integration Guide June 2008 205
Using Your PayPal Account Profile
Language Encoding Your Data
7
Character Sets
A character set is a defined set of individual letters and symbols used in a particular language.
For instance, the ASCII character is commonly used to define the character in written
American English. The Big 5 character is commonly used to define the characters in written
Chinese.
Character Encoding
Character encoding is the way a computer system represents internally the letters and symbols
of a particular character set. Computers use internal representation to store, transmit, and
process data.
Different character encoding schemes define the number of bytes each character requires and
the pattern of on/off bits that identify a particular character. For example, single-byte encoding
schemes, such as ANSI and extended ASCII, allocate one byte for each character or symbol in
character set for Western European languages. Other encoding schemes, such as Unicode and
UTF-8, allocate several bytes for each character in their character sets.
Changing Your Default Language Encoding
Your Language Encoding preferences let you can control which language and encoding
scheme is used to exchange data between your website and PayPal. When you sign up for a
PayPal account, the system determines your default language and encoding based on your
country of origin. For example, if you sign up with a French postal address, your language and
encoding are set for Western European languages.
You must set your language encoding preferences to match the language and encoding that
your website uses. Otherwise, data cannot be exchanged with PayPal. Generally, the default
selected by PayPal is appropriate. In some cases, particularly in Asian countries or with certain
operating systems, the language and/or encoding may not match those used by your website.
You can set these language encoding preferences.
Your website’s language – Set the character set used on your website, such as Western
European, Japanese, or Russian
Encoding – Set the character encoding used on your website, such as UTF-8, EUC-JP, or
KOI8-R.
NOTE: For a complete list of supported language encodings, see “Table 11.2, “Character Sets
and Encoding Schemes Supported by PayPal,” on page 227.
Changing Your Default Website Language
To change your website language:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
Using Your PayPal Account Profile
Language Encoding Your Data
7
206 June 2008 Website Payments Standard Integration Guide
3. In the Selling Preferences column, click the Language Encoding link.
The Language Encoding page appears, as shown below.
FIGURE 7.33 Language Encoding Settings – Language Choice
4. From the Your website’s language dropdown menu, select an appropriate setting.
5. Click the Save button.
Changing the Character Encoding Used by Your Website
Sometimes setting your website’s language is insufficient to set the language encoding
correctly. You may need to specify the character encoding explicitly. In addition, you may
need to select separately the encoding for data that your website sends to PayPal with Website
Payments Standard buttons and the data sent by PayPal through Instant Payment Notification,
downloadable history logs, and email notifications.
To change the character encoding used by your website:
1. Log in to your PayPal account at https://www.paypal.com.
The My Account Overview page appears.
2. Click the Profile subtab.
The Profile Summary page appears.
3. In the Selling Preferences column, click the Language Encoding link.
The Language Encoding page appears, as shown in Figure 7.33 .
4. Ensure that setting for Your website’s language is correct.
5. Click the More Options button.
The More Encoding Options page appears, as shown below
Website Payments Standard Integration Guide June 2008 207
Using Your PayPal Account Profile
Language Encoding Your Data
7
FIGURE 7.34 Language Encoding Settings – Encoding Options
6. From the Encoding dropdown menu, select the appropriate character encoding scheme for
data that your website sends to PayPal.
– If you want to use the encoding scheme for receiving data that PayPal sends to your
website, ensure that the Yes radio button is selected.
– If you want to use a different encoding scheme, select the No radio button and select the
encoding scheme you want to use to receive data from PayPal from the No, use
dropdown menu.
7. Click the Save button to preserve both the encoding options that you selected on this page
and the website language you selected on the previous page.
IMPORTANT: You can click the Cancel button to return to the previous page and review
your choice for website language. However, selections that you made on
the More Encoding Options page are lost.
Using Your PayPal Account Profile
Language Encoding Your Data
7
208 June 2008 Website Payments Standard Integration Guide
Website Payments Standard Integration Guide June 2008 209
8 Using Authorization & Capture
PayPal Authorization & Capture is a settlement solution that provides merchants increased
flexibility in obtaining payments from their buyers. During a traditional sale at PayPal, the
authorization and capture action is completed simultaneously. PayPal Authorization &
Capture separates the authorization of payment from the capture of the authorized payment.
Authorization & Capture is for merchants who have a delayed order fulfillment process and
who typically make a $1 USD authorization at checkout. It enables merchants to modify the
original authorization amount due to order changes occurring after the initial order is placed
(such as taxes, shipping, or item availability). This chapter discusses the authorization and
capture process and provides steps to help you authorize, capture, reauthorize, and void funds.
There are two ways to use Authorization & Capture:
Create an order or authorization with Website Payments Standard HTML and capture or
void the authorization on the PayPal website (www.paypal.com).
Use the Authorization & Capture API, which is not discussed in this book. For more
information, see the Website Payments Pro Integration Guide.
Basic Authorization Process
Authorization & Capture starts when your buyer authorizes a payment amount during
checkout.
1. For example, you can send your buyer through the Website Payments payment flow,
passing in the paymentaction variable set to authorization or order.
2. After your buyer completes checkout, you can then use the payment’s transaction ID with
Authorization & Capture in the PayPal website (https://www.paypal.com). You can:
– Capture either a partial amount or the full authorization amount.
– Authorize a higher amount, up to 115% of the originally authorized amount (not to
exceed an increase of $75 USD).
– Void a previous authorization.
Honor Period and Authorization Period
When your buyer approves an authorization, the buyer’s balance can be placed on hold for a
29-day period to ensure the availability of the authorization amount for capture. You can
reauthorize a transaction only once, up to 115% of the originally authorized amount (not to
exceed an increase of $75 USD).
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
210 June 2008 Website Payments Standard Integration Guide
After a successful authorization (or reauthorization), PayPal will honor authorized funds for
three days, but PayPal cannot ensure that 100% of the funds will be available. A day is defined
as the start of the calendar day on which the authorization or reauthorization was made (from
12AM PST to 11:50PM PST).
You can settle without a reauthorization from day 4 to day 29 of the authorization period, but
PayPal cannot ensure that 100% of the funds will be available after the three-day honor period.
However, PayPal will not allow you to capture funds if the buyer’s account is restricted,
locked, or a fraudulent case occurs, or if your account has a high restriction level. You can use
Authorization & Capture only when your account has a low restriction level.
The honor period and authorization period for authorizations are described below:
If you attempt to capture funds outside the honor period, PayPal applies best efforts to
capture funds. However, funds may not be available at that time.
The accounts of buyers and merchants cannot be closed if there is a pending (unsettled)
authorization.
Supported PayPal Payment Products
You can use Authorization & Capture with the PayPal products listed in Table 8.1 , “PayPal
Products Supporting Authorization & Capture.”
By default, these products assume that a transaction is a final sale. You must explicitly specify
that a transaction is a basic or order authorization.
NOTE: You must capture and void orders and order authorizations using the Authorization &
Capture APIs. That is, you cannot process order authorizations on the PayPal website
(https://www.paypal.com). The PayPal website supports processing only basic
authorizations, not order authorizations.
Basic Authorization & Capture Scenarios
Included here are examples of some common scenarios you might encounter when
implementing basic authorizations and captures.
TABLE 8.1 PayPal Products Supporting Authorization & Capture
Product Typical Usage
Website Payments paymentaction="authorization"
Buy Now paymentaction="authorization"
Donations paymentaction="authorization"
Shopping carts paymentaction="authorization"
Website Payments Standard Integration Guide June 2008 211
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
Capturing A Single Authorization
If you have authorized a transaction, you need to capture the funds in order to receive
payment.
NOTE: PayPal recommends that you capture payments within three days of the original
authorization.
To initiate a capture:
1. Go to the History of your account on https://www.paypal.com.
2. Click the Capture button associated with the transaction.
3. Review the information on the Capture Funds page, enter the amount to capture, and then
click the Capture Funds button.
The funds are transferred to your account.
Batch Capturing Multiple Authorizations
On https://www.paypal.com, you can initiate the capture of an entire group of authorized
transactions at the same time. This feature is known as batch capture.
To capture a batch of authorized transactions:
1. Go to the History of your account on https://www.paypal.com.
2. Click the Capture button associated with any transaction.
3. On the displayed page, click the Batch Capture link that is located in the introductory
paragraph.
4. On the displayed page, either use the dropdown menu to choose a defined date or date
range, or enter a specific date range in the provided fields.
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
212 June 2008 Website Payments Standard Integration Guide
5. On the displayed page, check the authorizations you want to capture, set their capture
amount, choose whether you will make an additional capture later, and optionally enter a
note to the buyer.
6. Review the capture transactions, make any desired changes, and submit them for
processing.
Voiding an Authorization
If you initiated an authorization and now want to refund the buyer, you need to void the
authorization. Once you void an authorization, you cannot capture any funds associated with
the authorization, and the funds are returned to the buyer.
NOTE: Voiding an authorization cancels the entire open amount.
You can initiate a void in the following cases:
The authorization is pending
The authorized amount was captured at less than 100%
Website Payments Standard Integration Guide June 2008 213
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
To void an authorization:
1. Click the Void button associated with the authorization.
2. Confirm the void details on the Void Authorization page, and then click the Void button.
NOTE: PayPal recommends that you explain any unique circumstance to your buyer in the
Note field.
PayPal sends the buyer an email with the details of the voided authorization.
Capture Within 3 Days
1. Your buyer orders a camera from your website.
2. Your buyer enters payment information and authorizes payment.
3. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization
4. PayPal initiates the authorization.
5. On day 3, you ship the camera and capture funds.
After you have captured funds, your Transaction Details shows the transaction with a
Completed status.
FIGURE 8.1 Transaction Details – Completed Transaction
Capture From 4 - 29 Days
1. Your buyer orders a DVD player from your website.
2. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization.
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
214 June 2008 Website Payments Standard Integration Guide
3. Your buyer enters payment information and authorizes payment.
4. PayPal initiates the authorization.
5. The DVD player is discontinued. You order a different DVD player from your vendor and
notify your buyer of the change.
6. On day 14, the DVD player arrives from your vendor. Because the honor period has passed,
you complete a reauthorization for payment.You ship the DVD player and complete the
final capture.
Your Transaction Details shows that the transaction has been completed.
FIGURE 8.2 Transaction Details – Reauthorization, Final Capture
One Authorization, Multiple Captures, and a Refund
1. Your buyer orders two textbooks and a keyboard from your website.
2. Your buyer enters payment information and authorizes payment.
3. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization.
4. PayPal initiates the authorization.
5. One textbook and the keyboard are out of stock. You order additional inventory from your
vendors. You ship the in-stock textbook and capture the first partial capture on day 6.
6. You receive the second textbook from the vendor. You ship the textbook and capture the
second partial capture on day 11.
7. You receive the keyboard from the vendor. You reauthorize for payment on day 19.
Website Payments Standard Integration Guide June 2008 215
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
8. Your buyer files a complaint that the textbook from the first shipment is damaged. You
issue a partial refund for the first capture.
Your Transaction Details shows the following:
FIGURE 8.3 Transaction Details – Partial Capture, Reauthorization, Refund
Lower Capture Amount
1. Your buyer orders a laser printer and a USB cable from your website.
2. Your buyer enters payment information and authorizes payment.
3. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization.
4. PayPal initiates the authorization.
5. Before you process the transaction, your buyer contacts you and requests to cancel the USB
cable from the order.
6. On day 6, you ship the laser printer and complete a partial capture for an amount less than
the original authorization amount.
7. You complete a void on the funds remaining on the authorization.
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
216 June 2008 Website Payments Standard Integration Guide
Your Transaction Details shows the following:
FIGURE 8.4 Transaction Details – Partial Capture, Voided Transaction
Capture Up to 115%
1. Your buyer places an order from your website.
2. Your buyer enters payment information and authorizes payment.
3. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization.
4. PayPal initiates the authorization.
5. You add shipping charges to the order and capture funds on day 1.
Your Transaction Details shows the completed transaction. The capture results in a total not
greater than 115% of the original authorization.
Website Payments Standard Integration Guide June 2008 217
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
FIGURE 8.5 Transaction Details – Capture up to 115%
Authorization Expires
1. Your buyer orders a desktop computer from your website.
2. Your buyer enters payment information and authorizes payment.
3. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization.
4. PayPal initiates the authorization.
5. Before you process the transaction, your buyer contacts you to cancel the order.
6. You do not capture funds for the transaction.
7. The authorization expires.
Your Transaction Details shows the authorization with an Expired status.
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
218 June 2008 Website Payments Standard Integration Guide
FIGURE 8.6 Transaction Details – Expired Authorization
Void
1. Your buyer orders a stereo system from your website.
2. Your buyer enters payment information and authorizes payment.
3. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization.
4. PayPal initiates the authorization.
5. Before you process the transaction, your buyer contacts you to cancel the order.
6. You void the transaction.
Your History shows the transaction with a Voided status.
Website Payments Standard Integration Guide June 2008 219
Using Authorization & Capture
Basic Authorization & Capture Scenarios
8
FIGURE 8.7 History – Voided Transaction
Reattempted Capture
1. Your buyer orders two sweatshirts from your website.
2. Your buyer enters payment information and authorizes payment.
3. Send your buyer to PayPal using a hosted flow, specifying the variable
paymentaction=authorization.
4. PayPal initiates the authorization.
5. On day 3, you attempt to capture funds, but the capture fails. You receive an error message
similar to the following:
We are sorry, we cannot process the settlement at this time.
There was a restriction on the buyer’s account.
6. You contact the buyer to resolve the problem.
7. Your buyer resolves the account problem.
8. You reattempt and successfully capture funds. You ship the order to your buyer.
NOTE: The reauthorization scenario is similar to the Reattempted Capture scenario, as detailed
above.
Using Authorization & Capture
Recommendations for Best Use of Authorization & Capture
8
220 June 2008 Website Payments Standard Integration Guide
Recommendations for Best Use of Authorization & Capture
Here are recommendations to ensure the best experience for buyers and to get the most from
Authorization & Capture.
Capturing Funds on Basic Authorizations
PayPal recommends that you capture funds within the honor period of three days because
PayPal will honor the funds for a 3-day period after the basic authorization. If you attempt to
capture funds after the three-day period and the authorization fails, your request to capture
funds may be declined.
After day 4 of the authorization period, you can initiate a reauthorization, which will start a
new three-day honor period. However, it will not extend the original authorization period past
29 days. For example, if you successfully complete a reauthorization on day 29 of the
authorization period, funds will only be honored until the end of the 29th day, and a new three-
day honor period will start but not extend beyond day 29.
You should capture funds within 24 hours after you ship your buyer’s order.
Buyer Approval for Basic Authorizations
A buyer-initiated authorization allows you to capture funds from the buyer’s account up to
115% of the originally authorized amount (not to exceed an increase of $75 USD) and up to
$10,000 USD.
IMPORTANT: If you want to update any details of the purchase that change the original
authorization amount, PayPal requires that you obtain consent from the buyer
at the time of purchase or at the time of capture.
Voiding Basic Authorizations
You should void an authorization if the authorization or reauthorization will not be used.
Voiding the authorization unlocks the temporary hold placed on your buyer’s funding sources.
Website Payments Standard Integration Guide June 2008 221
9 Issuing Refunds
When you issue a refund, the gross amount of the refund is sent to the buyer. The gross amount
equals the net amount of the original transaction plus the refunded fee from PayPal.
Gross Amount = Net Amount + Refund Fee
Refunding Within 60 Days of Payment
You can refund the entire amount of a transaction or portions of it. If you issue a refund within
60 days, the original transaction fee for receiving the payment is credited to your account. For
partial refunds, you are credited a percentage of the original transaction fee based on the
refunded amount.
To issue a refund within 60 days:
1. Log in to your PayPal account.
2. Click the History subtab.
3. Find the payment transaction you want to refund.
4. Click the Details link for the transaction.
5. Click the Refund Payment link on the Transaction Details page.
6. Enter the refund amount and click the Submit button.
7. Confirm the refund amount and click the Process Refund button.
If you refund a pending eCheck payment, no fees are charged because the pending payment is
effectively canceled.
Refunding After 60 Days
When you issue a refund after 60 days, your original transaction fee for receiving the payment
is not credited to your account.
To issue a refund after 60 days:
1. Log in to your PayPal account.
2. Click the Send Money tab.
3. Enter the required information.
Issuing Refunds
Refunding After 60 Days
9
222 June 2008 Website Payments Standard Integration Guide
4. Click the Continue button.
5. Review the information on the confirmation page, and click the Send Money button to
complete the refund.
Website Payments Standard Integration Guide June 2008 223
10 Testing Payment Buttons in the
PayPal Sandbox
The PayPal Sandbox can be used to test the following functionality:
Buy Now buttons – Test single-item payments.
For more information, see Chapter 1, “Single-Item Payments – Buy Now Buttons.”
Subscribe buttons – Test recurring payments.
For more information, see Chapter 3, “Recurring Payments – Subscribe Buttons.”
Donate buttons – Test contribution payments.
For more information, see Chapter 2, “Contribution Payments – Donate Buttons.”
Shopping Cart buttons – Test multiple-item payments in a single purchase transaction.
For more information, see Chapter 4, “The PayPal Shopping Cart – Add to Cart and View
Cart Buttons.”
Refunds – Test the refunding of money paid by PayPal members.
For more information, see Chapter 9, “Issuing Refunds.”
Payment Data Transfer – Test your identity token, return URL, and Payment Data
Transfer settings.
For more information about implementing Payment Data Transfer, see the Order
Management Integration Guide.
Instant Payment Notification – Test Instant Payment Notification messages for payments
and reversals
Instant Payment Notification messages in the Sandbox environment include the special
ipn_test variable, set to the value 1. This variable lets your code differentiate between
Instant Payment Notification messages in the Sandbox and Instant Payment Notification
messages from the live PayPal website. Use the ipn_test variable to develop scripts that
work in both situations.
IMPORTANT: Instant Payment Notification messages that come from the Sandbox
cannot be verified against the live PayPal website, and Instant Payment
Notification messages that come from the live PayPal website cannot be
verified against the Sandbox.
For more information about implementing Instant Payment Notification, see the Order
Management Integration Guide.
Simulated transactions – Test scenarios, such as successful and failed eChecks.
To test in the Sandbox, create a Developer Central account. Then create multiple PayPal
test accounts for buyers and merchants so that you can simulate different scenarios.
IMPORTANT: The Sandbox does not process real money.
Testing Payment Buttons in the PayPal Sandbox
10
224 June 2008 Website Payments Standard Integration Guide
For more information, see the Sandbox User Guide.
Website Payments Standard Integration Guide June 2008 225
11 HTML Form Basics for Website
Payments Standard
This chapter describes in technical terms the basic functionality of Website Payments Standard
and its use of HTML Forms. Use the information in this chapter as a guide to writing the
HTML code yourself for Website Payments Standard payment buttons. A wide variety of
HTML authoring tools exist. This guide does not describe all the possibilities.
People who pay you through Website Payments Standard interact with HTML forms and
hidden HTML input variables that you place on your website. When someone clicks a
payment button in an HTML form on a webpage, the form submits the variables and their
values to PayPal. You set the values of the variables to produce the desired effect, such as
invoking the Buy Now, the Donate, the Subscribe, or the PayPal Shopping Cart checkout
experience and various other PayPal features.
NOTE: The PayPal website offers tools that let you create the HTML code for Buy Now,
Donate, Subscribe, and PayPal Shopping Cart buttons. For more information, see
Chapter 1, “Single-Item Payments – Buy Now Buttons”, Chapter 2, “Contribution
Payments – Donate Buttons”, Chapter 3, “Recurring Payments – Subscribe Buttons”,
and Chapter 4, “The PayPal Shopping Cart – Add to Cart and View Cart Buttons”.
Form Attributes – ACTION and METHOD
The FORM tag includes two required attributes, action and method, which always looks like
this:
<FORM action="https://www.paypal.com/cgi-bin/webscr" method="post">
IMPORTANT: Do not change these values.These attributes are required for all Buy Now
buttons, shopping cart buttons, and Donate buttons.
Hidden Input Variables
HTML input variables in a PayPal Website Payments Standard FORM are always hidden from
the payer’s view. They have the following general format:
<INPUT TYPE="hidden" name="variableName" value="allowedValue">
The variableName is any of the variables described in Appendix A, “HTML Variables for
Website Payments Standard,” and the allowedValue is any of the values detailed for those
variables.
HTML Form Basics for Website Payments Standard
Specifying the Website Payments Standard Product – cmd
11
226 June 2008 Website Payments Standard Integration Guide
Specifying the Website Payments Standard Product – cmd
The cmd variable is always required in a FORM. Its value determines which Website Payments
Standard checkout experience you are using to obtain payment.
The input tag looks like one of the following:
Buy Now buttons – <INPUT TYPE="hidden" name="cmd" value="_xclick">
Donate buttons – <INPUT TYPE="hidden" name="cmd" value="_donations">
Subscribe buttons – <INPUT TYPE="hidden" name="cmd" value="_xclick-
subscriptions">
Shopping cart buttons – <INPUT TYPE="hidden" name="cmd" value="_cart">
IMPORTANT: These INPUT tags are required exactly as shown above. Do not alter them.
Variations on Basic Variables
This section highlights some useful miscellaneous ideas about Website Payments Standard
FORM variables.
The HTML variables interact in various ways. Sometimes their effect is cumulative,
sometimes they can cancel each other out, sometimes a variable requires that you also set
another variable. These interactions are detailed in the descriptions of the variables in
Appendix A, “HTML Variables for Website Payments Standard” and Appendix B, “Address
Handling (U.S. Merchants Only).”
Record Keeping with Passthrough Variables
Some variables are exclusively for your own use, such as order management.PayPal returns
the values that you send through Instant Payment Notification exactly as you sent them. For
TABLE 11.1 Allowed Values for cmd Variable
Value of cmd Description
_xclick The button that the person clicked was a Buy Now button
_donations The button that the person clicked was a Donate button
_xclick-subscriptions The button that the person clicked was a Subscribe button.
_cart For shopping cart purchases; these additional variables specify the
kind of shopping cart button or command:
add – Add to Cart buttons
display – View Cart buttons
upload – The Cart Upload command
Website Payments Standard Integration Guide June 2008 227
HTML Form Basics for Website Payments Standard
Variations on Basic Variables
11
this reason, they are called passthrough variables. Their values are not recorded or used by
PayPal.
The following are passthrough variables:
custom
item_number or item_number_x
invoice
Setting the Character Set – charset
You can use the charset HTML variable to specify the character set or character encoding of
the data you collect in your website forms and send to PayPal. PayPal sends data to you in the
same character set or encoding you specify with the charset variable. For example, the
following INPUT tag sets the encoding to UTF-8:
<INPUT TYPE="hidden" name="charset" value="utf-8">
Setting The Return URL on Individual Transactions
With Auto Return turned on in your account profile, you can set the value of the return URL
on each individual transaction to override the value that you have stored on PayPal. For
example, you might want to return the payer’s browser to a URL on your site that is specific to
that payer, perhaps with a session ID or other transaction-related data included in the URL.
To set the return URL for a transaction, include the return variable in the HTML FORM:
<INPUT TYPE="hidden" NAME="return" value="URLspecificToThisTransaction">
TABLE 11.2 Character Sets and Encoding Schemes Supported by PayPal
Big5 (Traditional
Chinese in Taiwan)
EUC-JP
EUC-KR
EUC-TW
gb2312 (Simplified
Chinese)
gbk
HZ-GB-2312
(Traditional
Chinese in Hong
Kong)
ibm-862 (Hebrew
with European
characters)
ISO-2022-CN
ISO-2022-JP
ISO-2022-KR
ISO-8859-1
(Western
European
Languages)
ISO-8859-2
ISO-8859-3
ISO-8859-4
ISO-8859-5
ISO-8859-6
ISO-8859-7
ISO-8859-8
ISO-8859-9
ISO-8859-13
ISO-8859-15
KOI8-R
(Cyrillic)
Shift_JIS
UTF-7
UTF-8
UTF-16
UTF-16BE
UTF-16LE
UTF16_Platfor
mEndian
UTF16_Oppos
iteEndian
UTF-32
UTF-32BE
UTF-32LE
UTF32_Platfor
mEndian
UTF32_Oppos
iteEndian
US-ASCII
windows-1250
windows-1251
windows-1252
windows-1253
windows-1254
windows-1255
windows-1256
windows-1257
windows-1258
windows-874
(Thai)
windows-949
(Korean)
x-mac-greek
x-mac-turkish
x-mac-
centraleurroman
x-mac-cyrillic
ebcdic-cp-us
ibm-1047
HTML Form Basics for Website Payments Standard
Prepopulating FORMs
11
228 June 2008 Website Payments Standard Integration Guide
Desired Currency on Individual Transactions
Use the currency_code variable on individual transactions to specify the currency of the
payment:
<INPUT TYPE="hidden" NAME="currency_code" value="CurrencyCode">
The value of currency_code must be a code from Table 7.6, “Currencies Allowed for
Transactions and Balances,” on page 203.
NOTE: If the currency_code variable is not included, the currency USD is used.
Prepopulating FORMs
With Account Optional turned on in your account profile, you can accept payments from
people without a PayPal account. However, checking out with PayPal is often faster than
forcing people to re-enter information that is stored on PayPal. For repeat customers, it is to
your advantage to get people to sign up for their own PayPal accounts.
During a payment transaction, you can prepopulate a FORM by including HTML input
variables specifically for this purpose. A complete description of these variables is found in
“HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.
For a detailed description of how prepopulated forms and other settings affect the PayPal
billing and shipping addresses, see Appendix B, “Address Handling (U.S. Merchants Only).”
Sample HTML for FORM Prepopulation
The following sample HTML code shows the optional prepopulation fields with the required
variables in payment buttons. Your website dynamically generates the field entries from
information that your website gathered about the payer and includes the fields and their values
in the URL to which payers are sent when they click a payment button.
EXAMPLE 11.1 HTML Code for FORM Prepopulation
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="business" value="seller@designerfotos.com">
<input type="hidden" name="item_name" value="hat">
<input type="hidden" name="item_number" value="123">
<input type="hidden" name="amount" value="15.00">
<input type="hidden" name="first_name" value="John">
<input type="hidden" name="last_name" value="Doe">
<input type="hidden" name="address1" value="9 Elm Street">
<input type="hidden" name="address2" value="Apt 5">
<input type="hidden" name="city" value="Berwyn">
<input type="hidden" name="state" value="PA">
<input type="hidden" name="zip" value="19312">
<input type="hidden" name="night_phone_a" value="610">
Website Payments Standard Integration Guide June 2008 229
HTML Form Basics for Website Payments Standard
Overriding Addresses Stored With PayPal
11
<input type="hidden" name="night_phone_b" value="555">
<input type="hidden" name="night_phone_c" value="1234">
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif"
alt="PayPal - The safer, easier way to pay online">
</form>
Overriding Addresses Stored With PayPal
For people who already have PayPal accounts and whom you already prompted for a shipping
address before they choose to pay with PayPal, you can use the entered address instead of the
address the person has stored with PayPal. Set the address_override variable to 1, as in
the following example:
<INPUT TYPE="hidden" name="address_override" value="1">
You must also include FORM variables that contain the person’s address information, as
detailed in “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.”
The payer is shown the passed-in address but cannot edit it. No address is shown if the address
is not valid, such as missing required fields like country, or if the address is not included at all.
For a detailed description of how overriding the address and other settings affect the PayPal
billing and shipping addresses, see Appendix B, “Address Handling (U.S. Merchants Only).”
Sample HTML for Overriding Addresses Stored With PayPal
The following HTML code shows the address_override variable in conjunction with the
prepopulation variables for overriding a payer’s address that is stored with PayPal.
EXAMPLE 11.2 HTML for Overriding Addresses Stored With PayPal
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="seller@designerfotos.com">
<input type="hidden" name="item_name"
value="Memorex 256MB Memory Stick">
<input type="hidden" name="item_number" value="MEM32507725">
<input type="hidden" name="amount" value="3">
<input type="hidden" name="tax" value="1">
<input type="hidden" name="quantity" value="1">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="currency_code" value="USD">
<!-- Enable override of payer’s stored PayPal address. -->
<input type="hidden" name="address_override" value="1">
<!-- Set prepopulation variables to override stored address. -->
<input type="hidden" name="first_name" value="John">
HTML Form Basics for Website Payments Standard
Instant Payment Notification – notify_url
11
230 June 2008 Website Payments Standard Integration Guide
<input type="hidden" name="last_name" value="Doe">
<input type="hidden" name="address1" value="345 Lark Ave">
<input type="hidden" name="city" value="San Jose">
<input type="hidden" name="state" value="CA">
<input type="hidden" name="zip" value="95121">
<input type="hidden" name="country" value="US">
<input type="image" name="submit" border="0"
src="https://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif"
alt="PayPal - The safer, easier way to pay online">
</form>
Instant Payment Notification – notify_url
Instant Payment Notification consists of three parts:
1. Someone pays you.
2. PayPal POSTs FORM variables to a URL you specify that runs a program to process the
variables.
3. You validate the notification.
FIGURE 11.1 How IPN Works – Three General Steps
1. A payment or a refund triggers IPN. This payment can be via Website Payments Standard
FORMs or via the PayPal Web Services APIs for Express Checkout, MassPay, or
RefundTransaction. If the payment has a “Pending” status, you receive another IPN when
the payment clears, fails, or is denied.
Website Payments Standard Integration Guide June 2008 231
HTML Form Basics for Website Payments Standard
Instant Payment Notification – notify_url
11
2. PayPal posts HTML FORM variables to a program at a URL you specify. You can specify
this URL either in your account profile or with the notify_url variable on each
transaction. This post is the heart of IPN. Included in the notification is the payment
information, such as the payer’s name and the amount paid. All possible variables in IPN
posts are detailed in the Order Management Integration Guide.When your server receives a
notification, it must process the incoming data.
3. Your server must then validate the notification to ensure that it is legitimate. For details, see
the Order Management Integration Guide.
HTML Form Basics for Website Payments Standard
Instant Payment Notification – notify_url
11
232 June 2008 Website Payments Standard Integration Guide
A
Website Payments Standard Integration Guide June 2008 233
HTML Variables for Website
Payments Standard
This appendix provides reference information for all HTML variables supported for use with
Buy Now, Donation, Subscribe, Add to Cart, and View Cart buttons, as well as HTML
variables supported the Cart Upload command.
Read the following topics to learn about the kinds of HTML variables that you can use:
“Technical HTML Variables” on page 233
“HTML Variables for Individual Items” on page 234
“HTML Variables for Payment Transactions” on page 236
“HTML Variables for Shopping Carts” on page 238
“HTML Variables for Subscribe Buttons” on page 240
“HTML Variables for Displaying PayPal Checkout Pages” on page 245
“HTML Variables for Prepopulating PayPal Checkout Pages” on page 247
Technical HTML Variables
Technical HTML variables control how PayPal responds technically when people click Buy
Now, Donation, Subscribe, Add to Cart, and View Cart buttons or when third party or custom
carts initiate payment processing with the Cart Upload command.
TABLE A.1 Allowable Values for the cmd HTML Variable
Value of cmd Description
_xclick The button that the person clicked was a Buy Now button.
_donations The button that the person clicked was a Donate button.
_xclick-subscriptions The button that the person clicked was a Subscribe button.
_oe-gift-certificate The button that the person clicked was a Buy Gift Certificate button.
_cart For shopping cart purchases; these additional variables specify the
kind of shopping cart button that the person clicked:
add – Add to Cart buttons for the PayPal Shopping Cart
display – View Cart buttons for the PayPal Shopping Cart
upload – The Cart Upload command for third party carts
_s-xclick The button that the person clicked was protected from tampering by
using encryption.
HTML Variables for Website Payments Standard
HTML Variables for Individual Items
A
234 June 2008 Website Payments Standard Integration Guide
HTML Variables for Individual Items
HTML variables for individual items specify information about a product or service for Buy
Now and Add to Cart buttons, or they specify information about a contribution for Donate
buttons.
TABLE A.2 HTML Variables – Instant Payment Notification Control notify_url
Name Description
Required or
Optional
Character
Length
notify_url The URL to which PayPal posts information about the
transaction.
Optional 255
TABLE A.3 HTML Variables – Item Information
Name
Required
or
Optional Description
Character
Length
amount See
description.
The price or amount of the product, service, or contribution, not
including shipping, handling, or tax. If omitted from Buy Now or
Donate buttons, payers enter their own amount at the time of
payment.
Optional for Buy Now or Donate buttons
Required for Add to Cart buttons
item_name See
description.
Description of item. If omitted in Buy Now or Donate buttons,
payers enter their own name at the time of payment.
Optional for Buy Now or Donate buttons
Required for Add to Cart buttons
127
item_number Optional Pass-through variable for you to track product or service
purchased or the contribution made. The value you specify
passed back to you upon payment completion.
127
quantity Optional Number of items. If profile-based shipping rates are configured
with a basis of quantity, the sum of quantity values is used to
calculate the shipping charges for the transaction. PayPal
appends a sequence number to uniquely identify the item in the
PayPal Shopping Cart (e.g., quantity1, quantity2).
NOTE: The value for quantitymust be a positive integer. Null,
zero, or negative numbers are not allowed.
undefined_
quantity
Optional 1 – allows buyers to specify the quantity.
Optional for Buy Now buttons
Not allowed for Add to Cart buttons
1
Website Payments Standard Integration Guide June 2008 235
HTML Variables for Website Payments Standard
HTML Variables for Individual Items
A
weight Optional Weight of items. If profile-based shipping rates are configured
with a basis of weight, the sum of weight values is used to
calculate the shipping charges for the transaction.
weight_unit Optional The unit of measure if weight is specified. Allowable values:
lbs
kgs
The defaults is lbs.
on0 Optional First option field name. If omitted, no variable is passed back to
you. The os0 variable contains the corresponding value for the
label specified in this variable. For example, if on0 is size, os0
could be large.
64
on1 Optional Second option field name. If omitted, no variable is passed back
to you. The os1 variable contains the corresponding value for
the label specified in this variable. For example, if on1 is color
then os1 could be blue.
64
os0 Optional Option selected by the buyer from the first set of option values. If
this option is selected through a text box or radio button, each
value should be no more than 64 characters. If buyers enter this
value in a text field, there is a 200-character limit. If omitted, no
variable is passed back to you.
NOTE: on0 must also be defined set. For example, it could be
size.
64 or 200
See
description.
os1 Optional Option selected by the buyer from the Second set of option
values. If this option is selected through a text box or radio
button, each value should be no more than 64 characters. If
buyers enter this value in a text field, there is a 200-character
limit. If omitted, no variable is passed back to you.
NOTE: on1 must also be set. For example, it could be color.
64 or 200
See
description.
TABLE A.3 HTML Variables – Item Information
Name
Required
or
Optional Description
Character
Length
HTML Variables for Website Payments Standard
HTML Variables for Payment Transactions
A
236 June 2008 Website Payments Standard Integration Guide
HTML Variables for Payment Transactions
HTML variables for payment transactions provide information about entire transactions,
regardless of the individual items involved with the payment. You can use these variables with
Buy Now, Donation, and View Cart buttons.
TABLE A.4 HTML Variables for Payment Transactions
Name
Required
or
Optional Description
Character
Length
address_
override
Optional 1 – The address specified in prepopulation variables overrides
the PayPal member’s stored address. See Table A.9, “HTML
Variables for Prepopulating Checkout Pages With Payer
Information.” The payer is shown the passed-in address but
cannot edit it. No address is shown if the address is not valid,
such as missing required fields like country, or is not included at
all,.
1
currency_
code
Optional The currency of the payment. The default is USD.
For allowable values, see Table 7.6, “Currencies Allowed for
Transactions and Balances,” on page 203.
3
custom Optional Passthrough variable never presented to the payer.
Default – No variable is passed back to you.
256
handling Optional Handling charges. This is not quantity-specific. The same
handling cost applies, regardless of the number of items on the
order.
Default – No handling charges are included.
invoice Optional Passthrough variable you can use to identify your invoice
number for this purchase.
Default – No variable is passed back to you.
127
Website Payments Standard Integration Guide June 2008 237
HTML Variables for Website Payments Standard
HTML Variables for Payment Transactions
A
shipping Optional The cost of shipping this item, if you enabled the override of
automatic shipping calculations per transaction through your
Account Profile. If you specify shipping and shipping2 is
not defined, this flat amount is charged regardless of the quantity
of items purchased.
NOTE: If you use this variable, you do not need to set up
shipping rates in your Account Profile. However,
shipping rates you set up in your Profile take priority over
values specified with this variable, unless you select the
Override shipping methods per transaction
checkboxes in the shipping methods you defined; the
checkboxes are deselected by default. For more
information, see “Overriding Shipping Calculations
on Individual Transactions” on page 190.
Default – If profile-based shipping rates are configured, buyers
are charged an amount according to the shipping methods they
choose.
shipping2 Optional The cost of shipping each additional item. If omitted and profile-
based shipping rates are configured, buyers are charged an
amount according to the shipping methods they choose.
tax Optional Transaction-based tax override variable. Set this to a flat tax
amount to apply to the transaction regardless of the buyer’s
location. This value overrides any tax settings set in your account
profile. Default – Profile tax settings, if any, apply.
tax_cart Optional Cart-wide tax, overriding any individual item tax_x value
weight_cart Optional If profile-based shipping rates are configured with a basis of
weight, PayPal uses this value to calculate the shipping charges
for the transaction. This value overrides the weight values of
individual items.
weight_unit Optional The unit of measure if weight_cart is specified. Allowable
values:
lbs
kgs
The default value is lbs.
TABLE A.4 HTML Variables for Payment Transactions
Name
Required
or
Optional Description
Character
Length
HTML Variables for Website Payments Standard
HTML Variables for Shopping Carts
A
238 June 2008 Website Payments Standard Integration Guide
HTML Variables for Shopping Carts
HTML variables for shopping carts can be used with Add to Cart and View Cart buttons, as
well as with third party shopping carts or custom carts that initiate payment processing.
TABLE A.5 HTML Variables for Shopping Carts
Name
Required
or
Optional Description
Character
Length
add See
description
Add an item to the PayPal Shopping Cart.
This variable must be set as follows:
add=1
The alternative is the display=1 variable, which displays the
contents of the PayPal Shopping Cart to the buyer.
If both add and display are specified, display takes
precedence.
1
amount Required Price of the item or the total price of all items in the shopping
cart.
business Required Your PayPal ID or an email address associated with your PayPal
account. Email addresses must be confirmed.
display See
description.
Display the contents of the PayPal Shopping Cart to the buyer.
This variable must be set as follows:
display=1
The alternative is the add=1 variable, which adds an item to the
PayPal Shopping Cart.
If both add and display are specified, display takes
precedence.
1
handling_
cart
Optional Single handling fee to be charged cart-wide. If handling_cart
is used in multiple Add to Cart buttons, the handling_cart
value of the first item is used.
item_name Required Name of the item or a name for the entire Shopping Cart
Website Payments Standard Integration Guide June 2008 239
HTML Variables for Website Payments Standard
HTML Variables for Shopping Carts
A
paymentaction Optional Indicates whether the transaction is payment on a final sale or an
authorization for a final sale, to be captured later. Allowable
values:
sale
authorization
order
The default value is sale. Set the value to authorization to
place a hold on the PayPal account for the authorized amount.
Set the value to order to authorize the transaction without
placing a hold on the PayPal account.
For more information, see the Website Payments Pro Integration
Guide.
IMPORTANT: If you set paymentaction to order, you must
use the Authorization & Capture API to
authorize and capture the transaction payments.
The merchant tools on the PayPal websitel let
you capture payments only for authorizations,
not for orders.
upload See
description
Upload the contents of a third party shopping cart or a custom
shopping cart.
This variable must be set as follows:
upload=1
The alternatives are the add=1 variable and the display=1
variable, which are used with the PayPal Shopping Cart.
1
TABLE A.6 HTML Variables for Individual Items in Third Party Shopping Carts
Name
Required
or
Optional Description
Character
Length
amount_x Required Price of item #x. This is only required if you specify upload=1.
handling_x Optional The cost of handling for item #x.
item_name_x Required Name of item #x in the cart. Must be alphanumeric. 127
item_number_x Optional Passthrough variable for you to track order or other purchase.
Default – No variable is passed back to you.
127
on0_x Optional First option field name for item #x 64
on1_x Optional Second option field name for item #x. 64
TABLE A.5 HTML Variables for Shopping Carts
Name
Required
or
Optional Description
Character
Length
HTML Variables for Website Payments Standard
HTML Variables for Subscribe Buttons
A
240 June 2008 Website Payments Standard Integration Guide
HTML Variables for Subscribe Buttons
HTML variables for Subscribe buttons set the terms of subscriptions and their recurring
payments.
os0_x Optional First set of option value(s) for item #x. Requires that on0_x also
be set.
200
os1_x Optional Second set of option value(s) for item #x. Requires that on1_x
also be set.
200
quantity_x Optional Quantity of the item #x. If profile-based shipping rates are
configured with quantity as the basis, the sum of all
quantity_x values are used to calculate the shipping charges.
NOTE: The value of quantity_x must be a positive integer.
Null, zero, or negative numbers are not allowed.
shipping_x Optional The cost of shipping #x. This variable excludes the item from
automatic shipping calculations; the amount is added to the
shipping charges calculated automatically on other items in the
cart.
tax_x Optional The tax amount for item #x. This variable excludes the item from
automatic tax calculations; the amount is added to the taxes
calculated automatically on other items in the cart.
weight_x Optional The weight of item #x.
weight_unit Optional The unit of measure if weight_x is specified. Allowable values:
lbs
kgs
The default is lbs.
TABLE A.7 HTML Variables for Subscribe Buttons
Name
Required
or
Optional Description
Character
Length
business Required Your PayPal ID or an email address associated with your PayPal
account. Email addresses must be confirmed.
TABLE A.6 HTML Variables for Individual Items in Third Party Shopping Carts
Name
Required
or
Optional Description
Character
Length
Website Payments Standard Integration Guide June 2008 241
HTML Variables for Website Payments Standard
HTML Variables for Subscribe Buttons
A
item_name Optional Description of item being sold (maximum 127 characters). If you
are collecting aggregate payments, this can include a summary of
all items purchased, tracking numbers, or generic terms such as
“subscription.” If omitted, customer will see a field in which they
have the option of entering an Item Name
return Optional An internet URL where the user will be returned after
completing the payment. For example, a URL on your site that
hosts a “Information on your new subscription” page. If omitted,
users will be taken to the PayPal site
rm Optional Return URL behavior. If set to “1” and if a “return” value is
submitted, upon completion of the payment the buyer will be
sent back to the return URL using a GET method, and no
transaction variables will be submitted. If set to “2” and if a
“return” value is submitted, the buyer will be sent back to the
return URL using a POST method, to which all available
transaction variables will also be posted. If omitted or set to “0”,
GET methods will be used for all Buy Now, Donate, Subscribe,
and PayPal Shopping Cart transactions in which Instant Payment
Notification is not enabled. POST methods with variables will be
used for the rest
cancel_return Optional An internet URL where the user will be returned if payment is
cancelled. For example, a URL on your site which hosts a
“Payment Cancelled” page. If if omitted, users will be taken to
the PayPal site
a1 Optional Trial period 1 price. For a free trial period, specify 0.
p1 See
description.
Trial period 1 duration. Required if you specify a1. Specify an
integer value in the allowable range for the units of duration that
you specify with t1.
2
t1 See
description.
Trial period 1 units of duration. Required if you specify a1.
Allowable values:
D – for days; allowable range for p1 is 1 to 90
W – for weeks; allowable range for p1 is 1 to 52
M – for months; allowable range for p1 is 1 to 24
Y – for years; allowable range for p1 is 1 to 5
1
a2 Optional Trial period 2 price. Can be specified only if you also specify a1.
p2 See
description.
Trial period 2 duration. Required if you specify a2. Specify an
integer value in the allowable range for the units of duration that
you specify with t2.
2
TABLE A.7 HTML Variables for Subscribe Buttons
Name
Required
or
Optional Description
Character
Length
HTML Variables for Website Payments Standard
HTML Variables for Subscribe Buttons
A
242 June 2008 Website Payments Standard Integration Guide
t2 See
description.
Trial period 2 units of duration. Allowable values:
D – for days; allowable range for p2 is 1 to 90
W – for weeks; allowable range for p2 is 1 to 52
M – for months; allowable range for p2 is 1 to 24
Y – for years; allowable range for p2 is 1 to 5
1
a3 Required Regular subscription price.
p3 Required Subscription duration. Specify an integer value in the allowable
range for the units of duration that you specify with t3.
2
t3 Required Regular subscription units of duration. Allowable values:
D – for days; allowable range for p3 is 1 to 90
W – for weeks; allowable range for p3 is 1 to 52
M – for months; allowable range for p3 is 1 to 24
Y – for years; allowable range for p3 is 1 to 5
1
src Optional Recurring payments. Subscription payments recur unless
subscribers cancel their subscriptions before the end of the
current billing cycle or you limit the number of times that
payments recur with the value that you specify for srt.
Allowable values:
0 – subscription payments do not recur
1 – subscription payments recur
The default is 0.
1
srt Optional Recurring times. Number of times that subscription payments
recur. Specify an integer above 1. Valid only if you specify
src="1".
1
sra Optional Reattempt on failure. If a recurring payment fails, PayPal
attempts to collect the payment two more times before canceling
the subscription.
Allowable values:
0 – do not reattempt failed recurring payments
1 – reattempt failed recurring payments before canceling
The default is 0.
For more information, see “Reattempting Failed Recurring
Payments With Subscribe Buttons” on page 87.
1
no_shipping Optional Do not prompt payers for shipping address. For Subscribe
buttons, the only allowable values is 1 – do not prompt for an
address. You must always specify this variable with Subscribe
buttons.
1
TABLE A.7 HTML Variables for Subscribe Buttons
Name
Required
or
Optional Description
Character
Length
Website Payments Standard Integration Guide June 2008 243
HTML Variables for Website Payments Standard
HTML Variables for Subscribe Buttons
A
no_note Required Do not prompt payers to include a note with their payments.
Allowable values:
0 – provide a text box and prompt for the note
1 – hide the text box and the prompt
The default is 0.
1
cn Optional Label that appears above the note field. This value is not saved
and will not appear in any of your notifications. If omitted, no
variable will be passed back to you. The default is “Special
instructions (optional):”
30
custom Optional User-defined field which will be passed through the system and
returned to user in payment notification email. This field will not
be shown to your subscribers
255
invoice Optional User-defined field which must be unique with each subscription.
The invoice number will be shown to subscribers with the other
details of their transactions
127
usr_manage Optional Set to 1 to have PayPal generate usernames and initial
passwords for subscribers.
For more information, see “Generating Usernames and
Passwords With Subscribe Buttons” on page 85.
1
cs Optional Sets the background color of your checkout pages. If set to “1,”
the background color will be black. If omitted or set to “0” the
background color will be white
on0 Optional First option field name. If omitted, no variable will be passed
back to you
30
os0 Optional First set of option value(s). If this option is selected through a
text box (or radio button), each value should be no more than 30
characters. If this value is entered by the customer through a text
box, there is a 200-character limit. If omitted, no variable will be
passed back to you. “on0” must be defined in order for “os1” to
be recognized
See
description.
on1 Optional Second option field name. If omitted, no variable will be passed
back to you
30
os1 Optional Second set of option value(s). If this option is selected through a
text box (or radio button), each value should be no more than 30
characters. If this value is entered by the customer through a text
box, there is a 200-character limit. If omitted, no variable will be
passed back to you. “on1” must be defined in order for “os1” to
be recognized
See
description.
TABLE A.7 HTML Variables for Subscribe Buttons
Name
Required
or
Optional Description
Character
Length
HTML Variables for Website Payments Standard
HTML Variables for Subscribe Buttons
A
244 June 2008 Website Payments Standard Integration Guide
currency_code Optional The currency of prices for trial periods and the subscription. The
default is USD.
For allowable values, see Table 7.6, “Currencies Allowed for
Transactions and Balances,” on page 203.
3
modify Optional Modification behavior. Allowable values:
0 – allows subscribers to only create new subscriptions
1 – allows subscribers to modify their current subscriptions
or sign up for new ones
2 – allows subscribers to only modify their current
subscriptions
The default value is 0.
For more information, see “Working With Modify
Subscription Buttons” on page 81.
1
lc Optional The language of the login or sign-up page that subscribers see
when they click the Subscribe button. If unspecified, the
language is determined by a PayPal cookie in the subscriber’s
browser. If there is no PayPal cookie, the default language is U.S.
English.
For allowable values, see Appendix C, “Country Codes.”
2
page_style Optional The custom payment page style for checkout pages associated
with the payment button or email payment link.
Allowable values:
paypal – use the PayPal page style
primary – use the page style that you marked as primary in
your account profile
page_style_name – use the custom payment page style
from your account profile that has the specified name
The default is primary, if you added a custom payment page
style to your account profile. The default is paypal otherwise.
30
TABLE A.7 HTML Variables for Subscribe Buttons
Name
Required
or
Optional Description
Character
Length
Website Payments Standard Integration Guide June 2008 245
HTML Variables for Website Payments Standard
HTML Variables for Displaying PayPal Checkout Pages
A
HTML Variables for Displaying PayPal Checkout Pages
HTML variables for displaying PayPal checkout pages control how the pages appear and
function.
TABLE A.8 HTML Variables for Displaying PayPal Checkout Pages
Name
Required
or
Optional Description
Character
Length
cancel_
return
Optional A URL to which the payer’s browser is redirected if payment is
cancelled; for example, a URL on your website that displays a
“Payment Canceled” page.
Default – The browser is redirected to a PayPal web page.
1,024
cbt Optional Sets the text for the Continue button on the PayPal Payment
Complete page.
NOTE: The return variable must also be set.
60
cn Optional Label above the note field. This value is not saved and does not
appear in any of your notifications. If omitted, no variable is
passed back to you.
40
cpp_header_
image
Optional The image at the top left of the checkout page. The image’s
maximum size is 750 pixels wide by 90 pixels high. PayPal
recommends that you provide an image that is stored only on a
secure (https) server. For more information, see “Co-Branding
the PayPal Checkout Pages” on page 155.
No limit
cpp_
headerback_
color
Optional The background color for the header of the checkout page.
Valid value is case-insensitive six-character HTML hexadecimal
color code in ASCII.
6
cpp_
headerborder_
color
Optional The border color around the header of the checkout page. The
border is a 2-pixel perimeter around the header space, which has
a maximum size of 750 pixels wide by 90 pixels high.
Valid value is case-insensitive six-character HTML hexadecimal
color code in ASCII.
6
cpp_payflow_
color
Optional The background color for the checkout page below the header.
Valid value is case-insensitive six-character HTML hexadecimal
color code in ASCII.
NOTE: Background colors that conflict with PayPal’s error
messages are not allowed; in these cases, the default color
is white.
6
cs Optional The background color of the checkout page. Allowable values:
0 – background color is white
1 – background color is black
The default is 0.
1
HTML Variables for Website Payments Standard
HTML Variables for Displaying PayPal Checkout Pages
A
246 June 2008 Website Payments Standard Integration Guide
image_url Optional The URL of the 150x50-pixel image displayed as your logo in
the upper left corner of PayPal’s pages.
Default – Your business name, if you have a Business account, or
your email address, if you have Premier account.
1,024
no_note Optional Do not prompt payers to include a note with their payments.
Allowable values:
0 – provide a text box and prompt for the note
1 – hide the text box and the prompt
The default is 0.
1
no_shipping Optional Do not prompt payers for shipping address. Allowable values:
0 – prompt for an address, but do not require one
1 – do not prompt for an address
2 – prompt for an address, and require one
The default is 0.
1
page_style Optional The custom payment page style for checkout pages. Allowable
values:
paypal – use the PayPal page style
primary – use the page style that you marked as primary in
your account profile
page_style_name – use the custom payment page style
from your account profile that has the specified name
The default is primary if you added a custom payment page
style to your account profile. Otherwise, the default is paypal.
30
return Optional The URL to which the payer’s browser is redirected after
completing the payment; for example, a URL on your site that
displays a “Thank you for your payment” page.
Default – The browser is redirected to a PayPal web page.
1,024
rm Optional Return method. The FORM METHOD used to send data to the URL
specified by the return variable after payment completion.
Allowable values:
0 – all shopping cart transactions use the GET method
1 – the payer’s browser is redirected to the return URL by the
GET method, and no transaction variables are sent
2 – the payer’s browser is redirected to the return URL by the
POST method, and all transaction variables are also posted
The default is 0.
NOTE: The rm variable takes effect only if the return variable
is also set.
1
TABLE A.8 HTML Variables for Displaying PayPal Checkout Pages
Name
Required
or
Optional Description
Character
Length
Website Payments Standard Integration Guide June 2008 247
HTML Variables for Website Payments Standard
HTML Variables for Prepopulating PayPal Checkout Pages
A
HTML Variables for Prepopulating PayPal Checkout Pages
HTML variables for prepopulating PayPal checkout pages let you specify information about
the payer.
shopping_url Optional The URL on your site to which buyers will return when they
click Continue Shopping during purchase of merchant gift
certificates on PayPal. Valid only with Buy Gift Certificate
buttons.
255
TABLE A.9 HTML Variables for Prepopulating Checkout Pages With Payer Information
Name
Required
or
Optional Description
Character
Length
address1 Optional Street (1 of 2 fields) 100
address2 Optional Street (2 of 2 fields) 100
city Optional City 40
country Optional Sets shipping and billing country.
For allowable values, see Appendix C, “Country Codes.”
2
first_name Optional First name 32
last_name Optional Last name 64
lc Optional Sets the payer’s language for the billing information/log-in page
only. The default is US.
For allowable values, see Appendix C, “Country Codes.”
2
night_
phone_a
Optional The area code for U.S. phone numbers, or the country code for
phone numbers outside the U.S. This will prepopulate the payer’s
home phone number.
See
description.
night_
phone_b
Optional The three-digit prefix for U.S. phone numbers, or the entire
phone number for phone numbers outside the U.S., excluding
country code. This will prepopulate the payer’s home phone
number.
See
description.
night_
phone_c
Optional The four-digit phone number for U.S. phone numbers. This will
prepopulate the payer’s home phone number.
See
description.
state Optional State; use Official U.S. Postal Service Abbreviations. 2
TABLE A.8 HTML Variables for Displaying PayPal Checkout Pages
Name
Required
or
Optional Description
Character
Length
HTML Variables for Website Payments Standard
HTML Variables for Prepopulating PayPal Checkout Pages
A
248 June 2008 Website Payments Standard Integration Guide
zip Optional Postal code 32
TABLE A.9 HTML Variables for Prepopulating Checkout Pages With Payer Information
Name
Required
or
Optional Description
Character
Length
B
Website Payments Standard Integration Guide June 2008 249
Address Handling (U.S.
Merchants Only)
Various HTML variables and PayPal account settings determine whether people can change,
add, or override the billing and shipping addresses on PayPal checkout pages.
In the following diagram, the letters “A” through “E” represent endpoints for the influence that
HTML variables and account profile settings have on how PayPal handles billing and shipping
addresses during checkout.
TABLE B.1 HTML Variables and Account Profile Settings for Addresses
Variables or Settings
Is the address prepopulated? Use address variables to specify the buyer’s
address, which appears automatically on the
PayPal payment pages.
See “HTML Variables for Prepopulating
PayPal Checkout Pages” on page 247.
Allow override of payer’s stored address? Use the address_override variable.
See Appendix A, “HTML Variables for
Website Payments Standard.”
Require confirmed address? Use the Block payments from U.S. users who
do not provide a Confirmed Address account
profile setting.
See “Blocking Payments From U.S. Payers
Without a Confirmed Address” on page 195.
Prompt for shipping address? Use the no_shipping variable.
See “HTML Variables for Displaying PayPal
Checkout Pages” on page 245.”
Address Handling (U.S. Merchants Only)
Address Handling With PayPal Account Optional Turned On
B
250 June 2008 Website Payments Standard Integration Guide
FIGURE B.1 How HTML Variables and Profile Account Setting Affect Address Handling
Read these sections to learn about addresses handling at the endpoints of decision-making in
the diagram above:
Address Handling With PayPal Account Optional Turned On
Address Handling With PayPal Account Optional Turned Off
Address Handling With PayPal Account Optional Turned On
This section describes the billing and shipping address behavior during checkout when PayPal
Account Optional is turned on. With it turned on, people can pay by credit card without
signing up for PayPal accounts.
For more information, see “PayPal Account Optional” on page 163.
NOTE: The endpoint letters in this section refer to Figure B.1, “How HTML Variables and
Profile Account Setting Affect Address Handling” on page 250.
Endpoint A
The billing page displays the prepopulated address. If the buyer modifies the address and
attempts to submit the page, PayPal returns an error that the address cannot be modified. The
Website Payments Standard Integration Guide June 2008 251
Address Handling (U.S. Merchants Only)
Address Handling With PayPal Account Optional Turned On
B
Shipping Address on the Review Your Payment page displays this address. The buyer
cannot change the shipping address.
If the prepopulated address is bad, PayPal displays an error page indicating the buyer cannot
proceed with payment because the merchant provided an invalid address.
Endpoints B, C, and D
The billing page displays the prepopulated address. The buyer can modify the billing address.
The Shipping Address on the Review Your Payment page displays this address. The buyer
cannot change the shipping address.
If the prepopulated address is bad, PayPal prepopulates the billing page and the buyer can
modify it. There is no Shipping Address on the Review Your Payment page.
Endpoint E
The billing page displays the prepopulated address. The buyer can modify the billing address.
The Shipping Address on the Review Your Payment page displays the address from the
billing page. The buyer cannot change the shipping address. The shipping address always
matches the billing address, so modifications to the billing address updates the shipping
address.
If the prepopulated address is invalid, the billing page displays the address and the buyer can
modify it.
Endpoints F and H
The billing page displays the prepopulated address. The buyer can modify the billing address.
The Shipping Address on the Review Your Payment page displays the address from the
billing page. The buyer can change the shipping address.
If the prepopulated address is invalid, the billing page displays the address and the buyer can
modify it.
Endpoint G
The billing page displays the prepopulated address. The buyer can modify the billing address.
There is no Shipping Address on the Review Your Payment page.
Endpoint I
The Shipping Address on the Review Your Payment page displays the address from the
billing page. The buyer cannot change the shipping address. The shipping address should
always match the billing address, so if the user modifies the billing information and address,
the shipping address will be updated as well.
Address Handling (U.S. Merchants Only)
Address Handling With PayPal Account Optional Turned Off
B
252 June 2008 Website Payments Standard Integration Guide
Endpoints J and L
The Shipping Address on the Review Your Payment page displays the address from the
billing page. The buyer can change the shipping address.
Endpoint K
There is no Shipping Address on the Review Your Payment page.
Address Handling With PayPal Account Optional Turned Off
This section describes the billing and shipping address behavior during checkout when PayPal
Account Optional is turned off. When it is turned off, people without PayPal accounts must
sign up of a PayPal account before they complete their payments.
For more information, see “PayPal Account Optional” on page 163.
NOTE: The endpoint letters in this section refer to Figure B.1, “How HTML Variables and
Profile Account Setting Affect Address Handling” on page 250.
Endpoint A
If the prepopulated address is a confirmed address, the Shipping Address on the Review
Your Payment page displays the prepopulated address. The buyer cannot change the shipping
address.
If the prepopulated address is not confirmed, PayPal displays the Add Credit Card or Debit
Card page with the prepopulated address as the billing address. The page displays a message
that the address must match the one displayed on their statement. The Cancel button is
displayed if the merchant has provided a cancel_return URL.
Endpoints B, C, and D
The Shipping Address on the Review Your Payment page displays the prepopulated address.
The buyer cannot change the shipping address.
If the prepopulated address is invalid, the payment cannot be processed. PayPal displays an
error message.
Endpoint E
If the prepopulated address is a confirmed address, the Shipping Address on the Review
Your Payment page displays the prepopulated address. The buyer can select or add another
address. If the buyer selects Add New Address, PayPal displays the Add Credit Card or
Debit Card page.
Website Payments Standard Integration Guide June 2008 253
Address Handling (U.S. Merchants Only)
Address Handling With PayPal Account Optional Turned Off
B
If the prepopulated address is not a confirmed address or there is no confirmed address in the
profile, PayPal displays the Add Credit Card or Debit Card page with the address
prepopulated.
Endpoints F and H
The Shipping Address on the Review Your Payment page displays the prepopulated address.
The buyer can select or add another address.
If the prepopulated address is invalid, the address is dropped and the address in the profile is
displayed, if available. The buyer can select or add another address directly in the page.
Endpoints G and K
The Review Your Payment page does not contain a Shipping Address.
Endpoint I
If there is a confirmed address in the account, PayPal displays the Review Your Payment
page. The buyer can select another confirmed address or add another address. If the buyer
selects Add New Address, they are taken to the Add Credit Card or Debit Card page.
If there is not a confirmed address in the account, PayPal displays the Add Credit Card or
Debit Card page.
Endpoints J and L
The Shipping Address on the Review Your Payment page displays the buyer’s primary
address. The buyer can select another address or add another address directly in the page.
Address Handling (U.S. Merchants Only)
Address Handling With PayPal Account Optional Turned Off
B
254 June 2008 Website Payments Standard Integration Guide
C
Website Payments Standard Integration Guide June 2008 255
Country Codes
NOTE: This table lists country codes defined by ISO 3166-1.
Table 1: Country Codes
Country Code
AFGHANISTAN AF
ÅLAND ISLANDS AX
ALBANIA AL
ALGERIA DZ
AMERICAN SAMOA AS
ANDORRA AD
ANGOLA AO
ANGUILLA AI
ANTARCTICA AQ
ANTIGUA AND BAR-
BUDA
AG
ARGENTINA AR
ARMENIA AM
ARUBA AW
AUSTRALIA AU
AUSTRIA AT
AZERBAIJAN AZ
BAHAMAS BS
BAHRAIN BH
BANGLADESH BD
BARBADOS BB
Country Codes
C
256 June 2008 Website Payments Standard Integration Guide
BELARUS BY
BELGIUM BE
BELIZE BZ
BENIN BJ
BERMUDA BM
BHUTAN BT
BOLIVIA BO
BOSNIA AND HERZE-
GOVINA
BA
BOTSWANA BW
BOUVET ISLAND BV
BRAZIL BR
BRITISH INDIAN
OCEAN TERRITORY
IO
BRUNEI DARUSSALAM BN
BULGARIA BG
BURKINA FASO BF
BURUNDI BI
CAMBODIA KH
CAMEROON CM
CANADA CA
CAPE VERDE CV
CAYMAN ISLANDS KY
CENTRAL AFRICAN
REPUBLIC
CF
CHAD TD
CHILE CL
CHINA CN
Country Code
Website Payments Standard Integration Guide June 2008 257
Country Codes
C
CHRISTMAS ISLAND CX
COCOS (KEELING)
ISLANDS
CC
COLOMBIA CO
COMOROS KM
CONGO CG
CONGO, THE DEMO-
CRATIC REPUBLIC OF
THE
CD
COOK ISLANDS CK
COSTA RICA CR
COTE D'IVOIRE CI
CROATIA HR
CUBA CU
CYPRUS CY
CZECH REPUBLIC CZ
DENMARK DK
DJIBOUTI DJ
DOMINICA DM
DOMINICAN REPUBLIC DO
ECUADOR EC
EGYPT EG
EL SALVADOR SV
EQUATORIAL GUINEA GQ
ERITREA ER
ESTONIA EE
ETHIOPIA ET
Country Code
Country Codes
C
258 June 2008 Website Payments Standard Integration Guide
FALKLAND ISLANDS
(MALVINAS)
FK
FAROE ISLANDS FO
FIJI FJ
FINLAND FI
FRANCE FR
FRENCH GUIANA GF
FRENCH POLYNESIA PF
FRENCH SOUTHERN
TERRITORIES
TF
GABON GA
GAMBIA GM
GEORGIA GE
GERMANY DE
GHANA GH
GIBRALTAR GI
GREECE GR
GREENLAND GL
GRENADA GD
GUADELOUPE GP
GUAM GU
GUATEMALA GT
GUERNSEY GG
GUINEA GN
GUINEA-BISSAU GW
GUYANA GY
HAITI HT
Country Code
Website Payments Standard Integration Guide June 2008 259
Country Codes
C
HEARD ISLAND AND
MCDONALD ISLANDS
HM
HOLY SEE (VATICAN
CITY STATE)
VA
HONDURAS HN
HONG KONG HK
HUNGARY HU
ICELAND IS
INDIA IN
INDONESIA ID
IRAN, ISLAMIC REPUB-
LIC OF
IR
IRAQ IQ
IRELAND IE
ISLE OF MAN IM
ISRAEL IL
ITALY IT
JAMAICA JM
JAPAN JP
JERSEY JE
JORDAN JO
KAZAKHSTAN KZ
KENYA KE
KIRIBATI KI
KOREA, DEMOCRATIC
PEOPLE'S REPUBLIC OF
KP
KOREA, REPUBLIC OF KR
KUWAIT KW
Country Code
Country Codes
C
260 June 2008 Website Payments Standard Integration Guide
KYRGYZSTAN KG
LAO PEOPLE'S DEMO-
CRATIC REPUBLIC
LA
LATVIA LV
LEBANON LB
LESOTHO LS
LIBERIA LR
LIBYAN ARAB JAMA-
HIRIYA
LY
LIECHTENSTEIN LI
LITHUANIA LT
LUXEMBOURG LU
MACAO MO
MACEDONIA, THE
FORMER YUGOSLAV
REPUBLIC OF
MK
MADAGASCAR MG
MALAWI MW
MALAYSIA MY
MALDIVES MV
MALI ML
MALTA MT
MARSHALL ISLANDS MH
MARTINIQUE MQ
MAURITANIA MR
MAURITIUS MU
MAYOTTE YT
MEXICO MX
Country Code
Website Payments Standard Integration Guide June 2008 261
Country Codes
C
MICRONESIA, FEDER-
ATED STATES OF
FM
MOLDOVA, REPUBLIC
OF
MD
MONACO MC
MONGOLIA MN
MONTSERRAT MS
MOROCCO MA
MOZAMBIQUE MZ
MYANMAR MM
NAMIBIA NA
NAURU NR
NEPAL NP
NETHERLANDS NL
NETHERLANDS ANTI-
LLES
AN
NEW CALEDONIA NC
NEW ZEALAND NZ
NICARAGUA NI
NIGER NE
NIGERIA NG
NIUE NU
NORFOLK ISLAND NF
NORTHERN MARIANA
ISLANDS
MP
NORWAY NO
OMAN OM
PAKISTAN PK
Country Code
Country Codes
C
262 June 2008 Website Payments Standard Integration Guide
PALAU PW
PALESTINIAN TERRI-
TORY, OCCUPIED
PS
PANAMA PA
PAPUA NEW GUINEA PG
PARAGUAY PY
PERU PE
PHILIPPINES PH
PITCAIRN PN
POLAND PL
PORTUGAL PT
PUERTO RICO PR
QATAR QA
REUNION RE
ROMANIA RO
RUSSIAN FEDERATION RU
RWANDA RW
SAINT HELENA SH
SAINT KITTS AND
NEVIS
KN
SAINT LUCIA LC
SAINT PIERRE AND
MIQUELON
PM
SAINT VINCENT AND
THE GRENADINES
VC
SAMOA WS
SAN MARINO SM
Country Code
Website Payments Standard Integration Guide June 2008 263
Country Codes
C
SAO TOME AND PRINC-
IPE
ST
SAUDI ARABIA SA
SENEGAL SN
SERBIA AND MON-
TENEGRO
CS
SEYCHELLES SC
SIERRA LEONE SL
SINGAPORE SG
SLOVAKIA SK
SLOVENIA SI
SOLOMON ISLANDS SB
SOMALIA SO
SOUTH AFRICA ZA
SOUTH GEORGIA AND
THE SOUTH SANDWICH
ISLANDS
GS
SPAIN ES
SRI LANKA LK
SUDAN SD
SURINAME SR
SVALBARD AND JAN
MAYEN
SJ
SWAZILAND SZ
SWEDEN SE
SWITZERLAND CH
SYRIAN ARAB REPUB-
LIC
SY
Country Code
Country Codes
C
264 June 2008 Website Payments Standard Integration Guide
TAIWAN, PROVINCE OF
CHINA
TW
TAJIKISTAN TJ
TANZANIA, UNITED
REPUBLIC OF
TZ
THAILAND TH
TIMOR-LESTE TL
TOGO TG
TOKELAU TK
TONGA TO
TRINIDAD AND
TOBAGO
TT
TUNISIA TN
TURKEY TR
TURKMENISTAN TM
TURKS AND CAICOS
ISLANDS
TC
TUVALU TV
UGANDA UG
UKRAINE UA
UNITED ARAB EMIR-
ATES
AE
UNITED KINGDOM GB
UNITED STATES US
UNITED STATES MINOR
OUTLYING ISLANDS
UM
URUGUAY UY
UZBEKISTAN UZ
VANUATU VU
Country Code
Website Payments Standard Integration Guide June 2008 265
Country Codes
C
VENEZUELA VE
VIET NAM VN
VIRGIN ISLANDS, BRIT-
ISH
VG
VIRGIN ISLANDS, U.S. VI
WALLIS AND FUTUNA WF
WESTERN SAHARA EH
YEMEN YE
ZAMBIA ZM
ZIMBABWE ZW
Country Code
Country Codes
C
266 June 2008 Website Payments Standard Integration Guide
Website Payments Standard Integration Guide June 2008 267
Index
Symbols
_cart 131, 132, 141, 142, 143, 226, 228, 233
_donations 226, 233
_oe-gift-certificate 233
_s-xclick 233
_xclick 35, 226, 229, 233
_xclick-subscriptions 226, 233
A
Account Information 153
Account Optional 163, 228, 250
payer experience 163
account profile summary. See “Profile.”
add 131, 132, 238
Add to Cart buttons
button creation tool 122
address handling 250
address_override 229, 236
address1 228, 230, 247
address2 228, 247
amount 36, 131, 141, 228, 234, 238
amount_1 143
amount_x 142, 239
authorization 209
Authorization & Capture 209
Authorization Period 209
Auto Return 138, 159
enabling 160
payer experience 159
B
batch capture 211
blocking kinds of payments 194
business 35, 131, 132, 141, 142, 143, 228, 238
button creation tool
Add to Cart buttons 122
Buy Now buttons 26
Donate buttons 51, 80
PayPal Shopping Cart buttons 122
View Cart buttons 122
button encryption 83, 92, 146
Buy Now buttons
button creation tool 26
C
cancel_return 245
cbt 245
cert_id 151
character encoding 205
character set 205
chargebacks 197
charset 204, 227
city 228, 230, 247
cmd 35, 131, 132, 142, 143, 226, 228
cn 245
confirmation 159
confirmed addresses 196
contact telephone number 162
country 230, 247
cpp_header_image 245
cpp_headerback_color 245
cpp_headerborder_color 245
cpp_payflow_color 245
cs 245
Currency Balances 203
currency_code 36, 58, 131, 142, 228, 236
custom 227, 236
custom page style variables 245
D
display 238
Donate buttons
button creation tool 51, 80
donor experience 40
page sequence 40
downloadable history log 26, 50, 73, 122
Index
268 June 2008 Website Payments Standard Integration Guide
E
eChecks 197
encoding 205
Encrypted Website Payments 34, 56, 96, 97, 147
end of term 75, 79, 86
example
HTML for BUY Now 35, 58
HTML for individual items in shopping cart 142
HTML for overriding PayPal-stored shipping
address 229
shopping cart with aggregated item information 143
F
Financial Information 153
first_name 228, 229, 247
FORM ACTION and METHOD definitions 225
G
gif 157
H
handling 236
handling_cart 190, 193, 238
handling_x 142, 239
Honor Period 209
HTML
for aggregated shopping cart 143
for Buy Now button 35, 58
shopping cart with individual items 142
I
image_url 246
INPUT tag 226
Instant Payment Notification 147
Sandbox testing 223
invoice 227, 236
IPN. See “Instant Payment Notification.”
item_name 36, 131, 228, 234, 238
item_name_1 141, 143
item_name_x 239
item_number 36, 58, 131, 227, 228, 234
item_number_x 227, 239
J
jpg 157
L
language encoding 205
last_name 228, 230, 247
lc 247
M
METHOD 246
N
night_phone_a 228, 247
night_phone_b 229, 247
night_phone_c 229, 247
no_note 246
no_shipping 242, 246
notify_url 234
O
on0 36, 131, 235
on0_x 239
on1 235
on1_x 239
OpenSSL 149
order 209
os0 36, 131, 235
os0_x 240
os1 235
os1_x 240
overriding
page styles 158
PayPal-stored shipping address 229, 236
return URL on individual transactions 161, 227
tax calculations on individual transactions 177
P
page
payment confirmation page 159
page sequences
donate page sequence 40
Website Payments Standard Integration Guide June 2008 269
Index
PayPal Shopping Cart page sequence 110
page_style 157, 158, 159, 246
partial refund 221
passthrough variables, defined 227
Pay Anyone 197
payment confirmation page 159
Payment Data Transfer 24, 31, 48, 54, 95, 120, 127,
161, 223
Payment Receiving Preferences 194
paymentaction 209, 210, 239
PayPal Account Optional 250
PayPal Shopping Cart 141
button creation tool 122
page sequence 110
shopper experience 110
PEM 149
png 157
prepopulating PayPal FORMs 228
printable payment receipt page 159
private key 148
Profile
Account Information 153
Auto Return 160
Automatic shipping, handling, and tax
calculation 173
Custom Payment Pages 156
Financial Information 153
Shipping Calculations 191
public certificate 148
Q
quantity 234
allowing buyers to specify with Buy Now 32, 234
quantity_x 142, 240
R
receipts 159
refund 221
required variables for third party shopping cart 141
return 161, 227, 245, 246, 247
rm 246
S
sales tax 154
automatic calulation 172
overriding on individual transactions 142
setting for entire shopping cart 143
Seller Protection Policy 195, 196
Send Money 221
shipping 143, 190, 193, 237
overriding on individual transactions 185, 190
shipping calculations 138
shipping rates 154
shipping_x 142, 240
shipping2 143, 237
shipping2_x 142
shopping cart
third party carts 141
SPP. See “Seller Protection Policy.”
state 228, 230, 247
subscriptions
end of term 75, 79, 86
Subscriptions Password Management 14, 73, 85
T
tax 237
tax rates
domestic 174
international 174, 176
setting up 172
tax. See “sales tax.” 142
tax_cart 143, 237
tax_x 142, 143, 237, 240
taxes 172
Transaction Details 221
U
undefined_quantity 36, 234
upload 141, 239
example of individual item detail 142
UTF-8 227
V
variables
display information 245
for shopping carts 238
general format of 225
hidden 225
Index
270 June 2008 Website Payments Standard Integration Guide
individual items in shopping carts 239
item information 234
prepopulating PayPal FORMs 247
transaction information 236
VAT 172
verified members, defined 197
View Cart buttons
button creation tool 122
W
webscr 131, 132, 142, 143, 225, 228, 229
weight_cart 143
weight_unit 142, 143
weight_x 142, 143
X
X.509 148
Z
zip 228, 230, 248

More Related Content

PDF
website paymentsstandard_integrationguide
PDF
PayPal integration guide
PDF
PayPal Website Payments Standard Integration Guide
PDF
Pp merchantsetupadministrationguide
PDF
Implementation guidehtml
PDF
PDF
QuickBooks Support Phone Number 1844-722-6675
PDF
Pp website paymentsstandard_integrationguide
website paymentsstandard_integrationguide
PayPal integration guide
PayPal Website Payments Standard Integration Guide
Pp merchantsetupadministrationguide
Implementation guidehtml
QuickBooks Support Phone Number 1844-722-6675
Pp website paymentsstandard_integrationguide

Similar to Pp website paymentsstandard_integrationguide (20)

PDF
Pp website paymentsstandard_integrationguide
PDF
PayPal Website Payments Pro Payflow Edition Developer's Guide
PDF
Merch g cs
PDF
Pp Order Mgmt Integration Guide
PDF
PayPal Virtual Terminal User Guide
PDF
Preparing your business for global e commerce
PDF
QuickBooks Support Phone Number 1++==800++==976++==2560 Wyoming
PDF
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
PDF
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
PDF
quickBooks help number1-800-976-2560 QUickBooks point of sale customer suppor...
PDF
1++==800++==976++==2560 quickbooks enterprise support number &lt;>QuickBooks ...
PDF
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
PDF
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
PDF
1++==800++==976++==2560 quickbooks technical support number &lt;>QuickBooks ...
PDF
1++==800++==976++==2560 quickbooks enterprise technical support number &lt;>Q...
PDF
quickBooks help number1-800-976-2560 QUickBooks point of sale support phone n...
PDF
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
PDF
1800-@976-@2560 quickbooks help phone number
PDF
1++==800++==976++==2560 QUickBooks payroll customer support phone number &lt;...
PDF
QuickBooks Support Phone Number 1++==800++==976++==2560
Pp website paymentsstandard_integrationguide
PayPal Website Payments Pro Payflow Edition Developer's Guide
Merch g cs
Pp Order Mgmt Integration Guide
PayPal Virtual Terminal User Guide
Preparing your business for global e commerce
QuickBooks Support Phone Number 1++==800++==976++==2560 Wyoming
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
quickBooks help number1-800-976-2560 QUickBooks point of sale customer suppor...
1++==800++==976++==2560 quickbooks enterprise support number &lt;>QuickBooks ...
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
1++==800++==976++==2560 quickbooks technical support number &lt;>QuickBooks ...
1++==800++==976++==2560 quickbooks enterprise technical support number &lt;>Q...
quickBooks help number1-800-976-2560 QUickBooks point of sale support phone n...
quickBooks help number1-800-976-2560 QuickBooks Support Phone Number quickBoo...
1800-@976-@2560 quickbooks help phone number
1++==800++==976++==2560 QUickBooks payroll customer support phone number &lt;...
QuickBooks Support Phone Number 1++==800++==976++==2560
Ad

Recently uploaded (20)

PPTX
New Microsoft PowerPoint Presentation - Copy.pptx
PDF
Training And Development of Employee .pdf
PDF
Elevate Cleaning Efficiency Using Tallfly Hair Remover Roller Factory Expertise
PDF
Unit 1 Cost Accounting - Cost sheet
PPTX
Amazon (Business Studies) management studies
PPTX
CkgxkgxydkydyldylydlydyldlyddolydyoyyU2.pptx
PDF
Business model innovation report 2022.pdf
PDF
Outsourced Audit & Assurance in USA Why Globus Finanza is Your Trusted Choice
PDF
SIMNET Inc – 2023’s Most Trusted IT Services & Solution Provider
PDF
WRN_Investor_Presentation_August 2025.pdf
PPTX
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
PDF
Laughter Yoga Basic Learning Workshop Manual
PPTX
ICG2025_ICG 6th steering committee 30-8-24.pptx
PPTX
Probability Distribution, binomial distribution, poisson distribution
PPTX
Lecture (1)-Introduction.pptx business communication
PDF
Chapter 5_Foreign Exchange Market in .pdf
PPT
Data mining for business intelligence ch04 sharda
DOCX
Business Management - unit 1 and 2
PDF
Reconciliation AND MEMORANDUM RECONCILATION
PDF
Power and position in leadershipDOC-20250808-WA0011..pdf
New Microsoft PowerPoint Presentation - Copy.pptx
Training And Development of Employee .pdf
Elevate Cleaning Efficiency Using Tallfly Hair Remover Roller Factory Expertise
Unit 1 Cost Accounting - Cost sheet
Amazon (Business Studies) management studies
CkgxkgxydkydyldylydlydyldlyddolydyoyyU2.pptx
Business model innovation report 2022.pdf
Outsourced Audit & Assurance in USA Why Globus Finanza is Your Trusted Choice
SIMNET Inc – 2023’s Most Trusted IT Services & Solution Provider
WRN_Investor_Presentation_August 2025.pdf
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
Laughter Yoga Basic Learning Workshop Manual
ICG2025_ICG 6th steering committee 30-8-24.pptx
Probability Distribution, binomial distribution, poisson distribution
Lecture (1)-Introduction.pptx business communication
Chapter 5_Foreign Exchange Market in .pdf
Data mining for business intelligence ch04 sharda
Business Management - unit 1 and 2
Reconciliation AND MEMORANDUM RECONCILATION
Power and position in leadershipDOC-20250808-WA0011..pdf
Ad

Pp website paymentsstandard_integrationguide

  • 2. PayPal Website Payments Standard Integration Guide Document Number: 100000.en_US-200806 © 2008 PayPal, Inc. All rights reserved. PayPal is a registered trademark of PayPal, Inc. The PayPal logo is a trademark of PayPal, Inc. Other trademarks and brands are the property of their respective owners. The information in this document belongs to PayPal, Inc. It may not be used, reproduced or disclosed without the written approval of PayPal, Inc. Copyright © PayPal. All rights reserved. PayPal S.à r.l. et Cie, S.C.A., Société en Commandite par Actions. Registered office: 22-24 Boulevard Royal, L- 2449, Luxembourg, R.C.S. Luxembourg B 118 349 Consumer advisory: The PayPal™ payment service is regarded as a stored value facility under Singapore law. As such, it does not require the approval of the Monetary Authority of Singapore. You are advised to read the terms and conditions carefully. Notice of non-liability: PayPal, Inc. is providing the information in this document to you “AS-IS” with all faults. PayPal, Inc. makes no warranties of any kind (whether express, implied or statutory) with respect to the information contained herein. PayPal, Inc. assumes no liability for damages (whether direct or indirect), caused by errors or omissions, or resulting from the use of this document or the information contained in this document or resulting from the application or use of the product or service described herein. PayPal, Inc. reserves the right to make changes to any information herein without further notice.
  • 3. Website Payments Standard Integration Guide June 2008 3 Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 About This Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Where to Go for More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Documentation Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Chapter 1 Single-Item Payments – Buy Now Buttons . . . . . . . . .15 Getting Started With Buy Now Buttons. . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 The Checkout Experience With Buy Now Buttons . . . . . . . . . . . . . . . . . . . . . . 16 Begin – Buyers are Ready to Purchase Your Item on Your Website . . . . . . . . . . 17 1 – Buyers Enter Their Billing Information or They Log In to PayPal . . . . . . . . . . 18 2 – Buyers Confirm Their Transaction Details Before Paying . . . . . . . . . . . . . . 20 3 – Buyers View and Print Their PayPal Payment Confirmations . . . . . . . . . . . . 20 End – Buyers Receive Payment Authorization Notices by Email . . . . . . . . . . . . 22 Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Managing Buy Now Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Using Email Notices to Track Buy Now Transactions . . . . . . . . . . . . . . . . . . 24 Using Recent Activity to Track Buy Now Transactions . . . . . . . . . . . . . . . . . 25 Using Transaction History to Track Buy Now Transactions . . . . . . . . . . . . . . . 25 Using Downloadable History Logs to Track Buy Now Transactions . . . . . . . . . . . 26 Using Instant Payment Notification to Track Buy Now Transactions . . . . . . . . . . 26 Creating Advanced Buy Now Buttons on the PayPal Website. . . . . . . . . . . . . . . . 26 Buy Now Code for Payment Buttons and Email Payment Links. . . . . . . . . . . . . 26 Pages in the Button Creation Tool for Buy Now Buttons. . . . . . . . . . . . . . . . . 26 Specifying the Basic Features of the Buy Now Button. . . . . . . . . . . . . . . . . . 27 Adding More Details to the Buy Now Button. . . . . . . . . . . . . . . . . . . . . . . 30 Copying and Pasting the Buy Now Code . . . . . . . . . . . . . . . . . . . . . . . . 33 Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . . 35 Sample HTML Code for a Buy Now Button . . . . . . . . . . . . . . . . . . . . . . . . . 35 Sample URL Code for a Buy Now Email Payment Link . . . . . . . . . . . . . . . . . . . 37
  • 4. Contents 4 June 2008 Website Payments Standard Integration Guide Chapter 2 Contribution Payments – Donate Buttons . . . . . . . . . .39 Getting Started With Donate Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 The Checkout Experience With Donate Buttons. . . . . . . . . . . . . . . . . . . . . . . 40 Begin – Donors are Ready to Contribute on Your Website . . . . . . . . . . . . . . . 41 1 – Donors Enter Their Billing Information or They Log In to PayPal . . . . . . . . . . 42 2 – Donors Confirm Their Contribution Details Before Paying. . . . . . . . . . . . . . 44 3 – Donors View and Print Their PayPal Contribution Confirmations . . . . . . . . . . 44 End – Donors Receive Contribution Authorization Notices by Email . . . . . . . . . . 46 Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Managing Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Using Email Notices to Track Donate Transactions . . . . . . . . . . . . . . . . . . . 49 Using Recent Activity to Track Donate Transactions . . . . . . . . . . . . . . . . . . 49 Using Transaction History to Track Donate Transactions . . . . . . . . . . . . . . . . 50 Using Downloadable History Logs to Track Donate Transactions . . . . . . . . . . . . 50 Using Instant Payment Notification to Track Donate Transactions . . . . . . . . . . . 50 Creating Advanced Donate Buttons on the PayPal Website. . . . . . . . . . . . . . . . . 51 Donate Code for Payment Buttons and Email Payment Links. . . . . . . . . . . . . . 51 Pages in the Button Creation Tool for Donate Buttons . . . . . . . . . . . . . . . . . 51 Specifying the Basic Features of the Donate Button. . . . . . . . . . . . . . . . . . . 51 Adding More Details to the Donate button. . . . . . . . . . . . . . . . . . . . . . . . 53 Copying and Pasting the Donation Code . . . . . . . . . . . . . . . . . . . . . . . . 56 Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . . 57 Sample HTML Code for Donate Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Sample URL Code for Donate Email Payment Links . . . . . . . . . . . . . . . . . . . . 59 Chapter 3 Recurring Payments – Subscribe Buttons . . . . . . . . .61 Getting Started With Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 The Checkout Experience With Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . 63 Begin – Subscribers Are Ready to Sign Up on Your Website . . . . . . . . . . . . . . 64 1 – Subscribers Enter Their Billing Information or They Log In to PayPal. . . . . . . . 64 2 – Subscribers Confirm Their Subscription Details Before Signing Up . . . . . . . . . 67 3 – Subscribers View and Print Their Subscription Confirmations. . . . . . . . . . . . 68 End – Subscribers Receive Subscription Authorization Notices by Email. . . . . . . . 69 Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Managing Subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Tracking Subscription Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 How Billing Cycles and Recurring Payments Work . . . . . . . . . . . . . . . . . . . 74 Downloading Subscriber Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
  • 5. Website Payments Standard Integration Guide June 2008 5 Contents Canceling Individual Subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Canceling Multiple Subscriptions at One Time . . . . . . . . . . . . . . . . . . . . . 77 End of Term Messages Sent Through Instant Payment Notification. . . . . . . . . . . 79 Advanced Features of Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Offering Trial Periods and Introductory Rates With Subscribe Buttons . . . . . . . . . 80 Limiting the Number of Billing Cycles With Subscribe Buttons . . . . . . . . . . . . . 81 Working With Modify Subscription Buttons . . . . . . . . . . . . . . . . . . . . . . . 81 Working With Cancel Subscription Buttons . . . . . . . . . . . . . . . . . . . . . . . 84 Generating Usernames and Passwords With Subscribe Buttons . . . . . . . . . . . . 85 Reattempting Failed Recurring Payments With Subscribe Buttons . . . . . . . . . . . 87 Creating Advanced Subscribe Buttons on the PayPal Website . . . . . . . . . . . . . . . 88 Subscribe Code for Payment Buttons and Email Payment Links . . . . . . . . . . . . 88 Pages in the Button Creation Tool for Subscribe Buttons . . . . . . . . . . . . . . . . 89 Specifying The Basic Features of the Subscribe Button. . . . . . . . . . . . . . . . . 89 Adding More Details to the Subscribe Button . . . . . . . . . . . . . . . . . . . . . . 92 Copying and Pasting the Subscribe Code . . . . . . . . . . . . . . . . . . . . . . . . 95 Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . . 98 Sample HTML Code for Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . 98 Sample HTML Code for a Basic Subscribe Button . . . . . . . . . . . . . . . . . . . 98 Sample HTML Code for a Subscribe Button With Trial Periods . . . . . . . . . . . . . 99 Sample HTML Code for a Subscribe Button With Limits on Billing Cycles . . . . . . .100 Sample HTML Code for a Modify Subscription Button . . . . . . . . . . . . . . . . .101 Sample HTML Code for a Cancel Subscription Button . . . . . . . . . . . . . . . . .102 Sample HTML Code for a Subscribe Button With Password Management . . . . . . .103 Sample HTML Code for a Subscribe Button That Reattempts Payments . . . . . . . .103 Sample URL Code for Subscribe Email Payment Links . . . . . . . . . . . . . . . . . . .104 Chapter 4 The PayPal Shopping Cart – Add to Cart and View Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Getting Started With The PayPal Shopping Cart. . . . . . . . . . . . . . . . . . . . . . .107 Getting Started With Add To Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . .108 Getting Started With View Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . . .109 The Checkout Experience With the PayPal Shopping Cart . . . . . . . . . . . . . . . . .110 Begin – Shoppers Add Your Items to the PayPal Shopping Cart . . . . . . . . . . . .112 1 – Shoppers Enter Their Billing Information or They Log In To PayPal. . . . . . . . .113 2 – Shoppers Confirm Their Transaction Details Before Paying. . . . . . . . . . . . .115 3 – Shoppers View and Print Their PayPal Payment Confirmations . . . . . . . . . .115 End – Shoppers Receive Payment Authorization Notices by Email . . . . . . . . . . .117 Enhanced Checkout Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
  • 6. Contents 6 June 2008 Website Payments Standard Integration Guide Managing PayPal Shopping Cart Transactions . . . . . . . . . . . . . . . . . . . . . . .120 Using Email Notices to Track PayPal Shopping Cart Transactions . . . . . . . . . . .120 Using Recent Activity to Track PayPal Shopping Cart Transactions . . . . . . . . . .121 Using Transaction History to Track PayPal Shopping Cart Transactions . . . . . . . .121 Using Downloadable History Logs to Track PayPal Shopping Cart Transactions . . . .122 Using Instant Payment Notification to Track PayPal Shopping Cart Transactions . . .122 Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website. . . . . . . . .122 HTML Code for Add to Cart and View Cart Buttons . . . . . . . . . . . . . . . . . . .122 Pages in the Button Creation Tool for Add to Cart and View Cart Buttons . . . . . . .123 Pricing Items in Multiple Currencies . . . . . . . . . . . . . . . . . . . . . . . . . . .123 Specifying the Basic Features of the Add to Cart Button . . . . . . . . . . . . . . . .123 Adding More Details to the PayPal Shopping Cart Button. . . . . . . . . . . . . . . .125 Copying and Pasting the PayPal Shopping Cart HTML Code. . . . . . . . . . . . . .129 Avoiding Problems With Pasted HTML Code . . . . . . . . . . . . . . . . . . . . . .130 Sample HTML Code for Add to Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . .130 Sample HTML Code for View Cart Buttons . . . . . . . . . . . . . . . . . . . . . . . . .132 Chapter 5 Third-Party Shopping Carts – The Cart Upload Command 135 How A Third Party Shopping Cart Works . . . . . . . . . . . . . . . . . . . . . . . . . .135 What The Shopper Sees With Third Party Shopping Carts . . . . . . . . . . . . . . .135 What Merchants See . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140 Integrating PayPal with Third Party Shopping Carts . . . . . . . . . . . . . . . . . . . . .141 Required Third Party Shopping Cart Variables . . . . . . . . . . . . . . . . . . . . .141 Passing Individual Item Details to PayPal . . . . . . . . . . . . . . . . . . . . . . . .141 Setting the Tax for the Entire Cart . . . . . . . . . . . . . . . . . . . . . . . . . . . .143 Setting the Shipping Charge for the Entire Cart . . . . . . . . . . . . . . . . . . . . .143 Passing the Aggregate Shopping Cart Amount to PayPal. . . . . . . . . . . . . . . .143 Securing Your Shopping Cart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143 Chapter 6 Securing Your Website Payments Standard Buttons . . . 145 Creating an Encrypted Button on the PayPal Website. . . . . . . . . . . . . . . . . . . .146 Verifying Each Payment Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .146 Verifying Payments With Instant Payment Notification. . . . . . . . . . . . . . . . . . . .147 Encrypting Buttons Dynamically With Encrypted Website Payments . . . . . . . . . . . .147 Prerequisites for Using Encrypted Website Payments . . . . . . . . . . . . . . . . .148 Public Key Encryption Background . . . . . . . . . . . . . . . . . . . . . . . . . . .148 Setting Up The Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .148 Encrypting Your HTML Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151
  • 7. Website Payments Standard Integration Guide June 2008 7 Contents Blocking Non-encrypted Website Payments . . . . . . . . . . . . . . . . . . . . . . . . .152 Chapter 7 Using Your PayPal Account Profile . . . . . . . . . . . . 153 The Account Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153 Account Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153 Financial Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153 Selling Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154 Correspondence Between Profile Settings and HTML Variables . . . . . . . . . . . .154 Co-Branding the PayPal Checkout Pages . . . . . . . . . . . . . . . . . . . . . . . . . .155 Working With Custom Payment Pages . . . . . . . . . . . . . . . . . . . . . . . . .156 Adding or Editing a Page Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . .157 Making a Page Style Primary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158 Overriding Page Styles On Individual Payment Buttons. . . . . . . . . . . . . . . . .158 Overriding Co-Branding Options on Individual Payment Buttons . . . . . . . . . . . .159 Tailoring the Checkout Experience. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159 Auto Return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159 Getting Contact Telephone Numbers . . . . . . . . . . . . . . . . . . . . . . . . . .162 PayPal Account Optional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163 Automatic Calculation of Sales Tax . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172 Displaying the Sales Tax that PayPal Calculates During Checkout . . . . . . . . . . .173 Accessing Your Sales Tax Rates in Your Account Profile . . . . . . . . . . . . . . . .173 Setting Up Domestic Sales Tax Rates . . . . . . . . . . . . . . . . . . . . . . . . . .174 Setting Up International Sales Tax Rates . . . . . . . . . . . . . . . . . . . . . . . .176 Resolving Overlapping Sales Tax Rates. . . . . . . . . . . . . . . . . . . . . . . . .176 Editing or Deleting Sales Tax Rates . . . . . . . . . . . . . . . . . . . . . . . . . . .177 Overriding Sales Tax Calculations on Individual Transactions . . . . . . . . . . . . .177 Automatic Calculation of Shipping Charges (U.S. Merchants Only) . . . . . . . . . . . .177 Displaying the Shipping Charges that PayPal Calculates During Checkout. . . . . . .178 Shipping Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180 Shipping Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181 Shipping Rate Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181 Shipping Rate Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181 Shipping Rates and Currencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182 Adding Shipping Rates for the First Time . . . . . . . . . . . . . . . . . . . . . . . .182 Adding Shipping Methods by Using a Wizard . . . . . . . . . . . . . . . . . . . . . .183 Viewing, Editing, and Adding Shipping Rates . . . . . . . . . . . . . . . . . . . . . .185 Viewing the Configuration of an Existing Shipping Method . . . . . . . . . . . . . . .187 Editing the Configuration Settings of an Existing Shipping Method . . . . . . . . . . .187 Deleting Shipping Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188
  • 8. Contents 8 June 2008 Website Payments Standard Integration Guide Examples of Rate Bases and Shipping Calculations . . . . . . . . . . . . . . . . . .189 Overriding Shipping Calculations on Individual Transactions . . . . . . . . . . . . . .190 Automatic Calculation of Shipping Charges (non-U.S. Merchants Only) . . . . . . . . . .191 Examples of Cost Methods and Shipping Calculations . . . . . . . . . . . . . . . . .192 Overriding Shipping Calculation on Individual Transactions. . . . . . . . . . . . . . .193 Blocking Certain Kinds of Payments . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194 Accessing Your Payment Receiving Preferences to Block Payments . . . . . . . . . .194 Blocking Payments From U.S. Payers Without a Confirmed Address. . . . . . . . . .195 Blocking Payments in Currencies That You Do Not Hold . . . . . . . . . . . . . . . .196 Blocking Payments from Payers With Non-U.S. PayPal Accounts . . . . . . . . . . .196 Blocking Payments Initiated Through the Pay Anyone Subtab . . . . . . . . . . . . .197 Blocking Payments by Credit Card Instead of Bank Account . . . . . . . . . . . . . .197 Blocking Payments Funded With eChecks . . . . . . . . . . . . . . . . . . . . . . .197 Adding Your Credit Card Statement Name. . . . . . . . . . . . . . . . . . . . . . . . . .197 Allowing Multiple Users to Access Your PayPal Account . . . . . . . . . . . . . . . . . .199 Adding a User Login to Your Account . . . . . . . . . . . . . . . . . . . . . . . . . .199 Changing the Privileges for a User Login . . . . . . . . . . . . . . . . . . . . . . . .200 Resetting the Password for a User Login . . . . . . . . . . . . . . . . . . . . . . . .201 Removing a User Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202 Handling Multiple Currencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202 Managing Currency Balances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .203 Accepting or Denying Cross-Currency Payments . . . . . . . . . . . . . . . . . . . .204 Language Encoding Your Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204 About Language Encoding for Exchanging Data With PayPal . . . . . . . . . . . . .204 Changing Your Default Language Encoding. . . . . . . . . . . . . . . . . . . . . . .205 Chapter 8 Using Authorization & Capture . . . . . . . . . . . . . . 209 Basic Authorization Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .209 Honor Period and Authorization Period . . . . . . . . . . . . . . . . . . . . . . . . .209 Basic Authorization & Capture Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . .210 Capturing A Single Authorization . . . . . . . . . . . . . . . . . . . . . . . . . . . .211 Batch Capturing Multiple Authorizations. . . . . . . . . . . . . . . . . . . . . . . . .211 Voiding an Authorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212 Capture Within 3 Days. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213 Capture From 4 - 29 Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213 One Authorization, Multiple Captures, and a Refund . . . . . . . . . . . . . . . . . .214 Lower Capture Amount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215 Capture Up to 115% . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216 Authorization Expires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217
  • 9. Website Payments Standard Integration Guide June 2008 9 Contents Void . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218 Reattempted Capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .219 Recommendations for Best Use of Authorization & Capture . . . . . . . . . . . . . . . .220 Capturing Funds on Basic Authorizations . . . . . . . . . . . . . . . . . . . . . . . .220 Buyer Approval for Basic Authorizations. . . . . . . . . . . . . . . . . . . . . . . . .220 Voiding Basic Authorizations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220 Chapter 9 Issuing Refunds . . . . . . . . . . . . . . . . . . . . . . 221 Refunding Within 60 Days of Payment. . . . . . . . . . . . . . . . . . . . . . . . . . . .221 Refunding After 60 Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221 Chapter 10 Testing Payment Buttons in the PayPal Sandbox . . . . . 223 Chapter 11 HTML Form Basics for Website Payments Standard . . . 225 Form Attributes – ACTION and METHOD . . . . . . . . . . . . . . . . . . . . . . . . . .225 Hidden Input Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225 Specifying the Website Payments Standard Product – cmd . . . . . . . . . . . . . . . . .226 Variations on Basic Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .226 Record Keeping with Passthrough Variables . . . . . . . . . . . . . . . . . . . . . .226 Setting the Character Set – charset . . . . . . . . . . . . . . . . . . . . . . . . . . .227 Setting The Return URL on Individual Transactions. . . . . . . . . . . . . . . . . . .227 Desired Currency on Individual Transactions . . . . . . . . . . . . . . . . . . . . . .228 Prepopulating FORMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228 Sample HTML for FORM Prepopulation. . . . . . . . . . . . . . . . . . . . . . . . .228 Overriding Addresses Stored With PayPal. . . . . . . . . . . . . . . . . . . . . . . . . .229 Sample HTML for Overriding Addresses Stored With PayPal . . . . . . . . . . . . . .229 Instant Payment Notification – notify_url . . . . . . . . . . . . . . . . . . . . . . . . . . .230 Appendix A HTML Variables for Website Payments Standard . . . . . 233 Technical HTML Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233 HTML Variables for Individual Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . .234 HTML Variables for Payment Transactions . . . . . . . . . . . . . . . . . . . . . . . . .236 HTML Variables for Shopping Carts . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238 HTML Variables for Subscribe Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . .240 HTML Variables for Displaying PayPal Checkout Pages . . . . . . . . . . . . . . . . . .245 HTML Variables for Prepopulating PayPal Checkout Pages. . . . . . . . . . . . . . . . .247
  • 10. Contents 10 June 2008 Website Payments Standard Integration Guide Appendix B Address Handling (U.S. Merchants Only) . . . . . . . . . 249 Address Handling With PayPal Account Optional Turned On . . . . . . . . . . . . . . . .250 Endpoint A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250 Endpoints B, C, and D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251 Endpoint E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251 Endpoints F and H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251 Endpoint G. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251 Endpoint I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251 Endpoints J and L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252 Endpoint K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252 Address Handling With PayPal Account Optional Turned Off . . . . . . . . . . . . . . . .252 Endpoint A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252 Endpoints B, C, and D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252 Endpoint E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252 Endpoints F and H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253 Endpoints G and K. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253 Endpoint I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253 Endpoints J and L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253 Appendix C Country Codes . . . . . . . . . . . . . . . . . . . . . . 255 Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
  • 11. Website Payments Standard Integration Guide June 2008 11 P Preface About This Guide The Website Payments Standard Integration Guide describes how to integrate your website with PayPal by using HTML buttons and forms. Website Payments Standard lets you accept payments for: Single-item purchases with Buy Now buttons – Sell from websites that offer single or mutually exclusive products. Multiple-item purchases with Add to Cart and View Cart buttons – Sell from online stores with catalogs and shopping carts. Contribution payments with Donate buttons – Raising financial support for any cause. Recurring bills with Subscribe buttons – Collect membership dues, set up installment plans, and offer other subscription services. The following table summarizes the contents of this guide. TABLE P.1 Summary of the Contents of This Guide Feature Description See Buy Now Buttons Accept payments for single items. Chapter 1, “Single-Item Payments – Buy Now Buttons” Donate Buttons Accept donation and contribution payments. Chapter 2, “Contribution Payments – Donate Buttons” Subscribe Buttons Accept recurring payments for membership dues, installment plans, and other subscription services. Chapter 3, “Recurring Payments – Subscribe Buttons” The PayPal Shopping Cart Accept payments for multiple items at one time. Chapter 4, “The PayPal Shopping Cart – Add to Cart and View Cart Buttons” Third-Party Shopping Carts Develop a third-party shopping cart that is compatible with PayPal and Website Payments Standard. Chapter 5, “Third-Party Shopping Carts – The Cart Upload Command” Button Protection and Encrypted Website Payments Protect against fraudulent payments by protecting the code in your payment buttons with the encryption setting when you create buttons on the PayPal website or with Encrypted Website Payments when you write or generate payment buttons yourself. Chapter 6, “Securing Your Website Payments Standard Buttons”
  • 12. Preface About This Guide P 12 June 2008 Website Payments Standard Integration Guide Automatic Calculation of Sales Tax Specify tax rates that PayPal uses to calculate taxes automatically. “Automatic Calculation of Sales Tax” on page 172 Automatic Calculation of Shipping Charges Specify shipping rates that PayPal uses to calculate shipping charges automatically. “Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177 – or – “Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191 Custom Payment Pages Brand the PayPal checkout pages with your own logo and colors. “Co-Branding the PayPal Checkout Pages” on page 155 PayPal Account Optional Let people pay by credit card without having to sign up for a PayPal account. “PayPal Account Optional” on page 163 Auto Return Redirect people to your website automatically after they pay you on PayPal. “Auto Return” on page 159 Payer Contact Telephone Prompt people for their contact telephone numbers when they pay you on Paypal. “Getting Contact Telephone Numbers” on page 162 Multi-User Access Create separate user names for your account with different permission levels. “Allowing Multiple Users to Access Your PayPal Account” on page 199 Authorization & Capture Authorize payments during checkout, and capture payment amounts or portions of them later. Chapter 8, “Using Authorization & Capture” Refunds Refund entire payments or portions of them. Chapter 9, “Issuing Refunds” TABLE P.1 Summary of the Contents of This Guide Feature Description See
  • 13. Website Payments Standard Integration Guide June 2008 13 Preface Intended Audience P Intended Audience This guide is for: Merchants and developers who want to understand: – The checkout experiences that people go through when they make payments with Website Payments Standard payment buttons – How account profile settings affect the way that Website Payments Standard works Developers who want to learn how to implement Website Payments Standard Revision History The following table lists the revisions made to the Website Payments Standard Integration Guide. TABLE P.2 Revision History for This Guide Date Published Description June 2008 Added chapter on Subscribe buttons; see Chapter 3, “Recurring Payments – Subscribe Buttons.” Added chapter on Third-Party Shopping Carts; see Chapter 5, “Third-Party Shopping Carts – The Cart Upload Command.” March 2008 Changes to definition of authorization honor periods; see “Honor Period and Authorization Period” on page 209.” January 2008 Separate checkout experience and command for Donate buttons; see Chapter 2, “Contribution Payments – Donate Buttons.” August 2007 Shipping calculations with tiered rates in different destination regions; see “Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177. May 2007 Added information on securing buttons; see Chapter 6, “Securing Your Website Payments Standard Buttons.” April 2007 Added Appendix B, “Address Handling (U.S. Merchants Only).” October 2006 Minor clarifications. August 2006 New PayPal Shopping Cart variable, shopping_url The value _ext-enter of the cmd variable for FORM prepoulation is now no longer necessary. Clarification of values for the rm variable – 0, 1, or 2; not the strings "GET" or "POST". July 2006 Added information on how to use PayPal Authorization & Capture with Website Payments Standard, including how to capture multiple authorizations in batches on the PayPal website; see Chapter 8, “Using Authorization & Capture.”
  • 14. Preface Where to Go for More Information P 14 June 2008 Website Payments Standard Integration Guide Where to Go for More Information Merchant Gift Certificates Guide Order Management Integration Guide Sandbox User Guide Password Management Installation Guide Documentation Feedback Help us improve this guide by sending feedback to: documentationfeedback@paypal.com March 2006 Miscellaneous minor corrections. Expanded description of creating Encrypted Website Payments buttons. TABLE P.2 Revision History for This Guide Date Published Description
  • 15. Website Payments Standard Integration Guide June 2008 15 1 Single-Item Payments – Buy Now Buttons Use Buy Now buttons to accept single-item purchase payments. A Buy Now button can sell one or more units of a single item. Make additional Buy Now buttons for additional items that you want to sell. Read the following topics to learn more about Buy Now buttons: “Getting Started With Buy Now Buttons” on page 15 “The Checkout Experience With Buy Now Buttons” on page 16 “Managing Buy Now Transactions” on page 24 “Creating Advanced Buy Now Buttons on the PayPal Website” on page 26 “Sample HTML Code for a Buy Now Button” on page 35 “Sample URL Code for a Buy Now Email Payment Link” on page 37 Getting Started With Buy Now Buttons The easiest way to add a Buy Now button to your website is by using the button creation tool on the PayPal website. As soon as you add the button, you can begin accepting payments on your website. To add a basic Buy Now button to your website: 1. Log in to your PayPal account at https://www.paypal.com.
  • 16. Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 16 June 2008 Website Payments Standard Integration Guide 2. Click the Merchant Services tab. The Tools for existing PayPal merchants page opens. 3. Click the Buy Now Button link. The Buy Now buttons page opens. 4. Enter the details of your item. – Item name/service – Enter the name of the item or service that you wish to sell. – Price – (optional) Enter a fixed price for your item. If you leave the field blank, buyers “name their own price” after they click the Buy Now button. IMPORTANT: PayPal recommends that you enter a price so that you collect an appropriate amount for the item. 5. Scroll to the bottom of the page, and click the Create Button Now button. The Add a Buy Now button to your website page displays the generated code. 6. Click the HTML code for Websites text box to select all of the generated HTML code. 7. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 8. In your web editing tool, open the webpage where you want the button to be seen. IMPORTANT: Be sure that your tool is ready for you to paste HTML code. 9. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. The Checkout Experience With Buy Now Buttons This section demonstrates the PayPal checkout experience for people who click Buy Now buttons on your website. The following diagram illustrates the steps.
  • 17. Website Payments Standard Integration Guide June 2008 17 Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 FIGURE 1.1 The Checkout Experience with Buy Now Buttons Read these topics to better understand the checkout experience with Buy Now buttons: “Begin – Buyers are Ready to Purchase Your Item on Your Website” on page 17 “1 – Buyers Enter Their Billing Information or They Log In to PayPal” on page 18 “2 – Buyers Confirm Their Transaction Details Before Paying” on page 20 “3 – Buyers View and Print Their PayPal Payment Confirmations” on page 20 “End – Buyers Receive Payment Authorization Notices by Email” on page 22 “Enhanced Checkout Experiences” on page 23 Begin – Buyers are Ready to Purchase Your Item on Your Website The basic checkout experience with Buy Now begins when someone on your website is ready to purchase your item.
  • 18. Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 18 June 2008 Website Payments Standard Integration Guide FIGURE 1.2 Buyers Begin on Your Website When They Are Ready To Buy Your Item In this example, Steve begins on Herschel’s Hot Sauce website and decides to try a bottle. He clicks the Buy Now button for a single 12 oz. bottle to checkout. 1 – Buyers Enter Their Billing Information or They Log In to PayPal PayPal displays a billing information/log-in page, which lets buyers enter their credit card information or log in to PayPal to pay.
  • 19. Website Payments Standard Integration Guide June 2008 19 Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 FIGURE 1.3 Buyers Enter Their Billinng information or Log In to PayPal For Buy Now buttons, the PayPal billing information/log-in page shows transaction details near the top, such as item name and transaction subtotal. If buyers are satisfied with the details, they enter their billing information and email addresses to pay by credit card. Buyers with PayPal accounts enter their email addresses and passwords to pay with their PayPal accounts. In this case, Steve is satisfied with the total transaction amount of $5.95 USD. He enters his billing information and email address, and then he clicks the Review Order and Continue button.
  • 20. Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 20 June 2008 Website Payments Standard Integration Guide 2 – Buyers Confirm Their Transaction Details Before Paying PayPal displays a transaction confirmation page to let buyers confirm the details before they complete their transactions and authorize their payments. FIGURE 1.4 Buyers Confirm Their Payment Details Before Paying In this case, Steve reviews the transaction details and clicks the Pay $5.95 Now button to complete the transaction and make his payment. 3 – Buyers View and Print Their PayPal Payment Confirmations PayPal displays a payment confirmation page after buyers pay to let them know that they have completed their transactions and authorized their payments successfully.
  • 21. Website Payments Standard Integration Guide June 2008 21 Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 FIGURE 1.5 Buyers View Their Payment Confirmations From the payment confirmation page, buyers can: View the PayPal Receipt ID – the transaction ID – to reconcile their payments. Click the View Printable Receipt link to print receipts for their records. FIGURE 1.6 Buyers Print Their PayPal Payment Receipts In this case, Steve prints the PayPal payment receipt for his records.
  • 22. Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 22 June 2008 Website Payments Standard Integration Guide End – Buyers Receive Payment Authorization Notices by Email PayPal sends buyers a payment authorization notice by email to confirm the transaction that they made with the merchant. FIGURE 1.7 Buyers Receive Payment Authorization Notices by Email In this case, PayPal sends Steve an email message notifying him of his transaction with Herschel’s Hot Sauce and his authorization for payment of $5.95 USD.
  • 23. Website Payments Standard Integration Guide June 2008 23 Single-Item Payments – Buy Now Buttons The Checkout Experience With Buy Now Buttons 1 Enhanced Checkout Experiences Website Payments Standard offers these features to enhance the basic checkout experience for your buyers: Calculating Tax and Shipping Amounts Co-Branding the Checkout Pages with Your Logo and Colors Prepopulating the Checkout Pages With Billing and Shipping Addresses Returning People to Your Website After They Check Out Calculating Tax and Shipping Amounts The basic checkout experience requires tax and shipping amounts to be included in your item price. Set up tax rates and shipping rates in your account profile to enhance the checkout experience for buyers so that they can see tax and shipping costs separately. When people check out, PayPal calculates tax and shipping automatically and includes the amounts in the transaction total. You can specify tax and shipping rates in your account profile, and PayPal calculates the charges automatically for each transaction. In addition, you can specify tax and shipping charges individually for items in the payment buttons that you create. For more information, see: “Automatic Calculation of Sales Tax” on page 172 “Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177 “Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191 Co-Branding the Checkout Pages with Your Logo and Colors The basic checkout experience displays your email address or your business name in the upper left corner of the checkout pages. Use any of the following techniques to enhance the checkout experience with your logo and colors, so that the checkout pages match more closely the style of your website. Set up custom payment pages in your account profile Include a page style variable on individual buttons. Include customizing of payment page variables on individual buttons To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155. Prepopulating the Checkout Pages With Billing and Shipping Addresses The basic checkout experience has forms for filling in billing and shipping information. You can enhance the checkout experience by prepopulating the forms with information that you have on your website about the buyer. To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.
  • 24. Single-Item Payments – Buy Now Buttons Managing Buy Now Transactions 1 24 June 2008 Website Payments Standard Integration Guide Returning People to Your Website After They Check Out The basic checkout experience leaves people on the PayPal website after they check out. Use one of the following techniques to enhance the checkout experience so that people return to your website, instead. Return URL – Let people return to a page on your website if they click a return link or button on the PayPal payment confirmation page. To learn more, see Step 3 of “Adding More Details to the Buy Now Button” on page 30 or “HTML Variables for Displaying PayPal Checkout Pages” on page 245. Auto Return – Have PayPal return people automatically to page on your website. IMPORTANT: PayPal recommends that you turn Payment Data Transfer on when you turn Auto Return on. With Auto Return on, PayPal redirects people to your website from an alternative PayPal payment confirmation page that does not display a View Printable Receipt link, so people cannot print PayPal payment receipts. Payment Data Transfer provides the transaction information that you need to let people print receipts from your website. To learn more, see “Auto Return” on page 159. Payment Data Transfer – PayPal includes information about the completed transaction when you use a return URL or Auto Return to send people back to your website. Use the information to display a “thank you, print your receipt” page on your website. To learn more, see the Order Management Integration Guide. Managing Buy Now Transactions Read the following topics to learn how PayPal helps you manage Buy Now transactions: Using Email Notices to Track Buy Now Transactions Using Recent Activity to Track Buy Now Transactions Using Transaction History to Track Buy Now Transactions Using Downloadable History Logs to Track Buy Now Transactions Using Instant Payment Notification to Track Buy Now Transactions Using Email Notices to Track Buy Now Transactions PayPal sends you email notices when: Payments are made. Payments are pending. Payments are canceled. Generally, PayPal sends email notices to the primary email address of your account.
  • 25. Website Payments Standard Integration Guide June 2008 25 Single-Item Payments – Buy Now Buttons Managing Buy Now Transactions 1 PayPal can send email notices to an alternate email address, such as to someone in your organization who handles order processing or accounting. Add the additional email address to your account profile. Then, use that email address as the one to receive payments when you use the button creation tool on the PayPal website. Specify the alternate email address as the value for the business HTML variable when you write the HTML code yourself. For more information, see Step 6 in the instructions for “Adding More Details to the Buy Now Button” on page 30, or Appendix A, “HTML Variables for Website Payments Standard.” Using Recent Activity to Track Buy Now Transactions PayPal displays Buy Now transactions in your recent activity, soon after buyers complete their transactions by clicking Buy Now buttons on your website. FIGURE 1.8 Using Recent Activity to Track Buy Now Transactions To view your recent history: 1. Log in to you PayPal account. 2. Navigate to My Account > Overview. The My Account Overview opens. 3. Scroll down to the Recent Activity table near the bottom of the page. Using Transaction History to Track Buy Now Transactions PayPal lets you search for Buy Now transactions on the History page. The status of payments found there can be: Completed – Transactions were successful, and funds were credited to your account Cleared – Payments cleared senders’ accounts, and funds were credited to your account Uncleared – Payments have not cleared sender’s accounts, and funds were not credited To learn how to work with transaction history, see the Order Management Integration Guide.
  • 26. Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 26 June 2008 Website Payments Standard Integration Guide Using Downloadable History Logs to Track Buy Now Transactions PayPal lets you download your Buy Now transactions to your computer from the History page. You can specify a date range for the transactions and the file format of the download file. To learn how to work with downloadable history logs, see the Order Management Integration Guide. Using Instant Payment Notification to Track Buy Now Transactions PayPal lets your web server receive messages about Buy Now transactions and payment activity on your account. If you activate Instant Payment Notification, PayPal sends messages when: Payments are first made, with a status of completed or pending. Payments clear, fail, or are denied, if the initial status was pending. To learn more about Instant Payment Notification, see “Instant Payment Notification – notify_url” on page 230 and the Order Management Integration Guide. Creating Advanced Buy Now Buttons on the PayPal Website You can use the button creation tool on the PayPal website to create Buy Now buttons, including buttons with these advanced features: Buyer-specified quantities Tax and shipping options Option fields Custom payment pages Notes and special instructions from buyers Buy Now Code for Payment Buttons and Email Payment Links When you create Donate buttons with the button creation tool, PayPal generates HTML code for payment buttons. Copy and paste the HTML code for payment buttons onto the pages of your website. In addition, PayPal can generate URL code for email payment links. Copy and paste the URL code for email payment links into email templates messages. If your web editing tool or your service provider does not permit you to add HTML code to your pages, you may be able to paste the URL code for email payment links onto your webpages, instead. Pages in the Button Creation Tool for Buy Now Buttons The button creation tool for Buy Now buttons has three pages:
  • 27. Website Payments Standard Integration Guide June 2008 27 Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 Buy Now buttons – the initial page to specify the required and most often used optional features Buy Now buttons – Page 2 – an optional page to specify additional, advanced features Add a Buy Now button to your website – the final page that has the generated code for your payment button You can switch between the first and second pages until you click the Create Button Now button to display the third page that has the generated code. Specifying the Basic Features of the Buy Now Button To create code for a Buy Now button or email payment link by using a tool on the PayPal website: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the Merchant Services tab. 3. Click the Buy Now Button link. The Buy Now buttons page opens. 4. Enter the details of your item. – Item name/service – Enter the name of the item or service that you wish to sell. If you do not enter anything in this field, buyers can fill it in at the time of purchase. PayPal recommends entering an item name to make it easier for you to ship the order. – Item ID/number – (optional) Enter the inventory ID or tracking number of your item. The value that you enter is displayed to buyers at the time of payment, and it is displayed in the transaction details that both by merchants and buyers can view on the PayPal website. – Price – (optional) Enter a fixed price for your item. If you leave the field blank, buyers “name their own price” after they click the Buy Now button. IMPORTANT: PayPal recommends that you enter an a price so that you collect an appropriate amount for the item. – Currency – From the dropdown menu, select the currency in which you priced the item or in which you want the prices that buyers name to be denominated. The dropdown menu automatically selects the currency of your primary balance. – Buyer’s default country – From the dropdown menu, select a country for the PayPal log-in or sign-up page that buyers see when they click the button. The content on the page will be appropriate for the country you select. Buyers can change the country that you select, after the log-in or sign-up page appears. 5. Choose a button style for your Buy Now button. Select the radio button next to the image that you want to use, if you are going to be accepting payments from your website instead of using an email payment link. Button
  • 28. Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 28 June 2008 Website Payments Standard Integration Guide images that read “Pay Now” are suitable if you accept payments for single services instead of single goods. The image that you select is hosted by PayPal. To display your own image that is hosted on your website: – Click the Use your own button image link. An additional radio button and text box appear. – In the Button Image URL text box, enter the URL of your button image. If your image is hosted securely, change the entry to begin with https//. 6. Specify whether to use button encryption. – Select the Yes radio button to encrypt the generated code for the payment button. – or – – Select the No radio button to leave the generated code for the payment button and the email payment link as clear text. PayPal highly recommends that you use button encryption to protect the HTML code of your payment button. Encryption protects payment details from fraudulent alteration by third parties, thus increasing the security of the payments you accept. However, consider the limitations that encryption imposes: – Encrypted HTML code does not support option fields, which you can specify on the Buy Now buttons – Page 2 page. Select the No radio button if you want to add option fields to your Buy Now button. – Encrypted HTML code cannot be edited. Select the No radio button if you want to edit the HTML code for your button after the code is generated.
  • 29. Website Payments Standard Integration Guide June 2008 29 Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 – Encrypted HTML code cannot be used for email payment links. Select the No radio button if you want to create an email payment link instead of or in addition to your button. If you select the No radio button for any reason, use an alternative strategy described in Chapter 6, “Securing Your Website Payments Standard Buttons” to secure the payments you receive from the payment button or the email payment link. IMPORTANT: Merchants with significant payment volume are required to take precautions on securing Website Payment Standard buttons. 7. Specify a shipping method option. – Select the Use my shipping calculations radio button if you set up shipping rates for your account and you want the shipping charges for the item to be calculated automatically. – or – – Select the Use a flat rate amount radio button if you have not set up shipping rates for your account or you want to exclude the item from automatic calculation of shipping charges. In the text box, enter a fixed amount that will be added to the shipping charges for purchases that include the item. Enter zero (0.00) for items that do not incur shipping charges. The currency for the amount that you enter is the same as the currency for the item. For more information, see “Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177 or “Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191. 8. Specify a sales tax option. – Select the Use my sales tax calculations radio button if you set up tax rates for your account and you want taxes on the item to be calculated automatically. – or – – Select the Use a flat rate amount radio button if you have not set up sales tax calculations for your account or you want to exclude the item from automatic calculation of taxes. In the text box, enter a fixed amount that will be added to the taxes for purchases that include the item. Enter zero (0.00) for non-taxable items. The currency for the amount that you enter is the same as the currency for the item. For more information, see “Automatic Calculation of Sales Tax” on page 172. 9. If you have additional details to specify for your button, such as option fields or a custom payment page style that has your own logo and colors, click the Add More Options button and follow the instructions for “Adding More Details to the Buy Now Button” on page 30. – or – If you entered all the details and options for your button, go to “Copying and Pasting the Buy Now Code” on page 33.
  • 30. Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 30 June 2008 Website Payments Standard Integration Guide Adding More Details to the Buy Now Button Use the Buy Now buttons – Page 2 page to specify the following additional details for your button. 1. Add option fields to your button. Option fields lets buyers select or specify options when they purchase the item, such as color or size. Options must not change the price of the item. Buy Now buttons can have one or two option fields. You can use a dropdown menu, with choices that you specify, or a text box, in which buyers type their option choice. – Option Field Type – Select either “drop-down menu” or “text box” as the type of option field. – Option Name – Enter the name of your option, for example, “Size” or “Color”. Enter no more than 60 characters. – Drop-Down Menu Choices – (if applicable) If you selected “drop-down menu” as the type of option field, enter the menu choices. Choices cannot exceed 30 characters. Use a carriage return (press ENTER) to separate choices. Enter no more than 10 choices. IMPORTANT: Option fields cannot be used if you are creating an email payment link. To include Buy Now links in email messages for items with options, either send HTML emails with links to Buy Now buttons on your website that have option fields, or ask buyers to enter the option information in the Note field. 2. Customize your payment pages. Use these settings to give donors a visually seamless payment experience by customizing the PayPal payment pages to match the visual style of your website. – Primary Page Style – (display only) The payment pages that your donors see are displayed with the page style that is specified here, unless you select a different custom payment page style below. – Custom Payment Page Style – (optional) If you already added Custom Payment Page Styles in your account profile, they are listed here. Choose the page style that you would like to appear when buyers click your Buy Now button. To learn more about creating page styles, see “Co-Branding the PayPal Checkout Pages” on page 155. – Preview – Click the Preview button to see a mock-up of the payment page style that donors see when they click your Buy Now button.
  • 31. Website Payments Standard Integration Guide June 2008 31 Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 3. Customize your buyer’s experience. Use these settings to give buyers a payment experience that is easy to navigate. – Successful Payment URL – (optional) Do one of the following: Enter the URL of a page on your website that you want buyers redirected to after they complete their payments. The URL that you enter is used by this payment button only. Click the Edit button to change the return URL that this button and all your other payment buttons use to redirect buyers to your website after they complete their payments. For more information, see “Auto Return” on page 159. – Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off for all your payment buttons. For more information about Payment Data Transfer, see the Order Management Integration Guide. – Cancel Payment URL – (optional) Enter the URL for the page on your website that you want buyers redirected to if they cancel their payments at any point before completing the checkout. If you do not enter a URL, buyers who cancel are taken to a PayPal webpage. The URL that you enter is used by this payment button only.
  • 32. Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 32 June 2008 Website Payments Standard Integration Guide 4. Select your quantity and shipping preferences. Use these settings to control how many units of the item you want to let buyers and how you collect shipping addresses from buyers. – Select the Yes radio button to let buyers purchase more than one unit of the item or service when they click the Buy Now button that you are creating. If you leave the No radio button selected, buyers can purchase only a single unit of the item when they click the Buy Now button. – Select the radio button that matches your need to collect shipping addresses from buyers: Make shipping optional – Select this radio button if you want to prompt buyers to enter their shipping addresses as an option. – or – Yes, require shipping – Select this radio button if you want to require buyers to enter their shipping addresses. – or – No shipping needed – Select this radio button if the product does not require shipping, such as a digital good that buyers download, or if the item is a service that does not require on-site delivery.
  • 33. Website Payments Standard Integration Guide June 2008 33 Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 5. Collect customer notes and special instructions from buyers. Use these settings to prompt buyers to enter notes or special handling instructions. – Select the Yes radio button if you want buyers to enter notes to you when they make their payments. If you leave the No radio button selected, buyers cannot include notes. – Note Title – If you selected the Yes radio button, change the default value for the field label to prompt buyers for specific information, such as their customer IDs or special handling instructions. Enter no more than 30 characters. 6. Select an email address to receive payment. (optional) In the Email Address dropdown menu, select the email address through which you want to receive payments when people click the payment button that you are creating. The dropdown menu selects your primary email address by default. You might select the email address of the person in your organization who handles order fulfillment or accounting. All payments are deposited to your PayPal account balance, regardless of which email addresses receive particular payments. Only confirmed email addresses can be used to receive payments. 7. If you want to change any of the details that you entered on the previous page, click the Edit button and follow the instructions for “Specifying the Basic Features of the Buy Now Button” on page 27, beginning with Step 4. – or – If you have entered all the details and options for your button, go to “Copying and Pasting the Buy Now Code” on page 33. Copying and Pasting the Buy Now Code After you enter the details and options that you want for your Buy Now button, click the Create Button Now button. PayPal generates Buy Now code for: a payment button, which you can paste onto your website an email payment link, which you can paste into email
  • 34. Single-Item Payments – Buy Now Buttons Creating Advanced Buy Now Buttons on the PayPal Website 1 34 June 2008 Website Payments Standard Integration Guide The Add a Buy Now button to your website page displays the generated code. Copying and Pasting the HTML Code for the Buy Now Button To copy and paste the HTML code for the Buy Now payment button: 1. Click the HTML code for Websites text box to select all of the generated HTML code. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. In your web editing tool, open the webpage where you want the button to be seen. 4. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Copying and Pasting the Code for the Buy Now Email Payment Link PayPal does not generate code for email payment links if you select the Yes radio button in the Button Encryption section on the first page of the button creation tool. To turn button encryption off, return to the first page and click the No radio button in the Button Encryption section. Then click the Create Button Now button again. NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment links. Secure the payments you receive from email payment links by using an alternative method that does not involve encryption, as described in Chapter 6, “Securing Your Website Payments Standard Buttons.” To copy and paste the code for the Buy Now email payment link: 1. Click the Link for Emails text box to select all of the generated URL code. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. Open the email template or message that you want to send. 4. Paste the text that you copied from the clipboard into your email, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste.
  • 35. Website Payments Standard Integration Guide June 2008 35 Single-Item Payments – Buy Now Buttons Sample HTML Code for a Buy Now Button 1 Creating More Buy Now Buttons After you copy and paste the Buy Now code, you can create another Buy Now button for a different item. Scroll to the bottom of the Add a Buy Now button to your website page and click the Create Another Button button. Then follow the instructions for “Specifying the Basic Features of the Buy Now Button” on page 27, beginning with Step 4. The pages of the button creation tool retain the options that you previously specified. Avoiding Problems With Pasted HTML Code After you paste the code into your webpage or email, ensure that it matches exactly the code that you copied from PayPal. Pasted code may not match the generated code for the following reasons: You did not copy all of the generated code. Your editing tool may have special areas for pasting HTML code and other areas for pasting URLs and display text. Be sure you paste the generated code into a field that accepts HTML code or URLs. Your editing tool might change some characters in the pasted code. Sample HTML Code for a Buy Now Button You can write your own HTML code for Buy Now buttons. To protect against malicious users tampering with the HTML code for your Buy Now buttons and submitting fraudulent payments, see Chapter 6, “Securing Your Website Payments Standard Buttons.” IMPORTANT: Merchants with significant payment volume are required to take precautions on securing Website Payment Standard buttons. You can use the following HTML code as a starting point for writing your own HTML code for Buy Now buttons.The value for the business variable must match a confirmed email address on file with your PayPal account. You can change the values for other variables, with the exception of cmd. EXAMPLE 1.1 HTML For a Buy Now Button <form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="seller@hatsgalore.com"> <!-- Specify a Buy Now button. --> <input type="hidden" name="cmd" value="_xclick"> <!-- Specify details about the item that buyers will purchase. -->
  • 36. Single-Item Payments – Buy Now Buttons Sample HTML Code for a Buy Now Button 1 36 June 2008 Website Payments Standard Integration Guide <input type="hidden" name="item_name" value="Baseball Hat"> <input type="hidden" name="item_number" value="12345"> <input type=”hidden” name="amount” value=”12.95”> <input type="hidden" name="currency_code" value="USD"> <!-- Allow buyers to enter their desired quantities. --> <input type="hidden" name="undefined_quantity" value="1"> <!-- Provide the buyer with a dropdown menu option field. --> <table> <tr> <td> <input type="hidden" name="on0" value="Size">Size </td> <td> <select name="os0"> <option value="Select a Size">Select a Size</option> <option value="Small">Small</option> <option value="Medium">Medium</option> <option value="Large">Large</option> </select> </td> </tr> </table> <!-- Require a shipping address from the buyer during checkout. --> <input type="hidden" name="no_shipping" value="2"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> The sample code above produces the following result: Paste the code onto your webpage below an image or a text description of the item.
  • 37. Website Payments Standard Integration Guide June 2008 37 Single-Item Payments – Buy Now Buttons Sample URL Code for a Buy Now Email Payment Link 1 Sample URL Code for a Buy Now Email Payment Link You can write your own URL code for Buy Now email payment links. The same variables and values that you include in HTML code for Buy Now buttons can be used in Buy Now email payment links. Separate the variables and their values from each other with ampersands (&). Do not enclose values in quotation marks; use plus signs (+) as substitutes for spaces in values, if needed. NOTE: You cannot include variables for option fields in email payment links. You can use the following URL as a starting point for writing your own URL for Buy Now email payment links.The value for the business variable must match a confirmed email address on file with your PayPal account. You can change the values for other variables, with the exception of _xclick. EXAMPLE 1.2 URL for a Buy Now Email Payment Link https://www.paypal.com/cgi- bin/webscr?cmd=_xclick&business=seller@hatsgalore.com&item_name=Baseball+Ha t&item_number=12345&amount=12%2e95&currency_code=USD
  • 38. Single-Item Payments – Buy Now Buttons Sample URL Code for a Buy Now Email Payment Link 1 38 June 2008 Website Payments Standard Integration Guide
  • 39. Website Payments Standard Integration Guide June 2008 39 2 Contribution Payments – Donate Buttons Use Donate buttons to collect contribution payments. Donate buttons let you collect pre- determined amounts or amounts entered by donors. Read the following topics to learn more about Donate buttons: “Getting Started With Donate Buttons” on page 39 “The Checkout Experience With Donate Buttons” on page 40 “Managing Contributions” on page 49 “Creating Advanced Donate Buttons on the PayPal Website” on page 51 “Sample HTML Code for Donate Buttons” on page 57 “Sample URL Code for Donate Email Payment Links” on page 59 Getting Started With Donate Buttons The easiest way to add a Donate button to your website is by using the button creation tool on the PayPal website. As soon as you add the button, you can begin accepting contribution payments on your website. To add a basic Donate button to your website that lets donors enter their own contribution amount: 1. Log in to your PayPal account at https://www.paypal.com.
  • 40. Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 40 June 2008 Website Payments Standard Integration Guide 2. Click the Merchant Services tab. The Tools for existing PayPal merchants page opens. 3. Under the Create Buttons heading, click the Donate link. The Donations page opens. 4. Enter the donation details of your button. – Donation name/service – Enter the reason for the donation or the name of your organization. If you do not enter anything in this field, your donors can complete this field. 5. Scroll to the bottom of the page, and click the Create Button Now button. The Add a Donate button to your website page displays the generated code. 6. Click the HTML code for Websites text box to select all of the generated HTML code. 7. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 8. In your web editing tool, open the webpage where you want the button to be seen. IMPORTANT: Be sure that your tool is ready for you to paste HTML code. 9. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. The Checkout Experience With Donate Buttons This section demonstrates the PayPal checkout experience for people who click Donate buttons on your website. The following diagram illustrates the steps.
  • 41. Website Payments Standard Integration Guide June 2008 41 Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 FIGURE 2.1 The Checkout Experience with Donate Buttons Read these topics to better understand the checkout experience with Donate buttons: “Begin – Donors are Ready to Contribute on Your Website” on page 41 “1 – Donors Enter Their Billing Information or They Log In to PayPal” on page 42 “2 – Donors Confirm Their Contribution Details Before Paying” on page 44 “3 – Donors View and Print Their PayPal Contribution Confirmations” on page 44 “End – Donors Receive Contribution Authorization Notices by Email” on page 46 “Enhanced Checkout Experiences” on page 47 Begin – Donors are Ready to Contribute on Your Website The basic checkout experience with Donate buttons begins when someone on your website is ready to contribute.
  • 42. Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 42 June 2008 Website Payments Standard Integration Guide FIGURE 2.2 Donors Begin on Your Website When They Are Ready to Contribute In this example, Mary begins on the website of her favorite cause and wants to contribute to the Fall Cleanup Campaign. Mary clicks the Donate button to checkout. 1 – Donors Enter Their Billing Information or They Log In to PayPal PayPal displays a billing information/log-in page, which lets donors enter their credit card information or log in to PayPal to pay.
  • 43. Website Payments Standard Integration Guide June 2008 43 Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 FIGURE 2.3 Donors Enter Their Billinng information or Log In to PayPal For Donate buttons, the PayPal billing information/log-in page shows transaction details near the top, such as the name of the contribution and the contribution total. If donors are satisfied with the details, they enter their billing information and email addresses to contribute by credit card. Donors with PayPal accounts enter their email addresses and passwords to contribute with their PayPal accounts. In this case, Mary is satisfied with her contribution to Friends of the Park in the amount of $25.00 USD. She enters her billing information and email address, and then she clicks the Review Order and Continue button.
  • 44. Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 44 June 2008 Website Payments Standard Integration Guide 2 – Donors Confirm Their Contribution Details Before Paying PayPal displays a transaction confirmation page to let donors confirm the details before they complete their transactions and authorize their payments. FIGURE 2.4 Donors Confirm Their Contribution Details Before Paying In this case, Mary reviews the transaction details clicks the Donate $25.00 USD Now button to complete the transaction and make her payment. 3 – Donors View and Print Their PayPal Contribution Confirmations PayPal displays a payment confirmation page after donors pay to let them know that they have made their contributions successfully.
  • 45. Website Payments Standard Integration Guide June 2008 45 Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 FIGURE 2.5 Donors View Their Donation Confirmations From the payment confirmation page, donors can: View the PayPal Confirmation number – the transaction ID – to reconcile their payments. Click the View Printable Receipt link to print receipts for their records.
  • 46. Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 46 June 2008 Website Payments Standard Integration Guide FIGURE 2.6 Donors Print Their PayPal Contribution Receipts In this case, Mary prints the PayPal contribution receipt for her records. End – Donors Receive Contribution Authorization Notices by Email PayPal sends donors a contribution authorization notice by email to confirm the transaction that they made with the contribution coordinator.
  • 47. Website Payments Standard Integration Guide June 2008 47 Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 FIGURE 2.7 Donors Receive Payment Authorization Notices by Email In this case, PayPal sends Mary an email message notifying her of her transaction with Friends of the Park and her authorization for payment of $25.00 USD. Enhanced Checkout Experiences Website Payments Standard offers these features to enhance the basic checkout experience for your donors: Co-Branding the Checkout Pages with Your Logo and Colors
  • 48. Contribution Payments – Donate Buttons The Checkout Experience With Donate Buttons 2 48 June 2008 Website Payments Standard Integration Guide Prepopulating the Checkout Pages With Billing Addresses Returning People to Your Website After They Check Out Co-Branding the Checkout Pages with Your Logo and Colors The basic checkout experience displays your email address or your business name in the upper left corner of the checkout pages. Use any of the following techniques to enhance the checkout experience with your logo and colors, so that the checkout pages match more closely the style of your website. Set up custom payment pages in your account profile Include a page style variable on individual buttons. Include customizing of payment page variables on individual buttons To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155. Prepopulating the Checkout Pages With Billing Addresses The basic checkout experience has forms for filling in billing addresses. You can enhance the checkout experience by prepopulating the forms with information that you have on your website about the donor. To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247. Returning People to Your Website After They Check Out The basic checkout experience leaves people on the PayPal website after they check out. Use one of the following techniques to enhance the checkout experience so that people return to your website, instead. Return URL – Let people return to a page on your website if they click a return link or button on the PayPal payment confirmation page. To learn more, see Step 2 of “Adding More Details to the Donate button” on page 53 or “HTML Variables for Displaying PayPal Checkout Pages” on page 245. Auto Return – Have PayPal return people automatically to page on your website. IMPORTANT: PayPal recommends that you turn Payment Data Transfer on when you turn Auto Return on. With Auto Return on, PayPal redirects people to your website from an alternative PayPal payment confirmation page that does not display a View Printable Receipt link, so people cannot print PayPal payment receipts. Payment Data Transfer provides the transaction information that you need to let people print receipts from your website. To learn more, see “Auto Return” on page 159. Payment Data Transfer – PayPal includes information about the completed transaction when you use a return URL or Auto Return to send people back to your website. Use the information to display a “thank you, print your receipt” page on your website. To learn more, see the Order Management Integration Guide.
  • 49. Website Payments Standard Integration Guide June 2008 49 Contribution Payments – Donate Buttons Managing Contributions 2 Managing Contributions Read the following topics to learn how PayPal helps you manage Donate transactions. Using Email Notices to Track Donate Transactions Using Recent Activity to Track Donate Transactions Using Transaction History to Track Donate Transactions Using Downloadable History Logs to Track Donate Transactions Using Instant Payment Notification to Track Donate Transactions Using Email Notices to Track Donate Transactions PayPal sends you email notices when: Payments are made. Payments are pending. Payments are canceled. Generally, PayPal sends email notices to the primary email address of your account. PayPal can send email notices to an alternate email address, such as to someone in your organization who handles accounting. Add the additional email address to your account profile. Then, use that email address as the one to receive payments when you use the button creation tool on the PayPal website. Specify the alternate email address as the value for the business HTML variable when you write the HTML code yourself. For more information, see Step 5 in the instructions for “Adding More Details to the Donate button” on page 53, or Appendix A, “HTML Variables for Website Payments Standard.” Using Recent Activity to Track Donate Transactions PayPal displays Donate transactions in your recent activity, soon after donors complete their transactions by clicking Donate buttons on your website.
  • 50. Contribution Payments – Donate Buttons Managing Contributions 2 50 June 2008 Website Payments Standard Integration Guide FIGURE 2.8 Using Recent Activity to Track Donate Transactions To view your recent history: 1. Log in to you PayPal account. 2. Navigate to My Account > Overview. The My Account Overview opens. 3. Scroll down to the Recent Activity table near the bottom of the page. Using Transaction History to Track Donate Transactions PayPal lets you search for Donate transactions on the History page. The status of payments found there can be: Completed – Transactions were successful, and funds were credited to your account Cleared – Payments cleared senders’ accounts, and funds were credited to your account Uncleared – Payments have not cleared sender’s accounts, and funds were not credited To learn how to work with transaction history, see the Order Management Integration Guide. Using Downloadable History Logs to Track Donate Transactions PayPal lets you download your Donate transactions to your computer from the History page. You can specify a date range for the transactions and the file format of the download file. To learn how to work with downloadable history logs, see the Order Management Integration Guide. Using Instant Payment Notification to Track Donate Transactions PayPal lets your web server receive messages about Donate transactions and payment activity on your account. If you activate Instant Payment Notification, PayPal sends messages when: Payments are first made, with a status of completed or pending.
  • 51. Website Payments Standard Integration Guide June 2008 51 Contribution Payments – Donate Buttons Creating Advanced Donate Buttons on the PayPal Website 2 Payments clear, fail, or are denied, if the initial status was pending. To learn more about Instant Payment Notification, see “Instant Payment Notification – notify_url” on page 230 and the Order Management Integration Guide. Creating Advanced Donate Buttons on the PayPal Website You can use the button creation tool on the PayPal website to create Donate buttons, including buttons with these advanced features: Custom payment pages Collecting address information from donors Notes and special instructions from donors Donate Code for Payment Buttons and Email Payment Links When you create Donate buttons with the button creation tool, PayPal generates HTML code for payment buttons. Copy and paste the HTML code for payment buttons onto the pages of your website. In addition, PayPal can generate URL code for email payment links. Copy and paste the URL code for email payment links into email templates and messages. If your web editing tool or your service provider does not permit you to add HTML code to your webpages, you may be able to paste the URL code for email payment links onto your webpages, instead. Pages in the Button Creation Tool for Donate Buttons The button creation tool for Donate buttons has three pages: Donations – the initial page to specify the required and most often used optional features Donations – Page 2 – an optional page to specify additional, advanced features Add a Donate button to your website – the final page that has the generated code for your payment button You can switch between the first and second pages until you click the Create Button Now button to display the third page that has the generated code. Specifying the Basic Features of the Donate Button To create code for a Donate button or email payment link by using a tool on the PayPal website: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the Merchant Services tab.
  • 52. Contribution Payments – Donate Buttons Creating Advanced Donate Buttons on the PayPal Website 2 52 June 2008 Website Payments Standard Integration Guide 3. Under the Create Buttons heading, click the Donate link. The Donations page opens. 4. Enter the donation details of your button. – Donation name/service – Enter the reason for the donation or the name of your organization. If you do not enter anything in this field, your donors can complete this field. – Donation ID/number – (optional) Enter a value to help identify different kinds of contribution payments. For example, you might enter the name of your current fund- raising campaign. The value that you enter is displayed to donors at the time of payment, and it is displayed in the transaction details that both contribution coordinators and donors can view on the PayPal website. – Amount – (optional) Enter a fixed contribution amount. If you leave the field blank, donors enter their own contribution amount after they click the Donate button. – Currency – From the dropdown menu, select the currency in which you specified the fixed contribution amount or in which you want the amounts that donors enter to be denominated. The dropdown menu automatically selects the currency of your primary balance. – Buyer’s default country – From the dropdown menu, select a country for the PayPal log-in or sign-up page that donors see when they click the button. The content on the page will be appropriate for the country you select. Donors can change the country that you select, after the log-in or sign-up page appears. 5. Choose a button style for your Donate button. Select the radio button next to the image that you want to use, if you are going to be accepting payments from your website instead of by using an email payment link. The image that you select is hosted by PayPal. To display your own image that you host on your website:
  • 53. Website Payments Standard Integration Guide June 2008 53 Contribution Payments – Donate Buttons Creating Advanced Donate Buttons on the PayPal Website 2 – Click the Use your own button image link. An additional radio button and text box appear. – In the Button Image URL text box, enter the URL of your button image. If your image is hosted securely, change the entry to begin with https//. 6. Specify whether to use button encryption. – Select the Yes radio button to encrypt the generated code for the payment button. – or – – Select the No radio button to leave the generated code for the payment button and the email payment link as clear text. PayPal highly recommends that you use button encryption to protect the HTML code of your payment button. Encryption protects payment details from fraudulent alteration by third parties, thus increasing the security of the payments you accept. However, consider the limitations that encryption imposes: – Encrypted HTML code cannot be edited. Select the No radio button if you want to edit the HTML code for your button after the code is generated. – Encrypted HTML code cannot be used for email payment links. Select the No radio button if you want to create an email payment link instead of or in addition to your button. If you select the No radio button for any reason, use an alternative strategy described in Chapter 6, “Securing Your Website Payments Standard Buttons” to secure the payments you receive from the payment button or the email payment link. IMPORTANT: Merchants with significant payment volume are required to take precautions on securing Website Payment Standard buttons. 7. If you have additional details to specify for your button, such as a custom payment page that has your own logo and colors, click the Add More Options button and follow the instructions for “Adding More Details to the Donate button” on page 53. – or – If you entered all the details and options for your button, go to “Copying and Pasting the Donation Code” on page 56. Adding More Details to the Donate button Use the Donations – Page 2 page to specify the following additional details for your button. 1. Customize your payment pages. Use these settings to give donors a visually seamless payment experience by customizing the PayPal payment pages to match the visual style of your website.
  • 54. Contribution Payments – Donate Buttons Creating Advanced Donate Buttons on the PayPal Website 2 54 June 2008 Website Payments Standard Integration Guide – Primary Page Style – (display only) The payment pages that your donors see are displayed with the page style that is specified here, unless you select a different custom payment page style below. – Custom Payment Page Style – (optional) If you already added Custom Payment Page Styles in your account profile, they are listed here. Choose the page style that you would like to appear when donors click your Donate button. To learn more about creating page styles, see “Co-Branding the PayPal Checkout Pages” on page 155. – Preview – Click the Preview button to see a mock-up of the payment page style that donors see when they click your Donate button. 2. Customize your donor’s experience. Use these settings to give donors a payment experience that is easy to navigate. – Successful Payment URL – (optional) Do one of the following: Enter the URL of a page on your website that you want donors redirected to after they complete their payments. The URL that you enter is used by this payment button only. Click the Edit button to change the return URL that this button and all your other payment buttons use to redirect donors to your website after they complete their payments. For more information, see “Auto Return” on page 159. – Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off for all your payment buttons. For more information about Payment Data Transfer, see the Order Management Integration Guide.
  • 55. Website Payments Standard Integration Guide June 2008 55 Contribution Payments – Donate Buttons Creating Advanced Donate Buttons on the PayPal Website 2 – Cancel Payment URL – (optional) Enter the URL for the page on your website that you want donors redirected to if they cancel their payments at any point before completing the checkout. If you do not enter a URL, donors who cancel are taken to a PayPal webpage. The URL that you enter is used by this payment button only. 3. Select your shipping preferences. Select the radio button that matches your need to collect addresses from donors: Make shipping optional – Select this radio button if you want to prompt donors to enter their addresses as an option. – or – Yes, require shipping – Select this radio button if you want to require donors to enter their addresses. – or – No shipping needed – Select this radio button if you do not require addresses from donors. You might want to collect addresses from donors so that you can send paper contribution acknowledgement letters or ship contribution thank-you gifts. 4. Collect notes and special instructions from donors. Use these settings to prompt donors to enter notes or special instructions. – Select the Yes radio button if you want donors to enter notes to you when they make their payments. If you leave the No radio button selected, donors cannot include notes. – Note Title – If you selected the Yes radio button, change the default value for the field label to prompt donors for specific information, such as In memory of. Enter no more than 30 characters. 5. Choose an email address to receive payment. (optional) In the Email Address dropdown menu, select the email address through which you want to receive payments when people click the payment button that you are creating. The dropdown menu selects your primary email address by default. You might select the email address of the person in your organization who handles accounting. All payments are
  • 56. Contribution Payments – Donate Buttons Creating Advanced Donate Buttons on the PayPal Website 2 56 June 2008 Website Payments Standard Integration Guide deposited to your PayPal account balance, regardless of which email addresses receive particular payments. Only confirmed email addresses can be used to receive payments. 6. If you want to change any of the details that you entered on the previous page, click the Edit button and follow the instructions for “Specifying the Basic Features of the Donate Button” on page 51, beginning with Step 4. – or – If you have entered all the details and options for your button, go to “Copying and Pasting the Donation Code” on page 56. Copying and Pasting the Donation Code After you enter the details and options that you want for your Donate button, click the Create Button Now button. PayPal generates Donation code for: a payment button, which you can paste onto your website an email payment link, which you can paste into email The Add a Donate button to your website page displays the generated code. Copying and Pasting the HTML Code for the Donate button To copy and paste the HTML code for the Donation payment button: 1. Click the HTML code for Websites text box to select all of the generated HTML code. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. In your web editing tool, open the webpage where you want the button to be seen. 4. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Copying and Pasting the Code for the Donate Email Payment Link PayPal does not generate code for email payment links if you select the Yes radio button in the Button Encryption section on the first page of the button creation tool. To turn button encryption off, return to the first page and click the No radio button in the Button Encryption section. Then click the Create Button Now button again. NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment links. Secure the payments you receive from email payment links by using an
  • 57. Website Payments Standard Integration Guide June 2008 57 Contribution Payments – Donate Buttons Sample HTML Code for Donate Buttons 2 alternative method that does not involve encryption, as described in Chapter 6, “Securing Your Website Payments Standard Buttons.” To copy and paste the code for the Donate email payment link: 1. Click the Link for Emails text box to select all of the generated URL code. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. Open the email template or message that you want to send. 4. Paste the text that you copied from the clipboard into your email, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Creating More Donate buttons After you copy and paste the Donation code, you can create another Donate button for a different contribution purpose or amount. Scroll to the bottom of the Add a Donation button to your website page and click the Create Another Button button. Then follow the instructions for “Specifying the Basic Features of the Donate Button” on page 51, beginning with Step 4. The pages of the button creation tool retain the options that you previously specified. Avoiding Problems With Pasted HTML Code After you paste the code into your webpage or email, ensure that it matches exactly the code that you copied from PayPal. Pasted code may not match the generated code for the following reasons: You did not copy all of the generated code. Your editing tool may have special areas for pasting HTML code and other areas for pasting URLs and display text. Be sure you paste the generated code into a field that accepts HTML code or URLs. Your editing tool might change some characters in the pasted code. Sample HTML Code for Donate Buttons You can write your own HTML code for Donate buttons.
  • 58. Contribution Payments – Donate Buttons Sample HTML Code for Donate Buttons 2 58 June 2008 Website Payments Standard Integration Guide To protect against malicious users tampering with the HTML code for your Donate buttons submitting fraudulent contributions, see Chapter 6, “Securing Your Website Payments Standard Buttons.” IMPORTANT: Organizations with significant payment volume are required to take precautions on securing Website Payment Standard buttons. Use the following HTML code as a starting point for writing your own HTML code for Donate buttons. The value for the business variable must match a confirmed email address on file with your PayPal account. You can change the values for other variables, with the exception of cmd. EXAMPLE 2.1 HTML For a Donate button <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="donations@kcparkfriends.org"> <!-- Specify a Donate button. --> <input type="hidden" name="cmd" value="_donations"> <!-- Specify details about the contribution --> <input type="hidden" name="item_name" value="Friends of the Park"> <input type="hidden" name="item_number" value="Fall Cleanup Campaign"> <input type="hidden" name="currency_code" value="USD"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_donate_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> The sample code above produces the following result: Paste the code onto your website wherever you want donors to click and make a contribution in amounts that donors choose.
  • 59. Website Payments Standard Integration Guide June 2008 59 Contribution Payments – Donate Buttons Sample URL Code for Donate Email Payment Links 2 Sample URL Code for Donate Email Payment Links You can write your own URL code for Donate email payment links. The same variables and values that you include in HTML code for Donate buttons can be used in Donate email payment links. Separate the variables and their values from each other with ampersands (&). Do not enclose values in quotation marks; use plus signs (+) as substitutes for spaces in values, if needed. You can use the following URL as a starting point for writing your own URL for Donate email payment links.The value for the business variable must match a confirmed email address on file with your PayPal account. You can change the values for other variables. EXAMPLE 2.2 URL for a Donate Email Payment Link https://www.paypal.com/cgi- bin/webscr?cmd=_donations&business=donations@kcparkfriends.org&item_name=Fr iends+of+the+Park&item_number=Fall+Cleanup+Campaign&amount=25%2e00&currency _code=USD
  • 60. Contribution Payments – Donate Buttons Sample URL Code for Donate Email Payment Links 2 60 June 2008 Website Payments Standard Integration Guide
  • 61. Website Payments Standard Integration Guide June 2008 61 3 Recurring Payments – Subscribe Buttons Use Subscribe buttons to bill customers on a regular basis, charge membership dues, or offer subscription services and installment plans. Read the following topics to learn more about Subscribe buttons: “Getting Started With Subscribe Buttons” on page 61 “The Checkout Experience With Subscribe Buttons” on page 63 “Managing Subscriptions” on page 71 “Advanced Features of Subscribe Buttons” on page 80 “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88 “Sample HTML Code for Subscribe Buttons” on page 98 “Sample URL Code for Subscribe Email Payment Links” on page 104 Getting Started With Subscribe Buttons The easiest way to add a Subscribe button to your website is by using the button creation tool on the PayPal website. As soon as you add the button, you can begin selling subscriptions on your website. To add a basic Subscribe button to your website: 1. Log in to your PayPal account at https://www.paypal.com.
  • 62. Recurring Payments – Subscribe Buttons Getting Started With Subscribe Buttons 3 62 June 2008 Website Payments Standard Integration Guide 2. Click the Merchant Services tab. The Tools for existing PayPal merchants page opens. 3. Under the Create Buttons heading, click the Subscribe link. The Subscriptions & Recurring Payments page opens. 4. Enter the following information: – Subscription name – Enter a name for the subscription; for example, enter “Alice’s Monthly Digest”. – Subscription price – Enter the amount you want to bill subscribers for each billing cycle; for example, enter “10.00”. – Billing cycle – Select a number and a unit of duration. The following example shows how to select a monthly billing cycle: 5. Scroll to the bottom of the page, and click the Create Button Now button. The Add a Subscribe button to your website page opens. 6. Click the HTML code for Websites text box to select all of the generated HTML code. 7. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 8. In your web editing tool, open the webpage where you want the button to be seen. IMPORTANT: Be sure that your tool is ready for you to paste HTML code. 9. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste.
  • 63. Website Payments Standard Integration Guide June 2008 63 Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 The Checkout Experience With Subscribe Buttons This section demonstrates the PayPal checkout experience for people who click Subscribe buttons on your website. The following diagram illustrates the steps. FIGURE 3.1 The Checkout Experience with Subscribe Buttons Read these topics to better understand the checkout experience with Subscribe buttons: “Begin – Subscribers Are Ready to Sign Up on Your Website” on page 64 “1 – Subscribers Enter Their Billing Information or They Log In to PayPal” on page 64 “2 – Subscribers Confirm Their Subscription Details Before Signing Up” on page 67 “3 – Subscribers View and Print Their Subscription Confirmations” on page 68 “End – Subscribers Receive Subscription Authorization Notices by Email” on page 69 “Enhanced Checkout Experiences” on page 70
  • 64. Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 64 June 2008 Website Payments Standard Integration Guide Begin – Subscribers Are Ready to Sign Up on Your Website The basic checkout experience with Subscribe buttons begins on your website when someone is ready to sign up for your subscription. FIGURE 3.2 Subscribers Begin on Your Website When They Are Ready to Sign Up In this example, Bob begins on Alice’s Used Books website and decides to sign up for a subscription to Alice’s Weekly Digest. He clicks the Subscribe button to checkout. 1 – Subscribers Enter Their Billing Information or They Log In to PayPal PayPal displays a billing information/log-in page, which lets subscribers enter their credit card information to sign up. Two radio buttons near the top of the page let subscribers switch between entering billing information and logging in to PayPal to sign up.
  • 65. Website Payments Standard Integration Guide June 2008 65 Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 FIGURE 3.3 Subscribers Enter Their Billing Information to Sign Up with Credit Cards In this case, Bob does not have a PayPal account. He enters his billing information, his email
  • 66. Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 66 June 2008 Website Payments Standard Integration Guide address, and then he clicks the Continue button. PayPal prompts him to enter a password to create his new PayPal account. FIGURE 3.4 Subscribers New to PayPal Enter Passwords to Create New PayPal Accounts In this case, Bob enters the password he wants for his new PayPal account and confirms it by typing it again. Then, he clicks the Continue button. Subscribers who already have PayPal accounts click the PayPal radio button near the top of the billing information page in order to sign up. The page changes to let them log in to PayPal.
  • 67. Website Payments Standard Integration Guide June 2008 67 Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 FIGURE 3.5 Subscribers Log In to PayPal to SIgn Up 2 – Subscribers Confirm Their Subscription Details Before Signing Up PayPal displays a transaction confirmation page to let subscribers confirm the details before they complete their transactions and authorize their signups for subscriptions and for new PayPal accounts.
  • 68. Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 68 June 2008 Website Payments Standard Integration Guide FIGURE 3.6 Subscribers Confirm Their Subscription Details Before Signing Up In this case, Bob reviews the details of his subscription and recurring payments. Then, he clicks the Pay button to complete his signup for the subscription his signup for a new PayPal account. 3 – Subscribers View and Print Their Subscription Confirmations PayPal displays a payment confirmation page after subscribers pay to let them know that they have signed up successfully.
  • 69. Website Payments Standard Integration Guide June 2008 69 Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 FIGURE 3.7 Subscribers View and Print Their Subscription Confirmations In this case, Bob prints the subscription confirmation page for his records. End – Subscribers Receive Subscription Authorization Notices by Email PayPal sends subscribers a subscription authorization notice by email to confirm the subscription that they signed up for.
  • 70. Recurring Payments – Subscribe Buttons The Checkout Experience With Subscribe Buttons 3 70 June 2008 Website Payments Standard Integration Guide FIGURE 3.8 Subscribers Receive Subscription Authorization Notices by Email In this case, PayPal sends Bob an email message notifying him of his subscription to Alice’s Weekly Digest and his future recurring payments. Enhanced Checkout Experiences Website Payments Standard offers these features to enhance the basic checkout experience for your subscribers: Co-Branding the Checkout Pages with Your Logo and Colors Prepopulating the Checkout Pages With Billing Addresses Returning People to Your Website After They Check Out
  • 71. Website Payments Standard Integration Guide June 2008 71 Recurring Payments – Subscribe Buttons Managing Subscriptions 3 Co-Branding the Checkout Pages with Your Logo and Colors The basic checkout experience displays your email address or your business name in the upper left corner of the checkout pages. Use any of the following techniques to enhance the checkout experience with your logo and colors, so that the checkout pages match more closely the style of your website. Set up custom payment pages in your account profile Include a page style variable on individual buttons. Include customizing of payment page variables on individual buttons To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155. Prepopulating the Checkout Pages With Billing Addresses The basic checkout experience has forms for filling in billing addresses. You can enhance the checkout experience by prepopulating the forms with information that you have on your website about the subscriber. To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247. Returning People to Your Website After They Check Out The basic checkout experience with Subscribe buttons leaves subscribers on a PayPal webpage when they complete their subscription signups. Use one of the following techniques to alter the basic checkout experience so that subscribers return to your website: Return URL – Let people return to a page on your website if they click a return link or button on the PayPal payment confirmation page. To learn more, see Step 4 of “Adding More Details to the Subscribe Button” on page 92 or “HTML Variables for Displaying PayPal Checkout Pages” on page 245. Auto Return – Have PayPal return people automatically to page on your website. To learn more, see “Auto Return” on page 159. Managing Subscriptions Read the following topics to learn about managing subscriptions: “Tracking Subscription Transactions” on page 71 “How Billing Cycles and Recurring Payments Work” on page 74 “Downloading Subscriber Lists” on page 75 “Canceling Individual Subscriptions” on page 76 “Canceling Multiple Subscriptions at One Time” on page 77 Tracking Subscription Transactions Read the following topics to learn how PayPal helps you manage Donate transactions.
  • 72. Recurring Payments – Subscribe Buttons Managing Subscriptions 3 72 June 2008 Website Payments Standard Integration Guide Using Email Notices to Track Subscription Transactions Using Recent Activity to Track Subscribe Transactions Using Transaction History to Track Subscribe Payments Using Downloadable History Logs to Track Subscribe Payments Using Instant Payment Notification to Track Subscribe Transactions Using Email Notices to Track Subscription Transactions PayPal sends you email notices when: People sign up for new subscriptions. Subscription payments are made. Subscriptions end or are canceled. Generally, PayPal sends email notices to the primary email address of your account. PayPal can send email notices to an alternate email address, such as to someone in your organization who handles accounting or manages access to members-only content. Add the additional email address to your account profile. Then, use that email address as the value for the business HTML variable when you write the HTML code yourself for your Subscribe buttons. For more information, see Appendix A, “HTML Variables for Website Payments Standard.” Using Recent Activity to Track Subscribe Transactions PayPal displays Subscribe transactions in your recent activity, soon after subscribers complete their subscription signups. FIGURE 3.9 Using Recent Activity to Track Subscribe Transactions To view your recent history: 1. Log in to you PayPal account. 2. Navigate to My Account > Overview. The My Account Overview opens.
  • 73. Website Payments Standard Integration Guide June 2008 73 Recurring Payments – Subscribe Buttons Managing Subscriptions 3 3. Scroll down to the Recent Activity table near the bottom of the page. Using Transaction History to Track Subscribe Payments PayPal lets you search for Subscribe payments on the History page. The status of payments found there can be: Completed – Transactions were successful, and funds were credited to your account Cleared – Payments cleared senders’ accounts, and funds were credited to your account Uncleared – Payments have not cleared sender’s accounts, and funds were not credited To learn how to work with transaction history, see the Order Management Integration Guide. Using Downloadable History Logs to Track Subscribe Payments PayPal lets you download a file that contains all of your subscription payment history for a time frame that you specify. You can choose comma delimited, tab delimited, Quicken, or QuickBooks as the file format. To download a file with your subscription payment history: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the History subtab. The History page opens. 3. Click the Download My History link. The Download History page opens. 4. Click the Customize Download Fields link. The Customize My Download History page opens. 5. Scroll down the page, and select the Subscription Number check box. 6. Click the Save button. The Download History page opens again. 7. Specify the time frame for the subscription payments you want to download and the file type you want. 8. Click the Download History button, and follow the onscreen instructions. For more information on the Download History page, see the Order Management Integration Guide. Using Instant Payment Notification to Track Subscribe Transactions PayPal lets your web server receive messages about Subscribe transactions and payment activity on your account. If you activate Instant Payment Notification, PayPal sends messages when: Payments are first made, with a status of completed or pending.
  • 74. Recurring Payments – Subscribe Buttons Managing Subscriptions 3 74 June 2008 Website Payments Standard Integration Guide Payments clear, fail, or are denied, if the initial status was pending. Subscriptions begin, end, or are canceled, if you use Subscriptions Password Management. To learn more, see: “Instant Payment Notification – notify_url” on page 230 “Generating Usernames and Passwords With Subscribe Buttons” on page 85 Order Management Integration Guide How Billing Cycles and Recurring Payments Work PayPal attempts to collect recurring payments from subscribers on the day after the previous billing cycle or trial period ends. Billing cycles can be daily, weekly, monthly or yearly, depending on the terms of the original subscription. How Subscriptions with Weekly Billing Cycles Work For weekly billing cycles, recurring payments are collected on the same day of the week. EXAMPLE 3.1 When Weekly Recurring Payments Are Due and Collected The subscription terms are: $10 USD a week; the subscriber signs up on Tuesday, December 23. The subscriber is billed as follows: Tuesday, December 23 = $10.00 USD Tuesday, December 30 = $10.00 USD Tuesday, January 6 = $10.00 USD and so on... How Subscriptions with Monthly Billing Cycles Work For monthly billing cycles, recurring payments are collected on the same day of the month. If the initial recurring payment falls on the 31st, PayPal eventually adjusts the billing cycle to the 1st of the month. If the initial recurring payment falls on the 29th or 30th, PayPal adjusts the billing cycle to the 1st of the month on the following February. EXAMPLE 3.2 When Monthly Recurring Payments Are Due and Collected on the 31st The subscription terms are: $25.99 USD a month; the subscriber signs up on Thursday, July 31. The subscriber is billed as follows: Thursday, July 31 = $25.99 USD Saturday, August 31 = $25.99 USD Wednesday, October 1= $25.99 USD Saturday, November 1= $25.99 USD
  • 75. Website Payments Standard Integration Guide June 2008 75 Recurring Payments – Subscribe Buttons Managing Subscriptions 3 and so on... Notice that no recurring monthly payment was collected in September, but recurring payments were collected roughly every 30 days. EXAMPLE 3.3 When Monthly Recurring Payments Are Due and Collected on the 30th The subscription terms are: $25.99 USD a month; the subscriber signs up on Tuesday, December 30. The subscriber is billed as follows: Tuesday, December 30 = $25.99 USD Friday, January 30 = $25.99 USD Sunday, March 1= $25.99 USD Wednesday, April 1= $25.99USD and so on... Notice that no recurring monthly payment was collected in February, but recurring payments were collected roughly every 30 days. How Subscriptions with Yearly Billing Cycles Work For yearly billing cycles, recurring payments are collected on the same month and day each year. If the initial recurring payment falls on February 29th of a leap year, PayPal adjusts the billing cycle to March 1st the following year. EXAMPLE 3.4 When Yearly Recurring Payments Are Due and Collected The subscription terms are: $125.99 USD a year; the subscriber signs up on a Friday, February 29. The subscriber is billed as follows: Friday, February 29, 2008 = $125.99 USD Sunday, March 1, 2009 = $125.99 USD Sunday, March 1, 2010 = $125.99 USD and so on... Downloading Subscriber Lists You can download a text file that contains all of your non-payment subscription history – signups, cancellations, and ends of term. You can manipulate the download file to produce these kinds of lists: All current and past subscribers – Exclude “Subscription Cancellation” and “Subscription Completion” activity All active subscribers – Include activity with an “active,” “active-completed,” or “active- cancelled” status
  • 76. Recurring Payments – Subscribe Buttons Managing Subscriptions 3 76 June 2008 Website Payments Standard Integration Guide To download a file with your non-payment subscription history: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the History subtab. The History page opens. 3. Click the Download My History link. The Download History page opens. 4. Specify the time frame for the subscription activity you want to download. 5. From the File Types for Download dropdown menu, select “Subscriptions.” NOTE: The “Subscriptions” choice is available in the dropdown menu only after someone has signed up for a subscription with you. 6. Click the Download History button, and follow the onscreen instructions. For more information on the Download History page, see the Order Management Integration Guide. Canceling Individual Subscriptions As a subscription service provider, you can the cancel the subscriptions of individual subscribers from the Subscription Details page of your PayPal account. In addition, your subscribers can cancel the subscriptions that they have with you from their Subscription Details pages. The procedure, described below, is the same in either case. NOTE: For the convenience of you and your subscribers, consider adding a Cancel Subscription button to your website. For more information, see “Working With Cancel Subscription Buttons” on page 84. To cancel an individual subscription: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the History subtab. The History page opens. 3. From the Show dropdown menu, select “Subscriptions.” 4. Specify the time frame in which the subscription was set up. 5. Click the Search button. The History pages displays a list of subscription transactions. 6. In the Subscriptions list, locate the subscription you want to cancel. Make sure of the following:
  • 77. Website Payments Standard Integration Guide June 2008 77 Recurring Payments – Subscribe Buttons Managing Subscriptions 3 – The Type column reads, “Subscription Creation.” – The Status column reads, “Active.” 7. In the row for the subscription you want to cancel, click the Details link. The Subscription Details page opens. 8. Scroll to the bottom of the page, and click the Cancel Subscription button. Canceling Multiple Subscriptions at One Time As a subscription service provider, you can cancel multiple subscriptions at one time from the Subscription Details page of your PayPal account. Follow the procedures described in this section to cancel multiple subscriptions at one time: Requesting Mass Subscription Cancellations Monitoring the Progress of Mass Subscription Cancellations Requesting Mass Subscription Cancellations Before you begin this procedure, create a text file that contains the email addresses of the subscribers whose subscriptions you want to cancel. Enter each email addresses on a separate line. You will upload this mass cancellation file during Step 7 of the procedure below. IMPORTANT: If a subscriber in your text file has more than one subscription with you, all of that person’s subscriptions will be canceled. To request the cancellation of multiple subscriptions at one time: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the History subtab. The History page opens. 3. From the Show dropdown menu, select “Subscriptions.” 4. Click the Search button. The History pages displays a list of subscription transactions. 5. In the row for any subscription where the Status column reads “Active,” click the Details link. The Subscription Details page opens. 6. Scroll to the bottom of the page, and click the Cancel several subscribers link. The Mass Subscription Cancellation page opens. 7. In the Attach Mass Cancellation File text box, enter the path and filename of the mass cancellation file that you created earlier, or click the Browse… button to locate the file on your local computer.
  • 78. Recurring Payments – Subscribe Buttons Managing Subscriptions 3 78 June 2008 Website Payments Standard Integration Guide 8. Click the Continue button. The Mass Cancellation page opens to display the number of email addresses that PayPal found in your mass cancellation file. 9. Confirm the number of email address found by PayPal against the number of email addresses in your mass cancellation file. Then, click then Cancel Subscriptions button. The Mass Cancellation page refreshes to inform you that your mass cancellation file has been registered by PayPal and will be processed. Monitoring the Progress of Mass Subscription Cancellations It may take PayPal a while to process your mass cancellation file. You can monitor the progress from the History page by looking at the status of the cancellation transaction. NOTE: It may take up to one hour to process your mass subscription cancellation. To check the status of your mass subscription cancellation: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the History subtab. The History page opens. 3. From the Show dropdown menu, select “All Activity - Simple View.” 4. Specify the time frame in which you requested the mass subscription cancellation. Generally, select the Within radio button and select “The Past Day” from the dropdown menu. 5. Click the Search button. The History pages displays a list of subscription transactions. 6. In the Subscriptions list, locate the row where the Type column reads “Mass Subscription Cancellation.” The Status column reads “Processed” after PayPal finishes processing your mass cancellation file. 7. Click the Details link to see statistics about your mass subscription cancellation and to download a mass cancellation log file. The Transaction Details page opens to display the following statistics: – Total Emails – Number of email addresses uploaded from your file. – Emails Matched – Number of email addresses that matched one or more active subscriptions. – Emails Not Matched – Number of email addresses that matched no active subscriptions or matched subscriptions that were already completed or canceled.
  • 79. Website Payments Standard Integration Guide June 2008 79 Recurring Payments – Subscribe Buttons Managing Subscriptions 3 – Successful Cancellations – Number of subscriptions canceled. This number may be higher than the number of emails matched if any email address had more than one active subscription. 8. Click the View Details button to download a mass cancellation log file. PayPal prompts you to open or save a file named BatchLog.txt. Each line in the file represents the actions taken against a subscription. Each line begins with the subscription ID and has the email address of the subscriber and the processing date. The log file reports the following processing results: – Success – The subscription was canceled. – Failed Already cancelled – The subscription was canceled already. – Failed Already completed – The subscription ended already. – Failed – A general failure occurred, as identified by the failure code. – No Match – The email address did not match any of your subscriptions. End of Term Messages Sent Through Instant Payment Notification Instant Payment Notification sends end of term messages when subscriptions end. Use these messages to automatically terminate subscription password access to members only content. For more information about Subscriptions Password Management, see “Generating Usernames and Passwords With Subscribe Buttons” on page 85. For subscriptions with no recurring payments, end of term messages are sent when the subscription period ends. For subscriptions with recurring payments and a limited number of billing cycles, end of term messages are sent at the end of the last billing cycle. For subscriptions that are canceled, end of term messages are sent when the subscription period or the current billing cycle ends. For subscriptions that PayPal cancels due to failures in attempts to collect recurring payments, end of term messages are sent immediately. EXAMPLE 3.5 End of Term Examples Term – $10 USD for 6 months, paid on the 1st of March End of Term – sent on the 1st of September, 7 months after signup Term – $9.99 USD per month, paid on the 1st of March Cancellation – manually on the 15th of June End of Term – sent on the 1st July, at the end of the current billing cycle Term – $10 USD for 6 months, paid on the 1st of March, with reattempts of failed recurring payments enabled Payment failure – on the 1st of June 1st reattempt failure – on the 4th of June
  • 80. Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 80 June 2008 Website Payments Standard Integration Guide 2nd reattempt failure – on the 9th of June Cancellation – final payment failure on the 9th of June End of Term – sent on the 9th of June For more information, see “Reattempting Failed Recurring Payments With Subscribe Buttons” on page 87. Advanced Features of Subscribe Buttons Read the following topics to learn about these advanced features of Subscribe buttons: “Offering Trial Periods and Introductory Rates With Subscribe Buttons” on page 80 “Limiting the Number of Billing Cycles With Subscribe Buttons” on page 81 “Working With Modify Subscription Buttons” on page 81 “Working With Cancel Subscription Buttons” on page 84 “Generating Usernames and Passwords With Subscribe Buttons” on page 85 “Reattempting Failed Recurring Payments With Subscribe Buttons” on page 87 Offering Trial Periods and Introductory Rates With Subscribe Buttons Offer trial periods to let people try your subscription service before their regular subscription and its recurring payments begin. You can set the prices and durations of trial periods independently of the regular subscription price and billing cycle. How Subscriptions With Trial Periods Work The following example shows how subscribers are billed for trial periods. EXAMPLE 3.6 Subscriptions That Include Trial Periods Subscription Terms: An initial trial period, free of charge, that lasts for 7 days A second trial period for $5 USD, that lasts three additional 3 weeks A regular subscription for $10 USD a month thereafter The Subscriber signs up on Aug.1, and is billed as follows: Aug. 1 = $0.00 USD Aug. 9 = $5.00 USD Aug. 31 = $10.00 USD Specifying Trial Periods With Subscribe Buttons Do one of following to add Subscribe buttons to your website that include trial periods:
  • 81. Website Payments Standard Integration Guide June 2008 81 Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 Specify trial periods when you create Subscribe buttons by using the creation tool on the PayPal website. See Step 5 of “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88. Specify trial periods in the HTML button code that you write manually. See “Sample HTML Code for a Subscribe Button With Trial Periods” on page 99. Limiting the Number of Billing Cycles With Subscribe Buttons Limit the number of billing cycles with your subscriptions to set up installment plans. The number that you specify stops recurring payments on subscriptions after that number of billing cycles has been reached. How Subscriptions With Limited Billing Cycles Work The following example shows how subscribers are billed on installment plans with a limited number of billing cycles. EXAMPLE 3.7 Subscription Terms That Limit the Number of Billing Cycles Subscription Terms: A regular subscription for $19.95 USD a month, for a total of 3 months The Subscriber signs up on Aug.15, and is billed as follows: Aug. 15 = $19.95 USD Sept. 15 = $19.95 USD Oct. 15 = $19.95 USD Specifying the Limit on Billing Cycles With Subscribe Buttons Do one of following to add Subscribe buttons to your website that have a limited number of billing cycles: Specify the limit that stops recurring payments after a certain number when you create Subscribe buttons by using the creation tool on the PayPal website. See Step 6 of “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88. Specify the limit in the HTML button code that you write manually. See “Sample HTML Code for a Subscribe Button With Limits on Billing Cycles” on page 100. Working With Modify Subscription Buttons Let subscribers modify their active subscriptions by adding a Modify Subscription button to your website. If you offer different subscriptions levels, Modify Subscription buttons let you subscribers upgrade to a higher level without an interruption in service.
  • 82. Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 82 June 2008 Website Payments Standard Integration Guide How PayPal Lets Subscribers Modify Their Subscriptions Modify Subscription buttons let subscribers accept a new set of subscriptions terms and pricing for their current, active subscriptions. You can write the HTML code for Modify Subscription buttons that allow subscribers to: Modify their active subscriptions, or sign up for new subscriptions Modify their active subscriptions only The following example shows how subscribers use Modify Subscription buttons to upgrade their subscriptions from one level of service to another. EXAMPLE 3.8 Subscribers Use Modify Subscription Buttons Subscription terms: A basic subscription for $29.95 USD a month, for one year A premium subscription for $69.95 USD every six months Bob signed up on Feb. 15 for a basic subscription. On Apr. 26, he decides to upgrade his basic subscription to a premium subscription: – Bob visits the subscription website, finds a webpage that lets him upgrade his subscription, and clicks the Subscribe button. – PayPal displays a log-in page. Bob enters his PayPal credentials and logs in. – PayPal displays the Review Subscription Details page, which lets Bob see his current subscription terms and the new terms is about to agree to. Bob retains his current subscription with Alice’s Used Books.
  • 83. Website Payments Standard Integration Guide June 2008 83 Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 The new terms take effect at the end of the current billing cycle, Sept. 15. Specifying Options for Modify Subscription Buttons To create a Modify Subscription button, you must be able to write HTML code. You can generate most of the button code with the button creation tool on the PayPal website. Then, you add code to it manually. To create a Modify Subscription button: 1. Follow the procedure for “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88. – Specify the terms and pricing that will apply after the subscriptions are modified. – Select a button image that reads “Subscribe.” – Make sure you select the No radio button in the section about button encryption. 2. Click the Create Button Now button. The Add a Subscribe button to your website page opens. 3. For a payment button, follow the procedure for “Copying and Pasting the HTML Code for the Subscribe Button” on page 96 to copy and paste everything in the HTML code for Websites text box onto your webpage. Then, add the following code. Do one of the following between the <form> and </form> tags in the pasted code: – To let subscribers modify their active subscriptions or sign up for new, additional subscriptions, insert the following line of code: <input type="hidden" name="modify" value="1"> If a subscriber has an active subscription, PayPal displays a page during checkout for accepting the new terms and pricing, with a link to a page to sign up for a new, additional subscription with the new terms and pricing. If a subscriber has a prior subscription that ended or was canceled, PayPal lets the subscriber sign up for a new subscription with the modified terms and prices. – To let subscribers modify existing subscriptions only, insert the following line of code: <input type="hidden" name="modify" value="2"> If a a subscriber has an active subscription, PayPal displays a page during checkout for accepting the new terms and pricing. The page does not allow subscribers to sign up for new subscriptions. 4. For an email payment link, follow the procedure for “Copying and Pasting the Code for the Subscribe Email Payment Link” on page 96 to copy and paste everything in the Link for Emails text box into your email. Then, add the following code. Do one of the following at the end of the pasted URL: – To let subscribers modify their active subscriptions or sign up for new, additional subscriptions, add the following variable and value: modify=1
  • 84. Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 84 June 2008 Website Payments Standard Integration Guide – To let subscribers modify existing subscriptions only, add the following variable and value: modify=2 For more information, see “Sample HTML Code for a Modify Subscription Button” on page 101. Working With Cancel Subscription Buttons Let subscribers cancel their active subscriptions by adding a Cancel Subscription button to your website. How PayPal Cancels Subscriptions When subscribers cancel subscriptions, they avoid future recurring payments.If subscribers cancel their subscriptions before payment is sent on the day that a recurring payment is due, their subscriptions are canceled immediately and no payments are made. The following example shows how subscribers use Cancel Subscription buttons to cancel their subscriptions. EXAMPLE 3.9 Subscribers Cancel Their Subscriptions Subscription terms: A regular subscription for $20.00 USD a month, for one year Bob signs up for a subscription on Feb. 15: On Aug. 28, Bob decides to cancel his subscription:.
  • 85. Website Payments Standard Integration Guide June 2008 85 Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 – Bob visits the subscription website, finds a webpage that lets him cancel his subscription, and clicks the Unsubscribe button. – PayPal displays a log-in page. Bob enters his PayPal credentials and logs in. – PayPal displays the Subscription Details page for his subscription. – Bob scrolls to the bottom of the page and clicks the Cancel Subscription button. Bob’s subscription remains active through Sep. 14. PayPal collects no more recurring payments from Bob. Creating Cancel Subscription Buttons Do one of following to add Cancel Subscription buttons to your website: Add more options to Subscribe buttons when you create them by using the creation tool on the PayPal website. PayPal generates code for Cancel Subscription buttons whenever you visit the second page of the tool. See “Creating Advanced Subscribe Buttons on the PayPal Website” on page 88. Write the HTML code for Cancel Subscription buttons manually. See “Sample HTML Code for a Cancel Subscription Button” on page 102. Generating Usernames and Passwords With Subscribe Buttons Let PayPal generate unique usernames and passwords for your subscribers when they sign up for subscription memberships to your website. Use PayPal Subscriptions Password Management to enable access to members only content on your website automatically.
  • 86. Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 86 June 2008 Website Payments Standard Integration Guide IMPORTANT: Subscriptions Password Management and Auto Return are incompatible. Turn Auto Return off if you want PayPal to manage subscription passwords. For more information, see “Auto Return” on page 159. How Subscriptions Password Management Works After subscribers sign up for your subscription, PayPal generates their usernames and passwords automatically. PayPal displays the generated values to subscribers on the PayPal payment confirmation page and in the PayPal confirmation email. In addition, PayPal displays generated usernames and initial passwords to subscribers from their PayPal accounts. Your website uses the generated usernames and initial passwords to set up new accounts so that your subscribers can log in. Your website receives new subscription messages through Instant Payment Notification, which requires advanced programming skills to implement. After you implement Instant Payment Notification on your website, you write additional programming code that captures the generated usernames and initial passwords for new subscriptions. You should also write code to capture cancellation and end-of-term notices, so that you can update your member database to turn off access to members only content. For more information about Instant Payment Notification, see the Order Management Integration Guide. Downloading the Subscriptions Password Management Perl Script PayPal provides a Perl script that you can use to help automate access to members only content for new subscribers, provided your website uses “Basic Authentication” with an Apache web server that runs on Linux. The Perl script interacts with Instant Payment Notification to automatically activate and deactivate subscriber accounts on your website. NOTE: You must agree to the terms of use before you can download the installation manual and the Perl script from the PayPal website. To download the manual and the Perl script for use with Subscriptions Password Management: 1. Log in to your PayPal Business account at https://www.paypal.com. 2. Click the Merchant Services tab. The Tools for existing PayPal merchants page opens. 3. Under the Create Buttons heading, click the Subscribe link. The Subscriptions & Recurring Payments button page opens. 4. In the text beside the first checkbox on the page, click the IPN and server modifications required link. The Subscriptions Password Management page opens. 5. Scroll to the bottom of the page, and click the Download the Perl script link. The User Agreement page opens.
  • 87. Website Payments Standard Integration Guide June 2008 87 Recurring Payments – Subscribe Buttons Advanced Features of Subscribe Buttons 3 6. Read the PayPal software license agreement, and then click the I agree button. The Subscriptions Download page opens. 7. Do both of the following: – Click the Donwload Manual link to download the PayPal Password Management Installation Guide in PDF format. – Click the Download Script link to download a tar file with script and a copy of the license agreement. Specifying to Generate Usernames and Passwords With Subscribe Buttons Do one of following to add Subscribe buttons to your website that generate usernames and passwords automatically for subscribers: Specify that you want PayPal to generate usernames and passwords when you create Subscribe buttons by using the creation tool on the PayPal website. See Step 4 of “Specifying The Basic Features of the Subscribe Button” on page 89. Specify that you want PayPal to reattempt failed recurring payments in the HTML button code that you write manually. See “Sample HTML Code for a Subscribe Button With Password Management” on page 103. Reattempting Failed Recurring Payments With Subscribe Buttons PayPal cancels subscriptions when recurring payments fail. A recurring payment fails if funds cannot be moved from the subscriber’s PayPal account to your own. Limits on the availability of funds in PayPal accounts occur rarely, for a variety of reasons. Temporary limits that PayPal places on subscribers’ accounts are often lifted quickly. To avoid unnecessary cancellations, you can specify in the HTML button code that PayPal should reattempt failed payments before canceling subscriptions. How PayPal Reattempts Failed Recurring Payments PayPal reattempts to collect recurring payments three days after the day on which recurring payments fail. If the first reattempt to collect a recurring payment fails, PayPal waits 5 days to reattempt a second time. If the second reattempt fails, PayPal cancels the subscription. NOTE: Payments made with bank accounts are automatically reattempted 3 days after PayPal notifies subscribers that their payments failed. Reattempts will not occur if another subscription payment is scheduled within 14 days of the failed payment, so payments do not overlap. The following example shows how PayPal reattempts to collect a failed recurring payment. EXAMPLE 3.10 Subscription Terms:
  • 88. Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 88 June 2008 Website Payments Standard Integration Guide A regular subscription for $20.00 USD a month, for one year Bob signs up for a subscription on Feb. 12. On Apr. 12, PayPal attempts to collect Bob’s recurring $20.00 payment, but the payment fails because of a temporary limit placed on Bob’s PayPal account. On Apr. 15, PayPal reattempts to collect Bob’s recurring $20.00 payment for April, but the payment fails again because the temporary limit remains on Bob’s PayPal account. On Apr. 18, Bob takes action on his PayPal account, and PayPal lifts the temporary limit. On Apr. 20, PayPal reattempts to collect Bob’s recurring $20.00 payment for April, and the payment succeeds. On May 12, PayPal attempts to collect Bob’s recurring $20.00 payment for May, and the payment succeeds. Specifying to Reattempt Failed Recurring Payments With Subscribe Buttons Do one of following to add Subscribe buttons to your website that reattempt failed recurring payments instead of canceling subscriptions immediately: Specify that you want PayPal to reattempt recurring payments when you create Subscribe buttons by using the creation tool on the PayPal website. See Step 6 of “Specifying The Basic Features of the Subscribe Button” on page 89. Specify that you want PayPal to reattempt failed recurring payments in the HTML button code that you write manually. See “Sample HTML Code for a Subscribe Button That Reattempts Payments” on page 103. Creating Advanced Subscribe Buttons on the PayPal Website You can use the button creation tool on the PayPal website to create Subscribe buttons, including buttons with these advanced features: Trial periods Limited numbers of billing cycles Usernames and passwords generated by PaPal Reattempts by PayPal to collect failed recurring payments To learn more about these features, see “Advanced Features of Subscribe Buttons” on page 80. Subscribe Code for Payment Buttons and Email Payment Links When you create Subscribe buttons with the button creation tool, PayPal generates HTML code for payment buttons. Copy and paste the HTML code for payment buttons onto the pages of your website.
  • 89. Website Payments Standard Integration Guide June 2008 89 Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 In addition, PayPal can generate URL code for email payment links. Copy and paste the URL code for email payment links into email messages. If your web editing tool or your service provider does not permit you to add HTML code to your pages, you may be able to paste the URL code for email payment links onto your webpages, instead. Pages in the Button Creation Tool for Subscribe Buttons The button creation tool for Subscribe buttons has three pages: Subscriptions & Recurring Payments button – the initial page to specify the required and most often used optional features Subscriptions & Recurring Payments – Page 2 – an optional page to specify additional, advanced features Add a Subscribe button to your website – the final page that has the generated code for your payment button You can switch between the first and second pages until you click the Create Button Now button to display the third page that has the generated code. Specifying The Basic Features of the Subscribe Button To create code for an advanced Subscribe button or email payment link: 1. Log in to your PayPal Business account at https://www.paypal.com. 2. Click the Merchant Services tab. The Tools for existing PayPal merchants page opens. 3. Under the Create Buttons heading, click the Subscribe link. The Subscriptions & Recurring Payments button page opens. 4. Enter the subscription details of your button. – Subscription name/service – Enter a name for the subscription that people sign up for when they click the Subscribe button. – Reference number – (optional) If you offer different kinds of subscriptions, such as monthly and annual payment plans, enter an identifying code for this subscription. – Currency – From the dropdown menu, select the currency in which you will specify the prices for trial periods and the regular subscription. The dropdown menu automatically selects the currency of your primary balance. – Buyer’s default country – From the dropdown menu, select a country for the PayPal log-in or sign-up page that donors see when they click the button. The content on the page will be appropriate for the country you select. Subscribers can change the country that you select, after the log-in or sign-up page opens.
  • 90. Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 90 June 2008 Website Payments Standard Integration Guide – Select the checkbox at the bottom of the details section if you would like PayPal to generate usernames and passwords for your subscribers. For more information, see “Generating Usernames and Passwords With Subscribe Buttons” on page 85. 5. Specify trial periods for the subscription (optional). – In the Trial Period #1 text box, enter the amount you want to bill subscribers for the initial trial period. Enter 0 for a free initial trial period. – In the Trial Period #1 dropdown menus for how long this trial period should last, select a number and a unit of duration. The following example shows how to select three-day trial period: – In the Trial Period #2 text box, enter the amount you want to bill subscribers for a subsequent trial period. – In the Trial Period #2 dropdown menus for how long this trial period should last, select a number and a unit of duration. For more information, see “Offering Trial Periods and Introductory Rates With Subscribe Buttons” on page 80. 6. Specify the regular billing cycle for the subscription. – Subscription Price – Enter the amount that you want to bill subscribers for regular billing cycles that occur after trial periods end. – Under the recurring basis link, select the No radio button if you want the subscription to expire after the end of the first regular billing cycle. – In the dropdown menus for the length of each billing cycle, select a number and a unit of duration. – Under the text that reads stop the recurring payments after a certain number, select the Yes radio button if you want to limit the number of regular billing cycles for a subscription. – If you select the Yes radio button in the previous step, select the number of times you that want the regular billing cycle to recur before the subscription expires.
  • 91. Website Payments Standard Integration Guide June 2008 91 Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 – Under the text that reads if payment fails for the subscription, select the No radio button if you want subscriptions to cancel immediately after attempts to collect recurring payments fail. For more information, see “Reattempting Failed Recurring Payments With Subscribe Buttons” on page 87 The following example shows how to set up regular billing cycles for a year-long installment plan with 12 equal, monthly payments. For more information, see “Limiting the Number of Billing Cycles With Subscribe Buttons” on page 81. 7. Choose a button style for your Subscribe button. Select the radio button next to the image that you want to use, if you are going to be receiving payments from your website instead of by using an email payment link. The image that you select is hosted by PayPal. To display your own image that you host on your website:
  • 92. Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 92 June 2008 Website Payments Standard Integration Guide – Click the Use your own button image link. An additional radio button and text box appear. – In the Button Image URL text box, enter the URL of your button image. If your image is hosted securely, change the entry to begin with https//. 8. Specify whether to use button encryption. – Select the Yes radio button to encrypt the generated code for the payment button. – or – – Select the No radio button to leave the generated code for the payment button and the email payment link as clear text. PayPal highly recommends that you use button encryption to protect the HTML code of your payment button. Encryption protects payment details from fraudulent alteration by third parties, thus increasing the security of the payments you accept. However, consider the limitations that encryption imposes: – Encrypted HTML code cannot be edited. Select the No radio button if you want to edit the HTML code for your button after the code is generated. – Encrypted HTML code cannot be used for email payment links. Select the No radio button if you want to create an email payment link instead of or in addition to your button. If you select the No radio button for any reason, use an alternative strategy described in Chapter 6, “Securing Your Website Payments Standard Buttons” to secure the payments you receive from the payment button or the email payment link. IMPORTANT: Merchants with significant payment volume are required to take precautions on securing Website Payment Standard buttons. 9. If you have additional details to specify for your button, such as a custom payment page that has your own logo and colors, or you want PayPal to generate a Cancel Subscription button, click the Add More Options button and follow the instructions for “Adding More Details to the Subscribe Button” on page 92. – or – If you entered all the details and options for your button, go to “Copying and Pasting the Subscribe Code” on page 95. Adding More Details to the Subscribe Button Use the Subscriptions & Recurring Payments – Page 2 page to specify the following additional details for your button.
  • 93. Website Payments Standard Integration Guide June 2008 93 Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 1. Add option fields to your button. Option fields lets subscribers select or specify options when they sign up for a subscription, such as the choice of HTML or plain text format subscriptions to electronic newsletters. Options must not change the price of the subscription. Subscribe buttons can have one or two option fields. You can use a dropdown menu, with choices that you specify, or a text box, in which subscribers type their option choice. – Option Field Type – Select either “drop-down menu” or “text box” as the type of option field. – Option Name – Enter the name of your option, for example, “Format”. Enter no more than 60 characters. – Drop-Down Menu Choices – (if applicable) If you selected “drop-down menu” as the type of option field, enter the menu choices, for example “HTML” and “Plain Text”. Choices cannot exceed 30 characters. Use a carriage return (press ENTER) to separate choices. Enter no more than 10 choices. IMPORTANT: Option fields cannot be used if you are creating an email payment link. To include Subscribe links in email messages for items with options, either send HTML emails with links to Subscribe buttons on your website that have option fields, or ask buyers to enter the option information in the Note field. 2. Create a Cancel Subscription button (optional). Choose a button style for your Cancel Subscription button, which PayPal generates automatically when you visit Page 2 to create a Subscribe button. Select the radio button next to the image that you want to use. The image that you select is hosted by PayPal. – or – To display your own image that you host on your website: – Click the Use your own button image link. An additional radio button and text box appear.
  • 94. Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 94 June 2008 Website Payments Standard Integration Guide – In the Button Image URL text box, enter the URL of your button image. If your image is hosted securely, change the entry to begin with https//. To learn more, see “Working With Cancel Subscription Buttons” on page 84. 3. Customize your payment pages. Use these settings to give subscribers a visually seamless payment experience by customizing the PayPal payment pages to match the visual style of your website. – Primary Page Style – (display only) The payment pages that your subscribers see are displayed with the page style that is specified here, unless you select a different custom payment page style below. – Custom Payment Page Style – (optional) If you already added Custom Payment Page Styles in your account profile, they are listed here. Choose the page style you would like to appear when subscribers click your Subscribe button. To learn more about creating page styles, see “Co-Branding the PayPal Checkout Pages” on page 155. – Preview – Click the Preview button to see a mock-up of the payment page style that donors see when they click your Subscribe button. 4. Customize your subscribers’s experience. Use these settings to give subscribers a payment experience that is easy to navigate.
  • 95. Website Payments Standard Integration Guide June 2008 95 Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 – Successful Payment URL – (optional) Do one of the following: Enter the URL of a page on your website that you want subscribers redirected to after they complete their payments. The URL that you enter is used by this payment button only. Click the Edit button to change the return URL that this button and all your other payment buttons use to redirect subscribers to your website after they complete their payments. For more information, see “Auto Return” on page 159. – Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off for all your payment buttons. For more information about Payment Data Transfer, see the Order Management Integration Guide. – Cancel Payment URL – (optional) Enter the URL for the page on your website that you want subscribers redirected to if they cancel their payments at any point before completing the checkout. If you do not enter a URL, subscribers who cancel are taken to a PayPal webpage. The URL that you enter is used by this payment button only. 5. Select your shipping preferences. Select the radio button that matches your need to collect addresses from subscribers: Make shipping optional – Select this radio button if you want to prompt subscribers to enter their addresses as an option. – or – Yes, require shipping – Select this radio button if you want to require subscribers to enter their addresses. – or – No shipping needed – Select this radio button if you do not require addresses from subscribers. 6. If you want to change any of the details that you entered on the previous page, click the Edit button and follow the instructions for “Specifying The Basic Features of the Subscribe Button” on page 89, beginning with Step 4. – or – If you have entered all the details and options for your button, go to “Copying and Pasting the Subscribe Code” on page 95. Copying and Pasting the Subscribe Code After you enter the details and options that you want for your Subscribe button, click the Create Button Now button. PayPal generates Subscribe code for: a payment button, which you can paste onto your website an email payment link, which you can paste into email optionally, a button and an email link to let subscribers cancel their subscriptions The Add a Subscribe button to your website page displays the generated code.
  • 96. Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 96 June 2008 Website Payments Standard Integration Guide Copying and Pasting the HTML Code for the Subscribe Button To copy and paste the HTML code for the Subscribe payment button: 1. Click the HTML code for Websites text box to select all of the generated HTML code. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. Open the webpage where you want the button to be seen. 4. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Copying and Pasting the Code for the Subscribe Email Payment Link PayPal does not generate code for email payment links if you select the Yes radio button in the Button Encryption section on the first page of the button creation tool. To turn button encryption off, return to the first page and click the No radio button in the Button Encryption section. Then click the Create Button Now button again. NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment links. Secure the payments you receive from email payment links by using an alternative method that does not involve encryption, as described in Chapter 6, “Securing Your Website Payments Standard Buttons.” To copy and paste the code for the Subscribe email payment link: 1. Click the Link for Emails text box to select all of the generated URL code. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. Open the email template or message that you want to send. 4. Paste the text that you copied from the clipboard into your email, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste.
  • 97. Website Payments Standard Integration Guide June 2008 97 Recurring Payments – Subscribe Buttons Creating Advanced Subscribe Buttons on the PayPal Website 3 Copying and Pasting the Code for the Cancel Subscription Button PayPal generates HTML code for the Cancel Subscription button if you visit the Subscriptions and Recurring Payments – Page 2 page to add more options to your Subscribe button. To copy and past the HTML code for the Cancel Subscription button: 1. Select everything in the first text box under the Copy 'Cancel Subscription' Button HTML heading by clicking the text with your mouse. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. In your web editing tool, open the webpage where you want the button to be seen. 4. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Copying and Pasting the Code for the Cancel Subscription Email Payment Link PayPal generates code for the Cancel Subscription email payment link if visit the Subscriptions and Recurring Payments – Page 2 page to add more options. However, PayPal does not generate code for email payment links if you select the Yes radio button in the Button Encryption section on the first page of the button creation tool. To turn button encryption off, return to the first page and click the No radio button in the Button Encryption section. Then click the Create Button Now button again. NOTE: You cannot use Encrypted Website Payments to encrypt the code for email payment links. Secure the payments you receive from email payment links by using an alternative method that does not involve encryption, as described in Chapter 6, “Securing Your Website Payments Standard Buttons.” To copy and paste the code for the Cancel Subscription email payment link: 1. Select everything in the second text box under the Copy 'Cancel Subscription' Button HTML heading by clicking the text with your mouse. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. Open the email that you want to send.
  • 98. Recurring Payments – Subscribe Buttons Sample HTML Code for Subscribe Buttons 3 98 June 2008 Website Payments Standard Integration Guide 4. Paste the text that you copied from the clipboard into your email, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Creating More Subscribe Buttons After you copy and paste the Subscribe code, you can create another Subscribe button for a different kind of subscription. Scroll to the bottom of the Add a Subscribe button to your website page and click the Create Another Button button. Then follow the instructions for “Specifying The Basic Features of the Subscribe Button” on page 89, beginning with Step 4. The pages of the button creation tool retain the options that you previously specified. Avoiding Problems With Pasted HTML Code After you paste the code into your webpage or email, ensure that it matches exactly the code that you copied from PayPal. Pasted code may not match the generated code for the following reasons: You did not copy all of the generated code. Your editing tool may have special areas for pasting HTML code and other areas for pasting URLs and display text. Be sure you paste the generated code into a field that accepts HTML code or URLs. Your editing tool might change some characters in the pasted code. Sample HTML Code for Subscribe Buttons The sample HTML code in this section demonstrates various features of Subscribe buttons: “Sample HTML Code for a Basic Subscribe Button” on page 98 “Sample HTML Code for a Subscribe Button With Trial Periods” on page 99 “Sample HTML Code for a Subscribe Button With Limits on Billing Cycles” on page 100 “Sample HTML Code for a Modify Subscription Button” on page 101 “Sample HTML Code for a Cancel Subscription Button” on page 102 “Sample HTML Code for a Subscribe Button With Password Management” on page 103 “Sample HTML Code for a Subscribe Button That Reattempts Payments” on page 103 Sample HTML Code for a Basic Subscribe Button The sample HTML code below illustrates a basic Subscribe button with these features: No trial periods
  • 99. Website Payments Standard Integration Guide June 2008 99 Recurring Payments – Subscribe Buttons Sample HTML Code for Subscribe Buttons 3 A subscription price of $5.00 USD A 1-month billing cycle No limit on the number of billing cycles The subscription ends only when canceled by the merchant or the subscriber. <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="alice@mystore.com"> <!-- Specify a Subscribe button. --> <input type="hidden" name="cmd" value="_xclick-subscriptions"> <! -- Identify the subscription. --> <input type="hidden" name="item_name" value="Alice's Weekly Digest"> <input type="hidden" name="item_number" value="DIG Weekly"> <! -- Set the terms of the regular subscription. --> <input type="hidden" name="currency_code" value="USD"> <input type="hidden" name="a3" value="5.00"> <input type="hidden" name="p3" value="1"> <input type="hidden" name="t3" value="M"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> Sample HTML Code for a Subscribe Button With Trial Periods The sample HTML code below illustrates a Subscribe button with these features: An initial trial period that is free and lasts for 7 days. A second trial periods that costs $5.00 USD and lasts for an additional 3 weeks. The regular subscription begins 4 weeks after the subscriber signs up. It ends only when canceled by the merchant or the subscriber. <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="alice@mystore.com"> <!-- Specify a Subscribe button. --> <input type="hidden" name="cmd" value="_xclick-subscriptions"> <! -- Identify the subscription. -->
  • 100. Recurring Payments – Subscribe Buttons Sample HTML Code for Subscribe Buttons 3 100 June 2008 Website Payments Standard Integration Guide <input type="hidden" name="item_name" value="Alice's Weekly Digest"> <input type="hidden" name="item_number" value="DIG Weekly"> <! -- Set the terms of the 1st trial period. --> <input type="hidden" name="currency_code" value="USD"> <input type="hidden" name="a1" value="0"> <input type="hidden" name="p1" value="7"> <input type="hidden" name="t1" value="D"> <! -- Set the terms of the 2nd trial period. --> <input type="hidden" name="a2" value="5.00"> <input type="hidden" name="p2" value="3"> <input type="hidden" name="t2" value="W"> <! -- Set the terms of the regular subscription. --> <input type="hidden" name="a3" value="49.99"> <input type="hidden" name="p3" value="1"> <input type="hidden" name="t3" value="Y"> <input type="hidden" name="src" value="1"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> For more information, see “Offering Trial Periods and Introductory Rates With Subscribe Buttons” on page 80. Sample HTML Code for a Subscribe Button With Limits on Billing Cycles The sample HTML code below illustrates a Subscribe button that establishes an installment plan with this features: An initial payment of $129.95 USD 5 additional monthly payments of $69.95 USD The subscriber pays a total of $497.70 USD over the 6-month course of the installment plan. <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="alice@mystore.com"> <!-- Specify a Subscribe button. --> <input type="hidden" name="cmd" value="_xclick-subscriptions"> <! -- Identify the subscription. --> <input type="hidden" name="item_name" value="Alice's Weekly Digest">
  • 101. Website Payments Standard Integration Guide June 2008 101 Recurring Payments – Subscribe Buttons Sample HTML Code for Subscribe Buttons 3 <input type="hidden" name="item_number" value="DIG Weekly"> <! -- Set the initial payment. --> <input type="hidden" name="a1" value="129.95"> <input type="hidden" name="p1" value="1"> <input type="hidden" name="t1" value="M"> <! -- Set the terms of the recurring payments. --> <input type="hidden" name="a3" value="69.95"> <input type="hidden" name="p3" value="1"> <input type="hidden" name="t3" value="M"> <! -- Limit the number of billing cycles. --> <input type="hidden" name="src" value="1"> <input type="hidden" name="srt" value="5"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> For more information, see “Limiting the Number of Billing Cycles With Subscribe Buttons” on page 81. Sample HTML Code for a Modify Subscription Button The sample HTML code in this topic illustrates a Modify Subscription button, which lets subscribers convert their current subscriptions to a new set of terms. Modify Subscription buttons are useful for letting subscribers upgrade from one subscription level to another. The subscription number remains the same as before; only the terms of the subscription change. The sample code illustrates a Modify Subscription button with these features: A subscription price of $69.95 USD A 6-month billing cycle No limit on the number of billing cycles Subscribers can modify their current subscriptions to the above terms only; they cannot sign up for additional, new subscriptions while keeping their current subscriptions. The subscription ends only when canceled by the merchant or the subscriber. <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="alice@mystore.com"> <!-- Specify a Subscribe button. -->
  • 102. Recurring Payments – Subscribe Buttons Sample HTML Code for Subscribe Buttons 3 102 June 2008 Website Payments Standard Integration Guide <input type="hidden" name="cmd" value="_xclick-subscriptions"> <! -- Identify the subscription. --> <input type="hidden" name="item_name" value="Alice's Weekly Digest"> <input type="hidden" name="item_number" value="DIG Weekly"> <! -- Set the revised subscription price and terms. --> <input type="hidden" name="a3" value="69.95"> <input type="hidden" name="p3" value="6"> <input type="hidden" name="t3" value="M"> <! -- Let current subscribers modify only. --> <input type="hidden" name="modify" value="2"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> For more information, see “Working With Modify Subscription Buttons” on page 81 Sample HTML Code for a Cancel Subscription Button Instead of an HTML form like other payment buttons, Cancel Subscribe buttons are image links to the subscription cancellation function on the PayPal website. The URL for the image link is specified with the HREF attribute, and it includes these URL-encoded parameters cmd – identifies the action as a request to cancel the active subscription of the PayPal account holder who clicked the button. alias – identifies the email address on file with the service provider’s PayPal account through which the subscriber originally signed up. In the example below, the email address alice@mystore.com is URL encoded by substituting “@” with “%40” and “.” with “%2e”. The sample code below illustrates a Cancel Subscription button that lets subscribers cancel their current, active subscriptions. <A HREF="https://www.paypal.com/cgi-bin/webscr?cmd=_subscr- find&alias=alice%40mystore%2ecom"> <IMG BORDER="0" SRC="https://www.paypal.com/en_US/i/btn/btn_unsubscribe_LG.gif"> </A>
  • 103. Website Payments Standard Integration Guide June 2008 103 Recurring Payments – Subscribe Buttons Sample HTML Code for Subscribe Buttons 3 The sample code above produces the following result: Paste the code onto you webpage near text that explains how subscription cancellations work. For more information, see “Working With Cancel Subscription Buttons” on page 84 Sample HTML Code for a Subscribe Button With Password Management The sample HTML code below illustrates a Subscribe button that has PayPal generate usernames and passwords automatically. <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="business" value="alice@mystore.com"> <!-- Specify a Subscribe button. --> <input type="hidden" name="cmd" value="_xclick-subscriptions"> <! -- Identify the subscription. --> <input type="hidden" name="item_name" value="Alice's Weekly Digest"> <input type="hidden" name="item_number" value="DIG Weekly"> <! -- Set the terms of the regular subscription. --> <input type="hidden" name="currency_code" value="USD"> <input type="hidden" name="a3" value="19.95"> <input type="hidden" name="p3" value="1"> <input type="hidden" name="t3" value="M"> <! -- Have PayPal generate usernames and passwords. --> <input type="hidden" name="usr_manage" value="1"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> For more information, see “Generating Usernames and Passwords With Subscribe Buttons” on page 85. Sample HTML Code for a Subscribe Button That Reattempts Payments The sample HTML code below illustrates a Subscribe button that has PayPal reattempt failed recurring payments before canceling subscriptions. <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
  • 104. Recurring Payments – Subscribe Buttons Sample URL Code for Subscribe Email Payment Links 3 104 June 2008 Website Payments Standard Integration Guide <input type="hidden" name="business" value="alice@mystore.com"> <!-- Specify a Subscribe button. --> <input type="hidden" name="cmd" value="_xclick-subscriptions"> <! -- Identify the subscription. --> <input type="hidden" name="item_name" value="Alice's Weekly Digest"> <input type="hidden" name="item_number" value="DIG Weekly"> <! -- Set the terms of the regular subscription. --> <input type="hidden" name="currency_code" value="USD"> <input type="hidden" name="a3" value="19.95"> <input type="hidden" name="p3" value="1"> <input type="hidden" name="t3" value="M"> <! -- PayPal reattempts failed recurring payments. --> <input type="hidden" name="sra" value="1"> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_subscribe_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form> For more information, see “Reattempting Failed Recurring Payments With Subscribe Buttons” on page 87. Sample URL Code for Subscribe Email Payment Links The sample URL code below illustrates a basic Subscribe email payment link with these features: No trial periods A subscription price of $5.00 USD A 1-month billing cycle No limit on the number of billing cycles The subscription ends only when canceled by the merchant or the subscriber. https://www.paypal.com/cgi-bin/webscr?cmd=_xclick- subscriptions&business=alice@mystore.com&item_name=Alice%27s%20Weekly%20Dig est&a3=5.00&p3=1&t3=M&currency_code=USD
  • 105. Website Payments Standard Integration Guide June 2008 107 4 The PayPal Shopping Cart – Add to Cart and View Cart Buttons With the PayPal Shopping Cart, you can let shoppers select multiple items on your website and pay for them with a single payment. Shoppers click Add to Cart buttons to add items to their virtual PayPal Shopping Carts, and they click View Cart buttons to review the items in their carts before they proceed to checkout and make their payments. Read the following topics to learn more about the PayPal Shopping Cart: “Getting Started With The PayPal Shopping Cart” on page 107 “The Checkout Experience With the PayPal Shopping Cart” on page 110 “Managing PayPal Shopping Cart Transactions” on page 120 “Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website” on page 122 “Sample HTML Code for Add to Cart Buttons” on page 130 “Sample HTML Code for View Cart Buttons” on page 132 Getting Started With The PayPal Shopping Cart The easiest way to add the PayPal shopping cart to your website is to create Add to Cart and View Cart buttons by using a tool on the PayPal website and adding the buttons the pages of your website. As soon as you add the buttons, you can begin accepting payments on your website. Do the following to add the PayPal Shopping Cart to your website: “Getting Started With Add To Cart Buttons” on page 108
  • 106. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Getting Started With The PayPal Shopping Cart 4 108 June 2008 Website Payments Standard Integration Guide “Getting Started With View Cart Buttons” on page 109 Getting Started With Add To Cart Buttons You need to add an Add to Cart button to your website for each item that you offer for sale. You can use a tool on the PayPal website to create the buttons. For each Add to Cart button you create, copy the HTML button code and paste it onto your webpage next to the item. To add a basic Add to Cart button to your website: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the Merchant Services tab. The Tools for existing PayPal merchants page opens. 3. Click the Add to Cart Button link. The PayPal Shopping Cart page opens. 4. Enter the details of your item. – Item name/service – Enter the name of your item or service. – Price – Enter a fixed price of your item. – Weight (optional) – Enter the weight of the item. Select Lbs or Kgs from the dropdown menu to specify the unit of measure. If you set up shipping rates for your account with a basis of weight, PayPal uses the value you enter here to calculate shipping charges for orders that include the item. 5. Scroll to the bottom of the page, and click the Create Button Now button. The Add a shopping cart to your site page displays the generated code. 6. Click the “Add to Cart” button code text box to select all of the generated HTML code. 7. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 8. In your web editing tool, open the webpage where you want the button to be seen. IMPORTANT: Be sure that your tool is ready for you to paste HTML code. 9. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste.
  • 107. Website Payments Standard Integration Guide June 2008 109 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Getting Started With The PayPal Shopping Cart 4 Repeat the above procedure for each item that you want to offer for purchase on your website. Getting Started With View Cart Buttons You need to create only one View Cart button, regardless of the number of Add to Cart buttons that you create and add to your website. Place several copies of the View Cart button on your website, wherever you want to let shoppers view the current contents of their shopping carts and begin the checkout process. Each time you create an Add to Cart button, the tool on the PayPal website generates code for a View Cart button. You can use the generated HTML code for any of these View Cart buttons – the code is identical. Paste the same HTML button code onto your webpages for as many View Cart buttons as you need. Too add a View Cart button to your website: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the Merchant Services tab. The Tools for existing PayPal merchants page opens. 3. Click the Add to Cart Button link. The PayPal Shopping Cart page opens. 4. Enter the details of your item. – Item name/service – Enter a name. – Price – Enter a price. 5. Scroll to the bottom of the page, and click the Create Button Now button. The Add a shopping cart to your site page displays the generated code. 6. Click the “View Cart” button code text box to select all of the generated HTML code. 7. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 8. In your web editing tool, open the webpage where you want the button to be seen. IMPORTANT: Be sure that your tool is ready for you to paste HTML code. 9. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or –
  • 108. The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 110 June 2008 Website Payments Standard Integration Guide – right-clicking your mouse, and selecting Paste. 10.Repeat this procedure beginning at Step 6 to place as many copies of the View Cart button as you want on other webpages of your website. The Checkout Experience With the PayPal Shopping Cart This section demonstrates the PayPal checkout experience for people who click Add to Cart and View Cart buttons on your website. The following diagram illustrates the steps.
  • 109. Website Payments Standard Integration Guide June 2008 111 The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 FIGURE 4.1 The Checkout Experience with Add to Cart and View Cart Buttons Read these topics to better understand the checkout experience with Add to Cart and View Cart buttons: “Begin – Shoppers Add Your Items to the PayPal Shopping Cart” on page 112 “1 – Shoppers Enter Their Billing Information or They Log In To PayPal” on page 113 “2 – Shoppers Confirm Their Transaction Details Before Paying” on page 115 “3 – Shoppers View and Print Their PayPal Payment Confirmations” on page 115 “End – Shoppers Receive Payment Authorization Notices by Email” on page 117 “Enhanced Checkout Experiences” on page 119
  • 110. The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 112 June 2008 Website Payments Standard Integration Guide Begin – Shoppers Add Your Items to the PayPal Shopping Cart The basic checkout experience with the PayPal Shopping Cart begins when someone on your website adds your items to the cart and then views it to check out. FIGURE 4.2 Shoppers Add Your Items to the PayPal Shopping Cart In this example, George begins on Kin’s Kards website, looking for birthday cards. George clicks the Add to Cart buttons under two cards that he wants. Then, he clicks the View Cart button to review his selections. PayPal displays a shopping cart page, which lets shoppers review their selections, specify quantities, and remove items before proceeding to checkout.
  • 111. Website Payments Standard Integration Guide June 2008 113 The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 FIGURE 4.3 Shoppers Review Their Selections in the Pal Shopping Cart In this case, George is satisfied with his selections and the transaction amount. He clicks the Proceed to Checkout button. 1 – Shoppers Enter Their Billing Information or They Log In To PayPal PayPal displays a billing information/log-in page, which lets shoppers enter their credit card information or log in to PayPal to pay.
  • 112. The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 114 June 2008 Website Payments Standard Integration Guide FIGURE 4.4 Shoppers Enter Their Billing Information or Log In to PayPal For the PayPal Shopping Cart, the PayPal billing information/log-in page shows transaction details near the top, such as the count of items and the transaction total. If shoppers are satisfied with the details, they enter their billing information and email addresses to pay by credit card. Buyers with PayPal accounts enter their email addresses and passwords to pay with their PayPal accounts. In this case, George is satisfied with the total transaction amount of $6.90 USD. He enters his billing information and email address, and then he clicks the Review Order and Continue button.
  • 113. Website Payments Standard Integration Guide June 2008 115 The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 2 – Shoppers Confirm Their Transaction Details Before Paying PayPal displays a transaction confirmation page to let shoppers confirm the details before they complete their transactions and authorize their payments. FIGURE 4.5 Shoppers Confirm Their Payment Details Before Paying In this case, George reviews the transaction details and clicks the Pay $6.90 Now button to complete the transaction and make his payment. 3 – Shoppers View and Print Their PayPal Payment Confirmations PayPal displays a payment confirmation page after shoppers pay to let them know that they have completed their transactions and authorized their payments successfully.
  • 114. The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 116 June 2008 Website Payments Standard Integration Guide FIGURE 4.6 Shoppers View Their Payment Confirmations From the payment confirmation page, shoppers can: View the PayPal Receipt ID – the transaction ID – to reconcile their payments. Click the View Printable Receipt link to print receipts for their records. FIGURE 4.7 Shoppers Print Their PayPal Payment Receipts In this case, George prints the PayPal payment receipt for his records.
  • 115. Website Payments Standard Integration Guide June 2008 117 The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 End – Shoppers Receive Payment Authorization Notices by Email PayPal sends shoppers a payment authorization notice by email to confirm the transaction that they made with the merchant.
  • 116. The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 118 June 2008 Website Payments Standard Integration Guide FIGURE 4.8 Shoppers Receive Payment Authorization Notices by Email In this case, PayPal sends George an email message notifying him of his transaction with Kin’s Kards and his authorization for payment of $6.90 USD.
  • 117. Website Payments Standard Integration Guide June 2008 119 The PayPal Shopping Cart – Add to Cart and View Cart Buttons The Checkout Experience With the PayPal Shopping Cart 4 Enhanced Checkout Experiences Website Payments Standard offers these features to enhance the basic checkout experience for your shoppers: Calculating Tax and Shipping Amounts Co-Branding the Checkout Pages with Your Logo and Colors Prepopulating the Checkout Pages With Billing and Shipping Addresses Returning People to Your Website After They Check Out Calculating Tax and Shipping Amounts The basic checkout experience requires tax and shipping amounts to be included in your item price. Set up tax rates and shipping rates in your account profile to enhance the checkout experience for shoppers so that they can see tax and shipping costs separately. When people check out, PayPal calculates tax and shipping automatically and includes the amounts in the transaction total. You can specify tax and shipping rates in your account profile, and PayPal calculates the charges automatically for each transaction. In addition, you can specify tax and shipping charges individually for items in the payment buttons that you create. For more information, see: “Automatic Calculation of Sales Tax” on page 172 “Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177 “Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191 Co-Branding the Checkout Pages with Your Logo and Colors The basic checkout experience displays your email address or your business name in the upper left corner of the checkout pages. Use any of the following techniques to enhance the checkout experience with your logo and colors, so that the checkout pages match more closely the style of your website. Set up custom payment pages in your account profile Include a page style variable on individual buttons. Include customizing of payment page variables on individual buttons To learn more, see “Co-Branding the PayPal Checkout Pages” on page 155. Prepopulating the Checkout Pages With Billing and Shipping Addresses The basic checkout experience has forms for filling in billing and shipping information. You can enhance the checkout experience by prepopulating the forms with information that you have on your website about the shopper. To learn more, see “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.
  • 118. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Managing PayPal Shopping Cart Transactions 4 120 June 2008 Website Payments Standard Integration Guide Returning People to Your Website After They Check Out The basic checkout experience leaves people on the PayPal website after they check out. Use one of the following techniques to enhance the checkout experience so that people return to your website, instead. Return URL – Let people return to a page on your website if they click a return link or button on the PayPal payment confirmation page. To learn more, see Step 4 of “Adding More Details to the PayPal Shopping Cart Button” on page 125 or “HTML Variables for Displaying PayPal Checkout Pages” on page 245. Auto Return – Have PayPal return people automatically to page on your website. IMPORTANT: PayPal recommends that you turn Payment Data Transfer on when you turn Auto Return on. With Auto Return on, PayPal redirects people to your website from an alternative PayPal payment confirmation page that does not display a View Printable Receipt link, so people cannot print PayPal payment receipts. Payment Data Transfer provides the transaction information that you need to let people print receipts from your website. To learn more, see “Auto Return” on page 159. Payment Data Transfer – PayPal includes information about the completed transaction when you use a return URL or Auto Return to send people back to your website. Use the information to display a “thank you, print your receipt” page on your website. To learn more, see the Order Management Integration Guide. Managing PayPal Shopping Cart Transactions Read the following topics to learn how PayPal helps you manage PayPal Shopping Cart transactions: Using Email Notices to Track PayPal Shopping Cart Transactions Using Recent Activity to Track PayPal Shopping Cart Transactions Using Transaction History to Track PayPal Shopping Cart Transactions Using Downloadable History Logs to Track PayPal Shopping Cart Transactions Using Instant Payment Notification to Track PayPal Shopping Cart Transactions Using Email Notices to Track PayPal Shopping Cart Transactions PayPal sends you email notices when: Payments are made. Payments are pending. Payments are canceled. Generally, PayPal sends email notices to the primary email address of your account.
  • 119. Website Payments Standard Integration Guide June 2008 121 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Managing PayPal Shopping Cart Transactions 4 PayPal can send email notices to an alternate email address, such as to someone in your organization who handles order processing or accounting. Add the additional email address to your account profile. Then, use that email address as the one to receive payments when you use the button creation tool on the PayPal website to create your Add to Cart buttons. Specify the alternate email address as the value for the business HTML variable when you write the HTML code yourself for your Add to Cart buttons. For more information, see Step 4 in the instructions for “Adding More Details to the PayPal Shopping Cart Button” on page 125, or Appendix A, “HTML Variables for Website Payments Standard.” Using Recent Activity to Track PayPal Shopping Cart Transactions PayPal displays PayPal Shopping Cart transactions in your recent activity, soon after shoppers complete them by clicking Add to Cart buttons and checking out on your website. FIGURE 4.9 Using Recent Activity to Track PayPal Shopping Cart Transactions To view your recent history: 1. Log in to you PayPal account. 2. Navigate to My Account > Overview. The My Account Overview opens. 3. Scroll down to the Recent Activity table near the bottom of the page. Using Transaction History to Track PayPal Shopping Cart Transactions PayPal lets you search for PayPal Shopping Cart transactions on the History page. The status of payments found there can be: Completed – Transactions were successful, and funds were credited to your account Cleared – Payments cleared senders’ accounts, and funds were credited to your account Uncleared – Payments have not cleared sender’s accounts, and funds were not credited To learn how to work with transaction history, see the Order Management Integration Guide.
  • 120. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 122 June 2008 Website Payments Standard Integration Guide Using Downloadable History Logs to Track PayPal Shopping Cart Transactions PayPal lets you download your PayPal Shopping Cart transactions to your computer from the History page. You can specify a date range for the transactions and the file format of the download file. To learn how to work with downloadable history logs, see the Order Management Integration Guide. Using Instant Payment Notification to Track PayPal Shopping Cart Transactions PayPal lets your web server receive messages about PayPal Shopping Cart transactions and payment activity on your account. If you activate Instant Payment Notification, PayPal sends messages when: Payments are first made, with a status of completed or pending. Payments clear, fail, or are denied, if the initial status was pending. To learn more about Instant Payment Notification, see “Instant Payment Notification – notify_url” on page 230 and the Order Management Integration Guide. Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website You can use the button creation tool on the PayPal website to create Add to Cart and View Cart buttons. IMPORTANT: The button creation tool for PayPal Shopping Cart buttons does not support encryption of the code it generates. Secure your button code for Add to Cart buttons by using an alternative strategy described in Chapter 6, “Encrypting Buttons Dynamically With Encrypted Website Payments.” View Cart buttons do not require encryption. HTML Code for Add to Cart and View Cart Buttons With the button creation tool for the PayPal Shopping Cart, you create individual Add to Cart buttons for the items that you want to sell, and you paste the generated HTML code for the buttons next to the items on your website. The button creation tool also generates HTML code for View Cart buttons. You need to create only one View Cart button for the PayPal Shopping Cart. Place copies of the generated HTML code for the View Cart button wherever you want shoppers to click to view their shopping carts and proceed to checkout.
  • 121. Website Payments Standard Integration Guide June 2008 123 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 Pages in the Button Creation Tool for Add to Cart and View Cart Buttons The button creation tool for Add to Cart and View Cart buttons has three pages: PayPal Shopping Cart – the initial page to specify the required and most often used optional features PayPal Shopping Cart – Page 2 – an optional page to specify additional, advanced features Add a shopping cart to your site – the final page that has the generated code for your payment button You can switch between the first and second pages until you click the Create Button Now button to display the third page that has the generated code. Pricing Items in Multiple Currencies All items that shoppers add to carts must be priced in the same currency. The first item that shoppers add to carts or the currency specified with the currency_code variable determines the currency for shopping carts. After a shopper adds the first item to a shopping cart, the shopper cannot add items priced in other currencies. To change the currency of a shopping cart, a shopper must purchase the items in the cart with the current currency or empty the cart and add items priced in the other currency. To avoid shopping difficulties that arise with multiple currencies, price all of your items in the same currency. If you must price items in multiple currencies, let shoppers choose the currency for viewing your catalog and display prices on your website only in the currency that the shopper selected. Specifying the Basic Features of the Add to Cart Button To create HTML code for an Add to Cart button using a tool on the PayPal website: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the Merchant Services tab. 3. Click the Add to Cart Button link. The PayPal Shopping Cart page opens. 4. Enter the details of your item. – Item name/service – Enter the name of your item or service. – Item ID/number – (optional) Enter the inventory ID or tracking number of your item. The value you enter is displayed to shoppers at the time of payment, and it is displayed in the transaction details that both merchants and shoppers can view on the PayPal website. – Price – Enter a fixed price of your item.
  • 122. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 124 June 2008 Website Payments Standard Integration Guide – Currency – From the dropdown menu, select the currency in which you priced the item. The dropdown menu automatically selects the currency of your primary balance. For more information, see “Pricing Items in Multiple Currencies” on page 123. – Buyer’s default country – From the dropdown menu, select a country for the PayPal log-in or sign-up page that shoppers see when they click the button. The content on the page will be appropriate for the country you select. Shoppers can change the country that you select, after the log-in or sign-up page appears. – Weight (optional) – Enter the weight of the item. Select Lbs or Kgs from the dropdown menu to specify the unit of measure. If you set up shipping rates for your account with a basis of weight, PayPal uses the value you enter here to calculate shipping charges for orders that include the item. 5. Choose a button style for your Add to Cart button. Select the radio button next to the image that you want to use. The image that you select is hosted by PayPal. – or – To display your own image that you host on your website: – Click the Use your own button image link. An additional radio button and text box appear. – In the Button Image URL text box, enter the URL of your button image. If your image is hosted securely, change the entry to begin with https//. 6. Specify a shipping method option. – Select the Use my shipping calculations radio button if you set up shipping rates for your account and you want the shipping charges for the item to be calculated automatically. – or – – Select the Use a flat rate amount radio button if you have not set up shipping rates for your account or you want to exclude the item from automatic calculation of shipping charges. In the text box, enter a fixed amount that will be added to the shipping charges for purchases that include the item. Enter zero (0.00) for items that do not incur shipping
  • 123. Website Payments Standard Integration Guide June 2008 125 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 charges. The currency for the amount that you enter is the same as the currency for the item. For more information, see “Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177 or “Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191. 7. Specify a sales tax option. – Select the Use my sales tax calculations radio button if you set up tax rates for your account and you want taxes on the item to be calculated automatically. – or – – Select the Use a flat rate amount radio button if you have not set up sales tax calculations for your account or you want to exclude the item from automatic calculation of taxes. In the text box, enter a fixed amount that will be added to the taxes for purchases that include the item. Enter zero (0.00) for non-taxable items. The currency for the amount that you enter is the same as the currency for the item. For more information, see “Automatic Calculation of Sales Tax” on page 172. 8. If you have additional details to specify for your button, such as option fields or a custom payment page style that has your own logo and colors, click the Add More Options button and follow the instructions for “Adding More Details to the PayPal Shopping Cart Button” on page 125. – or – If you entered all the details and options for your button, go to “Copying and Pasting the PayPal Shopping Cart HTML Code” on page 129. Adding More Details to the PayPal Shopping Cart Button Use the PayPal Shopping Cart – Page 2 page to specify the following additional details for your button. 1. Add option fields to your button. Option fields lets shoppers select or specify options when they purchase the item, such as color or size. Options must not change the price of the item. Add to Cart buttons can have one or two option fields. You can use a dropdown menu, with choices that you specify, or a text box, in which shoppers type their option choice. – Option Field Type – Select either “drop-down menu” or “text box” as the type of option field. – Option Name – Enter the name of your option, for example, “Size” or “Color”. Enter no more than 60 characters. – Drop-Down Menu Choices – (if applicable) If you selected “dropdown menu” as the type of option, enter your menu choices. Choices cannot exceed 30 characters. Use a carriage return (press ENTER) to separate choices. Enter no more than 10 choices.
  • 124. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 126 June 2008 Website Payments Standard Integration Guide 2. Choose a button style for your View Cart button. Select the radio button next to the image that you want to use. The image that you select is hosted by PayPal. – or – To display your own image that you host on your website: – Click the Use your own button image link. An additional radio button and text box appear. – In the Button Image URL text box, enter the URL of your button image. If your image is hosted securely, change the entry to begin with https//. NOTE: You need to create only one View Cart button for the PayPal Shopping Cart. Place copies of the generated HTML code for the View Cart button wherever you want shoppers to click to view their shopping cart and begin the checkout process. 3. Customize your payment pages. Use these settings to give shoppers a visually seamless payment experience by customizing the PayPal payment pages to match the visual style of your website. – Primary Page Style (display only) – The payment pages that your shoppers see are displayed with the page style that is specified here, unless you select a different custom payment page style below. – Custom Payment Page Style (optional) – If you already added Custom Payment Page Styles in your account profile, they are listed here. Choose the page style you would like to appear when shoppers check out and pay from the PayPal Shopping Cart. To learn more about creating page styles, see “Co-Branding the PayPal Checkout Pages” on page 155. – Preview – Click the Preview button to see a mock-up of the payment page style that shoppers see.
  • 125. Website Payments Standard Integration Guide June 2008 127 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 4. Customize your buyer’s experience. Use these settings to give shoppers a payment experience that is easy to navigate. – Successful Payment URL – (optional) Enter the URL for the page on your website that you want shoppers redirected to after they complete their payments. If Auto Return is off, the button uses the Successful Payment URL that you specify here. If Auto Return is on, this field contains the Return URL that you specified when you turned Auto Return on. Click the Edit button to change the Return URL and the Successful Payment URL that this button uses. For more information, see “Auto Return” on page 159. – Payment Data Transfer – Click the Edit button to turn Payment Data Transfer on or off for all your payment buttons. For more information about Payment Data Transfer, see the Order Management Integration Guide. – Cancel Payment URL – (optional) Enter the URL for the page on your website that you want shoppers redirected to if they cancel their payments at any point in the PayPal Shopping Cart checkout experience. If you do not enter a cancel payment URL, shoppers who cancel their payments are taken to a PayPal webpage.
  • 126. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 128 June 2008 Website Payments Standard Integration Guide 5. Select your shipping preferences. Select the radio button that matches your need to collect shipping addresses from shoppers: Make shipping optional – Select this radio button if you want to prompt shoppers to enter their shipping addresses as an option. – or – Yes, require shipping – Select this radio button if you want to require shoppers to enter their shipping addresses. – or – No shipping needed – Select this radio button if your products not require shipping, such as digital goods that shoppers download, or if your items are services that do not require on-site delivery. 6. Collect customer notes and special instructions from shoppers. Use these settings to prompt shoppers to enter notes or special handling instructions. – Select the Yes radio button if you want shoppers to enter notes to you when they make their payments. If you leave the No radio button selected, shoppers cannot include notes. – Note Title – If you selected the Yes radio button, change the default value for the field label to prompt shoppers for specific information, such as their customer IDs or special handling instructions. Enter no more than 30 characters. 7. Select an email address to receive payment. (optional) In the Email Address dropdown menu, select the email address through which you want to receive payments when people click the payment button that you are creating. The dropdown menu selects your primary email address by default. You might select the email address of the person in your organization who handles order fulfillment or accounting. All payments are deposited to your PayPal account balance, regardless of which email addresses receive particular payments. Only confirmed email addresses can be used to receive payments.
  • 127. Website Payments Standard Integration Guide June 2008 129 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website 4 8. If you want to change any of the details that you entered on the previous page, click the Edit button and follow the instructions for “Specifying the Basic Features of the Add to Cart Button” on page 123, beginning with Step 4. – or – If you have entered all the details and options for your button, go to “Copying and Pasting the PayPal Shopping Cart HTML Code” on page 129. Copying and Pasting the PayPal Shopping Cart HTML Code After you enter the details and options that you want for your Shopping Cart buttons, click the Create Button Now button. PayPal generates HTML code for two PayPal Shopping Cart buttons: an Add to Cart button, which is used for the item you want to sell. A View Cart button, which takes shoppers to a webpage hosted by PayPal that displays all the items that shoppers have added to their carts and from where they check out and pay. The Add a shopping cart to your site page displays the generated code. Copying and Pasting the HMTL Code for the Add to Cart Button To copy and past the HTML code for the Add to Cart button: 1. Click the “Add to Cart” button code text box to select all of the generated HTML code. 2. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 3. In your web editing tool, open the webpage where you want the button to be seen. 4. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Copying and Pasting the HTML Code for the View Cart Button You need to paste at least one View Cart button onto your website. Paste the View Cart button HTML code onto your website in locations where shoppers can easily see them and click to checkout. PayPal generates the same HTML code for the View Cart button every time you create an Add to Cart button. View Cart buttons do not contain any payment information. To copy and past the HTML code for the View Cart button: 1. Scroll down the Add a shopping cart to your site page to the View Cart Button section.
  • 128. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Sample HTML Code for Add to Cart Buttons 4 130 June 2008 Website Payments Standard Integration Guide 2. Click the “View Cart” button code text box to select all of the generated HTML code. 3. Copy the text that you selected to the clipboard, by: – pressing Ctrl+C. – or – – right-clicking your mouse, and selecting Copy. 4. Open the webpage where you want the button to be seen. 5. Paste the text that you copied from the clipboard onto your webpage where you want the button to appear, by: – pressing Ctrl+V. – or – – right-clicking your mouse, and selecting Paste. Creating More Add to Cart Buttons After you copy and paste the PayPal Shopping Cart code, you can create another Add to Cart button for a different item. Scroll to the bottom of the Add a shopping cart to your site page and click the Create Another Button button. Then follow the instructions for “Creating Advanced PayPal Shopping Cart Buttons on the PayPal Website” on page 122, beginning with Step 4. The pages of the button creation tool retain the options that you specified previously. Avoiding Problems With Pasted HTML Code After you paste the HTML code onto your webpage, ensure that it matches exactly the HTML code you copied from PayPal. Pasted code may not match the generated code for the following reasons: You did not copy all of the generated code. Your HTML editing tool may have special areas for pasting HTML code and other areas for pasting display text. Be sure you paste the generated code into a field that accepts HTML code. Your HTML editing tool might change some characters in the pasted code. Sample HTML Code for Add to Cart Buttons You can write your own HTML code for Add to Cart buttons. To protect against malicious users tampering with the HTML code for your Add to Cart buttons and obtaining fraudulent prices, see Chapter 6, “Securing Your Website Payments Standard Buttons.” IMPORTANT: Merchants with significant payment volume are required to take precautions on securing Website Payment Standard buttons.
  • 129. Website Payments Standard Integration Guide June 2008 131 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Sample HTML Code for Add to Cart Buttons 4 Use the following HTML code as a starting point for writing your own HTML code for Add to Cart buttons. The value for the business variable must match a confirmed email address on file with your PayPal account. You can change the values for other variables, with the exception of cmd and add. EXAMPLE 4.1 HTML for PayPal Shopping Cart “Add to Cart” Button <form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="seller@hatsgalore.com"> <!-- Specify a PayPal Shopping Cart Add to Cart button. --> <input type="hidden" name="cmd" value="_cart"> <input type="hidden" name=”add” value="1"> <!-- Specify details about the item to be added to the cart--> <input type="hidden" name="item_name" value="Baseball Hat"> <input type="hidden" name="item_number" value="12345"> <input type="hidden" name="amount" value="12.9"”> <input type="hidden" name="currency_code" value="USD"> <!-- Provide the shopper with a dropdown menu option field. --> <table> <tr> <td> <input type="hidden" name="on0" value="Size">Size </td> <td> <select name="os0"> <option value="Select a Size">Select a Size <option value="Small">Small <option value="Medium">Medium <option value="Large">Large </select> </td> </tr> </table> <!-- Display the payment button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_cart_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form>
  • 130. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Sample HTML Code for View Cart Buttons 4 132 June 2008 Website Payments Standard Integration Guide The sample code above produces the following result: Paste the code onto your webpage below an image or a text description of the item. Sample HTML Code for View Cart Buttons You can write your own HTML code for View Cart buttons. View Cart buttons contain no payment information, so you do not need to take on precautions on securing them. Use the following HTML code as a starting point for writing your own HTML code for View Cart buttons. The value for the business variable must match a confirmed email address on file with your PayPal account, and it must match the value you used for the business variables on your Add to Cart buttons. You can change the values for other variables, with the exception of cmd and display. EXAMPLE 4.2 HTML for PayPal Shopping Cart “View Cart” Button <form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post"> <!-- Identify your business so that you can collect the payments. --> <input type="hidden" name="business" value="seller@hatsgalore.com"> <!-- Specify a PayPal Shopping Cart View Cart button. --> <input type="hidden" name="cmd" value="_cart"> <input type="hidden" name="display" value="1"> <!-- Display the View Cart button. --> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_viewcart_LG.gif" alt="PayPal - The safer, easier way to pay online"> <img alt="" border="0" width="1" height="1" src="https://www.paypal.com/en_US/i/scr/pixel.gif" > </form>
  • 131. Website Payments Standard Integration Guide June 2008 133 The PayPal Shopping Cart – Add to Cart and View Cart Buttons Sample HTML Code for View Cart Buttons 4 The sample code above produces the following result: Paste the code onto the pages or your website wherever you want shoppers to click to view the contents of their PayPal Shopping Carts and begin the checkout process.
  • 132. The PayPal Shopping Cart – Add to Cart and View Cart Buttons Sample HTML Code for View Cart Buttons 4 134 June 2008 Website Payments Standard Integration Guide
  • 133. Website Payments Standard Integration Guide June 2008 135 5 Third-Party Shopping Carts – The Cart Upload Command This chapter describes how to develop a third-party shopping cart that is compatible with PayPal and Website Payments Standard. NOTE: If you are not a third-party developer, you can easily add a PayPal Shopping Cart which is hosted by PayPal to your site. See Chapter 4, “The PayPal Shopping Cart – Add to Cart and View Cart Buttons.” Read the following topics to learn more about third-party shopping carts: “How A Third Party Shopping Cart Works” on page 135 “Integrating PayPal with Third Party Shopping Carts” on page 141 How A Third Party Shopping Cart Works This example shows how a third party shopping cart works with PayPal and Website Payments Standard. The example merchant has the following account profile settings: PayPal Account Optional is turned on. The shopper can pay without an existing PayPal account and is offered the chance to sign up for one after completing the payment. For more information, see “PayPal Account Optional” on page 163. Shipping Calculations have been set up. PayPal calculates the shipping charges automatically and adds them to the order. For more information, see “Automatic Calculation of Shipping Charges (U.S. Merchants Only)” on page 177 or “Automatic Calculation of Shipping Charges (non-U.S. Merchants Only)” on page 191. Auto Return is turned off. Shoppers must click a Return to Merchant button to redirect their browsers to the merchant website after completing their payments with PayPal. For more information, see “Auto Return” on page 159. What The Shopper Sees With Third Party Shopping Carts Bob is shopping for photos on the DesignerFotos website. He selects several photos for purchase by clicking the Add to Cart button underneath each one.
  • 134. Third-Party Shopping Carts – The Cart Upload Command How A Third Party Shopping Cart Works 5 136 June 2008 Website Payments Standard Integration Guide FIGURE 5.1 Third Party Shopping Cart – Add to Cart In this example integration, the third party shopping cart is programmed by the vendor to display the contents of the cart each time Bob clicks an Add to Cart button. In addition, Bob can click the View Cart link at any time to review the items already in the cart and to begin the PayPal Website Payments Standard checkout experience. FIGURE 5.2 Third Party Shopping Cart – View Shopping Cart After selecting the items he wants to buy and specifying their quantities, Bob clicks the Proceed to Checkout button.
  • 135. Website Payments Standard Integration Guide June 2008 137 Third-Party Shopping Carts – The Cart Upload Command How A Third Party Shopping Cart Works 5 Bob’s browser is redirected to the PayPal website. Shoppers with PayPal accounts can enter their PayPal account credentials and click the Log In button to access information already on file with PayPal, such as shipping addresses. FIGURE 5.3 Third Party Shopping Cart – PayPal Payment Login Page Bob does not have a PayPal account, so he enters his payment and billing information on the payment login page and clicks the Review Payment button. Bob is taken to a review page that shows the details of his payment.
  • 136. Third-Party Shopping Carts – The Cart Upload Command How A Third Party Shopping Cart Works 5 138 June 2008 Website Payments Standard Integration Guide FIGURE 5.4 Third Party Shopping Cart – PayPal Payment Review Page DesignerFotos has set up Shipping Calculations in the account profile, so PayPal calculates shipping costs automatically and adds them to the order. Bob clicks the Pay $505.00 Now! button to complete the payment. In response, the browser takes Bob to a payment confirmation page. DesignerFotos has Auto Return turned off in the account profile, so the page displays a button to return to the DesignerFotos website. Bob can: Click the Return to DesignerFotos button to return to the merchant website. Click the View Printable Receipt link to view and print a PayPal payment receipt. Click the Create Account button to sign up for a PayPal account. Bob does not have a PayPal account yet, and he chooses to open one by entering his email address, a password, and clicking the Create Account button. The payment and shipping information he used for the transaction is added to his PayPal account automatically.
  • 137. Website Payments Standard Integration Guide June 2008 139 Third-Party Shopping Carts – The Cart Upload Command How A Third Party Shopping Cart Works 5 FIGURE 5.5 Third PartyShopping Cart – PayPal Payment Confirmation Page PayPal sends Bob an email notice of his payment to DesignerFotos.
  • 138. Third-Party Shopping Carts – The Cart Upload Command How A Third Party Shopping Cart Works 5 140 June 2008 Website Payments Standard Integration Guide FIGURE 5.6 Email Payment Receipt from PayPal to Shopper What Merchants See PayPal sends DesignerFotos an email notice of Bob’s payment. FIGURE 5.7 Email Payment Receipt from PayPal to Merchant NOTE: DesignerFotos (the user seller@designerfotos.com) can also see the payment in the PayPal account history.
  • 139. Website Payments Standard Integration Guide June 2008 141 Third-Party Shopping Carts – The Cart Upload Command Integrating PayPal with Third Party Shopping Carts 5 Integrating PayPal with Third Party Shopping Carts Instead of relying on the PayPal Shopping Cart, many merchants use third party shopping carts that are already integrated with PayPal. The section describes how developers of third party carts integrate with PayPal using Website Payments Standard. Required Third Party Shopping Cart Variables Your HTML code requires at least the following hidden HTML variables. For a complete list of variables, see Appendix A, “HTML Variables for Website Payments Standard.” There are two ways to integrate your third party shopping cart with PayPal and Website Payments Standard: Pass the details of the individual items. Pass the aggregate amount of the total cart payment, rather than the individual item details. Passing Individual Item Details to PayPal If you code your third party shopping cart to pass individual items to PayPal, information about the items is included in shoppers’ and the merchants’ transaction histories and notifications. 1. Set the cmd variable to _cart. 2. Include the upload variable: <input type="hidden" name="upload" value="1"> 3. Define item details for each item in the cart. Specify the required variables and any optional variables listed inTable A.1, “Allowable Values for the cmd HTML Variable.” Append _x to the variable name, where x is the item number, starting with 1 and increasing by one for each item added to the cart. The first item in the cart must be defined with variables ending in _1, like item_name_1, amount_1, and quantity_1; the second item with variables like item_name_2, amount_2, and TABLE 5.1 Required Third Party Shopping Cart Variables Name Description amount_1 Price of a single item or the total price of all items in the shopping cart business Email address of your PayPal account item_name_1 Name of the item or a name for the entire shopping cart upload Indicates the use of third party shopping cart
  • 140. Third-Party Shopping Carts – The Cart Upload Command Integrating PayPal with Third Party Shopping Carts 5 142 June 2008 Website Payments Standard Integration Guide quantity_2; the third item with variables like item_name_3, amount_3, and quantity_3; and so on. IMPORTANT: The _x values must increment by one continuously in order to be recognized. If you skip from item #1 to item #3 without defining an item #2, the third item will be ignored. The minimum required HTML for your post to PayPal looks similar to the following. EXAMPLE 5.1 HTML for Passing Individual Item Detail to PayPal <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_cart"> <input type="hidden" name="upload" value="1"> <input type="hidden" name="business" value="seller@designerfotos.com"> <input type="hidden" name="item_name_1" value="Item Name 1"> <input type="hidden" name="amount_1" value="1.00"> <input type="hidden" name="item_name_2" value="Item Name 2"> <input type="hidden" name="amount_2" value="2.00"> <input type="submit" value="PayPal"> </form> Setting Currency in the Cart All monetary variables (amount_x., shipping_x., shipping2_x, handling_x, tax_x., and tax_cart) are interpreted in the currency designated by the currency_code variable posted with the payment. Because currency_code is not item-specific, there is no need to append _x to the currency_code variable name. If no currency_code variable is posted, all monetary values default to U.S. Dollars. Setting Tax on Individual Items Use the tax_x variable to specify the tax for a particular item in the cart. For example, the following line specifies that the tax on item 2 in the cart is 15 cents: <INPUT TYPE="hidden" name="tax_2" value=".15"> Setting Shipping Charges on Individual Items Use the weight_x and weight_unit variables to specify item weights if the merchant’s profile-based shipping rates are based on weight. For example, the following lines specify the weight of item 3 in the cart as 1.5 kg. <INPUT TYPE="hidden" name="weight_3" value="1.5"> <INPUT TYPE="hidden" name="weight_unit" value="kgs"> Use the quantity_x variable if the merchant’s profile-based shipping rates are based on quantity. For example, the following line specifies that the quantity for item 3 in the cart is 6. <INPUT TYPE="hidden" name="quantity_3" value="6">
  • 141. Website Payments Standard Integration Guide June 2008 143 Third-Party Shopping Carts – The Cart Upload Command Integrating PayPal with Third Party Shopping Carts 5 Setting the Tax for the Entire Cart Use the tax_cart variable to specify a tax amount that applies to the entire transaction, rather than to individual items. The tax_cart variable overrides any per-item tax amount specified with tax_x. Setting the Shipping Charge for the Entire Cart Use the shipping variable without additional shipping2 variables to specify the shipping charge for the entire transaction. The value of shipping is used for the shipping charges, regardless of the merchant’s profile-based shipping rates and rate basis. Use the weight_cart and weight_unit variables to specify the total order weight if the merchant’s profile-based shipping rates are configured with a basis of weight. The weight_cart variable overrides any per-item weights specified with weight_x. Passing the Aggregate Shopping Cart Amount to PayPal You can aggregate your entire shopping cart and pass the total amount to PayPal. You must post a single item_name_1 for the entire cart and the total price of the cart contents in amount_1 as though it were a purchase of a single item. NOTE: One drawback with passing aggregate cart information is that shoppers do not see the individual items in their order on the PayPal payment pages. The following HTML is identical to “HTML for Passing Individual Item Detail to PayPal” on page 142 except the individual items amounts and item names are aggregated into a single amount and a single item. EXAMPLE 5.2 HTML for Aggregate Cart Detail to PayPal <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_cart"> <input type="hidden" name="upload" value="1"> <input type="hidden" name="business" value="seller@designerfotos.com"> <input type="hidden" name="item_name_1" value="Aggregated items"> <input type="hidden" name="amount_1" value="3.00"> <input type="submit" value="PayPal"> </form> Securing Your Shopping Cart After you have customized you third party shopping cart, protect against malicious users tampering with the button code and submitting an incorrect charge by using one of the methods described in Chapter 6, “Encrypting Buttons Dynamically With Encrypted Website Payments.”
  • 142. Third-Party Shopping Carts – The Cart Upload Command Integrating PayPal with Third Party Shopping Carts 5 144 June 2008 Website Payments Standard Integration Guide
  • 143. Website Payments Standard Integration Guide June 2008 145 6 Securing Your Website Payments Standard Buttons Because non-encrypted buttons are in clear text in the source view of your webpages, the button code can be viewed by anyone. A malicious user could copy a page, change button variables such as price, and make a fraudulent payment. IMPORTANT: Merchants with significant payment volume are required to take precautions on securing Website Payment Standard buttons. PayPal provides the following strategies for securing Website Payments Standard buttons. Use one or more of the following security strategies to prevent and/or detect tampering with your buttons: Creating an Encrypted Button on the PayPal Website Create an encrypted button by using a button creation tool on the PayPal website. Best if you sell just a few items and don’t need to change pricing often. This is also the easiest way to secure your buttons. Verifying Each Payment Manually Manually check the price of each payment in your PayPal account before shipping. Good if you accept donations or you sell items individually with prices thad do not change. You can review transaction history on the PayPal website, or you can download a transaction report from the PayPal website. You are required to reconcile your payments, especially if you have non-encrypted buttons. Verifying Payments With Instant Payment Notification With Instant Payment Notification, PayPal posts a message to your server when someone pays you. You are required to reconcile your payments, especially if you have non-encrypted buttons. With Instant Payment Notification, you can automate the reconciliation process. Otherwise, you must reconcile your payments manually. Encrypting Buttons Dynamically With Encrypted Website Payments Using a script and open-source libraries from OpenSSL, encrypt your buttons dynamically when rendering your webpages. Good if you have previously built a custom payment solution by using Buy Now or Donate buttons, or you are using Add to Cart buttons with the PayPal Shopping Cart. You must be comfortable programming in scripts like PHP and ASP to use Encrypted Website Payments. Blocking Non-encrypted Website Payments To add extra security to your encrypted buttons, update your PayPal account to block non-encrypted payments.
  • 144. Securing Your Website Payments Standard Buttons Creating an Encrypted Button on the PayPal Website 6 146 June 2008 Website Payments Standard Integration Guide Creating an Encrypted Button on the PayPal Website A simple way to make an encrypted button is to use a button creation tool on the PayPal website. You can create encrypted Buy Now, Donate, and Subscribe buttons by using a tool. 1. Log in to your Business or Premier account. 2. Click the Merchant Services tab. 3. Click the Buy Now Button link or the Donate link, depending on the kind of encrypted button that you want to create. 4. Enter details about your button, and choose a button image. 5. In the Security Settings section, select the Yes radio button to encrypt your button. This is the default setting. 6. Click the Create Button Now button to generate the encrypted HTML code. – or – Click the Add More Options button to enter optional details about your button. NOTE: Some settings on the Add More Options page require that you change Security Settings to No. In such cases, you will have to use an alternative strategy to secure your buttons. See “Verifying Each Payment Manually” on page 146, and “Verifying Payments With Instant Payment Notification” on page 147. 7. Update the profile settings on your PayPal account to block non-encrypted website payments, as described in “Blocking Non-encrypted Website Payments” on page 152. Verifying Each Payment Manually If you process a small number of transactions, you can verify each payment manually through your transaction history and the reporting tools provided by PayPal. To verify payments found in your transaction history: 1. Log in to your Business or Premier account. 2. In the My Account tab, click the History subtab. 3. In the Show dropdown menu, select “Payments Received”. 4. Specify a time frame for the payments you want to verify. 5. Click the Search button. 6. For each payment that was found, verify that the item amounts match the amounts you charge.
  • 145. Website Payments Standard Integration Guide June 2008 147 Securing Your Website Payments Standard Buttons Verifying Payments With Instant Payment Notification 6 For detailed instructions on using the History subtab, see the Order Management Integration Guide. Verifying Payments With Instant Payment Notification With Instant Payment Notification, PayPal posts a message to your server when someone pays you. You specify the URL through which you receive Instant Payment Notification messages in your PayPal account. The Instant Payment Notification message is a text file that includes payment details, such as the name of the payer and the amount paid. Verify the Instant Payment Notification amount by comparing it with the price of the product in your database. To learn more about Instant Payment Notification, see the Order Management Integration Guide. Encrypting Buttons Dynamically With Encrypted Website Payments To make online payments more secure, use Encrypted Website Payments to protect Website Payment Standards payment buttons that you generate or write yourself. Encrypted Website Payments relies on standard public key encryption for protection. With public and private keys, you can dynamically generate HTML code for payment buttons and encrypt the payment details before displaying the buttons on your website. TABLE 6.1 How Encrypted Website Payments Works Website Actions Payer Actions PayPal Actions Generate a public key for the website, upload it to PayPal, and download the PayPal public certificate to the website. Generate HTML code for a payment button. Encrypt the generated code by using the PayPal public key and then signing the encrypted code with the website’s private key. Publish the signed, encrypted HTML code for the payment button to the website. Click the published PayPal payment button. Check the authenticity of the data by using the merchant’s public key previously uploaded to PayPal. Decrypt the protected button code by using the PayPal private key.
  • 146. Securing Your Website Payments Standard Buttons Encrypting Buttons Dynamically With Encrypted Website Payments 6 148 June 2008 Website Payments Standard Integration Guide Prerequisites for Using Encrypted Website Payments This section describes how to generate your private and public keys for Encrypted Website Payments, upload your public key to PayPal, and download a copy of the PayPal public key: Generate a private key Generate a public certificate Upload your public certificate to the PayPal website at https://www.paypal.com/us/cgi- bin/webscr?cmd=_profile-website-cert Download the PayPal public certificate from https://www.paypal.com/us/cgi- bin/webscr?cmd=_profile-website-cert Public Key Encryption Background Public key encryption (asymmetric encryption) improves security and convenience by allowing senders and receivers to have separate public and private encryption keys: The public key – The public key is the portion of an asymmetric cryptographic key that receivers give senders who want to send them encrypted information. I The private key – The private key is the portion of an asymmetric cryptographic key receivers keep secret and do not send to anyone. The public certificate: The public certificate consists of the public key and identity information, such as a person's name, which could be signed by a certificate authority (CA). The CA guarantees that the public key belongs to the named entity. The encryption process – Sender use both their private key and the receivers’ public key to encrypt the information. Receiver use their private key and the senders’ public key to decrypt the information that was encrypted. This encryption process is also used with digital signatures to verify the origin of the information. Setting Up The Certificates Encrypted Website Payments requires that you upload your public certificate to the PayPal website. PayPal uses the certificate to verify the authenticity of your encrypted code. PayPal accepts only X.509 public certificates, not public keys. The difference between a key and a certificate is that a certificate includes the public key along with information about the Redirect the payer’s browser to the appropriate PayPal checkout experience, as specified in the HTML variables of the decrypted button code. TABLE 6.1 How Encrypted Website Payments Works Website Actions Payer Actions PayPal Actions
  • 147. Website Payments Standard Integration Guide June 2008 149 Securing Your Website Payments Standard Buttons Encrypting Buttons Dynamically With Encrypted Website Payments 6 key, such as when the key expires and who the key belongs to. PayPal accepts public certificates in OpenSSL PEM format from any established certificate authority, such as VeriSign. You can also generate your own private key and public certificate using open source software such as OpenSSL (http://www.openssl.org), which is detailed in the following section. Creating Your Private Key Using OpenSSL Using the openssl program, enter the following command to generate your private key. The command generates a 1024-bit RSA private key that is stored in the file my-prvkey.pem: openssl genrsa -out my-prvkey.pem 1024 Creating Your Public Certificate Using OpenSSL The public certificate must be in PEM format. To generate your certificate, enter the following openssl command, which generates a public certificate in the file my-pubcert.pem: openssl req -new -key my-prvkey.pem -x509 -days 365 -out my-pubcert.pem Uploading Your Public Certificate To upload your public certificates to the PayPal website: 1. Log in to your Business or Premier PayPal account. 2. Click the Profile subtab. 3. In the Seller Preferences column, click the Encrypted Payment Settings link. The Website Payment Certificates page appears. 4. Scroll down the page to the Your Public Certificates section, and click the Add button. The Add Certificate page appears. 5. Click the Browse button, and select the public certificate that you want to upload to PayPal from your local computer. NOTE: The file you upload must be in PEM format. 6. Click the Add button. After your public certificate is uploaded successfully, it appears in the Your Public Certificates section of the Website Payment Certificates page.
  • 148. Securing Your Website Payments Standard Buttons Encrypting Buttons Dynamically With Encrypted Website Payments 6 150 June 2008 Website Payments Standard Integration Guide 7. Store the certificate ID that PayPal assigned to your public certificate in a secure place. You need the certificate ID that PayPal assigned to encrypt your payment buttons by using the Encrypted Website Payments program provided by PayPal. Downloading the PayPal Public Certificate To download the PayPal public certificate: 1. Log in to your Business or Premier PayPal account. 2. Click the Profile subtab. 3. In the Seller Preferences column, click the Encrypted Payment Settings link. 4. Scroll down the page to the PayPal Public Certificate section. 5. Click the Download button, and save the file in a secure location on your local computer. Removing Your Public Certificate IMPORTANT: If you remove your public certificate, its associated certificate ID is no longer valid for encrypting buttons, and any buttons made by your website that use the ID will not function correctly. To remove one or more of your public certificates: 1. Log in to your Business or Premier account. 2. Click the Profile subtab. 3. In the Seller Preferences column, click the Encrypted Payment Settings link. 4. Scroll down the page to the Your Public Certificates section. 5. Select the radio button next to the certificate you want to remove, and click the Remove button. The Remove Certificate page appears. 6. Click the Remove button to confirm the removal of the public certificate that you selected.
  • 149. Website Payments Standard Integration Guide June 2008 151 Securing Your Website Payments Standard Buttons Encrypting Buttons Dynamically With Encrypted Website Payments 6 Encrypting Your HTML Code PayPal provides Java and Microsoft Windows software to encrypt your Website Payments Standard HTML Form variables. Download a program from the following location: https://www.paypal.com/us/cgi-bin/webscr?cmd=p/xcl/rec/ewp-code After you download and extract the software, copy your private key, public certificate, p12 file and the PayPal public certificate to the folder where the software is located. 1. Prepare an input file of Website Payments Standard variables and values for each encrypted button you want to generate. Each variable and value must be on its own separate line, as in the following example. NOTE: The cert_id variable identifies the public certificate you uploaded to PayPal website. cert_id=Z24MFU6DSHBXQ cmd=_xclick business=sales@company.com item_name=Handheld Computer item_number=1234 custom=sc-id-789 amount=500.00 currency_code=USD tax=41.25 shipping=20.00 address_override=1 address1=123 Main St city=Austin state=TX zip=94085 country=US no_note=1 cancel_return=http://www.company.com/cancel.htm 2. Run the encryption program. with the appropriate syntax shown in Table 6.2 , “Command Line Syntax for PayPal Encrypted Website Payments Software.” 3. Copy the encrypted code to your website. TABLE 6.2 Command Line Syntax for PayPal Encrypted Website Payments Software Software Command Line Java java ButtonEncryption CertFile PKCS12File PPCertFile Password InputFile OutputFile [Sandbox] Microsoft Windows PPEncrypt CertFile PrivKeyFile PPCertFile InputFile OutputFile [Sandbox]
  • 150. Securing Your Website Payments Standard Buttons Blocking Non-encrypted Website Payments 6 152 June 2008 Website Payments Standard Integration Guide where: Blocking Non-encrypted Website Payments For extra security of your encrypted buttons, update your PayPal account profile to block non- encrypted payments. To block payments from non-encrypted Website Payments Standard buttons: 1. Log in to your Business or Premier account. 2. Click the Profile subtab. 3. In the Selling Preferences column, click the Website Payment Preferences link. 4. Scroll down to the Encrypted Website Payments section. 5. Next to the Block Non-encrypted Website Payment label, select the On radio button. 6. Scroll to the bottom of the page, and click the Save button. TABLE 6.3 Arguments for Encrypted Website Payments Commands Argument Description CertFile The pathname to your own public certificate PKCS12File The pathname to the PKCS12-format of your own public certificate PPCertFile The pathname to a copy of the PayPal public certificate Password The passphrase to the PKCS12-format of your own public certificate InputFile The pathname to file containing the non-encrypted Website Payments HTML Form variables OutputFile A file name for the encrypted output [Sandbox] The optional word Sandbox that lets you test Encrypted Website Payments code in the PayPal Sandbox
  • 151. Website Payments Standard Integration Guide June 2008 153 7 Using Your PayPal Account Profile This chapter describes how to use your PayPal account profile settings to control how Website Payments Standard works for people who pay you and how it works to let you accept the payments that they make. The Account Profile Use your PayPal account profile to manage your PayPal account. To view your account profile: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. Your account profile has three sections: – Account Information – Financial Information – Selling Preferences The following topics describes the use of each section in more detail. Account Information Use the Account Information column for basic account maintenance, including updating your password, adding and confirming email addresses, managing your business information, and for business accounts, configuring PayPal account for multi-user. Financial Information Use the Financial Information column to organize and maintain the financial instruments associated with your PayPal account, including managing your credit cards and bank accounts, activating and managing your PayPal Debit Card, managing multiple currency balances, and viewing monthly account statements.
  • 152. Using Your PayPal Account Profile The Account Profile 7 154 June 2008 Website Payments Standard Integration Guide Selling Preferences Use the Selling Preferences column to configure the way you collect payments with PayPal, including: Co-branding the PayPal checkout pages with your logo and colors Tailoring the Website Payments Standard payment experience with: – Auto Return – PayPal Account Optional – Getting contact telephone numbers from payers Setting sales tax rates to calculate sales taxes automatically Setting shipping rates to calculate shipping charges automatically Blocking certain kinds of payments Setting the language and character encoding of your data FIGURE 7.1 Selling Preferences on the Profile Summary Page Correspondence Between Profile Settings and HTML Variables Many of the selling preferences that you can set in your account profile have equivalent HTML variables that let you control the behavior of individual transactions. After you enable settings in your account profile, you can include HTML variables with a transaction that take advantage of those settings.
  • 153. Website Payments Standard Integration Guide June 2008 155 Using Your PayPal Account Profile Co-Branding the PayPal Checkout Pages 7 See the following sections for more information: “Overriding Page Styles On Individual Payment Buttons” on page 158 “Overriding Sales Tax Calculations on Individual Transactions” on page 177 “Overriding Shipping Calculations on Individual Transactions” on page 190 “Setting the Character Set – charset” on page 227 “Setting The Return URL on Individual Transactions” on page 227 “Desired Currency on Individual Transactions” on page 228 Co-Branding the PayPal Checkout Pages Custom payment pages let you tailor the PayPal checkout pages presented to payers to match the style of your website. Custom payment pages work with all Website Payments Standard buttons. You can add up to three custom page styles. The pictures in this section demonstrate the types of co-branding that you can achieve with custom payment pages. Figure 7.2 , “Default PayPal Checkout Page Style,” shows a PayPal checkout page with no co-branding. FIGURE 7.2 Default PayPal Checkout Page Style Figure 7.3 , “Custom Page Style with Co-Branding Options,” shows all the co-branding options that you can specify for your own, custom payment page styles.
  • 154. Using Your PayPal Account Profile Co-Branding the PayPal Checkout Pages 7 156 June 2008 Website Payments Standard Integration Guide FIGURE 7.3 Custom Page Style with Co-Branding Options Working With Custom Payment Pages To configure your custom payment pages: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Custom Payment Pages link. The Custom Payment Page Styles page appears, as shown below.
  • 155. Website Payments Standard Integration Guide June 2008 157 Using Your PayPal Account Profile Co-Branding the PayPal Checkout Pages 7 FIGURE 7.4 Custom Payment Page Styles From this page, you can add, edit, preview, and remove page styles, and make one of the page styles the primary page style. NOTE: The PayPal page style is a default page style. You cannot edit or remove it. Adding or Editing a Page Style The settings described here can also be specified with HTML variables for individual transactions. For more information, see “HTML Variables for Displaying PayPal Checkout Pages” on page 245. To add a page style: 1. Begin at the Custom Payment Page Styles page. 2. Click the Add button or the Edit button. Enter your custom page style preferences: – Page Style Name (required) – Enter a name up to 30 characters long. The name can contain letters, numbers, and underscores but no other symbols or spaces. The Page Style Name is used to refer to the page style in your PayPal account and in the page_style HTML variable for your Website Payment buttons. – Header Image URL (optional) – Enter the URL for an image that should appear at the top left of the payment page. Maximum size of the image is 750 pixels wide by 90 pixels high; larger images are reduced to this size. The image must be in a valid graphics format such as gif, jpg, or png. IMPORTANT: PayPal recommends that you enter an image URL only if the image is stored on a secure (https) server. Otherwise, your payer’s web browser displays a message that the payment page contains insecure items.
  • 156. Using Your PayPal Account Profile Co-Branding the PayPal Checkout Pages 7 158 June 2008 Website Payments Standard Integration Guide – Header Background Color (optional) Enter the background color for the header using HTML hex code. The color code must be six digits long and should not contain the # symbol. If the Header Image URL is present, the header is a 750 pixel wide by 90 pixel high space at the top of the payment page. If the Header Image URL is not present, the header height is only 45 pixels high. – Header Border Color (optional) Enter the border color for the header using HTML hex code. The color code must be six digits long and should not contain the # symbol. The header border is a two-pixel perimeter around the header space. – Background Color (optional) Enter the background color for the payment page using HTML hex code. The color code must be six digits long and should not contain the # symbol. 3. Click the Preview button to view a mock-up of your page style, or click the Save button to save it. Making a Page Style Primary When you make a page style primary, it is applied to all checkout pages unless you specify otherwise on individual payment buttons. NOTE: If you do not designate a page style as Primary, the default PayPal page style is used. To make a page style primary: 1. Begin at the Custom Payment Page Styles page. 2. Click the radio button next to the page style you that want to make your primary style. 3. Click the Make Primary button. The Make Custom Page Style Primary page appears. 4. Click the Make Primary button to confirm your choice. Overriding Page Styles On Individual Payment Buttons Your primary page style is applied to all your checkout pages unless you specify otherwise. You can override this behavior by specifying custom page style variables in the HTML code of your payment buttons. To change the page style for a button that you created already, replace the value of the page_style variable with the page style name you want to use. The next time that someone clicks the payment button, the checkout pages appear in the new style.
  • 157. Website Payments Standard Integration Guide June 2008 159 Using Your PayPal Account Profile Tailoring the Checkout Experience 7 Overriding Co-Branding Options on Individual Payment Buttons You can specify variables in the HTML code of payment buttons to override specific co- branding options. These customizing of payment page variables override page styles set in your account profile or set with the page_style variable. The customizing of payment page variables take precedence in the following order: Tailoring the Checkout Experience Use any of these settings in your account profile to tailor the checkout experience for people who pay with Website Payments Standard: Auto Return Getting Contact Telephone Numbers PayPal Account Optional Auto Return With Auto Return for Website Payments Standard, you can avoid making people click a button to return to your website after they complete their payments with PayPal. Auto Return applies to all Website Payments Standards payment buttons, including Buy Now, Shopping Cart, Subscription, Gift Certificate, and Donate buttons. What Payers See with Auto Return On With Auto Return on, instead of having to click a button on the payment confirmation page, payers see an alternative payment confirmation page for a few seconds before PayPal returns them automatically to your website. TABLE 7.1 Order of Page Style Variables Custom Option Description 1 Customizing of Payment Page Variables on Individual Buttons See Table A.8, “HTML Variables for Displaying PayPal Checkout Pages,” on page 245. 2 Page Style Variable on Individual Buttons With the page_style variable, you can specify a page style on individual payment buttons that overrides any page styles set in your account profile. 3 Primary Page Style in Account Profile You can create and set the primary style in your account profile. 4 Default PayPal Page Style in Account Profile The default page style used when an alternative is not selected and designated as primary.
  • 158. Using Your PayPal Account Profile Tailoring the Checkout Experience 7 160 June 2008 Website Payments Standard Integration Guide FIGURE 7.5 Momentary Payment Confirmation with Auto Return On Turning On Auto Return Auto Return is turned off by default. To turn on Auto Return: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. Under the Selling Preferences column, click the Website Payment Preferences link. The Website Payment Preferences page appears, as shown below.
  • 159. Website Payments Standard Integration Guide June 2008 161 Using Your PayPal Account Profile Tailoring the Checkout Experience 7 4. Under Auto Return for Website Payments, click the On radio button to enable Auto Return. 5. In the Return URL field, enter the URL to which you want your payers redirected after they complete their payments. NOTE: If the Return URL you enter is invalid, PayPal displays the standard payment confirmation page after people complete their payments. 6. Scroll to the bottom of the page, and click the Save button. Setting Return URL on Individual Transactions With Auto Return turned on in your account profile, you can set the value of the return HTML variable on individual transactions, which overrides the value of the return URL that you stored on PayPal as part of the Auto Return feature. For example, you might want to redirect payers to a URL on your site that is specific to that person, perhaps with a session-id or other transaction-related data included in the URL. To set the return URL for individual transactions, include the return variable in the HTML Form: <INPUT TYPE="hidden" NAME="return" value="URLspecificToThisTransaction"> NOTE: To receive transaction-related data from PayPal, you must turn Payment Data Transfer on. For more information about Payment Data Transfer, see the Order Management Integration Guide. Subscriptions Password Management and Auto Return If you use or plan to use Subscriptions Password Management, you must make sure that Auto Return is turned off in order to display the PayPal-generated username and password to the subscriber.
  • 160. Using Your PayPal Account Profile Tailoring the Checkout Experience 7 162 June 2008 Website Payments Standard Integration Guide NOTE: You can use Auto Return with Subscriptions, which is a separate feature from Subscriptions Password Management. For more information, see Chapter 3, “Recurring Payments – Subscribe Buttons. Getting Contact Telephone Numbers “Contact Information Telephone” is an option that lets you collect a contact telephone number for from people who pay you. When you activate this option, payers are prompted to include a contact telephone number with their payment information. IMPORTANT: In accordance with the PayPal user agreement, you may use this contact telephone number only to communicate with the payer about the related payment. You may not use this number for unsolicited messages. You can make the contact telephone number optional or required, or you can turn it off. “Off” is the recommended default option because people value their privacy and prefer to minimize unsolicited communications. When you require payers’ contact telephone numbers, payers see the prompt during purchase. FIGURE 7.6 Prompt for A Contact Telephone Number Activating Contact Telephone Number To activate the Contact Telephone Number option: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Website Payment Preferences link. 4. Scroll down the page to the Contact Telephone Number section.
  • 161. Website Payments Standard Integration Guide June 2008 163 Using Your PayPal Account Profile Tailoring the Checkout Experience 7 5. Select one of the following options: – On (Optional Field) – prompts payers to enter telephone numbers as an option. – On (Required Field) – requires payers to enter telephone numbers – Off (Recommended) – does not prompt payers to enter telephone numbers 6. Scroll to the bottom of the page and click the Save button. PayPal Account Optional With PayPal Account Optional turned on, people can pay by credit card without signing up for PayPal accounts. They are offered the chance to sign up for a PayPal account by using the address and credit card from the completed transaction, but they are not required to. PayPal Account Optional is turned on by default for new PayPal Premiere and Business accounts. With PayPal Account Optional turned off, people without PayPal accounts must sign up of a PayPal account. They can pay by credit card, but they must agree to sign up for a PayPal account before completing their transactions and making their payments. NOTE: Only Premiere or Business accounts have PayPal Account Optional in their account profiles. With Personal accounts, the checkout experience is as if PayPal Account Optional were turned off. The Checkout Experience With Account Optional Turned Off This topic demonstrates the PayPal checkout experience for Website Payments Standard when PayPal Account Optional is turned off. The following diagram illustrates the steps.
  • 162. Using Your PayPal Account Profile Tailoring the Checkout Experience 7 164 June 2008 Website Payments Standard Integration Guide FIGURE 7.7 Checkout Experience with PayPal Account Optional Turned Off Read these topics to better understand the checkout experience when PayPal Account Optional is turned off: “Begin – Buyers are Ready to Purchase on Your Website” on page 165 “1 – Buyers Enter Their Billing Information or They Log In to PayPal” on page 165 “2 – Buyers Confirm Their Transaction Details Before Paying” on page 167 “3 – Buyers View and Print Their PayPal Payment Confirmations” on page 167 “4 – Buyers New to PayPal Confirm the Creation of their PayPal Accounts” on page 169 “End – Buyers Receive Payment Authorization Notices by Email” on page 170
  • 163. Website Payments Standard Integration Guide June 2008 165 Using Your PayPal Account Profile Tailoring the Checkout Experience 7 Begin – Buyers are Ready to Purchase on Your Website. The checkout experience with PayPal Account Optional turned off begins when someone on your website is ready to purchase. FIGURE 7.8 Buyers Begin on Your Website When They are Rady to Make a Purchase In this example, Bob begins on the DezignerFotos website and decides to buy a photo of an orchid. He clicks the Buy Now button to pay. 1 – Buyers Enter Their Billing Information or They Log In to PayPal. PayPal displays a billing information/log-in page, which lets buyers enter their billing information and passwords for new PayPal accounts or log in to PayPal.
  • 164. Using Your PayPal Account Profile Tailoring the Checkout Experience 7 166 June 2008 Website Payments Standard Integration Guide FIGURE 7.9 Buyers Enter Their Billing Information or Log In to PayPal In this case, Bob does not have a PayPal account. He enters his billing information and a password for his new PayPal account. Then, he clicks the Agree and Continue button.
  • 165. Website Payments Standard Integration Guide June 2008 167 Using Your PayPal Account Profile Tailoring the Checkout Experience 7 2 – Buyers Confirm Their Transaction Details Before Paying. PayPal displays a transaction confirmation page to let buyers confirm the details before they complete their transactions and authorize their payments. FIGURE 7.10 Buyers Confirm Their Payment Details Before Paying In this case, Bob reviews the transaction details and clicks the Pay $255.00 Now! button to complete the transaction and make his payment. 3 – Buyers View and Print Their PayPal Payment Confirmations. PayPal displays a payment confirmation page after buyers pay to let them know that they have completed their transactions and authorized their payments successfully.
  • 166. Using Your PayPal Account Profile Tailoring the Checkout Experience 7 168 June 2008 Website Payments Standard Integration Guide FIGURE 7.11 Buyers View Their Payment Confirmations From the payment confirmation page, buyers can: View the PayPal Receipt ID – the transaction ID – to reconcile their payments. Click the View Printable Receipt link to print receipts for their records. FIGURE 7.12 Buyers Print Their PayPal Payment Receipts In this case, Bob prints the PayPal payment receipt for his records.
  • 167. Website Payments Standard Integration Guide June 2008 169 Using Your PayPal Account Profile Tailoring the Checkout Experience 7 4 – Buyers New to PayPal Confirm the Creation of their PayPal Accounts. Paypal displays an account confirmation page to buyers who signed up for PayPal accounts in order to pay. The confirmation page lets buyers know that they have successfully created their PayPal accounts. FIGURE 7.13 Buyers View Their New PayPal Account Confirmations PayPal also sends buyers an account signup notice by email to confirm their new PayPal accounts.
  • 168. Using Your PayPal Account Profile Tailoring the Checkout Experience 7 170 June 2008 Website Payments Standard Integration Guide FIGURE 7.14 Buyers Receive Account Signup Notices by Email End – Buyers Receive Payment Authorization Notices by Email. PayPal sends buyers a payment authorization notice by email to confirm the transaction that they made with the merchant.
  • 169. Website Payments Standard Integration Guide June 2008 171 Using Your PayPal Account Profile Tailoring the Checkout Experience 7 FIGURE 7.15 Buyers Receive Payment Authorization Notices by Email In this case, PayPal sends Bob an email message notifying him of his transaction with DezignerFotos and his authorization for payment of $255.00 USD. Turning PayPal Account Optional Off PayPal Account Optional is available on Premiere and Business accounts only. It is turned on by default. To turn PayPal Account Optional off: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears.
  • 170. Using Your PayPal Account Profile Automatic Calculation of Sales Tax 7 172 June 2008 Website Payments Standard Integration Guide 2. Click the Profile subtab. The Profile Summary page appears. 3. Click the Website Payment Preferences link in the Selling Preferences column. The Website Payment Preferences page appears. 4. Scroll down to the PayPal Account Optional section of the page. 5. Select the Off radio button to turn PayPal Account optional off. 6. Scroll to the bottom of the page, and click the Save button. Automatic Calculation of Sales Tax You can have PayPal calculate sales tax (also called value-added tax or VAT) automatically. PayPal calculates sales taxes based on rates that you specify in your account profile. You can set up tax rates as follows: Domestic (U.S.-only) tax rates by state or zip code Canadian tax rates by province International sales tax rates by country or jurisdiction Read these topics to learn more about automatic calculation of sales tax: “Displaying the Sales Tax that PayPal Calculates During Checkout” on page 173 “Accessing Your Sales Tax Rates in Your Account Profile” on page 173 “Setting Up Domestic Sales Tax Rates” on page 174 “Setting Up International Sales Tax Rates” on page 176 “Resolving Overlapping Sales Tax Rates” on page 176 “Editing or Deleting Sales Tax Rates” on page 177 “Overriding Sales Tax Calculations on Individual Transactions” on page 177
  • 171. Website Payments Standard Integration Guide June 2008 173 Using Your PayPal Account Profile Automatic Calculation of Sales Tax 7 Displaying the Sales Tax that PayPal Calculates During Checkout After you set up sales tax rates in your account profile, PayPal calculates the tax for purchase transactions automatically. Buyers see the tax as a separate item during checkout, based on the shipping addresses that they provide. FIGURE 7.16 Buyers See Sales Taxes Before They Pay If buyers change their shipping addresses, PayPal calculates the tax again and displays the new amount. Accessing Your Sales Tax Rates in Your Account Profile To view or modify your sales tax rates in your account profile: 1. Log in to your PayPal account at https://www.paypal.com. 2. Click the Profile subtab of the My Account tab. 3. In the Selling Preferences column, click the Sales Tax link.
  • 172. Using Your PayPal Account Profile Automatic Calculation of Sales Tax 7 174 June 2008 Website Payments Standard Integration Guide FIGURE 7.17 Sales Tax Rates in Your Account Profile Setting Up Domestic Sales Tax Rates You can create sales tax rates for a state, zip code, or zip code range. To add a new rate, click the Add New Sales Tax link in the Set Up Domestic Tax Rates box. To create a rate for a state 1. Click State for Configure Sales Tax by. 2. Select one or more states for the rate you want to create. Hold down the Ctrl key to select more than one state. 3. Enter the sales tax rate. 4. Click the checkbox labeled Apply rate to shipping amount, if applicable. 5. Click the Continue button to add the new rate and return to the Sales Tax page (Figure 7.17 ).
  • 173. Website Payments Standard Integration Guide June 2008 175 Using Your PayPal Account Profile Automatic Calculation of Sales Tax 7 6. Click the Create Another button to add the new rate and then add another domestic sales tax rate. To create a rate for a specific zip code 1. Click Zip Code for Configure Sales Tax by. FIGURE 7.18 Setting Up a Domestic Sales Tax Rate by Zip Code 2. Click the Specific radio button. 3. Enter the zip code for the rate you want to create. 4. Enter the sales tax rate. 5. Click the checkbox labeled Apply rate to shipping amount, if applicable. 6. Click the Continue button to add the new rate and return to the Sales Tax page. 7. Click the Create Another button to add the new rate and then add another domestic sales tax rate. To create a rate for a zip code range 1. Click Zip Code for Configure Sales Tax by. 2. Click the Range radio button. 3. Enter the starting and ending zip code for the rate you want to create. 4. Enter a the sales tax rate. 5. Click the checkbox labeled Apply rate to shipping amount, if applicable.
  • 174. Using Your PayPal Account Profile Automatic Calculation of Sales Tax 7 176 June 2008 Website Payments Standard Integration Guide 6. Click the Continue button to add the new rate and return to the Sales Tax page. 7. Click the Create Another button to add the new rate and then add another domestic sales tax rate. Setting Up International Sales Tax Rates You can create the following types of international sales tax rates: For Canada, sales tax rates can be for one or more provinces. For countries other than the U.S. and Canada, sales tax rates apply to the entire country. To add a new rate, click Add New Sales Tax in the Set Up International Tax Rates box. 1. Select the country for the rate you want to create. 2. If you selected Canada for Country, select one or more provinces or select All Provinces. Hold down the Ctrl key to select more than one province. 3. Enter the sales tax rate. 4. Click the checkbox labeled Apply rate to shipping amount, if applicable. 5. Click the Continue button to add the new rate and return to the Sales Tax page (Figure 7.17 ). 6. Click the Create Another button to add the new rate and then add another international sales tax rate. Resolving Overlapping Sales Tax Rates It is possible that more than one sales tax rate will apply to a buyer. For example, in Figure 7.19 , all three of the domestic sales tax rates apply to a buyer in zip code 94044.
  • 175. Website Payments Standard Integration Guide June 2008 177 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 FIGURE 7.19 Three Domestic Sales Tax Rates When multiple rates apply, the most specific rate is used. For a buyer in zip code 94044, the most specific rate is the single zip code rate of 8.25%. For a buyer in zip code 94056, the most specific rate is the range of zip codes with a rate of 7.75%. Editing or Deleting Sales Tax Rates To edit a sales tax rate, click the checkbox to the left of the rate and then click the Edit button. To delete a sales tax rate, click the checkbox to the left of the rate and then click the Delete button. Overriding Sales Tax Calculations on Individual Transactions Regardless of a buyer’s location, you can override automatic tax calculation on an individual transaction or on individual items in a transaction. For more information, see “Setting Tax on Individual Items” on page 142 and “Setting the Tax for the Entire Cart” on page 143. Automatic Calculation of Shipping Charges (U.S. Merchants Only) You can have PayPal calculate shipping charges automatically. PayPal calculates shipping charges based on rates that you specify in your account profile. You can set up shipping rates as follows: Domestic (U.S.-only) shipping rates for regions defined by state or zip code International shipping rates for regions define by country or jurisdiction Within shipping regions, you can specify rates for different shipping methods, such as standard and express delivery. Read these topics to learn more about automatic calculation of sales tax: “Displaying the Shipping Charges that PayPal Calculates During Checkout” on page 178
  • 176. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 178 June 2008 Website Payments Standard Integration Guide “Shipping Regions” on page 180 “Shipping Methods” on page 181 “Shipping Rate Bases” on page 181 “Shipping Rates and Currencies” on page 182 “Adding Shipping Rates for the First Time” on page 182 “Adding Shipping Methods by Using a Wizard” on page 183 “Viewing, Editing, and Adding Shipping Rates” on page 185 “Deleting Shipping Methods” on page 188 “Examples of Rate Bases and Shipping Calculations” on page 189 “Overriding Shipping Calculations on Individual Transactions” on page 190 “Editing the Configuration Settings of an Existing Shipping Method” on page 187 Displaying the Shipping Charges that PayPal Calculates During Checkout After you set up shipping rates in your account profile, PayPal calculates the shipping charges for purchase transactions automatically. PayPal prompts buyers to enter their shipping destinations on the first checkout page. FIGURE 7.20 PayPal Prompts Buyers for Shipping Destinations Buyers click the calculate total order amount link to enter information about their shipping destinations.
  • 177. Website Payments Standard Integration Guide June 2008 179 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 FIGURE 7.21 Buyers Enter Shipping Destinations to Calculate Shipping Charges Buyers enter information about their shipping destinations, and then they click the Update button. FIGURE 7.22 Buyers See Shipping Charges Before They Pay PayPal calculates the shipping charges using the least expensive shipping method that you set up for the destination.
  • 178. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 180 June 2008 Website Payments Standard Integration Guide FIGURE 7.23 Buyers Select Their Preferred Shipping Methods PayPal lets buyers select their preferred shipping methods after they enter their billing information or log in to PayPal. If buyers change their shipping addresses or select a different shipping method, PayPal calculates the shipping charges again and displays the new amount. Shipping Regions Your organize your shipping rates primarily by the states and countries to which you ship your products. Some merchants make only domestic shipments. Other merchants make both domestic shipments and international shipments. Depending on territorial size, some merchants divide their domestic markets into smaller shipping regions, each with their own shipping rates. Before you begin setting up the shipping rates that PayPal uses to calculate shipping charges, decide whether: You ship only domestically or both domestically and internationally You want one set of rates for all U.S. domestic shipments or you want rates for different domestic regions, such as western and eastern states. You want one set of rates for all international shipments or you want rates for different international regions, such as Europe and Asia You can establish one set of shipping rates for all domestic and international destinations, but your shipping rates should reflect your costs of shipping, which generally vary between different domestic and international regions.
  • 179. Website Payments Standard Integration Guide June 2008 181 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 Shipping Methods Within each shipping region that you define, you specify specific shipping rates for the different shipping methods you want to offer buyers. A shipping method specifies a mode of shipment and the general time frame for delivery. For example, you might offer your domestic buyers two shipping methods: “Standard Shipping,” “Priority.” For each region in which you offer a specified shipping method, you generally select different delivery time frames and different rates. Otherwise, you should not set up separate shipping regions. For example, your “Standard Shipping” method for the region where your shipments originate might specify a time frame of “2-3 Days.” A more distant domestic shipping region might specify a time frame of “3-7 Days.” You set the same rates for “Standard Shipping” in all regions, but delivery times are longer for more distant ones. As an alternative to differentiating on delivery time, you might differentiate on rates. For example, your “Standard Shipping” method for all domestic regions might specify the same time frame of “2-3 Days.” You set more expensive rates for “Standard Shipping” in more distant regions, but delivery times are the same for all regions. Shipping Rate Bases For each shipping method in each shipping region that you define, you specify the basis upon which your shipping rates are used to calculate the shipping charges for specific purchases. You can choose from the following shipping rate bases: Total order amount Total order weight Total item quantity Generally, you specify the same shipping rate basis for all shipping regions and shipping methods that you define. Before you begin setting up the shipping rates that PayPal uses to calculate shipping charges, decide which basis is most suitable for the kinds of products you sell and the typical orders that your buyers place. For more information, see “Examples of Rate Bases and Shipping Calculations” on page 189 Shipping Rate Tables For each shipping method you define, fill in a rate table to specify the rates that PayPal uses to calculate shipping charges. Rate tables let you specify tiered rates.
  • 180. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 182 June 2008 Website Payments Standard Integration Guide FIGURE 7.24 Shipping Rate Table With a Basis of Total Order Amount Each row in a rate table represents a different tier. Each successive tier encompasses a successively increasing range within the rate basis. You specify a separate rate for each tier. In the preceding example rate table, each successive tier encompasses an increasing range of order amounts. The first tier encompasses orders that total from $0.01 USD through and including $10.00 USD. The shipping rate for orders that fall within the first tier is 5% of the total order amount. The shipping charge for an order amount of $6.75 USD is $0.34 USD. Shipping Rates and Currencies When you set up shipping methods, specify the same currency for the shipping rates that you used to price the products on your website. Specify shipping rates for both domestic shipments and international shipments in your domestic currency, provided that you priced your products for international buyers in your domestic currency. If you price your products in multiple currencies, you should specify international shipping rates in the same currencies that you priced your products for international buyers. For example, a merchant in London might price products in Pounds Sterling for British buyers, while also pricing the same products in Euros for Euro-zone buyers and U.S. Dollars for U.S. buyers. Adding Shipping Rates for the First Time The first time you set up shipping rates, the page sequence is tailored for creating your initial shipping regions, methods, and rates. To begin adding shipping regions, methods, and rates for the first time: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears.
  • 181. Website Payments Standard Integration Guide June 2008 183 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 3. In the Selling Preferences column, click the Set Up Shipping Calculations link. This Shipping Calculations page appears, as shown below. FIGURE 7.25 Shipping Calculations Setup Page From the Shipping Calculations setup page, you can start a domestic or an international shipping wizard. Adding Shipping Methods by Using a Wizard Whenever you add a shipping method, you use one of two wizards to step you through the process. The domestic shipping wizard lets you configure shipping regions within the U.S., and the international shipping wizard lets configure foreign shipping regions. Shipping wizards let you configure a shipping region and all the shipping methods for it at one time. You can start a shipping wizard in one of two ways: Click the Start button from the Shipping Calculations setup page, as shown in Figure 7.25 , “Shipping Calculations Setup Page. Click the Add Another Shipping Method link from the Shipping Calculations review page, as shown in Figure 7.27 , “Shipping Calculations Review Page (U.S. Merchants Only). The steps in domestic and international shipping wizards are the same.
  • 182. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 184 June 2008 Website Payments Standard Integration Guide FIGURE 7.26 Page Sequence in a Shipping Wizard 1. Setting Up the Shipping Region for a Shipping Wizard. Select the U.S. states or the foreign countries for the shipping region, and select the currency in which you want to price the shipping rates for the shipping region. 2. Configuring the Shipping Methods Within the Region of a Shipping Wizard. Select a name and delivery time frame, a rate basis, and fill in the rate table. Repeat this step to configure all of the shipping methods you want for the shipping region. 3. Saving the Shipping Methods Configured With a Shipping Wizard. Review the shipping region and the shipping methods, and change them if you like before you save them. The following sections describe each step in more detail.
  • 183. Website Payments Standard Integration Guide June 2008 185 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 Setting Up the Shipping Region for a Shipping Wizard The first step of a shipping wizard lets you select the U.S. states or foreign countries for one or your shipping regions. In addition, you select the currency in which you want to price the shipping rates within the region. NOTE: You can select the currency at the time you add shipping methods and rates. You cannot change the currency later when you edit shipping methods. For more information, see “Shipping Rates and Currencies” on page 182. After you select the U.S. states or foreign countries you want for the shipping region, click the Continue button to proceed to the second step of the shipping wizard. Configuring the Shipping Methods Within the Region of a Shipping Wizard As the second step of a shipping wizard, you configure the shipping methods that you want for the shipping region. A shipping wizard lets you configure the name, delivery time frame, rate basis, and rate table of shipping methods. Repeat the second step of a shipping wizard to create additional shipping methods for the same shipping region. Click the Create Another button after completing the configuration of the current method to begin the configuration of the next one. After you configure all the shipping methods for the shipping region, click the Continue button to proceed to the third and final step of the shipping wizard. Saving the Shipping Methods Configured With a Shipping Wizard As the final step of a shipping wizard, you review the configuration of the shipping region and the configuration of the shipping methods for the shipping region. You can change the shipping region, and you can change and add shipping methods. In addition, the final step of a shipping wizard lets you enable individual purchase transactions to override the rates for the shipping methods you defined within the shipping region. Select the Override profile shipping method... checkbox to permit individual transactions to override automatic calculation of shipping charges. For more information, see “Overriding Shipping Calculations on Individual Transactions” on page 190. After you review the shipping region and its shipping methods, click the Save Shipping Methods button to preserve the shipping methods that you set up with the shipping wizard. The shipping methods become available to buyers as soon as you save them. Viewing, Editing, and Adding Shipping Rates After you set up some shipping regions, methods, and rates, the page sequence is tailored for viewing and editing existing shipping methods, as well as for creating additional regions, methods, and rates. To begin viewing, editing, or creating additional shipping regions, methods, and rates: 1. Log in to your PayPal account at https://www.paypal.com.
  • 184. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 186 June 2008 Website Payments Standard Integration Guide 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Shipping Calculations link. The Shipping Calculations review page appears, as shown below. FIGURE 7.27 Shipping Calculations Review Page (U.S. Merchants Only) 4. From the Shipping Calculations review page, perform one of the following actions: – Viewing the Configuration of an Existing Shipping Method. Select the checkbox next to the shipping method and click the View button. – Editing the Configuration Settings of an Existing Shipping Method. Select the checkbox next to the shipping method and click the Edit button.
  • 185. Website Payments Standard Integration Guide June 2008 187 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 – Deleting Shipping Methods. Select the checkboxes next to the shipping methods and click the Delete button. – Adding Shipping Methods by Using a Wizard. Click the Add Another Shipping Method link. Viewing the Configuration of an Existing Shipping Method To view the configuration of a shipping method: 1. From the Shipping Calculations review page, select the checkbox next to the shipping method you want to view. 2. Click the View button. The View Domestic Shipping Method page or the View International Shipping Method page appears. 3. From the review page, perform one of the following actions: – To change the shipping method, click the Edit Settings button. – When you are finished viewing the shipping method, click the Back to Shipping Methods button. Editing the Configuration Settings of an Existing Shipping Method To edit the configuration settings of an existing shipping method: 1. From the Shipping Calculations review page, select the checkbox next to the shipping method you want to change. 2. Click the Edit button. The Edit Domestic Shipping Method page or the Edit International Shipping Method page appears. 3. Change any of the following settings: TABLE 7.2 Shipping Method Settings Setting Action Status Select whether the shipping method is actively used to calculate shipping charges. Allowable values: Active – the shipping method is available for buyers to choose Inactive – the shipping method is hidden from buyers Region Displays the domestic regions or foreign countries currently selected for the shipping region. To select different regions or countries, click the Change link.
  • 186. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 188 June 2008 Website Payments Standard Integration Guide 4. Click the Save Changes button. Deleting Shipping Methods You can delete one or more domestic or international shipping methods at one time. Follow the procedure below in either the Domestic Shipping Methods section or the International Shipping Methods section of the Shipping Calculations review page. IMPORTANT: After you delete a shipping method, it cannot be recovered for use in future shipping calculations. To delete one or more shipping methods: 1. From the Shipping Calculations review page, select the checkboxes next to the shipping methods that you want to delete. 2. Click the Delete button. 3. Click the Yes button in the Delete Confirmation message box. Override shipping methods per transaction Select whether the shipping rates can be overridden by individual transactions if the information is passed to PayPal with HTML variables in the transaction. Allowable values: Yes No IMPORTANT: Changing the Override shipping methods per transaction.setting of a specific shipping method changes the setting for all U.S. domestic and international shipping methods that use the same currency. Shipping Method Name From the dropdown menu, select a name for the shipping method. Delivery Time (Optional) From the dropdown menu, select a delivery time. Based On Select the rate basis for the shipping method. Allowable values: By Amount – based on the total amount of the order By Weight – based on the total weight of items in the order By Quantity – based on total quantity of items in the order For more information, see “Examples of Rate Bases and Shipping Calculations” on page 189 Shipping Rates Reconfigure the rows in the rate table to change the shipping rates that PayPal uses to calculate shipping charges when buyer select the shipping method. NOTE: Changes that you make to active shipping methods become effective after a momentary delay. TABLE 7.2 Shipping Method Settings Setting Action
  • 187. Website Payments Standard Integration Guide June 2008 189 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 Examples of Rate Bases and Shipping Calculations The following examples demonstrate how the different kinds of shipping rates are applied when calculating shipping charges: Calculating Shipping Charges Based on Amount of Purchase Calculating Shipping Charges Based on Weight of Shipment Calculating Shipping Charges Based on Quantity of Items Shipped Calculating Shipping Charges Based on Amount of Purchase When you choose Total Order Amount or By Amount as the basis for shipping rates, tiers in the rate table represent increasing ranges of order amounts. Generally, you select By Amount as the rate basis if you want to encourage your buyers to buy more with increasing discounts on shipping charges. You can choose between specifying a flat rate for each tier or specifying a percentage of the order amount. Click the Flat Rate or the Percent links in the Shipping Rate section to make your choice. EXAMPLE 7.1 Flat Rate Shipping Calculations Assume the following shipping rate table with a basis of By Order and fixed amount pricing selected: From(EUR) To(EUR) Rate(EUR) 0.01 49.99 3.00 50.00 and up 2.00 The shipping charge for an order amount of €36.50 EUR is €3.00 EUR. The shipping charge for an order amount of €66.50 EUR is €2.00 EUR This rate structure encourages buyers to purchase more with discounted shipping on larger orders. EXAMPLE 7.2 Percentage Rate Shipping Calculation Assume the following shipping rate table with a basis of By Order and percentage rate pricing selected: From(JPY) To(JPY) Rate(%) 0.01 49.99 5 50.00 and up 4 The shipping charge for an order amount of ¥36.50 JYP is ¥1.38 JYP (36.50 x 5%). The shipping charge for an order amount of ¥66.50 JYP is ¥2.66 JYP (66.50 x 4%). Calculating Shipping Charges Based on Weight of Shipment When you choose Total Order Weight or By Weight as the basis for shipping rates, tiers in the rate table represent increasing ranges of order weights. Generally, you select By Weight as the rate basis if you want to recover your shipping costs. You can choose between specifying order weights in pounds or kilograms. Click the Lbs or the Kgs links in the Shipping Rate section to make your choice.
  • 188. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (U.S. Merchants Only) 7 190 June 2008 Website Payments Standard Integration Guide EXAMPLE 7.3 Weight-Based Shipping Calculations Assume the following shipping rate table with a basis of By Weight: From(Kgs) To(Kgs) Rate(GBP) 0.01 49.99 3.00 50.00 and up 6.00 The shipping charge for an order that weights 36.50 kg is £3.00 GBP. The shipping charge for an order that weights 66.50 kg is £6.00 GBP. Calculating Shipping Charges Based on Quantity of Items Shipped When you choose Total Order Quantity or By Quantity as the basis for shipping rates, tiers in the rate table represent increasing ranges of order item counts. Generally, select By Quantity as the rate basis if all your products have a generally uniform size and weight, such as shoes. EXAMPLE 7.4 Quantity-Based Shipping Calculations Assume the following shipping rate table with a basis of By Quantity: From To Rate(USD) 1 49 3.00 50 and up 6.00 The shipping charge for an order with 36 items is $3.00 USD. The shipping charge for an order with 66 items is $6.00 USD. Overriding Shipping Calculations on Individual Transactions Sometimes you want to set special shipping rates for certain items, such as especially heavy ones that cost more to ship, or services and digital downloads that do not require shipping. Prerequisites for Overriding Shipping Rates on Individual Transactions To override your profile-based shipping rates: Enable overrides of your shipping rates; overrides are enabled for new shipping methods by default Set the special shipping rates for individual items or entire transactions with special HTML variables of Buy Now, Donation, Add to Cart, and View Cart buttons For more information, see “Setting Shipping Charges on Individual Items” on page 142 and “Setting the Tax for the Entire Cart” on page 143. Disabling the Override of Shipping Rates on Individual Transactions By default, shipping methods enable the override of shipping rates on individual transactions. You can disable overrides by: Editing any shipping method and changing the Override shipping methods per transaction.setting. Adding a new shipping method and changing the default value of the Override shipping methods per transaction setting
  • 189. Website Payments Standard Integration Guide June 2008 191 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (non-U.S. Merchants Only) 7 Regardless of how you disable overrides, the override setting you specify for a specific shipping methods applies to the setting for all shipping methods of the same currency. To enable or disable overrides of a shipping method: 1. From the Shipping Calculations review page, select the checkbox next to any of the shipping methods for a specific currency. 2. Click the Edit button. The Edit Domestic Shipping Method or the Edit International Shipping Method page appears. 3. For the Override shipping methods per transaction.setting, select one of the following radio buttons: – Yes – enables transaction-specific shipping charges to override the shipping rates – No – prohibits transaction-specific shipping charges IMPORTANT: Changing the Override shipping methods per transaction.setting of a specific shipping method changes the setting for all U.S. domestic and international shipping methods that use the same currency. 4. Click the Save Changes button. Automatic Calculation of Shipping Charges (non-U.S. Merchants Only) You can set up shipping rates in your account profile and let PayPal calculate shipping charges automatically. To view or modify your shipping rates: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Shipping Calculations link. The Shipping Calculations page appears, as shown below.
  • 190. Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (non-U.S. Merchants Only) 7 192 June 2008 Website Payments Standard Integration Guide FIGURE 7.28 Shipping Calculations Page (non-U.S. Merchants Only) Examples of Cost Methods and Shipping Calculations The following examples demonstrate how different cost methods are applied when calculating shipping charges.
  • 191. Website Payments Standard Integration Guide June 2008 193 Using Your PayPal Account Profile Automatic Calculation of Shipping Charges (non-U.S. Merchants Only) 7 Calculating Shipping Charges with the Flat Amount Cost Method When you choose Flat Amount as the cost method for shipping rates, costs for each price range are expressed as fixed amounts. EXAMPLE 7.1 Flat Amount Cost Method and Shipping Calculations Assume the following shipping rates with a cost method of Flat Amount: Cost Price Ranges €3,00 EUR €0,00 EUR - €49,99 EUR €6,00 EUR €50,00 EUR - and up The shipping charge for an order price of €36,50 is €3,00. The shipping charge for an order price of €66,50 is €6,00. This rate structure helps you recover your shipping costs from buyers. Calculating Shipping Charges with the Percentage Cost Method When you choose Percentage as the cost method for shipping rates, costs for each price range are expressed as percentages of the actual order price. EXAMPLE 7.2 Percentage Cost Method and Shipping Calculations Assume the following shipping rates with a cost method of Percentage: Cost Price Ranges 5.00 GBP % £0.00 GBP - £49.99 GBP 4.00 GBP % £50.00 GBP - and up The shipping charge for an order price of £36.50 is £1.83. The shipping charge for an order price of £66.50 is £2.66. This rate structure encourages buyers to purchase more with discounted shipping rates on larger orders Overriding Shipping Calculation on Individual Transactions Sometimes you want to set special shipping rates for certain items, such as especially heavy ones that cost more to ship, or services and digital downloads that do not require shipping. Prerequisites for Overriding Shipping Rates on Individual Transactions To override your profile-based shipping rates: Enable overrides of your shipping rates for individual transactions; overrides are disabled by default. Set the special shipping rates for individual items or entire transactions with special HTML variables of Buy Now, Donation, Add to Cart, and View Cart buttons For more information, see “Setting Shipping Charges on Individual Items” on page 142 and “Setting the Tax for the Entire Cart” on page 143. Enabling the Override of Shipping Rates on Individual Transactions To enable overrides of shipping rates: 1. Log in to your PayPal account at https://www.paypal.com.
  • 192. Using Your PayPal Account Profile Blocking Certain Kinds of Payments 7 194 June 2008 Website Payments Standard Integration Guide 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Shipping Calculations link. The Shipping Calculations page appears 4. Click the checkbox labelled Click here to allow transaction-based shipping values to override the profile shipping settings listed above (if profile settings are enabled). 5. Click the Save button. Blocking Certain Kinds of Payments Payment receiving preferences let you block. Payments from U.S. payers without a confirmed address Payments in currencies you do not hold Payments from payers with non-U.S. accounts Payments initiated through the Pay Anyone Subtab Payments by credit card instead of a bank account Payments funded with eChecks Accessing Your Payment Receiving Preferences to Block Payments To access your Payment Receiving Preferences to block different types of payments: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Payment Receiving Preferences link. The Payment Receiving Preferences page appears, as shown below.
  • 193. Website Payments Standard Integration Guide June 2008 195 Using Your PayPal Account Profile Blocking Certain Kinds of Payments 7 FIGURE 7.29 Payment Receiving Preferences Page Blocking Payments From U.S. Payers Without a Confirmed Address
  • 194. Using Your PayPal Account Profile Blocking Certain Kinds of Payments 7 196 June 2008 Website Payments Standard Integration Guide You can better manage your risk by blocking payments where the payer chooses not to share his Confirmed Address with you. PayPal provides Confirmed Addresses to help you make informed decisions when shipping goods. To be eligible for PayPal's Seller Protection Policy (SPP), and to help reduce your risk of dealing with fraudulent buyers, ship to a buyer’s Confirmed Address. There are three choices for this preference: Yes – All payments from U.S. payers without a Confirmed Address are blocked. All U.S. payers must provide a Confirmed Address in order to pay you. No – All payments are accepted. To maximize your sales, select No. Ask Me – You can choose whether to accept or deny payment without a Confirmed Address on a case-by-case basis. This option lets decide whether to take on the risk of not having the payer’s Confirmed Address for each transaction. If you accept the payment, it becomes a completed transaction. If you deny a particular payment, the sender of the payment is notified that the payment has been denied and is credited with the payment amount. PayPal does not charge fees for denied payments. For a detailed description of how Confirmed Address and other settings affect the PayPal billing and shipping addresses, see Appendix B, “Address Handling (U.S. Merchants Only).” Blocking Payments in Currencies That You Do Not Hold When you receive a payment in a currency you do not hold, PayPal prompts you to open a balance for that currency, convert it to your primary balance, or deny the payment. Payments in currencies for which you hold a balance are applied to the appropriate balance. You see a summary of each currency balance in your Account Overview page. There are three choices for this preference: Yes – Accept the payment regardless of the currency in which the payment is made. No, accept them and convert them to U.S. Dollars – Accept the payment but automatically converts to U.S. Dollars. Ask Me – Transaction-by-transaction, you can choose to accept or deny a payment in a currency you do not currently hold. If you accept the payment, it becomes a completed transaction. If you deny a particular payment, the sender of the payment is notified that the payment has been denied and is credited with the payment amount. PayPal does not charge fees for denied payments. For more informations, see “Managing Currency Balances” on page 203. Blocking Payments from Payers With Non-U.S. PayPal Accounts Because many international addresses cannot be confirmed, you may choose to block payments from users with non-U.S. PayPal accounts in order to qualify for the Seller Protection Policy.
  • 195. Website Payments Standard Integration Guide June 2008 197 Using Your PayPal Account Profile Adding Your Credit Card Statement Name 7 Blocking Payments Initiated Through the Pay Anyone Subtab You can choose whether or not to receive payments initiated via the Pay Anyone subtab of the Send Money tab on the PayPal website. Selecting this option might help you manage your account, because the payments you receive will be associated with a specific item or transaction that you defined. If you block these payments, you accept only payments initiated from Buy Now, PayPal Shopping Cart, Gift Certificate, Subscription, and Donate buttons, as well as Winning Buyer Notification, Mass Payments, Money Requests, Smart Logos, or eBay Checkout Payments. Blocking Payments by Credit Card Instead of Bank Account You can force people to pay you with a bank account or funds in their PayPal balances if they are able to do so. However, if they cannot pay using a bank account or their PayPal balances, they still have the option to pay with a credit card. This preference can also help to reduce your risk of chargebacks. Verified members are people who have confirmed their bank accounts with PayPal or who have been otherwise verified by PayPal. Because most Verified members have the option of paying with their bank accounts (via eCheck or Instant Transfer), this preference does not prevent them from sending you money. When they pay with PayPal’s Instant Transfer, you receive the payment instantly, just as when they pay with a credit card. Members who have not confirmed their bank accounts with PayPal can still send you money funded by credit cards. Blocking Payments Funded With eChecks You can block payments from PayPal members who pay with eChecks. Because eCheck payments take three to four business days to clear, you might want to block them for your Instant Purchase and Buy Now buttons. If you choose to block these payments, users who attempt to pay via eCheck are prompted to add a credit card to their account before completing the transaction. If you choose not to block these payments, you can receive eCheck payments through PayPal Website Payments or Auction Logos. eCheck payments are listed as Pending and are not credited to your PayPal account for three to four business days. Adding Your Credit Card Statement Name When PayPal members pay with credit cards on file with their PayPal accounts, the transactions appear on their credit card statements in the following format in the description: PAYPAL*MERCHANT By default, MERCHANT is: For premiere accounts, the mailbox name of the email addressed that you specified when you signed up your account.
  • 196. Using Your PayPal Account Profile Adding Your Credit Card Statement Name 7 198 June 2008 Website Payments Standard Integration Guide For business accounts, the business name that you specified when you signed up for your account. The value you specified is converted to all upper-case letters, spaces are removed, the result is truncated to eleven characters. The result is stored in your account profile as your Credit Card Statement Name The default value for your Credit Card Statement Name may be difficult for payers to understand. To reduce chargebacks and payer confusion, replace the default Credit Card Statement Name with one that accurately reflects your business or legal name. To specify your Credit Card Statement Name: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Payment Receiving Preferences link. The Payment Receiving Preferences page appears. 4. Scroll down the page to the Credit Card Statement Name section, as shown below. FIGURE 7.30 Specifying Your Credit Card Statement Name 5. Change the following settings: TABLE 7.3 Shipping Method Settings Setting Action Credit Card Statement Name Enter up to 11 characters and spaces. Do not include special characters, such as “&,” “#”, or “_”. The value is converted to all capital letters and might be truncated by some credit card processors.
  • 197. Website Payments Standard Integration Guide June 2008 199 Using Your PayPal Account Profile Allowing Multiple Users to Access Your PayPal Account 7 6. Scroll to the bottom of the page and click the Save button. Allowing Multiple Users to Access Your PayPal Account If you have a PayPal business account, you can set up multiple logins with different permissions to allow multiple people in your organization to access your PayPal account. Multi-user access lets you give different employees access to different parts of your account, based on their business functions. For example, you can give your customer service representatives their own logins with limited privileges that let them only view balances and make refunds but not let them edit profiles, send money, or withdraw funds. IMPORTANT: Remember to remove user logins for people who leave your organization. Adding a User Login to Your Account To create a user login for your PayPal business account: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Account Information column, click the Multi-User Access link. The Multi-User Access-Current Users page appears. 4. Click the Add User button if you have not added users yet, or the Add button if already have additional users on your account. The Add Users page appears. Extended Credit Card Statement Name Enter up to 19 characters and spaces. Do not include special characters, such as “&,” “#”, or “_”.The value is converted to all capital letters and might be truncated by some credit card processors. TABLE 7.3 Shipping Method Settings Setting Action
  • 198. Using Your PayPal Account Profile Allowing Multiple Users to Access Your PayPal Account 7 200 June 2008 Website Payments Standard Integration Guide 5. Enter information in the following settings: 6. Click the Save button. Changing the Privileges for a User Login After you add a user login, you can change the privileges of the login. You cannot change the user’s name or the user ID. To change the privileges of a user login: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. TABLE 7.4 New User Login Settings Setting Action User’s Name Enter the first and last name of the person to whom you want to give access to your account. User ID Enter a combination of between 10 and 16 letters and numbers. Re-enter User ID Enter the same combination of letters and numbers that you entered for User ID. Password Enter a combination of between 8 and 20 letters and numbers. Re-enter Password Enter the same combination of letters and numbers that you entered for Password. Multi-User Access Select any of the checkboxes to grant the user specific privileges within your account: Send Money Mass Payments Request Money Add Funds Refunds Withdraw Money Cancel Payments View Balance View Profile Edit Profile History and Reports API Activation & Authorization Discuss Account with Customer Authorization & Settlement PayPal Shipping Recurring Payments
  • 199. Website Payments Standard Integration Guide June 2008 201 Using Your PayPal Account Profile Allowing Multiple Users to Access Your PayPal Account 7 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Account Information column, click the Multi-User Access link. The Multi-User Access - Current Users page appears, as shown below: FIGURE 7.31 Multi-User Access - Current Users Page 4. Select the radio button next to the User Name, and click the Edit button. The Change Multi-User Access page appears, with the User Name and User ID displayed as read-only text. 5. Select and deselect checkboxes for the privileges you want to grant to or revoke from the user login. 6. Click the Save changes. Resetting the Password for a User Login When employees forget or loose their passwords, you can log in and reset them. To reset the password for a user login: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Account Information column, click the Multi-User Access link. The Multi-User Access - Current Users page appears.
  • 200. Using Your PayPal Account Profile Handling Multiple Currencies 7 202 June 2008 Website Payments Standard Integration Guide 4. Select the radio button next to the User Name for the user login, and click the Change Password button. The Change User Password page appears, with the User Name and User ID displayed as read-only text. 5. Enter a new password for the user login: 6. Click the Save button. Removing a User Login When someone leaves your organization, you should remove the person’s user login from your account. To remove a user login: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Account Information column, click the Multi-User Access link. The Multi-User Access-Current Users page appears. 4. Select the radio button next to the User Name for the user login, and click the Remove button. The Remove User page appears, with the User Name and User ID displayed as read-only text. 5. Click the Remove button to permanently remove the user login from your account, or click the Cancel button to retain the user login. Handling Multiple Currencies PayPal helps you handle multiple currencies in the following ways: TABLE 7.5 Change User Login Password Settings Setting Action Password Enter a combination of between 8 and 20 letters and numbers. Re-enter Password Enter the same combination of letters and numbers that you entered for Password.
  • 201. Website Payments Standard Integration Guide June 2008 203 Using Your PayPal Account Profile Handling Multiple Currencies 7 Managing Currency Balances Accepting or Denying Cross-Currency Payments Managing Currency Balances Use the Currency Balances section of your account profile to manage your currency balances, including: Selecting your primary currency balance Opening or closing currency balances Converting funds from one currency balance to funds in another currency balance. People can pay you in the following currencies; you maintain PayPal balances only in those currencies that you specify. NOTE: Use the IS0-4217 code for the currency_code HTML variable of HTML buttons with monetary amounts in currencies in other than USD. TABLE 7.6 Currencies Allowed for Transactions and Balances Currency ISO-4217 Code Australian Dollar AUD Canadian Dollar CAD Swiss Franc CHF Czech Koruna CZK Danish Krone DKK Euro EUR Pound Sterling GBP Hong Kong Dollar HKD Hungarian Forint HUF Japanese Yen JPY Norwegian Krone NOK New Zealand Dollar NZD Polish Zloty PLN Swedish Krona SEK Singapore Dollar SGD U.S. Dollar USD
  • 202. Using Your PayPal Account Profile Language Encoding Your Data 7 204 June 2008 Website Payments Standard Integration Guide Accepting or Denying Cross-Currency Payments You choose which currencies you accept and how you would like to accept them. You can set your Payment Receiving Preferences to handle cross-currency payments. See “Blocking Certain Kinds of Payments” on page 194. When people make payments in currencies that you hold, the funds appear in your account in the balance of that currency. When people make payments in currencies that you do not hold, you can accept or deny the payments. FIGURE 7.32 Accepting or Denying a Cross-Currency Payment Receiving fees are assessed in the currency in which the funds were sent. Payments converted to your primary currency are converted at a competitive exchange rate. Language Encoding Your Data Websites that use PayPal in different parts of the world work with different languages and different character encoding schemes. PayPal refers collectively to these differences as language encoding.You can set the default language encoding that your website uses to exchange data with PayPal. The default settings are used for all transactions sent from your website to PayPal and all automated notifications sent from PayPal to your website. You can override the default settings on individual transactions with the charset HTML Form variable. For more information on overrides, see “Setting the Character Set – charset” on page 227. About Language Encoding for Exchanging Data With PayPal Computer systems represent human languages in terms of character sets and character encoding.
  • 203. Website Payments Standard Integration Guide June 2008 205 Using Your PayPal Account Profile Language Encoding Your Data 7 Character Sets A character set is a defined set of individual letters and symbols used in a particular language. For instance, the ASCII character is commonly used to define the character in written American English. The Big 5 character is commonly used to define the characters in written Chinese. Character Encoding Character encoding is the way a computer system represents internally the letters and symbols of a particular character set. Computers use internal representation to store, transmit, and process data. Different character encoding schemes define the number of bytes each character requires and the pattern of on/off bits that identify a particular character. For example, single-byte encoding schemes, such as ANSI and extended ASCII, allocate one byte for each character or symbol in character set for Western European languages. Other encoding schemes, such as Unicode and UTF-8, allocate several bytes for each character in their character sets. Changing Your Default Language Encoding Your Language Encoding preferences let you can control which language and encoding scheme is used to exchange data between your website and PayPal. When you sign up for a PayPal account, the system determines your default language and encoding based on your country of origin. For example, if you sign up with a French postal address, your language and encoding are set for Western European languages. You must set your language encoding preferences to match the language and encoding that your website uses. Otherwise, data cannot be exchanged with PayPal. Generally, the default selected by PayPal is appropriate. In some cases, particularly in Asian countries or with certain operating systems, the language and/or encoding may not match those used by your website. You can set these language encoding preferences. Your website’s language – Set the character set used on your website, such as Western European, Japanese, or Russian Encoding – Set the character encoding used on your website, such as UTF-8, EUC-JP, or KOI8-R. NOTE: For a complete list of supported language encodings, see “Table 11.2, “Character Sets and Encoding Schemes Supported by PayPal,” on page 227. Changing Your Default Website Language To change your website language: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears.
  • 204. Using Your PayPal Account Profile Language Encoding Your Data 7 206 June 2008 Website Payments Standard Integration Guide 3. In the Selling Preferences column, click the Language Encoding link. The Language Encoding page appears, as shown below. FIGURE 7.33 Language Encoding Settings – Language Choice 4. From the Your website’s language dropdown menu, select an appropriate setting. 5. Click the Save button. Changing the Character Encoding Used by Your Website Sometimes setting your website’s language is insufficient to set the language encoding correctly. You may need to specify the character encoding explicitly. In addition, you may need to select separately the encoding for data that your website sends to PayPal with Website Payments Standard buttons and the data sent by PayPal through Instant Payment Notification, downloadable history logs, and email notifications. To change the character encoding used by your website: 1. Log in to your PayPal account at https://www.paypal.com. The My Account Overview page appears. 2. Click the Profile subtab. The Profile Summary page appears. 3. In the Selling Preferences column, click the Language Encoding link. The Language Encoding page appears, as shown in Figure 7.33 . 4. Ensure that setting for Your website’s language is correct. 5. Click the More Options button. The More Encoding Options page appears, as shown below
  • 205. Website Payments Standard Integration Guide June 2008 207 Using Your PayPal Account Profile Language Encoding Your Data 7 FIGURE 7.34 Language Encoding Settings – Encoding Options 6. From the Encoding dropdown menu, select the appropriate character encoding scheme for data that your website sends to PayPal. – If you want to use the encoding scheme for receiving data that PayPal sends to your website, ensure that the Yes radio button is selected. – If you want to use a different encoding scheme, select the No radio button and select the encoding scheme you want to use to receive data from PayPal from the No, use dropdown menu. 7. Click the Save button to preserve both the encoding options that you selected on this page and the website language you selected on the previous page. IMPORTANT: You can click the Cancel button to return to the previous page and review your choice for website language. However, selections that you made on the More Encoding Options page are lost.
  • 206. Using Your PayPal Account Profile Language Encoding Your Data 7 208 June 2008 Website Payments Standard Integration Guide
  • 207. Website Payments Standard Integration Guide June 2008 209 8 Using Authorization & Capture PayPal Authorization & Capture is a settlement solution that provides merchants increased flexibility in obtaining payments from their buyers. During a traditional sale at PayPal, the authorization and capture action is completed simultaneously. PayPal Authorization & Capture separates the authorization of payment from the capture of the authorized payment. Authorization & Capture is for merchants who have a delayed order fulfillment process and who typically make a $1 USD authorization at checkout. It enables merchants to modify the original authorization amount due to order changes occurring after the initial order is placed (such as taxes, shipping, or item availability). This chapter discusses the authorization and capture process and provides steps to help you authorize, capture, reauthorize, and void funds. There are two ways to use Authorization & Capture: Create an order or authorization with Website Payments Standard HTML and capture or void the authorization on the PayPal website (www.paypal.com). Use the Authorization & Capture API, which is not discussed in this book. For more information, see the Website Payments Pro Integration Guide. Basic Authorization Process Authorization & Capture starts when your buyer authorizes a payment amount during checkout. 1. For example, you can send your buyer through the Website Payments payment flow, passing in the paymentaction variable set to authorization or order. 2. After your buyer completes checkout, you can then use the payment’s transaction ID with Authorization & Capture in the PayPal website (https://www.paypal.com). You can: – Capture either a partial amount or the full authorization amount. – Authorize a higher amount, up to 115% of the originally authorized amount (not to exceed an increase of $75 USD). – Void a previous authorization. Honor Period and Authorization Period When your buyer approves an authorization, the buyer’s balance can be placed on hold for a 29-day period to ensure the availability of the authorization amount for capture. You can reauthorize a transaction only once, up to 115% of the originally authorized amount (not to exceed an increase of $75 USD).
  • 208. Using Authorization & Capture Basic Authorization & Capture Scenarios 8 210 June 2008 Website Payments Standard Integration Guide After a successful authorization (or reauthorization), PayPal will honor authorized funds for three days, but PayPal cannot ensure that 100% of the funds will be available. A day is defined as the start of the calendar day on which the authorization or reauthorization was made (from 12AM PST to 11:50PM PST). You can settle without a reauthorization from day 4 to day 29 of the authorization period, but PayPal cannot ensure that 100% of the funds will be available after the three-day honor period. However, PayPal will not allow you to capture funds if the buyer’s account is restricted, locked, or a fraudulent case occurs, or if your account has a high restriction level. You can use Authorization & Capture only when your account has a low restriction level. The honor period and authorization period for authorizations are described below: If you attempt to capture funds outside the honor period, PayPal applies best efforts to capture funds. However, funds may not be available at that time. The accounts of buyers and merchants cannot be closed if there is a pending (unsettled) authorization. Supported PayPal Payment Products You can use Authorization & Capture with the PayPal products listed in Table 8.1 , “PayPal Products Supporting Authorization & Capture.” By default, these products assume that a transaction is a final sale. You must explicitly specify that a transaction is a basic or order authorization. NOTE: You must capture and void orders and order authorizations using the Authorization & Capture APIs. That is, you cannot process order authorizations on the PayPal website (https://www.paypal.com). The PayPal website supports processing only basic authorizations, not order authorizations. Basic Authorization & Capture Scenarios Included here are examples of some common scenarios you might encounter when implementing basic authorizations and captures. TABLE 8.1 PayPal Products Supporting Authorization & Capture Product Typical Usage Website Payments paymentaction="authorization" Buy Now paymentaction="authorization" Donations paymentaction="authorization" Shopping carts paymentaction="authorization"
  • 209. Website Payments Standard Integration Guide June 2008 211 Using Authorization & Capture Basic Authorization & Capture Scenarios 8 Capturing A Single Authorization If you have authorized a transaction, you need to capture the funds in order to receive payment. NOTE: PayPal recommends that you capture payments within three days of the original authorization. To initiate a capture: 1. Go to the History of your account on https://www.paypal.com. 2. Click the Capture button associated with the transaction. 3. Review the information on the Capture Funds page, enter the amount to capture, and then click the Capture Funds button. The funds are transferred to your account. Batch Capturing Multiple Authorizations On https://www.paypal.com, you can initiate the capture of an entire group of authorized transactions at the same time. This feature is known as batch capture. To capture a batch of authorized transactions: 1. Go to the History of your account on https://www.paypal.com. 2. Click the Capture button associated with any transaction. 3. On the displayed page, click the Batch Capture link that is located in the introductory paragraph. 4. On the displayed page, either use the dropdown menu to choose a defined date or date range, or enter a specific date range in the provided fields.
  • 210. Using Authorization & Capture Basic Authorization & Capture Scenarios 8 212 June 2008 Website Payments Standard Integration Guide 5. On the displayed page, check the authorizations you want to capture, set their capture amount, choose whether you will make an additional capture later, and optionally enter a note to the buyer. 6. Review the capture transactions, make any desired changes, and submit them for processing. Voiding an Authorization If you initiated an authorization and now want to refund the buyer, you need to void the authorization. Once you void an authorization, you cannot capture any funds associated with the authorization, and the funds are returned to the buyer. NOTE: Voiding an authorization cancels the entire open amount. You can initiate a void in the following cases: The authorization is pending The authorized amount was captured at less than 100%
  • 211. Website Payments Standard Integration Guide June 2008 213 Using Authorization & Capture Basic Authorization & Capture Scenarios 8 To void an authorization: 1. Click the Void button associated with the authorization. 2. Confirm the void details on the Void Authorization page, and then click the Void button. NOTE: PayPal recommends that you explain any unique circumstance to your buyer in the Note field. PayPal sends the buyer an email with the details of the voided authorization. Capture Within 3 Days 1. Your buyer orders a camera from your website. 2. Your buyer enters payment information and authorizes payment. 3. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization 4. PayPal initiates the authorization. 5. On day 3, you ship the camera and capture funds. After you have captured funds, your Transaction Details shows the transaction with a Completed status. FIGURE 8.1 Transaction Details – Completed Transaction Capture From 4 - 29 Days 1. Your buyer orders a DVD player from your website. 2. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization.
  • 212. Using Authorization & Capture Basic Authorization & Capture Scenarios 8 214 June 2008 Website Payments Standard Integration Guide 3. Your buyer enters payment information and authorizes payment. 4. PayPal initiates the authorization. 5. The DVD player is discontinued. You order a different DVD player from your vendor and notify your buyer of the change. 6. On day 14, the DVD player arrives from your vendor. Because the honor period has passed, you complete a reauthorization for payment.You ship the DVD player and complete the final capture. Your Transaction Details shows that the transaction has been completed. FIGURE 8.2 Transaction Details – Reauthorization, Final Capture One Authorization, Multiple Captures, and a Refund 1. Your buyer orders two textbooks and a keyboard from your website. 2. Your buyer enters payment information and authorizes payment. 3. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization. 4. PayPal initiates the authorization. 5. One textbook and the keyboard are out of stock. You order additional inventory from your vendors. You ship the in-stock textbook and capture the first partial capture on day 6. 6. You receive the second textbook from the vendor. You ship the textbook and capture the second partial capture on day 11. 7. You receive the keyboard from the vendor. You reauthorize for payment on day 19.
  • 213. Website Payments Standard Integration Guide June 2008 215 Using Authorization & Capture Basic Authorization & Capture Scenarios 8 8. Your buyer files a complaint that the textbook from the first shipment is damaged. You issue a partial refund for the first capture. Your Transaction Details shows the following: FIGURE 8.3 Transaction Details – Partial Capture, Reauthorization, Refund Lower Capture Amount 1. Your buyer orders a laser printer and a USB cable from your website. 2. Your buyer enters payment information and authorizes payment. 3. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization. 4. PayPal initiates the authorization. 5. Before you process the transaction, your buyer contacts you and requests to cancel the USB cable from the order. 6. On day 6, you ship the laser printer and complete a partial capture for an amount less than the original authorization amount. 7. You complete a void on the funds remaining on the authorization.
  • 214. Using Authorization & Capture Basic Authorization & Capture Scenarios 8 216 June 2008 Website Payments Standard Integration Guide Your Transaction Details shows the following: FIGURE 8.4 Transaction Details – Partial Capture, Voided Transaction Capture Up to 115% 1. Your buyer places an order from your website. 2. Your buyer enters payment information and authorizes payment. 3. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization. 4. PayPal initiates the authorization. 5. You add shipping charges to the order and capture funds on day 1. Your Transaction Details shows the completed transaction. The capture results in a total not greater than 115% of the original authorization.
  • 215. Website Payments Standard Integration Guide June 2008 217 Using Authorization & Capture Basic Authorization & Capture Scenarios 8 FIGURE 8.5 Transaction Details – Capture up to 115% Authorization Expires 1. Your buyer orders a desktop computer from your website. 2. Your buyer enters payment information and authorizes payment. 3. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization. 4. PayPal initiates the authorization. 5. Before you process the transaction, your buyer contacts you to cancel the order. 6. You do not capture funds for the transaction. 7. The authorization expires. Your Transaction Details shows the authorization with an Expired status.
  • 216. Using Authorization & Capture Basic Authorization & Capture Scenarios 8 218 June 2008 Website Payments Standard Integration Guide FIGURE 8.6 Transaction Details – Expired Authorization Void 1. Your buyer orders a stereo system from your website. 2. Your buyer enters payment information and authorizes payment. 3. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization. 4. PayPal initiates the authorization. 5. Before you process the transaction, your buyer contacts you to cancel the order. 6. You void the transaction. Your History shows the transaction with a Voided status.
  • 217. Website Payments Standard Integration Guide June 2008 219 Using Authorization & Capture Basic Authorization & Capture Scenarios 8 FIGURE 8.7 History – Voided Transaction Reattempted Capture 1. Your buyer orders two sweatshirts from your website. 2. Your buyer enters payment information and authorizes payment. 3. Send your buyer to PayPal using a hosted flow, specifying the variable paymentaction=authorization. 4. PayPal initiates the authorization. 5. On day 3, you attempt to capture funds, but the capture fails. You receive an error message similar to the following: We are sorry, we cannot process the settlement at this time. There was a restriction on the buyer’s account. 6. You contact the buyer to resolve the problem. 7. Your buyer resolves the account problem. 8. You reattempt and successfully capture funds. You ship the order to your buyer. NOTE: The reauthorization scenario is similar to the Reattempted Capture scenario, as detailed above.
  • 218. Using Authorization & Capture Recommendations for Best Use of Authorization & Capture 8 220 June 2008 Website Payments Standard Integration Guide Recommendations for Best Use of Authorization & Capture Here are recommendations to ensure the best experience for buyers and to get the most from Authorization & Capture. Capturing Funds on Basic Authorizations PayPal recommends that you capture funds within the honor period of three days because PayPal will honor the funds for a 3-day period after the basic authorization. If you attempt to capture funds after the three-day period and the authorization fails, your request to capture funds may be declined. After day 4 of the authorization period, you can initiate a reauthorization, which will start a new three-day honor period. However, it will not extend the original authorization period past 29 days. For example, if you successfully complete a reauthorization on day 29 of the authorization period, funds will only be honored until the end of the 29th day, and a new three- day honor period will start but not extend beyond day 29. You should capture funds within 24 hours after you ship your buyer’s order. Buyer Approval for Basic Authorizations A buyer-initiated authorization allows you to capture funds from the buyer’s account up to 115% of the originally authorized amount (not to exceed an increase of $75 USD) and up to $10,000 USD. IMPORTANT: If you want to update any details of the purchase that change the original authorization amount, PayPal requires that you obtain consent from the buyer at the time of purchase or at the time of capture. Voiding Basic Authorizations You should void an authorization if the authorization or reauthorization will not be used. Voiding the authorization unlocks the temporary hold placed on your buyer’s funding sources.
  • 219. Website Payments Standard Integration Guide June 2008 221 9 Issuing Refunds When you issue a refund, the gross amount of the refund is sent to the buyer. The gross amount equals the net amount of the original transaction plus the refunded fee from PayPal. Gross Amount = Net Amount + Refund Fee Refunding Within 60 Days of Payment You can refund the entire amount of a transaction or portions of it. If you issue a refund within 60 days, the original transaction fee for receiving the payment is credited to your account. For partial refunds, you are credited a percentage of the original transaction fee based on the refunded amount. To issue a refund within 60 days: 1. Log in to your PayPal account. 2. Click the History subtab. 3. Find the payment transaction you want to refund. 4. Click the Details link for the transaction. 5. Click the Refund Payment link on the Transaction Details page. 6. Enter the refund amount and click the Submit button. 7. Confirm the refund amount and click the Process Refund button. If you refund a pending eCheck payment, no fees are charged because the pending payment is effectively canceled. Refunding After 60 Days When you issue a refund after 60 days, your original transaction fee for receiving the payment is not credited to your account. To issue a refund after 60 days: 1. Log in to your PayPal account. 2. Click the Send Money tab. 3. Enter the required information.
  • 220. Issuing Refunds Refunding After 60 Days 9 222 June 2008 Website Payments Standard Integration Guide 4. Click the Continue button. 5. Review the information on the confirmation page, and click the Send Money button to complete the refund.
  • 221. Website Payments Standard Integration Guide June 2008 223 10 Testing Payment Buttons in the PayPal Sandbox The PayPal Sandbox can be used to test the following functionality: Buy Now buttons – Test single-item payments. For more information, see Chapter 1, “Single-Item Payments – Buy Now Buttons.” Subscribe buttons – Test recurring payments. For more information, see Chapter 3, “Recurring Payments – Subscribe Buttons.” Donate buttons – Test contribution payments. For more information, see Chapter 2, “Contribution Payments – Donate Buttons.” Shopping Cart buttons – Test multiple-item payments in a single purchase transaction. For more information, see Chapter 4, “The PayPal Shopping Cart – Add to Cart and View Cart Buttons.” Refunds – Test the refunding of money paid by PayPal members. For more information, see Chapter 9, “Issuing Refunds.” Payment Data Transfer – Test your identity token, return URL, and Payment Data Transfer settings. For more information about implementing Payment Data Transfer, see the Order Management Integration Guide. Instant Payment Notification – Test Instant Payment Notification messages for payments and reversals Instant Payment Notification messages in the Sandbox environment include the special ipn_test variable, set to the value 1. This variable lets your code differentiate between Instant Payment Notification messages in the Sandbox and Instant Payment Notification messages from the live PayPal website. Use the ipn_test variable to develop scripts that work in both situations. IMPORTANT: Instant Payment Notification messages that come from the Sandbox cannot be verified against the live PayPal website, and Instant Payment Notification messages that come from the live PayPal website cannot be verified against the Sandbox. For more information about implementing Instant Payment Notification, see the Order Management Integration Guide. Simulated transactions – Test scenarios, such as successful and failed eChecks. To test in the Sandbox, create a Developer Central account. Then create multiple PayPal test accounts for buyers and merchants so that you can simulate different scenarios. IMPORTANT: The Sandbox does not process real money.
  • 222. Testing Payment Buttons in the PayPal Sandbox 10 224 June 2008 Website Payments Standard Integration Guide For more information, see the Sandbox User Guide.
  • 223. Website Payments Standard Integration Guide June 2008 225 11 HTML Form Basics for Website Payments Standard This chapter describes in technical terms the basic functionality of Website Payments Standard and its use of HTML Forms. Use the information in this chapter as a guide to writing the HTML code yourself for Website Payments Standard payment buttons. A wide variety of HTML authoring tools exist. This guide does not describe all the possibilities. People who pay you through Website Payments Standard interact with HTML forms and hidden HTML input variables that you place on your website. When someone clicks a payment button in an HTML form on a webpage, the form submits the variables and their values to PayPal. You set the values of the variables to produce the desired effect, such as invoking the Buy Now, the Donate, the Subscribe, or the PayPal Shopping Cart checkout experience and various other PayPal features. NOTE: The PayPal website offers tools that let you create the HTML code for Buy Now, Donate, Subscribe, and PayPal Shopping Cart buttons. For more information, see Chapter 1, “Single-Item Payments – Buy Now Buttons”, Chapter 2, “Contribution Payments – Donate Buttons”, Chapter 3, “Recurring Payments – Subscribe Buttons”, and Chapter 4, “The PayPal Shopping Cart – Add to Cart and View Cart Buttons”. Form Attributes – ACTION and METHOD The FORM tag includes two required attributes, action and method, which always looks like this: <FORM action="https://www.paypal.com/cgi-bin/webscr" method="post"> IMPORTANT: Do not change these values.These attributes are required for all Buy Now buttons, shopping cart buttons, and Donate buttons. Hidden Input Variables HTML input variables in a PayPal Website Payments Standard FORM are always hidden from the payer’s view. They have the following general format: <INPUT TYPE="hidden" name="variableName" value="allowedValue"> The variableName is any of the variables described in Appendix A, “HTML Variables for Website Payments Standard,” and the allowedValue is any of the values detailed for those variables.
  • 224. HTML Form Basics for Website Payments Standard Specifying the Website Payments Standard Product – cmd 11 226 June 2008 Website Payments Standard Integration Guide Specifying the Website Payments Standard Product – cmd The cmd variable is always required in a FORM. Its value determines which Website Payments Standard checkout experience you are using to obtain payment. The input tag looks like one of the following: Buy Now buttons – <INPUT TYPE="hidden" name="cmd" value="_xclick"> Donate buttons – <INPUT TYPE="hidden" name="cmd" value="_donations"> Subscribe buttons – <INPUT TYPE="hidden" name="cmd" value="_xclick- subscriptions"> Shopping cart buttons – <INPUT TYPE="hidden" name="cmd" value="_cart"> IMPORTANT: These INPUT tags are required exactly as shown above. Do not alter them. Variations on Basic Variables This section highlights some useful miscellaneous ideas about Website Payments Standard FORM variables. The HTML variables interact in various ways. Sometimes their effect is cumulative, sometimes they can cancel each other out, sometimes a variable requires that you also set another variable. These interactions are detailed in the descriptions of the variables in Appendix A, “HTML Variables for Website Payments Standard” and Appendix B, “Address Handling (U.S. Merchants Only).” Record Keeping with Passthrough Variables Some variables are exclusively for your own use, such as order management.PayPal returns the values that you send through Instant Payment Notification exactly as you sent them. For TABLE 11.1 Allowed Values for cmd Variable Value of cmd Description _xclick The button that the person clicked was a Buy Now button _donations The button that the person clicked was a Donate button _xclick-subscriptions The button that the person clicked was a Subscribe button. _cart For shopping cart purchases; these additional variables specify the kind of shopping cart button or command: add – Add to Cart buttons display – View Cart buttons upload – The Cart Upload command
  • 225. Website Payments Standard Integration Guide June 2008 227 HTML Form Basics for Website Payments Standard Variations on Basic Variables 11 this reason, they are called passthrough variables. Their values are not recorded or used by PayPal. The following are passthrough variables: custom item_number or item_number_x invoice Setting the Character Set – charset You can use the charset HTML variable to specify the character set or character encoding of the data you collect in your website forms and send to PayPal. PayPal sends data to you in the same character set or encoding you specify with the charset variable. For example, the following INPUT tag sets the encoding to UTF-8: <INPUT TYPE="hidden" name="charset" value="utf-8"> Setting The Return URL on Individual Transactions With Auto Return turned on in your account profile, you can set the value of the return URL on each individual transaction to override the value that you have stored on PayPal. For example, you might want to return the payer’s browser to a URL on your site that is specific to that payer, perhaps with a session ID or other transaction-related data included in the URL. To set the return URL for a transaction, include the return variable in the HTML FORM: <INPUT TYPE="hidden" NAME="return" value="URLspecificToThisTransaction"> TABLE 11.2 Character Sets and Encoding Schemes Supported by PayPal Big5 (Traditional Chinese in Taiwan) EUC-JP EUC-KR EUC-TW gb2312 (Simplified Chinese) gbk HZ-GB-2312 (Traditional Chinese in Hong Kong) ibm-862 (Hebrew with European characters) ISO-2022-CN ISO-2022-JP ISO-2022-KR ISO-8859-1 (Western European Languages) ISO-8859-2 ISO-8859-3 ISO-8859-4 ISO-8859-5 ISO-8859-6 ISO-8859-7 ISO-8859-8 ISO-8859-9 ISO-8859-13 ISO-8859-15 KOI8-R (Cyrillic) Shift_JIS UTF-7 UTF-8 UTF-16 UTF-16BE UTF-16LE UTF16_Platfor mEndian UTF16_Oppos iteEndian UTF-32 UTF-32BE UTF-32LE UTF32_Platfor mEndian UTF32_Oppos iteEndian US-ASCII windows-1250 windows-1251 windows-1252 windows-1253 windows-1254 windows-1255 windows-1256 windows-1257 windows-1258 windows-874 (Thai) windows-949 (Korean) x-mac-greek x-mac-turkish x-mac- centraleurroman x-mac-cyrillic ebcdic-cp-us ibm-1047
  • 226. HTML Form Basics for Website Payments Standard Prepopulating FORMs 11 228 June 2008 Website Payments Standard Integration Guide Desired Currency on Individual Transactions Use the currency_code variable on individual transactions to specify the currency of the payment: <INPUT TYPE="hidden" NAME="currency_code" value="CurrencyCode"> The value of currency_code must be a code from Table 7.6, “Currencies Allowed for Transactions and Balances,” on page 203. NOTE: If the currency_code variable is not included, the currency USD is used. Prepopulating FORMs With Account Optional turned on in your account profile, you can accept payments from people without a PayPal account. However, checking out with PayPal is often faster than forcing people to re-enter information that is stored on PayPal. For repeat customers, it is to your advantage to get people to sign up for their own PayPal accounts. During a payment transaction, you can prepopulate a FORM by including HTML input variables specifically for this purpose. A complete description of these variables is found in “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247. For a detailed description of how prepopulated forms and other settings affect the PayPal billing and shipping addresses, see Appendix B, “Address Handling (U.S. Merchants Only).” Sample HTML for FORM Prepopulation The following sample HTML code shows the optional prepopulation fields with the required variables in payment buttons. Your website dynamically generates the field entries from information that your website gathered about the payer and includes the fields and their values in the URL to which payers are sent when they click a payment button. EXAMPLE 11.1 HTML Code for FORM Prepopulation <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_cart"> <input type="hidden" name="business" value="seller@designerfotos.com"> <input type="hidden" name="item_name" value="hat"> <input type="hidden" name="item_number" value="123"> <input type="hidden" name="amount" value="15.00"> <input type="hidden" name="first_name" value="John"> <input type="hidden" name="last_name" value="Doe"> <input type="hidden" name="address1" value="9 Elm Street"> <input type="hidden" name="address2" value="Apt 5"> <input type="hidden" name="city" value="Berwyn"> <input type="hidden" name="state" value="PA"> <input type="hidden" name="zip" value="19312"> <input type="hidden" name="night_phone_a" value="610">
  • 227. Website Payments Standard Integration Guide June 2008 229 HTML Form Basics for Website Payments Standard Overriding Addresses Stored With PayPal 11 <input type="hidden" name="night_phone_b" value="555"> <input type="hidden" name="night_phone_c" value="1234"> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif" alt="PayPal - The safer, easier way to pay online"> </form> Overriding Addresses Stored With PayPal For people who already have PayPal accounts and whom you already prompted for a shipping address before they choose to pay with PayPal, you can use the entered address instead of the address the person has stored with PayPal. Set the address_override variable to 1, as in the following example: <INPUT TYPE="hidden" name="address_override" value="1"> You must also include FORM variables that contain the person’s address information, as detailed in “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247.” The payer is shown the passed-in address but cannot edit it. No address is shown if the address is not valid, such as missing required fields like country, or if the address is not included at all. For a detailed description of how overriding the address and other settings affect the PayPal billing and shipping addresses, see Appendix B, “Address Handling (U.S. Merchants Only).” Sample HTML for Overriding Addresses Stored With PayPal The following HTML code shows the address_override variable in conjunction with the prepopulation variables for overriding a payer’s address that is stored with PayPal. EXAMPLE 11.2 HTML for Overriding Addresses Stored With PayPal <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_xclick"> <input type="hidden" name="business" value="seller@designerfotos.com"> <input type="hidden" name="item_name" value="Memorex 256MB Memory Stick"> <input type="hidden" name="item_number" value="MEM32507725"> <input type="hidden" name="amount" value="3"> <input type="hidden" name="tax" value="1"> <input type="hidden" name="quantity" value="1"> <input type="hidden" name="no_note" value="1"> <input type="hidden" name="currency_code" value="USD"> <!-- Enable override of payer’s stored PayPal address. --> <input type="hidden" name="address_override" value="1"> <!-- Set prepopulation variables to override stored address. --> <input type="hidden" name="first_name" value="John">
  • 228. HTML Form Basics for Website Payments Standard Instant Payment Notification – notify_url 11 230 June 2008 Website Payments Standard Integration Guide <input type="hidden" name="last_name" value="Doe"> <input type="hidden" name="address1" value="345 Lark Ave"> <input type="hidden" name="city" value="San Jose"> <input type="hidden" name="state" value="CA"> <input type="hidden" name="zip" value="95121"> <input type="hidden" name="country" value="US"> <input type="image" name="submit" border="0" src="https://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif" alt="PayPal - The safer, easier way to pay online"> </form> Instant Payment Notification – notify_url Instant Payment Notification consists of three parts: 1. Someone pays you. 2. PayPal POSTs FORM variables to a URL you specify that runs a program to process the variables. 3. You validate the notification. FIGURE 11.1 How IPN Works – Three General Steps 1. A payment or a refund triggers IPN. This payment can be via Website Payments Standard FORMs or via the PayPal Web Services APIs for Express Checkout, MassPay, or RefundTransaction. If the payment has a “Pending” status, you receive another IPN when the payment clears, fails, or is denied.
  • 229. Website Payments Standard Integration Guide June 2008 231 HTML Form Basics for Website Payments Standard Instant Payment Notification – notify_url 11 2. PayPal posts HTML FORM variables to a program at a URL you specify. You can specify this URL either in your account profile or with the notify_url variable on each transaction. This post is the heart of IPN. Included in the notification is the payment information, such as the payer’s name and the amount paid. All possible variables in IPN posts are detailed in the Order Management Integration Guide.When your server receives a notification, it must process the incoming data. 3. Your server must then validate the notification to ensure that it is legitimate. For details, see the Order Management Integration Guide.
  • 230. HTML Form Basics for Website Payments Standard Instant Payment Notification – notify_url 11 232 June 2008 Website Payments Standard Integration Guide
  • 231. A Website Payments Standard Integration Guide June 2008 233 HTML Variables for Website Payments Standard This appendix provides reference information for all HTML variables supported for use with Buy Now, Donation, Subscribe, Add to Cart, and View Cart buttons, as well as HTML variables supported the Cart Upload command. Read the following topics to learn about the kinds of HTML variables that you can use: “Technical HTML Variables” on page 233 “HTML Variables for Individual Items” on page 234 “HTML Variables for Payment Transactions” on page 236 “HTML Variables for Shopping Carts” on page 238 “HTML Variables for Subscribe Buttons” on page 240 “HTML Variables for Displaying PayPal Checkout Pages” on page 245 “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247 Technical HTML Variables Technical HTML variables control how PayPal responds technically when people click Buy Now, Donation, Subscribe, Add to Cart, and View Cart buttons or when third party or custom carts initiate payment processing with the Cart Upload command. TABLE A.1 Allowable Values for the cmd HTML Variable Value of cmd Description _xclick The button that the person clicked was a Buy Now button. _donations The button that the person clicked was a Donate button. _xclick-subscriptions The button that the person clicked was a Subscribe button. _oe-gift-certificate The button that the person clicked was a Buy Gift Certificate button. _cart For shopping cart purchases; these additional variables specify the kind of shopping cart button that the person clicked: add – Add to Cart buttons for the PayPal Shopping Cart display – View Cart buttons for the PayPal Shopping Cart upload – The Cart Upload command for third party carts _s-xclick The button that the person clicked was protected from tampering by using encryption.
  • 232. HTML Variables for Website Payments Standard HTML Variables for Individual Items A 234 June 2008 Website Payments Standard Integration Guide HTML Variables for Individual Items HTML variables for individual items specify information about a product or service for Buy Now and Add to Cart buttons, or they specify information about a contribution for Donate buttons. TABLE A.2 HTML Variables – Instant Payment Notification Control notify_url Name Description Required or Optional Character Length notify_url The URL to which PayPal posts information about the transaction. Optional 255 TABLE A.3 HTML Variables – Item Information Name Required or Optional Description Character Length amount See description. The price or amount of the product, service, or contribution, not including shipping, handling, or tax. If omitted from Buy Now or Donate buttons, payers enter their own amount at the time of payment. Optional for Buy Now or Donate buttons Required for Add to Cart buttons item_name See description. Description of item. If omitted in Buy Now or Donate buttons, payers enter their own name at the time of payment. Optional for Buy Now or Donate buttons Required for Add to Cart buttons 127 item_number Optional Pass-through variable for you to track product or service purchased or the contribution made. The value you specify passed back to you upon payment completion. 127 quantity Optional Number of items. If profile-based shipping rates are configured with a basis of quantity, the sum of quantity values is used to calculate the shipping charges for the transaction. PayPal appends a sequence number to uniquely identify the item in the PayPal Shopping Cart (e.g., quantity1, quantity2). NOTE: The value for quantitymust be a positive integer. Null, zero, or negative numbers are not allowed. undefined_ quantity Optional 1 – allows buyers to specify the quantity. Optional for Buy Now buttons Not allowed for Add to Cart buttons 1
  • 233. Website Payments Standard Integration Guide June 2008 235 HTML Variables for Website Payments Standard HTML Variables for Individual Items A weight Optional Weight of items. If profile-based shipping rates are configured with a basis of weight, the sum of weight values is used to calculate the shipping charges for the transaction. weight_unit Optional The unit of measure if weight is specified. Allowable values: lbs kgs The defaults is lbs. on0 Optional First option field name. If omitted, no variable is passed back to you. The os0 variable contains the corresponding value for the label specified in this variable. For example, if on0 is size, os0 could be large. 64 on1 Optional Second option field name. If omitted, no variable is passed back to you. The os1 variable contains the corresponding value for the label specified in this variable. For example, if on1 is color then os1 could be blue. 64 os0 Optional Option selected by the buyer from the first set of option values. If this option is selected through a text box or radio button, each value should be no more than 64 characters. If buyers enter this value in a text field, there is a 200-character limit. If omitted, no variable is passed back to you. NOTE: on0 must also be defined set. For example, it could be size. 64 or 200 See description. os1 Optional Option selected by the buyer from the Second set of option values. If this option is selected through a text box or radio button, each value should be no more than 64 characters. If buyers enter this value in a text field, there is a 200-character limit. If omitted, no variable is passed back to you. NOTE: on1 must also be set. For example, it could be color. 64 or 200 See description. TABLE A.3 HTML Variables – Item Information Name Required or Optional Description Character Length
  • 234. HTML Variables for Website Payments Standard HTML Variables for Payment Transactions A 236 June 2008 Website Payments Standard Integration Guide HTML Variables for Payment Transactions HTML variables for payment transactions provide information about entire transactions, regardless of the individual items involved with the payment. You can use these variables with Buy Now, Donation, and View Cart buttons. TABLE A.4 HTML Variables for Payment Transactions Name Required or Optional Description Character Length address_ override Optional 1 – The address specified in prepopulation variables overrides the PayPal member’s stored address. See Table A.9, “HTML Variables for Prepopulating Checkout Pages With Payer Information.” The payer is shown the passed-in address but cannot edit it. No address is shown if the address is not valid, such as missing required fields like country, or is not included at all,. 1 currency_ code Optional The currency of the payment. The default is USD. For allowable values, see Table 7.6, “Currencies Allowed for Transactions and Balances,” on page 203. 3 custom Optional Passthrough variable never presented to the payer. Default – No variable is passed back to you. 256 handling Optional Handling charges. This is not quantity-specific. The same handling cost applies, regardless of the number of items on the order. Default – No handling charges are included. invoice Optional Passthrough variable you can use to identify your invoice number for this purchase. Default – No variable is passed back to you. 127
  • 235. Website Payments Standard Integration Guide June 2008 237 HTML Variables for Website Payments Standard HTML Variables for Payment Transactions A shipping Optional The cost of shipping this item, if you enabled the override of automatic shipping calculations per transaction through your Account Profile. If you specify shipping and shipping2 is not defined, this flat amount is charged regardless of the quantity of items purchased. NOTE: If you use this variable, you do not need to set up shipping rates in your Account Profile. However, shipping rates you set up in your Profile take priority over values specified with this variable, unless you select the Override shipping methods per transaction checkboxes in the shipping methods you defined; the checkboxes are deselected by default. For more information, see “Overriding Shipping Calculations on Individual Transactions” on page 190. Default – If profile-based shipping rates are configured, buyers are charged an amount according to the shipping methods they choose. shipping2 Optional The cost of shipping each additional item. If omitted and profile- based shipping rates are configured, buyers are charged an amount according to the shipping methods they choose. tax Optional Transaction-based tax override variable. Set this to a flat tax amount to apply to the transaction regardless of the buyer’s location. This value overrides any tax settings set in your account profile. Default – Profile tax settings, if any, apply. tax_cart Optional Cart-wide tax, overriding any individual item tax_x value weight_cart Optional If profile-based shipping rates are configured with a basis of weight, PayPal uses this value to calculate the shipping charges for the transaction. This value overrides the weight values of individual items. weight_unit Optional The unit of measure if weight_cart is specified. Allowable values: lbs kgs The default value is lbs. TABLE A.4 HTML Variables for Payment Transactions Name Required or Optional Description Character Length
  • 236. HTML Variables for Website Payments Standard HTML Variables for Shopping Carts A 238 June 2008 Website Payments Standard Integration Guide HTML Variables for Shopping Carts HTML variables for shopping carts can be used with Add to Cart and View Cart buttons, as well as with third party shopping carts or custom carts that initiate payment processing. TABLE A.5 HTML Variables for Shopping Carts Name Required or Optional Description Character Length add See description Add an item to the PayPal Shopping Cart. This variable must be set as follows: add=1 The alternative is the display=1 variable, which displays the contents of the PayPal Shopping Cart to the buyer. If both add and display are specified, display takes precedence. 1 amount Required Price of the item or the total price of all items in the shopping cart. business Required Your PayPal ID or an email address associated with your PayPal account. Email addresses must be confirmed. display See description. Display the contents of the PayPal Shopping Cart to the buyer. This variable must be set as follows: display=1 The alternative is the add=1 variable, which adds an item to the PayPal Shopping Cart. If both add and display are specified, display takes precedence. 1 handling_ cart Optional Single handling fee to be charged cart-wide. If handling_cart is used in multiple Add to Cart buttons, the handling_cart value of the first item is used. item_name Required Name of the item or a name for the entire Shopping Cart
  • 237. Website Payments Standard Integration Guide June 2008 239 HTML Variables for Website Payments Standard HTML Variables for Shopping Carts A paymentaction Optional Indicates whether the transaction is payment on a final sale or an authorization for a final sale, to be captured later. Allowable values: sale authorization order The default value is sale. Set the value to authorization to place a hold on the PayPal account for the authorized amount. Set the value to order to authorize the transaction without placing a hold on the PayPal account. For more information, see the Website Payments Pro Integration Guide. IMPORTANT: If you set paymentaction to order, you must use the Authorization & Capture API to authorize and capture the transaction payments. The merchant tools on the PayPal websitel let you capture payments only for authorizations, not for orders. upload See description Upload the contents of a third party shopping cart or a custom shopping cart. This variable must be set as follows: upload=1 The alternatives are the add=1 variable and the display=1 variable, which are used with the PayPal Shopping Cart. 1 TABLE A.6 HTML Variables for Individual Items in Third Party Shopping Carts Name Required or Optional Description Character Length amount_x Required Price of item #x. This is only required if you specify upload=1. handling_x Optional The cost of handling for item #x. item_name_x Required Name of item #x in the cart. Must be alphanumeric. 127 item_number_x Optional Passthrough variable for you to track order or other purchase. Default – No variable is passed back to you. 127 on0_x Optional First option field name for item #x 64 on1_x Optional Second option field name for item #x. 64 TABLE A.5 HTML Variables for Shopping Carts Name Required or Optional Description Character Length
  • 238. HTML Variables for Website Payments Standard HTML Variables for Subscribe Buttons A 240 June 2008 Website Payments Standard Integration Guide HTML Variables for Subscribe Buttons HTML variables for Subscribe buttons set the terms of subscriptions and their recurring payments. os0_x Optional First set of option value(s) for item #x. Requires that on0_x also be set. 200 os1_x Optional Second set of option value(s) for item #x. Requires that on1_x also be set. 200 quantity_x Optional Quantity of the item #x. If profile-based shipping rates are configured with quantity as the basis, the sum of all quantity_x values are used to calculate the shipping charges. NOTE: The value of quantity_x must be a positive integer. Null, zero, or negative numbers are not allowed. shipping_x Optional The cost of shipping #x. This variable excludes the item from automatic shipping calculations; the amount is added to the shipping charges calculated automatically on other items in the cart. tax_x Optional The tax amount for item #x. This variable excludes the item from automatic tax calculations; the amount is added to the taxes calculated automatically on other items in the cart. weight_x Optional The weight of item #x. weight_unit Optional The unit of measure if weight_x is specified. Allowable values: lbs kgs The default is lbs. TABLE A.7 HTML Variables for Subscribe Buttons Name Required or Optional Description Character Length business Required Your PayPal ID or an email address associated with your PayPal account. Email addresses must be confirmed. TABLE A.6 HTML Variables for Individual Items in Third Party Shopping Carts Name Required or Optional Description Character Length
  • 239. Website Payments Standard Integration Guide June 2008 241 HTML Variables for Website Payments Standard HTML Variables for Subscribe Buttons A item_name Optional Description of item being sold (maximum 127 characters). If you are collecting aggregate payments, this can include a summary of all items purchased, tracking numbers, or generic terms such as “subscription.” If omitted, customer will see a field in which they have the option of entering an Item Name return Optional An internet URL where the user will be returned after completing the payment. For example, a URL on your site that hosts a “Information on your new subscription” page. If omitted, users will be taken to the PayPal site rm Optional Return URL behavior. If set to “1” and if a “return” value is submitted, upon completion of the payment the buyer will be sent back to the return URL using a GET method, and no transaction variables will be submitted. If set to “2” and if a “return” value is submitted, the buyer will be sent back to the return URL using a POST method, to which all available transaction variables will also be posted. If omitted or set to “0”, GET methods will be used for all Buy Now, Donate, Subscribe, and PayPal Shopping Cart transactions in which Instant Payment Notification is not enabled. POST methods with variables will be used for the rest cancel_return Optional An internet URL where the user will be returned if payment is cancelled. For example, a URL on your site which hosts a “Payment Cancelled” page. If if omitted, users will be taken to the PayPal site a1 Optional Trial period 1 price. For a free trial period, specify 0. p1 See description. Trial period 1 duration. Required if you specify a1. Specify an integer value in the allowable range for the units of duration that you specify with t1. 2 t1 See description. Trial period 1 units of duration. Required if you specify a1. Allowable values: D – for days; allowable range for p1 is 1 to 90 W – for weeks; allowable range for p1 is 1 to 52 M – for months; allowable range for p1 is 1 to 24 Y – for years; allowable range for p1 is 1 to 5 1 a2 Optional Trial period 2 price. Can be specified only if you also specify a1. p2 See description. Trial period 2 duration. Required if you specify a2. Specify an integer value in the allowable range for the units of duration that you specify with t2. 2 TABLE A.7 HTML Variables for Subscribe Buttons Name Required or Optional Description Character Length
  • 240. HTML Variables for Website Payments Standard HTML Variables for Subscribe Buttons A 242 June 2008 Website Payments Standard Integration Guide t2 See description. Trial period 2 units of duration. Allowable values: D – for days; allowable range for p2 is 1 to 90 W – for weeks; allowable range for p2 is 1 to 52 M – for months; allowable range for p2 is 1 to 24 Y – for years; allowable range for p2 is 1 to 5 1 a3 Required Regular subscription price. p3 Required Subscription duration. Specify an integer value in the allowable range for the units of duration that you specify with t3. 2 t3 Required Regular subscription units of duration. Allowable values: D – for days; allowable range for p3 is 1 to 90 W – for weeks; allowable range for p3 is 1 to 52 M – for months; allowable range for p3 is 1 to 24 Y – for years; allowable range for p3 is 1 to 5 1 src Optional Recurring payments. Subscription payments recur unless subscribers cancel their subscriptions before the end of the current billing cycle or you limit the number of times that payments recur with the value that you specify for srt. Allowable values: 0 – subscription payments do not recur 1 – subscription payments recur The default is 0. 1 srt Optional Recurring times. Number of times that subscription payments recur. Specify an integer above 1. Valid only if you specify src="1". 1 sra Optional Reattempt on failure. If a recurring payment fails, PayPal attempts to collect the payment two more times before canceling the subscription. Allowable values: 0 – do not reattempt failed recurring payments 1 – reattempt failed recurring payments before canceling The default is 0. For more information, see “Reattempting Failed Recurring Payments With Subscribe Buttons” on page 87. 1 no_shipping Optional Do not prompt payers for shipping address. For Subscribe buttons, the only allowable values is 1 – do not prompt for an address. You must always specify this variable with Subscribe buttons. 1 TABLE A.7 HTML Variables for Subscribe Buttons Name Required or Optional Description Character Length
  • 241. Website Payments Standard Integration Guide June 2008 243 HTML Variables for Website Payments Standard HTML Variables for Subscribe Buttons A no_note Required Do not prompt payers to include a note with their payments. Allowable values: 0 – provide a text box and prompt for the note 1 – hide the text box and the prompt The default is 0. 1 cn Optional Label that appears above the note field. This value is not saved and will not appear in any of your notifications. If omitted, no variable will be passed back to you. The default is “Special instructions (optional):” 30 custom Optional User-defined field which will be passed through the system and returned to user in payment notification email. This field will not be shown to your subscribers 255 invoice Optional User-defined field which must be unique with each subscription. The invoice number will be shown to subscribers with the other details of their transactions 127 usr_manage Optional Set to 1 to have PayPal generate usernames and initial passwords for subscribers. For more information, see “Generating Usernames and Passwords With Subscribe Buttons” on page 85. 1 cs Optional Sets the background color of your checkout pages. If set to “1,” the background color will be black. If omitted or set to “0” the background color will be white on0 Optional First option field name. If omitted, no variable will be passed back to you 30 os0 Optional First set of option value(s). If this option is selected through a text box (or radio button), each value should be no more than 30 characters. If this value is entered by the customer through a text box, there is a 200-character limit. If omitted, no variable will be passed back to you. “on0” must be defined in order for “os1” to be recognized See description. on1 Optional Second option field name. If omitted, no variable will be passed back to you 30 os1 Optional Second set of option value(s). If this option is selected through a text box (or radio button), each value should be no more than 30 characters. If this value is entered by the customer through a text box, there is a 200-character limit. If omitted, no variable will be passed back to you. “on1” must be defined in order for “os1” to be recognized See description. TABLE A.7 HTML Variables for Subscribe Buttons Name Required or Optional Description Character Length
  • 242. HTML Variables for Website Payments Standard HTML Variables for Subscribe Buttons A 244 June 2008 Website Payments Standard Integration Guide currency_code Optional The currency of prices for trial periods and the subscription. The default is USD. For allowable values, see Table 7.6, “Currencies Allowed for Transactions and Balances,” on page 203. 3 modify Optional Modification behavior. Allowable values: 0 – allows subscribers to only create new subscriptions 1 – allows subscribers to modify their current subscriptions or sign up for new ones 2 – allows subscribers to only modify their current subscriptions The default value is 0. For more information, see “Working With Modify Subscription Buttons” on page 81. 1 lc Optional The language of the login or sign-up page that subscribers see when they click the Subscribe button. If unspecified, the language is determined by a PayPal cookie in the subscriber’s browser. If there is no PayPal cookie, the default language is U.S. English. For allowable values, see Appendix C, “Country Codes.” 2 page_style Optional The custom payment page style for checkout pages associated with the payment button or email payment link. Allowable values: paypal – use the PayPal page style primary – use the page style that you marked as primary in your account profile page_style_name – use the custom payment page style from your account profile that has the specified name The default is primary, if you added a custom payment page style to your account profile. The default is paypal otherwise. 30 TABLE A.7 HTML Variables for Subscribe Buttons Name Required or Optional Description Character Length
  • 243. Website Payments Standard Integration Guide June 2008 245 HTML Variables for Website Payments Standard HTML Variables for Displaying PayPal Checkout Pages A HTML Variables for Displaying PayPal Checkout Pages HTML variables for displaying PayPal checkout pages control how the pages appear and function. TABLE A.8 HTML Variables for Displaying PayPal Checkout Pages Name Required or Optional Description Character Length cancel_ return Optional A URL to which the payer’s browser is redirected if payment is cancelled; for example, a URL on your website that displays a “Payment Canceled” page. Default – The browser is redirected to a PayPal web page. 1,024 cbt Optional Sets the text for the Continue button on the PayPal Payment Complete page. NOTE: The return variable must also be set. 60 cn Optional Label above the note field. This value is not saved and does not appear in any of your notifications. If omitted, no variable is passed back to you. 40 cpp_header_ image Optional The image at the top left of the checkout page. The image’s maximum size is 750 pixels wide by 90 pixels high. PayPal recommends that you provide an image that is stored only on a secure (https) server. For more information, see “Co-Branding the PayPal Checkout Pages” on page 155. No limit cpp_ headerback_ color Optional The background color for the header of the checkout page. Valid value is case-insensitive six-character HTML hexadecimal color code in ASCII. 6 cpp_ headerborder_ color Optional The border color around the header of the checkout page. The border is a 2-pixel perimeter around the header space, which has a maximum size of 750 pixels wide by 90 pixels high. Valid value is case-insensitive six-character HTML hexadecimal color code in ASCII. 6 cpp_payflow_ color Optional The background color for the checkout page below the header. Valid value is case-insensitive six-character HTML hexadecimal color code in ASCII. NOTE: Background colors that conflict with PayPal’s error messages are not allowed; in these cases, the default color is white. 6 cs Optional The background color of the checkout page. Allowable values: 0 – background color is white 1 – background color is black The default is 0. 1
  • 244. HTML Variables for Website Payments Standard HTML Variables for Displaying PayPal Checkout Pages A 246 June 2008 Website Payments Standard Integration Guide image_url Optional The URL of the 150x50-pixel image displayed as your logo in the upper left corner of PayPal’s pages. Default – Your business name, if you have a Business account, or your email address, if you have Premier account. 1,024 no_note Optional Do not prompt payers to include a note with their payments. Allowable values: 0 – provide a text box and prompt for the note 1 – hide the text box and the prompt The default is 0. 1 no_shipping Optional Do not prompt payers for shipping address. Allowable values: 0 – prompt for an address, but do not require one 1 – do not prompt for an address 2 – prompt for an address, and require one The default is 0. 1 page_style Optional The custom payment page style for checkout pages. Allowable values: paypal – use the PayPal page style primary – use the page style that you marked as primary in your account profile page_style_name – use the custom payment page style from your account profile that has the specified name The default is primary if you added a custom payment page style to your account profile. Otherwise, the default is paypal. 30 return Optional The URL to which the payer’s browser is redirected after completing the payment; for example, a URL on your site that displays a “Thank you for your payment” page. Default – The browser is redirected to a PayPal web page. 1,024 rm Optional Return method. The FORM METHOD used to send data to the URL specified by the return variable after payment completion. Allowable values: 0 – all shopping cart transactions use the GET method 1 – the payer’s browser is redirected to the return URL by the GET method, and no transaction variables are sent 2 – the payer’s browser is redirected to the return URL by the POST method, and all transaction variables are also posted The default is 0. NOTE: The rm variable takes effect only if the return variable is also set. 1 TABLE A.8 HTML Variables for Displaying PayPal Checkout Pages Name Required or Optional Description Character Length
  • 245. Website Payments Standard Integration Guide June 2008 247 HTML Variables for Website Payments Standard HTML Variables for Prepopulating PayPal Checkout Pages A HTML Variables for Prepopulating PayPal Checkout Pages HTML variables for prepopulating PayPal checkout pages let you specify information about the payer. shopping_url Optional The URL on your site to which buyers will return when they click Continue Shopping during purchase of merchant gift certificates on PayPal. Valid only with Buy Gift Certificate buttons. 255 TABLE A.9 HTML Variables for Prepopulating Checkout Pages With Payer Information Name Required or Optional Description Character Length address1 Optional Street (1 of 2 fields) 100 address2 Optional Street (2 of 2 fields) 100 city Optional City 40 country Optional Sets shipping and billing country. For allowable values, see Appendix C, “Country Codes.” 2 first_name Optional First name 32 last_name Optional Last name 64 lc Optional Sets the payer’s language for the billing information/log-in page only. The default is US. For allowable values, see Appendix C, “Country Codes.” 2 night_ phone_a Optional The area code for U.S. phone numbers, or the country code for phone numbers outside the U.S. This will prepopulate the payer’s home phone number. See description. night_ phone_b Optional The three-digit prefix for U.S. phone numbers, or the entire phone number for phone numbers outside the U.S., excluding country code. This will prepopulate the payer’s home phone number. See description. night_ phone_c Optional The four-digit phone number for U.S. phone numbers. This will prepopulate the payer’s home phone number. See description. state Optional State; use Official U.S. Postal Service Abbreviations. 2 TABLE A.8 HTML Variables for Displaying PayPal Checkout Pages Name Required or Optional Description Character Length
  • 246. HTML Variables for Website Payments Standard HTML Variables for Prepopulating PayPal Checkout Pages A 248 June 2008 Website Payments Standard Integration Guide zip Optional Postal code 32 TABLE A.9 HTML Variables for Prepopulating Checkout Pages With Payer Information Name Required or Optional Description Character Length
  • 247. B Website Payments Standard Integration Guide June 2008 249 Address Handling (U.S. Merchants Only) Various HTML variables and PayPal account settings determine whether people can change, add, or override the billing and shipping addresses on PayPal checkout pages. In the following diagram, the letters “A” through “E” represent endpoints for the influence that HTML variables and account profile settings have on how PayPal handles billing and shipping addresses during checkout. TABLE B.1 HTML Variables and Account Profile Settings for Addresses Variables or Settings Is the address prepopulated? Use address variables to specify the buyer’s address, which appears automatically on the PayPal payment pages. See “HTML Variables for Prepopulating PayPal Checkout Pages” on page 247. Allow override of payer’s stored address? Use the address_override variable. See Appendix A, “HTML Variables for Website Payments Standard.” Require confirmed address? Use the Block payments from U.S. users who do not provide a Confirmed Address account profile setting. See “Blocking Payments From U.S. Payers Without a Confirmed Address” on page 195. Prompt for shipping address? Use the no_shipping variable. See “HTML Variables for Displaying PayPal Checkout Pages” on page 245.”
  • 248. Address Handling (U.S. Merchants Only) Address Handling With PayPal Account Optional Turned On B 250 June 2008 Website Payments Standard Integration Guide FIGURE B.1 How HTML Variables and Profile Account Setting Affect Address Handling Read these sections to learn about addresses handling at the endpoints of decision-making in the diagram above: Address Handling With PayPal Account Optional Turned On Address Handling With PayPal Account Optional Turned Off Address Handling With PayPal Account Optional Turned On This section describes the billing and shipping address behavior during checkout when PayPal Account Optional is turned on. With it turned on, people can pay by credit card without signing up for PayPal accounts. For more information, see “PayPal Account Optional” on page 163. NOTE: The endpoint letters in this section refer to Figure B.1, “How HTML Variables and Profile Account Setting Affect Address Handling” on page 250. Endpoint A The billing page displays the prepopulated address. If the buyer modifies the address and attempts to submit the page, PayPal returns an error that the address cannot be modified. The
  • 249. Website Payments Standard Integration Guide June 2008 251 Address Handling (U.S. Merchants Only) Address Handling With PayPal Account Optional Turned On B Shipping Address on the Review Your Payment page displays this address. The buyer cannot change the shipping address. If the prepopulated address is bad, PayPal displays an error page indicating the buyer cannot proceed with payment because the merchant provided an invalid address. Endpoints B, C, and D The billing page displays the prepopulated address. The buyer can modify the billing address. The Shipping Address on the Review Your Payment page displays this address. The buyer cannot change the shipping address. If the prepopulated address is bad, PayPal prepopulates the billing page and the buyer can modify it. There is no Shipping Address on the Review Your Payment page. Endpoint E The billing page displays the prepopulated address. The buyer can modify the billing address. The Shipping Address on the Review Your Payment page displays the address from the billing page. The buyer cannot change the shipping address. The shipping address always matches the billing address, so modifications to the billing address updates the shipping address. If the prepopulated address is invalid, the billing page displays the address and the buyer can modify it. Endpoints F and H The billing page displays the prepopulated address. The buyer can modify the billing address. The Shipping Address on the Review Your Payment page displays the address from the billing page. The buyer can change the shipping address. If the prepopulated address is invalid, the billing page displays the address and the buyer can modify it. Endpoint G The billing page displays the prepopulated address. The buyer can modify the billing address. There is no Shipping Address on the Review Your Payment page. Endpoint I The Shipping Address on the Review Your Payment page displays the address from the billing page. The buyer cannot change the shipping address. The shipping address should always match the billing address, so if the user modifies the billing information and address, the shipping address will be updated as well.
  • 250. Address Handling (U.S. Merchants Only) Address Handling With PayPal Account Optional Turned Off B 252 June 2008 Website Payments Standard Integration Guide Endpoints J and L The Shipping Address on the Review Your Payment page displays the address from the billing page. The buyer can change the shipping address. Endpoint K There is no Shipping Address on the Review Your Payment page. Address Handling With PayPal Account Optional Turned Off This section describes the billing and shipping address behavior during checkout when PayPal Account Optional is turned off. When it is turned off, people without PayPal accounts must sign up of a PayPal account before they complete their payments. For more information, see “PayPal Account Optional” on page 163. NOTE: The endpoint letters in this section refer to Figure B.1, “How HTML Variables and Profile Account Setting Affect Address Handling” on page 250. Endpoint A If the prepopulated address is a confirmed address, the Shipping Address on the Review Your Payment page displays the prepopulated address. The buyer cannot change the shipping address. If the prepopulated address is not confirmed, PayPal displays the Add Credit Card or Debit Card page with the prepopulated address as the billing address. The page displays a message that the address must match the one displayed on their statement. The Cancel button is displayed if the merchant has provided a cancel_return URL. Endpoints B, C, and D The Shipping Address on the Review Your Payment page displays the prepopulated address. The buyer cannot change the shipping address. If the prepopulated address is invalid, the payment cannot be processed. PayPal displays an error message. Endpoint E If the prepopulated address is a confirmed address, the Shipping Address on the Review Your Payment page displays the prepopulated address. The buyer can select or add another address. If the buyer selects Add New Address, PayPal displays the Add Credit Card or Debit Card page.
  • 251. Website Payments Standard Integration Guide June 2008 253 Address Handling (U.S. Merchants Only) Address Handling With PayPal Account Optional Turned Off B If the prepopulated address is not a confirmed address or there is no confirmed address in the profile, PayPal displays the Add Credit Card or Debit Card page with the address prepopulated. Endpoints F and H The Shipping Address on the Review Your Payment page displays the prepopulated address. The buyer can select or add another address. If the prepopulated address is invalid, the address is dropped and the address in the profile is displayed, if available. The buyer can select or add another address directly in the page. Endpoints G and K The Review Your Payment page does not contain a Shipping Address. Endpoint I If there is a confirmed address in the account, PayPal displays the Review Your Payment page. The buyer can select another confirmed address or add another address. If the buyer selects Add New Address, they are taken to the Add Credit Card or Debit Card page. If there is not a confirmed address in the account, PayPal displays the Add Credit Card or Debit Card page. Endpoints J and L The Shipping Address on the Review Your Payment page displays the buyer’s primary address. The buyer can select another address or add another address directly in the page.
  • 252. Address Handling (U.S. Merchants Only) Address Handling With PayPal Account Optional Turned Off B 254 June 2008 Website Payments Standard Integration Guide
  • 253. C Website Payments Standard Integration Guide June 2008 255 Country Codes NOTE: This table lists country codes defined by ISO 3166-1. Table 1: Country Codes Country Code AFGHANISTAN AF ÅLAND ISLANDS AX ALBANIA AL ALGERIA DZ AMERICAN SAMOA AS ANDORRA AD ANGOLA AO ANGUILLA AI ANTARCTICA AQ ANTIGUA AND BAR- BUDA AG ARGENTINA AR ARMENIA AM ARUBA AW AUSTRALIA AU AUSTRIA AT AZERBAIJAN AZ BAHAMAS BS BAHRAIN BH BANGLADESH BD BARBADOS BB
  • 254. Country Codes C 256 June 2008 Website Payments Standard Integration Guide BELARUS BY BELGIUM BE BELIZE BZ BENIN BJ BERMUDA BM BHUTAN BT BOLIVIA BO BOSNIA AND HERZE- GOVINA BA BOTSWANA BW BOUVET ISLAND BV BRAZIL BR BRITISH INDIAN OCEAN TERRITORY IO BRUNEI DARUSSALAM BN BULGARIA BG BURKINA FASO BF BURUNDI BI CAMBODIA KH CAMEROON CM CANADA CA CAPE VERDE CV CAYMAN ISLANDS KY CENTRAL AFRICAN REPUBLIC CF CHAD TD CHILE CL CHINA CN Country Code
  • 255. Website Payments Standard Integration Guide June 2008 257 Country Codes C CHRISTMAS ISLAND CX COCOS (KEELING) ISLANDS CC COLOMBIA CO COMOROS KM CONGO CG CONGO, THE DEMO- CRATIC REPUBLIC OF THE CD COOK ISLANDS CK COSTA RICA CR COTE D'IVOIRE CI CROATIA HR CUBA CU CYPRUS CY CZECH REPUBLIC CZ DENMARK DK DJIBOUTI DJ DOMINICA DM DOMINICAN REPUBLIC DO ECUADOR EC EGYPT EG EL SALVADOR SV EQUATORIAL GUINEA GQ ERITREA ER ESTONIA EE ETHIOPIA ET Country Code
  • 256. Country Codes C 258 June 2008 Website Payments Standard Integration Guide FALKLAND ISLANDS (MALVINAS) FK FAROE ISLANDS FO FIJI FJ FINLAND FI FRANCE FR FRENCH GUIANA GF FRENCH POLYNESIA PF FRENCH SOUTHERN TERRITORIES TF GABON GA GAMBIA GM GEORGIA GE GERMANY DE GHANA GH GIBRALTAR GI GREECE GR GREENLAND GL GRENADA GD GUADELOUPE GP GUAM GU GUATEMALA GT GUERNSEY GG GUINEA GN GUINEA-BISSAU GW GUYANA GY HAITI HT Country Code
  • 257. Website Payments Standard Integration Guide June 2008 259 Country Codes C HEARD ISLAND AND MCDONALD ISLANDS HM HOLY SEE (VATICAN CITY STATE) VA HONDURAS HN HONG KONG HK HUNGARY HU ICELAND IS INDIA IN INDONESIA ID IRAN, ISLAMIC REPUB- LIC OF IR IRAQ IQ IRELAND IE ISLE OF MAN IM ISRAEL IL ITALY IT JAMAICA JM JAPAN JP JERSEY JE JORDAN JO KAZAKHSTAN KZ KENYA KE KIRIBATI KI KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF KP KOREA, REPUBLIC OF KR KUWAIT KW Country Code
  • 258. Country Codes C 260 June 2008 Website Payments Standard Integration Guide KYRGYZSTAN KG LAO PEOPLE'S DEMO- CRATIC REPUBLIC LA LATVIA LV LEBANON LB LESOTHO LS LIBERIA LR LIBYAN ARAB JAMA- HIRIYA LY LIECHTENSTEIN LI LITHUANIA LT LUXEMBOURG LU MACAO MO MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF MK MADAGASCAR MG MALAWI MW MALAYSIA MY MALDIVES MV MALI ML MALTA MT MARSHALL ISLANDS MH MARTINIQUE MQ MAURITANIA MR MAURITIUS MU MAYOTTE YT MEXICO MX Country Code
  • 259. Website Payments Standard Integration Guide June 2008 261 Country Codes C MICRONESIA, FEDER- ATED STATES OF FM MOLDOVA, REPUBLIC OF MD MONACO MC MONGOLIA MN MONTSERRAT MS MOROCCO MA MOZAMBIQUE MZ MYANMAR MM NAMIBIA NA NAURU NR NEPAL NP NETHERLANDS NL NETHERLANDS ANTI- LLES AN NEW CALEDONIA NC NEW ZEALAND NZ NICARAGUA NI NIGER NE NIGERIA NG NIUE NU NORFOLK ISLAND NF NORTHERN MARIANA ISLANDS MP NORWAY NO OMAN OM PAKISTAN PK Country Code
  • 260. Country Codes C 262 June 2008 Website Payments Standard Integration Guide PALAU PW PALESTINIAN TERRI- TORY, OCCUPIED PS PANAMA PA PAPUA NEW GUINEA PG PARAGUAY PY PERU PE PHILIPPINES PH PITCAIRN PN POLAND PL PORTUGAL PT PUERTO RICO PR QATAR QA REUNION RE ROMANIA RO RUSSIAN FEDERATION RU RWANDA RW SAINT HELENA SH SAINT KITTS AND NEVIS KN SAINT LUCIA LC SAINT PIERRE AND MIQUELON PM SAINT VINCENT AND THE GRENADINES VC SAMOA WS SAN MARINO SM Country Code
  • 261. Website Payments Standard Integration Guide June 2008 263 Country Codes C SAO TOME AND PRINC- IPE ST SAUDI ARABIA SA SENEGAL SN SERBIA AND MON- TENEGRO CS SEYCHELLES SC SIERRA LEONE SL SINGAPORE SG SLOVAKIA SK SLOVENIA SI SOLOMON ISLANDS SB SOMALIA SO SOUTH AFRICA ZA SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS GS SPAIN ES SRI LANKA LK SUDAN SD SURINAME SR SVALBARD AND JAN MAYEN SJ SWAZILAND SZ SWEDEN SE SWITZERLAND CH SYRIAN ARAB REPUB- LIC SY Country Code
  • 262. Country Codes C 264 June 2008 Website Payments Standard Integration Guide TAIWAN, PROVINCE OF CHINA TW TAJIKISTAN TJ TANZANIA, UNITED REPUBLIC OF TZ THAILAND TH TIMOR-LESTE TL TOGO TG TOKELAU TK TONGA TO TRINIDAD AND TOBAGO TT TUNISIA TN TURKEY TR TURKMENISTAN TM TURKS AND CAICOS ISLANDS TC TUVALU TV UGANDA UG UKRAINE UA UNITED ARAB EMIR- ATES AE UNITED KINGDOM GB UNITED STATES US UNITED STATES MINOR OUTLYING ISLANDS UM URUGUAY UY UZBEKISTAN UZ VANUATU VU Country Code
  • 263. Website Payments Standard Integration Guide June 2008 265 Country Codes C VENEZUELA VE VIET NAM VN VIRGIN ISLANDS, BRIT- ISH VG VIRGIN ISLANDS, U.S. VI WALLIS AND FUTUNA WF WESTERN SAHARA EH YEMEN YE ZAMBIA ZM ZIMBABWE ZW Country Code
  • 264. Country Codes C 266 June 2008 Website Payments Standard Integration Guide
  • 265. Website Payments Standard Integration Guide June 2008 267 Index Symbols _cart 131, 132, 141, 142, 143, 226, 228, 233 _donations 226, 233 _oe-gift-certificate 233 _s-xclick 233 _xclick 35, 226, 229, 233 _xclick-subscriptions 226, 233 A Account Information 153 Account Optional 163, 228, 250 payer experience 163 account profile summary. See “Profile.” add 131, 132, 238 Add to Cart buttons button creation tool 122 address handling 250 address_override 229, 236 address1 228, 230, 247 address2 228, 247 amount 36, 131, 141, 228, 234, 238 amount_1 143 amount_x 142, 239 authorization 209 Authorization & Capture 209 Authorization Period 209 Auto Return 138, 159 enabling 160 payer experience 159 B batch capture 211 blocking kinds of payments 194 business 35, 131, 132, 141, 142, 143, 228, 238 button creation tool Add to Cart buttons 122 Buy Now buttons 26 Donate buttons 51, 80 PayPal Shopping Cart buttons 122 View Cart buttons 122 button encryption 83, 92, 146 Buy Now buttons button creation tool 26 C cancel_return 245 cbt 245 cert_id 151 character encoding 205 character set 205 chargebacks 197 charset 204, 227 city 228, 230, 247 cmd 35, 131, 132, 142, 143, 226, 228 cn 245 confirmation 159 confirmed addresses 196 contact telephone number 162 country 230, 247 cpp_header_image 245 cpp_headerback_color 245 cpp_headerborder_color 245 cpp_payflow_color 245 cs 245 Currency Balances 203 currency_code 36, 58, 131, 142, 228, 236 custom 227, 236 custom page style variables 245 D display 238 Donate buttons button creation tool 51, 80 donor experience 40 page sequence 40 downloadable history log 26, 50, 73, 122
  • 266. Index 268 June 2008 Website Payments Standard Integration Guide E eChecks 197 encoding 205 Encrypted Website Payments 34, 56, 96, 97, 147 end of term 75, 79, 86 example HTML for BUY Now 35, 58 HTML for individual items in shopping cart 142 HTML for overriding PayPal-stored shipping address 229 shopping cart with aggregated item information 143 F Financial Information 153 first_name 228, 229, 247 FORM ACTION and METHOD definitions 225 G gif 157 H handling 236 handling_cart 190, 193, 238 handling_x 142, 239 Honor Period 209 HTML for aggregated shopping cart 143 for Buy Now button 35, 58 shopping cart with individual items 142 I image_url 246 INPUT tag 226 Instant Payment Notification 147 Sandbox testing 223 invoice 227, 236 IPN. See “Instant Payment Notification.” item_name 36, 131, 228, 234, 238 item_name_1 141, 143 item_name_x 239 item_number 36, 58, 131, 227, 228, 234 item_number_x 227, 239 J jpg 157 L language encoding 205 last_name 228, 230, 247 lc 247 M METHOD 246 N night_phone_a 228, 247 night_phone_b 229, 247 night_phone_c 229, 247 no_note 246 no_shipping 242, 246 notify_url 234 O on0 36, 131, 235 on0_x 239 on1 235 on1_x 239 OpenSSL 149 order 209 os0 36, 131, 235 os0_x 240 os1 235 os1_x 240 overriding page styles 158 PayPal-stored shipping address 229, 236 return URL on individual transactions 161, 227 tax calculations on individual transactions 177 P page payment confirmation page 159 page sequences donate page sequence 40
  • 267. Website Payments Standard Integration Guide June 2008 269 Index PayPal Shopping Cart page sequence 110 page_style 157, 158, 159, 246 partial refund 221 passthrough variables, defined 227 Pay Anyone 197 payment confirmation page 159 Payment Data Transfer 24, 31, 48, 54, 95, 120, 127, 161, 223 Payment Receiving Preferences 194 paymentaction 209, 210, 239 PayPal Account Optional 250 PayPal Shopping Cart 141 button creation tool 122 page sequence 110 shopper experience 110 PEM 149 png 157 prepopulating PayPal FORMs 228 printable payment receipt page 159 private key 148 Profile Account Information 153 Auto Return 160 Automatic shipping, handling, and tax calculation 173 Custom Payment Pages 156 Financial Information 153 Shipping Calculations 191 public certificate 148 Q quantity 234 allowing buyers to specify with Buy Now 32, 234 quantity_x 142, 240 R receipts 159 refund 221 required variables for third party shopping cart 141 return 161, 227, 245, 246, 247 rm 246 S sales tax 154 automatic calulation 172 overriding on individual transactions 142 setting for entire shopping cart 143 Seller Protection Policy 195, 196 Send Money 221 shipping 143, 190, 193, 237 overriding on individual transactions 185, 190 shipping calculations 138 shipping rates 154 shipping_x 142, 240 shipping2 143, 237 shipping2_x 142 shopping cart third party carts 141 SPP. See “Seller Protection Policy.” state 228, 230, 247 subscriptions end of term 75, 79, 86 Subscriptions Password Management 14, 73, 85 T tax 237 tax rates domestic 174 international 174, 176 setting up 172 tax. See “sales tax.” 142 tax_cart 143, 237 tax_x 142, 143, 237, 240 taxes 172 Transaction Details 221 U undefined_quantity 36, 234 upload 141, 239 example of individual item detail 142 UTF-8 227 V variables display information 245 for shopping carts 238 general format of 225 hidden 225
  • 268. Index 270 June 2008 Website Payments Standard Integration Guide individual items in shopping carts 239 item information 234 prepopulating PayPal FORMs 247 transaction information 236 VAT 172 verified members, defined 197 View Cart buttons button creation tool 122 W webscr 131, 132, 142, 143, 225, 228, 229 weight_cart 143 weight_unit 142, 143 weight_x 142, 143 X X.509 148 Z zip 228, 230, 248