FAQs

A collection of questions that come up often enough to deserve a permanent answer. If your question isn't here, see Reporting Issues.

What happens when my account exceeds its monthly API request quota?

The answer depends on how your account is billed.

Direct-billed accounts

For accounts billed directly through Deducto (i.e. not Shopify-billed), there is no hard cutoff when you exceed your monthly included API request allowance. Verify, Verify Expected, Record, and Unrecord requests continue to succeed normally. Each request above the included allowance is recorded as an overage event with your billing provider and charged at the per-request rate listed for your plan on the pricing page. The overage appears as additional usage on your next invoice.

This is intentional: the API sits in the critical path of your checkout, and silently dropping requests in production would do far more damage to a merchant than a larger invoice would. If you want to prevent runaway charges, monitor your usage in the Deducto Dashboard and either upgrade plans before you exhaust the allowance, or add API-side circuit-breakers in your own backend.

Shopify-billed projects

Once a project has been marked as over its Shopify usage cap for the current billing period, further Verify, Verify Expected, Record, and Unrecord requests are rejected with HTTP 403 and the message Access Denied. Error: Shopify usage cap has been reached for this project. The cap resets at the start of the next billing period.

The caps default to the values shown in the Shopify integration page: A$0 on Free (so the cap is effectively the 1,000 included requests), and the per-tier additional-charge cap on Lite and Pro. There are two ways to get past a cap you've hit (or are about to hit):

  • Raise the cap from your Shopify Admin. Available on Lite and Pro. Lets you buy more overage headroom on your current tier without changing the underlying plan. Useful when you've forecast a high-traffic period and don't want to risk hitting the ceiling mid-promotion.
  • Upgrade to a higher plan tier from the Deducto embedded app's Plan tab. Upgrades apply immediately: your current Shopify subscription is finalised (with the usage accumulated so far billed on the closing invoice), and a new billing period starts straight away on the upgraded plan – with a fresh usage cap counter at A$0 and the new tier's higher included allowance from that moment forward. This is the right move when you've outgrown your current tier rather than just needing temporary headroom.

Free Shopify projects can't raise the cap; upgrading to Lite or Pro is the only path past 1,000 requests in a month.

What's the difference between the Free, Lite, and Pro plans?

All three tiers offer the same promotional capabilities – the differences are in the included API request allowance, overage rates, and limits on active promotions, projects, and users.

  • Free – an entry tier for getting started.
  • Lite – for growing stores with higher API and team requirements.
  • Pro – for higher-volume stores running more complex promotion programs.

Shopify-billed projects and direct-billed accounts both use the same tier names but have separate quota structures (Shopify projects are billed per project; direct accounts are billed at the organisation level). For more details, see the pricing page (direct-billed) or the Shopify app listing (Shopify-billed).

Do shipping discounts work outside Shopify Plus?

Custom storefront integrations: yes, unrestricted. Your storefront receives the shipping discount result in the Verify / Verify Expected response and should apply it however your checkout system handles shipping.

Shopify integrations: only on Shopify Plus stores. Deducto applies shipping discounts through Shopify Checkout UI Extensions, which Shopify only makes available to Plus merchants. If you're on a non-Plus Shopify plan and want to offer free shipping, the workaround is either to upgrade to Shopify Plus, or to use Shopify's native discount system to handle the shipping discount instead (you'll lose Deducto's promotion logic and orchestration for that one mechanic, but the standard "free shipping over $X" type of offer is something Shopify's built-in discounts can do on any plan).

What if the promotions my storefront expected don't match what Deducto actually evaluated?

This question applies to custom storefront integrations. Shopify integrations don't make use of a Verify Expected step – the Deducto Shopify app applies the discounts returned by each Verify call directly through Shopify's discount system.

For custom storefronts, this is what the Verify Expected endpoint exists for. When you call it just before placing the order, you pass the list of promotions your storefront expects to be applied (carried over from the last Verify response the customer saw). Deducto re-evaluates the cart against the current promotion rules and compares the result against your expectations.

If the actual evaluation matches the expected list, Verify Expected succeeds and you can proceed to Record.

If they don't match, Verify Expected returns an error response indicating a mismatch. Common reasons include:

  • A promotion's schedule expired between when the customer added to cart and when they clicked "place order".
  • A coupon usage limit was reached by another customer between Verify and Verify Expected.
  • An admin disabled a promotion in the Dashboard mid-checkout.
  • The cart itself changed in a way the customer didn't see (e.g. a stale tab).

Your storefront should treat the mismatch as a soft error: show the customer the updated cart state and ask them to confirm before placing the order. Don't silently proceed with the old expected list – the Record endpoint also re-evaluates and will reject the order if it would have produced a different outcome.

For implementation details see the Custom Storefront guide.

What happens when I downgrade my plan but already have more active promotions than the new tier allows?

The downgrade itself is not blocked, and your existing active promotions keep running. The new tier's Maximum Active Promotions per Project limit means you will not be able to create or enable promotions until you bring the count back down under that limit.

In practice this means:

  • If you're on Pro with 25 active promotions and downgrade to Lite (10 active max), all 25 keep running.
  • You can't add new promotions or enable disabled ones until you bring the count back down to the new tier's limit.
  • To restore normal authoring on the lower tier, manually disable enough promotions in the Dashboard to fall under the new limit.

This is by design – instead of auto-disabling promotions on downgrade, you are in control of making deliberate decisions about which promotions to keep.

How do I check whether Deducto is experiencing an outage?

See the Deducto status page. It reports the current health of the API and Dashboard and lists any active or recent incidents. If you're seeing checkout, cart, or Dashboard errors, check there before raising a support request – an ongoing incident may already explain it. You can also subscribe on that page to be notified of future incidents.