Advanced Features Guide
Table Of Contents
- Express Checkout Advanced Features Guide
- Contents
- Preface
- Customizing Express Checkout
- PayPal Review Page Order Details
- Providing Gift Options
- Obtaining Buyer Consent to Receive Promotional Email
- Overriding Your Customer Service Number
- Adding a Survey Question
- PayPal Page Style
- Changing the Locale
- Handling Shipping Addresses
- Automatically Filling Out Shipping and Contact Information
- Buyer Pays on PayPal
- Express Checkout on Mobile Devices
- About the Express Checkout Experience on Mobile Devices
- Mobile Platforms Supported by Express Checkout
- About Mobile Express Checkout Integration
- Integrating Express Checkout With Your Mobile Website
- Enabling PayPal Account Optional Checkout on Mobile Devices
- Request Fields Supported by Express Checkout on Mobile Devices
- Locales Supported by Express Checkout on Mobile Devices
- Features Not Supported by Express Checkout on Mobile Devices
- Handling Recurring Payments
- How Recurring Payments Work
- Recurring Payments Terms
- Options for Creating a Recurring Payments Profile
- Recurring Payments With the Express Checkout API
- Recurring Payments Profile Status
- Getting Recurring Payments Profile Information
- Modifying a Recurring Payments Profile
- Billing the Outstanding Amount of a Profile
- Recurring Payments Notifications
- Reference Transactions
- Implementing Parallel Payments
- Integrating giropay with Express Checkout
- Implementing the Instant Update API
- Payment Review
- Express Checkout Dynamic Image Integration
- Immediate Payment
- Revision History
Reference Transactions
Initiating a Payment Using a Reference Transaction
4
60 April 2012 Express Checkout Advanced Features Guide
1. Call SetExpressCheckout and pass a BillingAgreementDetails element that
contains the following information:
– A billing type. PayPal recommends that you use
MerchantInitiatedBillingSingleAgreement if you need only one billing
agreement between you and the buyer. Use MerchantInitiatedBilling to create a
billing agreement between you and the buyer each time you call
DoExpressCheckoutPayment.
– A description of the goods or services associated with the agreement.
– Optionally, the kind of PayPal payment you require.
– Optionally, a string that you can use for any purpose.
2. PayPal returns a token, which you use in the subsequent steps.
3. Redirect the buyer’s browser to PayPal, which allows the buyer to log in or set up an
account to pay for the purchase. PayPal presents the buyer with a confirmation page.
4. PayPal redirects the buyer’s browser to your return page.
5. Call GetExpressCheckoutDetails to obtain information about the buyer and the
buyer’s checkout status. PayPal returns checkout details.
6. Call DoExpressCheckoutPayment to initiate the purchase.
7. If the buyer accepts the billing agreement, PayPal returns information about the purchase
and a billing agreement ID. Save the ID for reference transactions or recurring payments.
To obtain a billing agreement ID without also initiating a purchase, modify the previous
procedure as follows:
In step 1, specify 0 for the amount of purchase in the payment details.
(Optional) Set MAXAMT to the expected average transaction amount (default is 25.00).
PayPal uses the value to validate the buyer’s payment method for future payments.
Skip step 5.
In step 6, call CreateBillingAgreement instead of DoExpressCheckoutPayment.
If you offer a store account, you can control whether PayPal creates the billing agreement
based on buyer signup. To skip the creation of a billing agreement ID if the buyer does not sign
up, set SKIPBACREATION to true in the call to DoExpressCheckout.
The numbered steps correspond to the circled numbers. Your site must take the specified
actions at each step, as follows:
Initiating a Payment Using a Reference Transaction
After you establish a billing agreement, you can initiate a payment, which withdraws funds
from the buyer’s PayPal account without manual intervention. Call
DoReferenceTransaction to use a reference transaction.