This article applies to Classic Commerce. (Looking for Contextual Commerce documentation?)
On most of our order pages, the coupon field appears after customer information is collected on the cart summary page. The reasoning behind this has to do with the fact that we only show the coupon field when there is actually a live coupon applicable to the selected products, and the final list of products in the order is not always known on the first page of the order process because there may be additional options pitched to the buyer, such as up-sells, cross-sells, backup CDs, etc. For various reasons, you may want to show the coupon field earlier in the order process. This is a common request for those offering PayPal as a payment method and using a coupon because the coupon field is not displayed until after the customer completes the PayPal process and returns back to the FastSpring site to complete payment.
Showing the Coupon Field Earlier
Depending on which page linking option you use, you are either using html links or a form POST to get to your FastSpring store.
Coupons with html Links
Add the parameter
?option=show_contents to the end of the URL you use to link to your FastSpring store, as in
http://sites.fastspring.com/testcompany/product/fontmaker?option=show_contents. Customers will now see the contents of their cart and a coupon field on the second page of the order process.
The coupon code can also be pre-applied for the customer by including the coupon code on the end of the URL as well, as shown below.
Coupons with a form POST
If you send the customers to your FastSpring store via a form POST, add
&option=show_contents to the action, as shown below.
<form method="POST" action="http://sites.fastspring.com/testcompany/product/fontmaker?action=order&option=show_contents" target="_top"> <input type="submit" value="Purchase" /> </form>
The first page customers will see in the order process will have the coupon field.