Reputation: 18117
I use PayPal Api to create encrypted BuyNow buttons. The Api return button as form HTML code.
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----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-----END PKCS7-----
">
<input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_buynow_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
The problem is that I do not want to use FORM for paypal buttons and also I do not find a way to change default paypal button which is embedded in form html code. I would like to use encrypted paypal button as simple text link.
I have tried to just copy all form variables and build url with parameters like
https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_s-xclick&encrypted=-----BEGIN PKCS7-----MIIIWwYJKoZIhvcNAQcEoIIITDCCCEgCAQExggE6MIIBNgIBAD.....
Unfortunately it do not work. Maybe someone has solution?
Upvotes: 1
Views: 878
Reputation: 3225
I had the same issue, I urlencode
d the encrypted value and it worked. I hope this helps for anyone else having the same issue that does not want to use the API to make hosted buttons.
Upvotes: 0
Reputation: 19356
In the BMCreateButton API call, instead of BUTTONTYPE=ENCRYPTED, set BUTTONTYPE=HOSTED. It will be the same security-wise, but it would also return an 'EMAILLINK', which you could then use.
BUTTONTYPE=ENCRYPTED unfortunately will not return an EMAILLINK.
Additionally, if you include the full encrypted text inside your link, you may well run into a LimitRequestLine limitation in Apache (default: 8190), depending on your Apache configuration.
It's just much, much better to keep the URL as short as possible.
Upvotes: 2
Reputation: 11649
You copied the link wrong. It will work fine.
However, a hosted button is much much much better. And editable via the ButtonManager API.
Upvotes: 2