Generate codes and review offer usage
Open the code-based discount form before its first save. Plan whether the offer needs one public code or several privately distributed codes. The saved code set cannot be changed after offer creation.
Generate the codes
1. Open the code generator from the discount-code controls.
2. Enter **Number of discount codes**; the generator supports up to 1,000 at a time.
3. Choose **Code length**, between 4 and 50.
4. Add a **Prefix**, **Suffix**, or **Pattern** as needed; `#` is the generator’s placeholder.
5. Inspect **preview** and the final code list before confirming it into the offer.
6. Review the offer eligibility and dates, then save.
Generated or manually entered codes must fit the saved code format: 3–50 letters, numbers or hyphens. Keep any prefix/postfix within that final length. Existing codes are rejected for a new offer. Public checkout display accepts exactly one active code, so a multi-code campaign must not use that display option.
Review usage
Edit the saved offer and open **Usage**. Review the code and **Usage Invoice Count**. Open a usage entry for its **Usage List** when available. No recorded usage means there is no usage result to open; it is not proof that a customer was eligible or that a discount was advertised successfully.
**Expected result:** the offer stores the intended code set, and recorded usage can be traced to the appropriate invoice list. If a customer reports a failed redemption, inspect the code spelling, active period, customer/cart eligibility and applicable limits before generating a replacement offer.