PayPal in the foreseeable future due to unknown reasons does not allow this feature. Probably the best solution is to send parameter CUSTOM
and enter the necessary data into it, they are sent to PayPal and then back to the merchant's site. Payment order must be dispatched from the merchant's site, differently detect IP addresses will not be correct. Details here.
CUSTOM
parameter is limited up to 256 characters.
Send via GET method
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=XY&custom=custom_string
Send via POST method
<input type="hidden" name="custom" value="custom_string" />
Callback data
Callback is performed via NOTIFY_URL
parameter. To the specified URL will be sent details of the transaction. NOTIFY_URL
must be included in the configuration Buy Now button or URL link or default in the PayPal account.
Example URL link:
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=XY&custom=custom_string¬ify_url=http://site.com/pay.php
Data getting was performed via GET or POST method from PayPal site with array $keyarray['custom']
(default). See details here.