Skip to main content
Solved

FLOW Emails are being skipped due to "unable to create coupon"

  • February 12, 2025
  • 9 replies
  • 53 views

Forum|alt.badge.img

Hi,

I have an abandoned checkout flow setup.  I’ve noticed that the 2nd email in the flow has a 0% send rate and after further investigation i’ve found that the majority of emails are showing “skipped: Unable to create coupon”.

I have a dynamic coupon code set up in klayvio and its showing on my email as ‘CHECKOUT10-PREVIEW’

I’ve recently changed this from the previous code that was there but i’m still getting the same issue?

what have i done wrong? or what else can i do to test/check what the problem with the code is?

 

thanks

Best answer by Byrne C

Hey ​@KirstyISLAKOKO,

Did you manage to get this fixed yet? When I see the “Skipped: unable to create coupon” message, it usually means that something’s wrong with the coupon. If possible, could you provide some info about the coupon you’re using, so we can figure this out together? Thanks!

It would be helpful to know:

  • Name of your Ecommerce integration (Shopify, WooCommerce, ect).
  • When your coupon is set to expire
  • Whether these coupons are dynamic coupons that Klaviyo creates, or coupons that you uploaded into Klaviyo.

It seems likely that the issue is either that there aren’t enough coupons left (if they’re uploaded coupons), or that you’re attempting to use coupons with a fixed expiration date in a flow, and that date has passed. If neither of these seem to be the issue, we can take a closer look! Looking forward to your response.

-Byrne

View original
Did this topic or the replies in the thread help you find an answer to your question?

9 replies

Amos Peace
Problem Solver III
Forum|alt.badge.img+5
  • Problem Solver III
  • 62 replies
  • February 12, 2025

Hello ​@KirstyISLAKOKO,

The "Skipped: Unable to create coupon" error in Klaviyo usually happens due to issues with your dynamic coupon setup.

Here’s how to fix it:

1. Check Your Coupon in Klaviyo

  • Go to Klaviyo → Coupons and verify the coupon exists and is correctly named.
  • Ensure the coupon prefix is set up properly.

2. Verify Shopify/Klaviyo Integration

  • Go to Klaviyo → Integrations → Shopify and ensure it’s connected and synced.

3. Ensure the Coupon is Active in Shopify

  • Go to Shopify → Discounts and confirm:
    • The discount exists and is active.
    • No restrictive settings (e.g., "one-time use only") are blocking new codes.

4. Test the Coupon Manually

  • Replace CHECKOUT10-PREVIEW with a real generated code and test it in Shopify.

5. Recreate the Coupon in Klaviyo

  • Delete the existing dynamic coupon and create a new one.
  • Update your email template with the new coupon name.

6. Check Flow Settings

  • In Flows → Abandoned Checkout Flow → 2nd Email, make sure the Coupon Block is set to "Generate new code at send time".

Final Test

  • Abandon a checkout, wait for the email, and check if the coupon appears.

If the issue persists, let me know which eCommerce platform you’re using.

 

Best Regards,


Forum|alt.badge.img
  • Author
  • Contributor II
  • 4 replies
  • February 12, 2025

Hi,

thanks i’ve been through your trouble shooting.

i tried a code in the checkout and it worked fine.  

Its set up in the email as a button to link back to the checkout using the following format:

{{ event.extra.checkout_url }}&discount={% coupon_code 'CHECKOUT10' %} - is this correct?

We are using shopify. 

I have manually gone through the flow with a test email.  it has still skipped the 2nd email when manually sent, however it says that the code is active ...

 


Amos Peace
Problem Solver III
Forum|alt.badge.img+5
  • Problem Solver III
  • 62 replies
  • February 12, 2025

It looks like you're on the right track, but there may be a couple of things to check and adjust for the coupon to work correctly in the second email of your abandoned checkout flow.

1. Review the Button URL Format

Your URL format seems mostly correct, but the syntax might need a small tweak. When you're using dynamic coupon codes in Klaviyo, the correct format should look like this:

{{ event.extra.checkout_url }}?discount={{ coupon_code('CHECKOUT10') }}

Key points to note:

  • Use a ? instead of an & between the checkout_url and the coupon code, unless you already have query parameters in the URL (in which case, keep the &).
  • Make sure the coupon code name (CHECKOUT10) matches exactly what you have set in Klaviyo.

2. If the 2nd email is still being skipped despite the coupon being marked as active, check these areas:

  • Flow Trigger Conditions: Ensure the flow trigger for the 2nd email is correctly set. For example, make sure it’s set to wait for a specified period (e.g., 1 hour, 24 hours) after the checkout was abandoned.
  • Coupon Code Availability: Even if the coupon code is active in Klaviyo, it might not be properly associated with the specific checkout event. Double-check that the checkout_url is being properly populated with the correct parameters at send time.
  • Test in Preview Mode: You can also preview the email in Klaviyo by sending a test email to yourself to see if the coupon code is getting correctly inserted into the checkout link. This ensures the code is dynamic and functional.

3. Double Check Shopify Discount Settings

  • Go to Shopify Admin > Discounts and verify that the discount is active and valid for the right conditions (e.g., usage limits, customer eligibility). The coupon may still show as active in Klaviyo, but if it’s not configured properly in Shopify, it won’t work at checkout.

4. Manual Testing

  • In your manual test, double-check that the checkout URL generated via {{ event.extra.checkout_url }} actually includes the coupon code.
  • Try clicking the link in your test email and see if it applies the discount correctly when the checkout loads.

5. Check for Other Issues

  • Flow Execution Logs: If it’s skipping, check the flow logs to identify exactly why it’s not sending. There may be an issue with how the flow logic is structured or a condition preventing the email from being triggered.

If everything looks fine on your end but the issue persists, it might be worth reaching out to Klaviyo support to investigate deeper, as sometimes specific integrations or flow behaviors can have unique issues.

Let me know if this clears up the issue.


Forum|alt.badge.img
  • Author
  • Contributor II
  • 4 replies
  • February 12, 2025
  • Coupon Code Availability: Even if the coupon code is active in Klaviyo, it might not be properly associated with the specific checkout event. Double-check that the checkout_url is being properly populated with the correct parameters at send time.

How do I check this??

Thanks


Forum|alt.badge.img
  • Author
  • Contributor II
  • 4 replies
  • February 12, 2025

Now im getting this when i attempt to preview the email from the email edit feature 

 


Amos Peace
Problem Solver III
Forum|alt.badge.img+5
  • Problem Solver III
  • 62 replies
  • February 12, 2025

Okay.

Follow these steps;

1. Preview the Email → In Klaviyo, go to the campaign/flow, click Preview & Test, and check if the checkout button/link includes the coupon code.

2. Check the Customer Profile → Go to Profiles, find a test user, and confirm they have an assigned coupon under Coupons.

3. Send a Live Test → Add your email to a test list, send the email, and click the checkout link to verify the code appears in the URL.

4. Inspect the URL Format → A dynamic coupon should look like:

https://yourstore.com/checkout?discount={{ person|lookup:'Coupon Code' }}

If missing, the variable might be incorrect.

5. Check Event Data → Go to Analytics → Metrics → Checkout Started, open an event, and see if the coupon field is there.

 

Let me know what you find.


Amos Peace
Problem Solver III
Forum|alt.badge.img+5
  • Problem Solver III
  • 62 replies
  • February 12, 2025

This error means Klaviyo can’t pull in real data because there’s an issue with the template tags or variables in your email.

How to Fix It:

1. Check Your Template Tags

  • Go to the email editor and review any variables like {{ event.checkout_url }} or {{ person|lookup:'Coupon Code' }}.
  • Ensure they match the correct event or profile properties.

2. Test with a Real Profile

  • In Preview & Test, choose a profile that has actual event data.
  • If previewing a flow email, make sure the test profile has triggered the event (e.g., started checkout).

3. Use the Data Preview Tool

  • Click Fix invalid template tags or variables (from your error message).
  • Check if the event data contains the fields you’re trying to use.

4. Send a Test Email

  • Send a test email to yourself and check if the coupon or checkout link works.

If the issue persists, let me know what dynamic variables you’re using.


Byrne C
Community Manager
Forum|alt.badge.img+12
  • Community Manager
  • 82 replies
  • Answer
  • February 14, 2025

Hey ​@KirstyISLAKOKO,

Did you manage to get this fixed yet? When I see the “Skipped: unable to create coupon” message, it usually means that something’s wrong with the coupon. If possible, could you provide some info about the coupon you’re using, so we can figure this out together? Thanks!

It would be helpful to know:

  • Name of your Ecommerce integration (Shopify, WooCommerce, ect).
  • When your coupon is set to expire
  • Whether these coupons are dynamic coupons that Klaviyo creates, or coupons that you uploaded into Klaviyo.

It seems likely that the issue is either that there aren’t enough coupons left (if they’re uploaded coupons), or that you’re attempting to use coupons with a fixed expiration date in a flow, and that date has passed. If neither of these seem to be the issue, we can take a closer look! Looking forward to your response.

-Byrne


Forum|alt.badge.img
  • Author
  • Contributor II
  • 4 replies
  • February 15, 2025

Hi,

Thanks so much for reaching out.  It seemed that the more things i tried to fix the more things were going wrong and i was getting link errors with the return to checkout buttons etc!  in the end I deleted the email and started again from an abandoned checkout template and it’s up and running with no coupon issues.