{
 "schema_version": "1.0",
 "id": "code-bulk-discounts",
 "name": "Code Bulk Discounts",
 "research_status": "researched",
 "vendor_domain": "discountkit.app",
 "category": "E-commerce",
 "task": "E-commerce growth",
 "summary": "Shopify app (by Optizio) that turns a discount you have already created into thousands of unique codes and exports them as CSV for email and SMS campaigns.",
 "best_for": "shopify stores that already run email or SMS campaigns and need thousands of unique, single-use codes generated out of one existing discount and handed over as a CSV",
 "skip_if": "you need one or two codes, which Shopify's own discount screen already gives you at no cost — or the campaign itself is what you want, because this app generates and exports the codes and stops there",
 "honest_knock": "Read the free plan's number twice, because the word doing the work is 'lifetime': it is 500 codes in total, not 500 a month. One influencer drop or one email segment can spend the whole allowance in an afternoon, and after that the only way on is $14.99 a month — so the free tier is a sample, not a plan. What the app does is also narrower than the word 'discounts' suggests. It takes a discount you have already created and multiplies it into unique codes you export as a CSV. It does not create the discount rule, does not send the codes to anyone, and does not report which ones were redeemed, so it sits between your discount settings and your email or SMS tool and needs both of those to be worth anything. The one critical review on the listing shows what that costs in practice: when a merchant's parent discount broke after an unrelated change to their stack, every code generated from it went inactive and they learned about it from customers rather than from the app. The developer's answer is the right one to remember — the rules and logic belong to the parent discount, not to Code Bulk — but it means nothing in this app will tell you that a batch has stopped working. The 5.0 rating also rests on 41 reviews, read 16 September 2026, which is a thin record next to the app's peers.",
 "pricing": {
  "status": "public",
  "entry_price": "$14.99",
  "entry_price_terms": "per month",
  "from_price_usd_month": 14.99,
  "plans": null,
  "plans_source": null,
  "notes": "(prices read 2026-09-06 on apps.shopify.com/code-bulk and re-verified there on 2026-09-16, unchanged) Two plans, billed in USD every 30 days. Free costs nothing and covers 500 lifetime codes with CSV export. Pro is $14.99 a month and lifts that to unlimited codes per month, with the same CSV export; both plans say they work with most discount applications. The plan table lists no annual rate, no free trial on Pro and no per-code charge, so the monthly figure is the whole cost.",
  "verified_at": "2026-09-16",
  "source_url": "https://apps.shopify.com/code-bulk",
  "schema_offer": null,
  "source_quotes": null
 },
 "free_plan": true,
 "free_plan_evidence": "Read the free plan's number twice, because the word doing the work is 'lifetime': it is 500 codes in total, not 500 a month.",
 "cost_traps": [],
 "compare_with": {
  "name": "Kite",
  "why": "Both come out of the Shopify discount aisle and both generate bulk codes, but they are priced for different problems. Code Bulk Discounts does one job — turn an existing discount into unique codes and export them — and asks $14.99 a month once the 500 lifetime free codes run out. Kite treats bulk codes as one feature among many and puts them behind $29 a month, with the code ceilings rising by tier. So if codes are the whole requirement, Code Bulk is the cheaper and simpler answer and there is nothing to grow into. If you also want the discount mechanics themselves — free gifts, BOGO, tiered pricing, progress bars — Code Bulk cannot build any of them and Kite is the one that can."
 },
 "links": {
  "record": "https://aibuildermarketplace.com/api/v1/products/code-bulk-discounts.json",
  "review": "https://marketingandsalessoftware.com/code-bulk-discounts-review.html",
  "marketplace": "https://aibuildermarketplace.com/marketplace/code-bulk-discounts/",
  "vendor_site": "https://discountkit.app"
 },
 "purchase": {
  "seller": "the vendor",
  "how": "AIBuilder Marketplace does not sell this software. Sign up, start a trial or buy on the vendor's site.",
  "handoff_url": "https://apps.shopify.com/code-bulk",
  "affiliate": false,
  "disclosure": "Where purchase.affiliate is true, purchase.handoff_url is an affiliate link: AIBuilder Marketplace may earn a commission at no extra cost to the buyer. Commission never changes what a record says, and products are not ranked by commission. Where it is false the link is the vendor's plain site."
 },
 "provenance": {
  "research": "hand-researched dossier, read on the vendor's own pages",
  "researched_since": "2026-07",
  "method": "https://aibuildermarketplace.com/how-we-review/",
  "license": "CC BY 4.0. Credit 'AIBuilder Marketplace' with a link to https://aibuildermarketplace.com/atlas/.",
  "note": "A rebuild is not a new measurement: pricing.verified_at is the date that matters."
 },
 "cost": {
  "status": "not_yet",
  "engine": "https://aibuildermarketplace.com/agents/#cost",
  "rules": null,
  "growth": null
 },
 "unknowns": [
  "Plan-by-plan prices are not structured in this record yet; pricing.notes has the full text.",
  "Contract terms (cancellation, data export, data location, minimum seats) are not researched as separate fields; pricing.notes mentions them only where the vendor's pricing page does.",
  "Being verified: free trial and refund terms are not yet matched to a verbatim line on the vendor's own pages. Not matched does not mean there is none.",
  "No computable price rules yet: cost at a given team size cannot be calculated for this product.",
  "Not tested hands-on by us: what the product does comes from the vendor's pages and our reading of them."
 ],
 "verification": {
  "price": "read",
  "free_trial": "being_verified",
  "refund": "being_verified"
 },
 "task_evidence": null,
 "open_questions": [
  {
   "question_id": "code-bulk-discounts:cancellation_terms",
   "key": "cancellation_terms",
   "question": "Can a customer cancel at any time, and what happens to an annual plan that is cancelled mid-term?",
   "status": "open"
  },
  {
   "question_id": "code-bulk-discounts:data_export",
   "key": "data_export",
   "question": "Which data can a customer export, in which formats, on which plans?",
   "status": "open"
  },
  {
   "question_id": "code-bulk-discounts:data_location",
   "key": "data_location",
   "question": "Where is customer data stored, and can a customer choose the region?",
   "status": "open"
  },
  {
   "question_id": "code-bulk-discounts:minimum_seats",
   "key": "minimum_seats",
   "question": "Is there a minimum number of seats or users on any plan?",
   "status": "open"
  }
 ],
 "vendor_answers": [],
 "agent_channels": {
  "vendor_mcp": null,
  "agent_checkout": {
   "status": "not_found",
   "detail": "No explicit support for purchases by AI agents on the vendor's own pages.",
   "checked_at": "2026-10-07",
   "method": "homepage, /pricing and the pricing page we cite, read as plain HTML (no JavaScript) and searched for explicit support of purchases by AI agents: Agentic Commerce Protocol, Instant Checkout, Agent Payments Protocol, buy in ChatGPT, agentic checkout"
  }
 }
}
