All Collections
FAQ - For Studios
Troubleshooting
My customer is applying an offer code and it will not work.
My customer is applying an offer code and it will not work.
Error: This offer is invalid for this order
Team avatar
Written by Team
Updated over a week ago

When an error appears when trying to use an offer code, the most likely culprit will be the offer not being able cover the cost of the total order. Let's create a scenario.

Perhaps you've created an offer for $10 off of a $20 or more purchase, plus free shipping. Your customer has purchased an item for $15.99, plus sales tax, plus shipping, which brings their total to just over $20. However, when your customer goes to use it, they get an error! They're understandably confused - and we'll show you why this transaction is not possible.

Here's a breakdown of our hypothetical order:
• The customer wants to purchase an 8x10 photo at a cost of $15.99
• The cost of shipping to their address is $4.95
• Sales tax will add an extra $1.12 to their order.

This brings their total to $22.06, enough to apply your offer of $10 off and free shipping for orders over $20, right? Because of the sequence of how financial components of PhotoDay purchases process, this transaction will actually be blocked. Here's why:

  1. Once the payment begins processing, PhotoDay subtracts the lab fee of $1.50 from the base cost of the 8x10.

  2. Then PhotoDay subtracts our fee of $1.60 from the base cost of the 8x10.

  3. At this point, the $10 off plus free shipping discount is then applied to the base cost.

  4. After the $10 is taken off, the remaining balance is only $2.89, which is not enough to cover the shipping discount of $4.95.

PhotoDay will then block this transaction before it can collect any applicable sales tax or pass to Stripe, where Stripe would then need to collect its fee.

Need a quick fix in this situation? You could increase the price of the 8x10 on your price sheet to cover the free shipping discount, and PhotoDay will allow the transaction to complete.

Did this answer your question?