Product Variations is an extension of the Payment Button for PayPal WordPress plugin (also known as WP PayPal) that can be used to add variations to your PayPal buttons.
Simple Variation

In order to add a simple variation you can use the following shortcode.
[wp_paypal button="buynow" name="My product" amount="1.00" on0="Size" os0_val0="Small" os0_val1="Medium" os0_val2="Large"]

on0
The name of the variation (e.g. Size).
os0_val0
First option field for the variation. If you have created a variation named “Size” you may want to set this value to “Small”.
os0_val1
Second option field for the variation. If you have created a variation named “Size” you may want to set this value to “Medium”.
os0_val2
Third option field for the variation. If you have created a variation named “Size” you may want to set this value to “Large”.
It is up to you how you want to set up on0, os0_val0, os0_val1 and os0_val2. If you specify the on0 parameter in the shortcode the plugin expects at least one option (e.g. os0_val0).
The shortcode above can be modified to offer color options. For example,
[wp_paypal button="buynow" name="My product" amount="1.00" on0="Color" os0_val0="Red" os0_val1="Blue" os0_val2="Black"]
[wp_paypal button="buynow" name="My product" amount="1.00" on0="Color" os0_val0="Red"]
[wp_paypal button="buynow" name="My product" amount="1.00" on0="Color" os0_val0="Red" os0_val1="Blue"]
You can add up to 10 options. For example:
[wp_paypal button="buynow" name="My Product" on0="Colors" os0_val0="Coral" os0_val1="LightCoral" os0_val2="Salmon" os0_val3="DarkSalmon" os0_val4="LightSalmon" os0_val5="Crimson" os0_val6="Red" os0_val7="FireBrick" os0_val8="DarkRed" os0_val9="Pink"]
Priced Variation

If you want to specify a different price for each option you can do so by adding a corresponding amount for it.
[wp_paypal button="buynow" name="My product" on0="Size" os0_val0="Small" os0_val1="Medium" os0_val2="Large" os0_amount0="1.99" os0_amount1="2.99" os0_amount2="3.99"]
os0_amount0
The amount that you want to charge for the first option.
os0_amount1
The amount that you want to charge for the second option.
os0_amount2
The amount that you want to charge for the third option.

You can add up to 10 priced options. For example:
[wp_paypal button="buynow" name="My Product" on0="Colors" os0_val0="Coral" os0_val1="LightCoral" os0_val2="Salmon" os0_val3="DarkSalmon" os0_val4="LightSalmon" os0_val5="Crimson" os0_val6="Red" os0_val7="FireBrick" os0_val8="DarkRed" os0_val9="Pink" os0_amount0="1.99" os0_amount1="2.99" os0_amount2="3.99" os0_amount3="4.99" os0_amount4="5.99" os0_amount5="6.99" os0_amount6="7.99" os0_amount7="8.99" os0_amount8="9.99" os0_amount9="10.99"]
Char says
Hello Noor, Are additional variables, up to 8, available with this extension? That is how many product variations I will need. Is there a way to extend it to allow that? Thanks
Noor Alam says
@Char, PayPal supports up to 10 options for a variation. The extension supports up to 10 as well.
Moss says
Hello Noor,
There seems to be some issue where I use the following short code :
[wp_paypal button="buynow" name="My product" on0="Size" os0_val0="Small" os0_val1="Medium" os0_val2="Large" os0_amount0="1.99" os0_amount1="2.99" os0_amount2="3.99"]
When we click on the buy now button, it seems to throw up the pricing Blank, where the customer has to put the price.
Rather then the variation price that it should show up that has been provided.
Could you please advise!?
Thanks & Regards
Noor Alam says
@Moss, Do you have the WP PayPal Variations extension installed?
John says
Can I have more than 3 options for a simple variation?
Noor Alam says
@John, Yes.