PayPal has updated to a new, streamlined checkout experience. When your customer checks out, PayPal's checkout window displays the transaction amount and asks how to proceed:
- If the customer wants to pay with funds from their PayPal account, they enter their PayPal account user ID and password and clicks Log In. (To remain logged in with OneTouch, the customer can also click on the OneTouch check box.)
- If the customer prefers to use a different payment method, they click Pay with Debit or Credit card.
Most integrations work with this new PayPal checkout automatically. However, some integrations have issues that cause the user experience to fail. Some of the most common reasons for failed validation checks are:
- Passing currency symbols ("$", "£", etc.) or values other than integers (1, 2, 3, etc.) and decimal points (“.”) in the amount field. For example, "1234.50" is correct, but "$1,234.50" isn't allowed.
- Passing country code values greater than two letters. For example, "FR" is correct, but "France" or "fr_FR" isn't allowed.
- Passing more than 127 characters in the item_number field. For example, don't use the item_number field for "Note to Buyer" information.
- Passing more than 64 characters in the option fields (on0, on1, etc.).
- Passing duplicate empty parameters.
- Passing address_override=1 without passing an address.
This error may occur only for certain transactions. If you have many items for sale, only some may exceed character limitations or pass invalid values as part of the transactions. You should test all available options to identify which ones lead to an error message. Once you find the affected transactions, review the HTML Variables for PayPal Payments Standard to troubleshoot your integration.
- The original author or web developer who created your page with PayPal checkout buttons may be the best person to investigate and resolve these problems. Please contact them if they're available.
- If you use third-party shopping cart software, such as a hosted shopping cart or software that you installed on your web server, the developer of that software may need to correct a problem in their code. Contact your cart provider directly and have them review this guide.
- For websites that use static HTML, examine your HTML directly to see if there are problems in the values being directed to PayPal. For example, in the following code, the value of the amount field is "$1,000.00," which contains invalid "," and "$" symbols. It should be updated to "1000.00."
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_blank">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="[email protected]">
<input type="hidden" name="item_name" value="Widget">
<input type="hidden" name="amount" value="$1,000.00"> <--Problem: Remove currency symbol and comma ("1000.00")
<input type="hidden" name="currency_code" value="USD">
<input type="submit" value="Old PayPal checkout">
- Go to Developer Tools > Network, clear the log, and enable the Preserve Log option.
- Click a page action that would redirect a customer from your site to PayPal.com. If this opens a second window, you may need to enable Preserve Log in that window and then go back and redo the same page action in the original window.
- Once you have a list of events, look for the first event named webscr, select it, then check the section titled Form Data.