How do I integrate my website with Payflow Link (Advanced)?

You may choose to collect detailed transaction data on your web store and then pass the information to Payflow Link. Payflow Link accepts optional data fields that customize the purchase process. This page describes some advanced techniques for passing the optional data fields.

For more information about these advanced techniques, see the Payflow Gateway Developer Guide and Reference.

Note: If you're using a newer version of Payflow Link where you see a section for Hosted Checkout Pages instead of Payflow Link, use the new variables instead of the older ones. Refer to  the Developer's Guide for a list of the new variables.

Allow the customer to type information

Instead of <input type="hidden"...>, use <input type="text"...>.
For example, <input type="text" name="NAME" value=">.
Pass order or customer information

(Variable Name - Definition)
  • NAME - Billing name
  • ADDRESS - Billing address
  • CITY - Billing city
  • STATE - Billing state
  • ZIP - Billing ZIP code
  • COUNTRY - Billing country
  • EMAIL - Billing email address
  • PHONE - Billing phone
  • FAX - Billing fax number
  • NAMETOSHIP - Shipping name
  • ADDRESSTOSHIP - Shipping address
  • CITYTOSHIP - Shipping city
  • STATETOSHIP - Shipping state
  • ZIPTOSHIP - Shipping ZIP code
  • COUNTRYTOSHIP - Shipping country
  • EMAILTOSHIP - Shipping email address
  • PHONETOSHIP - Shipping phone
  • FAXTOSHIP - Shipping fax number
  • SHIPAMOUNT - The cost of shipping
  • CARDNUM - Credit card number
  • EXPDATE - Account expiration date
  • AMOUNT - Total amount of the transaction
  • TAX - The amount of tax on a transaction. Each merchant is responsible for computing taxes and other charges and then passing the total transaction amount to the transaction servers for processing.
  • CSC - Card Security Code
  • COMMENT1 - Uniquely identify a transaction
  • COMMENT2 - Uniquely identify a transaction
  • DESCRIPTION - Description of the transaction
  • USER1 - USER10 - These ten string type parameters are intended to store temporary data (for example, variables, session IDs, order numbers, and so on).

Note: If you plan to collect credit card information on your website, PayPal strongly recommends that you secure your website.
Bypass the Payflow Link order forms
You can bypass the Payflow Link order forms by inserting the following commands within your HTML code:
  • ORDERFORM - Used to display the credit card input page
  • SHOWCONFIRM - Used to display the confirmation page before the actual processing

Bypass the pages by setting the appropriate variable with either TRUE (display) or FALSE (do not display).

For example:


<input type="hidden" name="ORDERFORM" value="TRUE">
<input type="hidden" name="SHOWCONFIRM" value="FALSE">

This would display the credit card billing page but not the confirmation page.
If you disable the order form (ORDERFORM), you must pass the card card number, including the expiration date. This requires you to post the data from a secure site (HTTPS) so that the credit card information is encrypted.

Note: You can't bypass the receipt page. If you require more control over your website and the customer's experience, you must upgrade to the Payflow Pro product.
Identify transactions that have been voided because of AVS or CSC failures
The transaction result indicates the overall status of the transaction attempt. The result associated with each transaction appears in all PayPal Manager detail reports. If you use Post or Silent Post, the RESPMSG parameter returns the description of the RESULT code. If RESULT=0 and RESPMSG=AVSDECLINED, then the transaction was voided because the street address or ZIP code didn't match.