Updated: 28 September 2026 · Applies to: WHMCS 9
If PayPal payments are not marked as paid in WHMCS and the gateway log shows "IPN Handshake Invalid", PayPal and WHMCS are usually using different character sets, so the check PayPal performs fails.
Fix
- Log in to your PayPal business account.
- Find the language encoding setting (search PayPal's help for "PayPal button language encoding"; it is under the website payment preferences).
- Click More Options and set the encoding to UTF-8, and tick the option to use the same encoding for IPN data. Save.
- Make sure WHMCS also uses UTF-8 (Configuration › System Settings › General Settings).
New payments are then confirmed automatically. Add any missed payments manually to the invoices. WHMCS's own PayPal documentation has screenshots of the setting.