Create Discount Codes
Set a discount, choose its duration, and restrict eligible customers and challenges.
Use this admin guide to create a discount code with clear limits. Review the saved offer before sharing it.
Before you start
Sign in with an authorized BFT admin account. Decide the price, duration, and eligible customers.
Steps
Create an offer
In the admin panel, open Discount Codes → New Code. Enter a unique code and an optional internal description. Choose Percentage for a discount of 1–100%, or Fixed price for a checkout price greater than zero. Fixed price sets a price; it is not an amount to subtract.
Set the duration
Turn on Time-limited promotion to set both a start and an end. Choose 24 hr, 48 hr, 72 hr, or 7 days to fill the dates quickly. Each shortcut uses your entered start time, or the current time when the start is empty. Seven days means 168 hours.
You can still edit either date in the calendar and either time in the clock picker. Choose an hour, minute, and AM/PM, then select Done. A custom duration clears the shortcut highlight. The end must be after the start. Times use the time zone configured on your device and are saved as exact instants. The code is unavailable before its start and at or after its end.
Turn the time limit off for no automatic start or expiry. Hidden dates do not apply when you create the code with this option off.
Choose who can use it
- Per-customer usage limit: enter the number of completed uses allowed. Turn it off for no per-customer limit.
- First purchase only: allow customers with no previous completed purchase. This also limits the code to one use per customer.
- Specific customers only: enter up to 100 customer email addresses, separated by commas or new lines. Customers do not need to register before you create the code. Creation succeeds with a warning listing emails that still need registration or verification. Those customers must sign up and verify the matching email before using the code. Existing account assignments are preserved. Checkout checks the signed-in BFT account, not a replaceable billing email. Invalid email formats and unavailable accounts still block creation. Turn this option off to allow everyone who meets the other rules.
- Eligible challenges: select models and account sizes. Leave a group empty to allow every option in that group. Both groups apply together.
Save and check
Create Code stays disabled until the required fields are valid. The button stays at the bottom while you scroll through the form. Cancel or the close button closes the form without creating a code.
Edit or extend a code
In Regular Codes, select the pencil beside a code to reopen its saved offer. You can change the discount, description, time window, usage limit, customer emails, models, and account sizes. The code name stays locked so completed order history continues to refer to the same promotion. Save Changes keeps the code's current enabled or disabled state.
Archived regular codes also have a pencil so you can prepare a new time window or correct their settings. Saving does not restore or enable an archived code. Select Restore first, then Enable, when you are ready to make it available again. Retry and affiliate codes do not use this editor because they are managed by their own workflows.
What success looks like
The new code appears in Regular Codes with the saved offer and restrictions. Review it and test both an eligible and an ineligible customer before sharing it.
The x01 used badge appears before the status for regular, retry, affiliate, and archived codes. Counts below 10 use two digits, such as x00 used, x01 used, and x09 used. It counts distinct checkouts with confirmed payment, including orders that have reached fulfillment. Pending, rejected, failed, canceled, and refunded orders are excluded. Refunding a previously counted order removes it from the count. One checkout counts once, even when it includes multiple accounts or receives repeated payment updates. Affiliate usage counts the discount code actually applied, not referral-only visits or attribution. Counts refresh when the page loads, when you click refresh, when the window regains focus, and when an order change is received. Usage unavailable means the count could not be loaded, not zero uses.
Common mistakes
Do not enter an end before the start, a percentage over 100, or an invalid email address. Check the spelling of pending customer emails. Registration does not extend the code's expiry or bypass its other restrictions.
What happens next
New codes are enabled after creation, but scheduled and eligibility restrictions still apply. Archiving a code disables it automatically; restoring an archived code leaves it inactive until you enable it.
Discount codes cannot be combined with a selected free campaign add-on. Customers can instead use a code and buy add-ons at their normal price.
Related guides
BFT BUNDLE and BFT BOOST targeting
Open Discount Codes → Campaign → BFT BUNDLE or BFT BOOST. Each has checkboxes for every available Challenge model and account size. Select at least one model and one size, then click Save Campaign. The on/off switch saves status separately; it does not save unsaved checkbox edits. Checkout offers the campaign only when both the selected model and size are included, and the server checks the selection again when the order is submitted.
The first saved selections retain the previous behavior: Bundle includes all models and sizes, while Second Account includes all models but only the previously enabled $50K and/or $100K sizes. Admins can expand either campaign to other sizes explicitly. Existing orders are unchanged.
The free add-on campaign is now named BFT UPGRADE. Only the original default names change; any administrator-customized name and historical order label remain unchanged.
Schedule any campaign
Every campaign has a Time-limited promotion switch, off by default when no schedule is saved. Turn it on to open the date/time dropdown; 24 hours, 48 hours, 72 hours, and 7 days fill Start and End, which you can still edit with the calendar and clock pickers. The device time zone applies. Turning this switch off removes the time limit after Save Campaign; the separate campaign on/off switch still controls whether customers can use the offer. A saved window restricts new checkouts and payment confirmation to its dates. BFT DISCOUNT can also run without dates. Open the compact Eligible challenges dropdown to change models and sizes; the summary shows how many are selected. Regular codes also keep their time picker hidden unless Time-limited promotion is on.
BFT BONUS campaign
Open Discount Codes → Campaign → BFT BONUS. Set a name, checkout subtitle, and one or more purchase-to-free mappings. Each row has a purchased account size, free size, eligible purchased models, and its own enabled checkbox. The free Challenge always uses the purchased model and has no add-ons. Click Add mapping or remove a row, then Save Campaign. Free account must reach Funded within 14 days is on by default for new qualifying orders; you can turn it off. This deadline starts when the free evaluation is delivered, not at payment or first trade. An optional campaign schedule limits when new checkouts and payment confirmations qualify. The on/off switch saves separately and does not save unfinished edits. The campaign starts OFF.
The initial saved mappings are $25K → $5K, $50K → $10K, and $100K → $25K; these are editable settings, not fixed checkout rules. In the BFT BONUS orders table, search by customer, order, or account number. Separate columns show the purchased and free account numbers, plus whether and when the free account was given. They also show the live time left and deadline date if enabled, free-account failure or closure, and the separately labeled BFT BONUS Funded account after a successful evaluation. BFT BONUS cannot be combined with a discount code or another checkout promotion. A qualifying payment preserves its exact free size, purchased model, and optional deadline choice even if you later edit or disable the campaign. Only confirmed payments while the campaign and mapping are active qualify; a pending checkout alone does not reserve the reward. The paid account is delivered first, then the free Phase 1 Challenge enters the normal account-delivery queue. Do not treat Provisioning as delivered. The free-account deadline is enforced independently of the paid account: a free evaluation that fails or misses the deadline is closed through the normal account-retirement workflow; passing the final evaluation in time starts normal Funded provisioning.
For a free account with the optional deadline, the table shows progress such as 3/14 days elapsed, followed by time left and the exact due date. The counter uses that order's saved delivery and deadline dates. Older unlimited orders still show No 14-day limit; enabling the rule later does not impose a deadline on them.
BFT DOUBLE campaign
Open Discount Codes → Campaign → BFT DOUBLE. The switch saves immediately. You can also set an optional automatic window; without one, turn it off manually at the end of your promotion.
Customers must select BFT DOUBLE instead of a discount code or another offer. Only checked Challenge models and account sizes are eligible; purchased add-ons stay at their normal price. Only payments confirmed while the switch is on and inside any saved window qualify. Pending orders confirmed after it is off or outside the window do not qualify, even if they were submitted earlier.
Qualifying orders keep a BFT DOUBLE badge. The campaign table shows the customer's name and email, original order and Challenge number, Funded account number, free evaluation number, and status. Search by customer, order, or account, or filter by status. Turning the switch off stops new qualification without removing existing rewards.
The customer's Claim your free account button stays disabled until the original Challenge reaches Funded and the checklist passes. A claim creates a Requested review record and an admin notification, not an account. Admins are also notified when an original Challenge becomes eligible. Open Details to inspect the payment, original account, final evaluation, Funded delivery, reward specification and dated review history.
Choose Approve & create to queue one matching evaluation, Hold for review to pause, or Reject to refuse the request. Holds and rejections require an internal reason. Notes, reviewer, and time remain in the audit history; internal notes are not displayed to customers. Corrected records can be reviewed again. Approval rechecks eligibility on the server. The reward matches the original model, size, platform, and purchased add-ons, starts in Phase 1, and requires no new payment. Repeated requests or approvals cannot create extra rewards. Inventory shortages wait in the existing delivery queue.
Statuses distinguish In evaluation, Eligible, Requested, On hold, Needs review, Rejected, Failed, Approved · creating, and Created. Created means normal delivery has completed, not merely that an admin clicked approve. Delivered reward account numbers have (BFT Double) in the customer account selector and admin account list.
A Challenge that fails before reaching Funded cannot claim. Refunds and payment reversals block approval; approved or delivered rewards are retained for staff review, not automatically revoked. Do not promise transfers to resets, retries, or manual replacements unless the original Challenge lineage supports them.
Expand the campaign row, then use Eligible challenges to check the included models and sizes. At least one model and one size must be selected. Select all restores every option in that group. Click Save Campaign to persist targeting; the on/off switch changes only the saved campaign status, not unsaved checkbox edits. Targeting is checked both when submitting checkout and at the first confirmed payment. Changes do not remove rewards already earned.
BFT DISCOUNT campaign
Open Discount Codes → Campaign → BFT DISCOUNT. Give the campaign a unique checkout code, percentage discount, and eligible Challenge models and sizes. Start and end times are optional. The separate on/off switch controls availability; saving settings does not turn the campaign on. This campaign is a discount code, not a free-account offer, and ordinary discount codes keep their own settings.
When you turn on Time-limited promotion, use Quick duration above the side-by-side Start and End controls to choose 24 hr, 48 hr, 72 hr, or 7 days. You can then change either date in the calendar and adjust its hour, minute, and AM/PM in the clock picker. The selected shortcut is highlighted only while the exact duration still matches. Times use your device's time zone.
Choose one or both independent audience checkboxes: New BFT Users means the signed-in, registered account has no qualifying completed purchase; Existing BFT Users means it has at least one. Selecting both allows either group, subject to the other campaign rules. Selecting neither is invalid and cannot be saved or used. This campaign has no specific-email list. Eligibility uses the customer's registered BFT account and purchase history, not a billing email typed at checkout. Test an eligible and ineligible account after saving and before sharing the code.
In Admin → Orders, the order's program shows its saved campaign tag for BFT DOUBLE, BFT BONUS, BFT DISCOUNT, BFT BUNDLE, BFT UPGRADE, or BFT BOOST. The customer sees the same identity in Billing. Check payment status before treating a pending campaign selection as a confirmed purchase. Tags reflect the order at checkout, not later changes to campaign settings or code.