# CONFLICT

66 codes.

| Code | What happened | Why | What to do | Retryable |
| --- | --- | --- | --- | --- |
| `CONFLICT/FSM_TRANSITION_INVALID` | The record is in a status that does not allow that change. | Each status allows only certain next steps, and this one is not among them. | Check its status and use one of the available actions. | no |
| `CONFLICT/IMMUTABLE` | That part of the record can never be changed. | Some facts are fixed at creation so that history stays truthful. | Create a new record with the right value, or correct it with the corrective document the record allows. | no |
| `CONFLICT/REFERENCED` | Other records still point at this one. | Retiring it now would leave other records pointing at nothing. | Retire or re-point them first. | no |
| `CONFLICT/INCOMPLETE` | The work is not finished yet. | The step depends on work that has not been recorded yet. | Complete the remaining actions, then try again. | yes |
| `CONFLICT/REF_STATE` | A record this depends on is not in a usable state. | A record this one depends on is inactive, retired, or not yet active. | Activate or re-point it first. | no |
| `CONFLICT/REVISION_STALE` | Someone else changed this record while you were working. | Every save checks that the record is still the one you opened, so nobody overwrites another person’s change unseen. | Reload to see the current record — what you typed is kept — then save again. | yes |
| `CONFLICT/RECONCILE` | The system is reconciling this record. | A background reconciliation is updating this record right now. | Try again in a moment. | yes |
| `CONFLICT/IDENTITY_TAKEN` | That value is already used by another record. | This value must be unique across the whole group, and another record already holds it. | Choose a different one. | no |
| `CONFLICT/UNSELECTED` | This organization has not selected that catalog item. | Catalog masters are shared across the group; each organization selects the ones it uses before referencing them. | Select it for the organization first. | no |
| `CONFLICT/CURRENCY_FLOOR` | This change would leave products without a price in the organization currency. | Every product must carry a price in the organization currency at all times. | Price them first, or set the currency. | no |
| `CONFLICT/SKU_TAKEN` | That SKU has already been used and can never be reused. | SKUs are never reused once issued, so that history and reports stay unambiguous. | Choose a different SKU. | no |
| `CONFLICT/PRICE_WINDOW_OVERLAP` | The dates overlap an already-scheduled price. | Only one scheduled price can be in force at a time for the same target. | Remove or end the scheduled one first. | no |
| `CONFLICT/RATE_WINDOW_OVERLAP` | The dates overlap an already-scheduled tax rate. | Only one scheduled rate can be in force at a time for the same tax. | Remove or end the scheduled one first. | no |
| `CONFLICT/INSUFFICIENT_STOCK` | There is not enough stock at that location for this move. | Stock can never go negative at a location. | Check the quantities and try a smaller amount. | no |
| `CONFLICT/DISCREPANCY` | The received quantities do not match what was shipped. | A receipt must account for every shipped unit, either as received or as a recorded difference. | Correct the receipt, or record the difference as a discrepancy. | no |
| `CONFLICT/IN_PROGRESS` | Something else is already in progress on this record. | Two changes cannot run on the same record at the same time. | Wait for it to finish, then try again. | no |
| `CONFLICT/REJECTED` | The approval for this was rejected. | A rejected approval closes the request; it does not reopen on retry. | Start a new request if the situation has changed. | no |
| `CONFLICT/UNRESOLVED` | An open discrepancy must be resolved before this can complete. | Closing over an open discrepancy would hide a difference that still needs an answer. | Resolve the discrepancy, then complete this step. | no |
| `CONFLICT/NO_SOURCE` | No location is available to source this from. | Sourcing needs at least one active location that can supply the item. | Activate or create a source location, then try again. | yes |
| `CONFLICT/SOURCING_FAILED` | The sourcing step could not complete. | The special order needs a live sourcing document to draw from. | Link a live sourcing document and try again. | yes |
| `CONFLICT/VARIANCE_REVIEW` | The count variance is over the review threshold. | Count variances above the threshold are reviewed before they change stock. | A review is required before posting. | no |
| `CONFLICT/THREE_WAY_MATCH` | The received quantity exceeds what the purchase order allows. | Receipts are checked against the purchase order within its tolerance. | Adjust the receipt or revise the order. | no |
| `CONFLICT/CREDIT_MISMATCH` | The recorded vendor credit does not match the expected amount. | The vendor credit recorded differs from the amount the return expected. | Re-record the correct figure, or acknowledge the variance. | yes |
| `CONFLICT/EXPIRED` | An attached document is outside its validity window. | Time-scoped documents count only within their validity window. | Remove it or attach a current one. | no |
| `CONFLICT/UNSETTLED` | There is an outstanding balance on this. | A document closes only once every amount on it has been settled. | Settle it first, then complete this step. | no |
| `CONFLICT/RECOGNIZED` | This invoice already has recognized revenue. | Recognized revenue is corrected with a note, never erased by voiding. | Correct it with a credit or debit note instead of voiding it. | no |
| `CONFLICT/SETTLED` | The amount on this note has already settled. | Once the amount settles, the note is part of the books and cannot be voided. | Issue a further corrective note if the books need adjusting. | no |
| `CONFLICT/SAGA_LOCKED` | Another operation is holding this record. | A multi-step operation holds the record until it finishes or rolls back. | Try again shortly. | yes |
| `CONFLICT/SEARCH_JOB_ACTIVE` | A search is already running for this session. | One background search runs per signed-in session. | Wait for it to finish or cancel it, then start again. | yes |
| `CONFLICT/EXPORT_JOB_ACTIVE` | An export is already running for this session. | One background export runs per signed-in session. | Wait for it to finish or cancel it, then start again. | yes |
| `CONFLICT/FILL_DRAFT_ACTIVE` | A draft is already being made for you. | One wizard draft is drafted at a time per person. | Wait for it to be ready or abandon it, then start again. | yes |
| `CONFLICT/STEP_FAILED` | A step in this operation failed and it is being rolled back. | Multi-step operations complete entirely or roll back entirely. | Check the record, then try again. | no |
| `CONFLICT/OVER_RETURNABLE` | The return quantity exceeds what is left to return on this order line. | Each order line can be returned at most up to the quantity sold. | Reduce the quantity. | no |
| `CONFLICT/NOT_RETURNABLE` | That order line is marked final sale or non-returnable. | The line was sold under a final-sale or non-returnable term. | A manager override may allow the return. | no |
| `CONFLICT/OVER_SHORT_REVIEW` | The till over/short amount is over the review threshold. | Till differences above the threshold are reviewed before the session closes. | A review is required before closing. | no |
| `CONFLICT/DOUBLE_BOOKED` | That time is fully booked on a requested resource. | Each resource has a capacity per slot, and that slot is full. | Pick another slot, another resource, or free the conflicting appointment. | no |
| `CONFLICT/OVER_TENDERED` | The amount exceeds what this order can take. | A tender cannot exceed what the order still owes. | Check the remaining balance and use a smaller amount. | no |
| `CONFLICT/TENDERED` | Money is already held on this order. | An order with money held on it cannot be cancelled outright. | Refund the deposit first, then cancel. | no |
| `CONFLICT/FX_WINDOW_OVERLAP` | The dates overlap an already-scheduled exchange rate. | Only one scheduled rate can be in force at a time for the same currency pair. | Remove or end the scheduled one first. | no |
| `CONFLICT/POLICY_WINDOW_OVERLAP` | The dates overlap an already-scheduled policy value. | Only one scheduled value can be in force at a time for the same policy. | Remove or end the scheduled one first. | no |
| `CONFLICT/NO_EFFECTIVE_RATE` | No exchange rate covers that currency pair right now. | Every conversion needs a rate in force at that instant. | Add the rate, then try again. | yes |
| `CONFLICT/BACKORDER` | There is not enough stock available to start picking. | Picking starts only once the stock to pick is on hand. | Nothing to do now — it proceeds when stock arrives. | yes |
| `CONFLICT/PACK_VERIFY` | Pack verification did not pass. | Packing is verified against the picked lines before the parcel closes. | Re-check the items and try again. | no |
| `CONFLICT/COUPON_CODE_TAKEN` | Another active coupon already uses that code. | Active coupon codes are unique within the organization. | Choose a different code. | no |
| `CONFLICT/COUPON_EXPIRED` | That coupon is outside its validity window. | A coupon applies only between its start and end dates. | Remove it or fix its dates. | no |
| `CONFLICT/BOOKMARK_EXISTS` | This is already bookmarked. | A record can be bookmarked once per person. | Nothing to do — the bookmark is already in place. | no |
| `CONFLICT/REACTION_EXISTS` | You already reacted with that emoji on this note. | Each person can add a given reaction once per note. | Remove the reaction first to change your mind. | no |
| `CONFLICT/BOOKMARK_CAP` | You have reached the bookmark limit. | Bookmarks are capped per person so the list stays useful. | Remove one first. | no |
| `CONFLICT/TRAINING_CAP` | This training limit has been reached. | Requirements per group, questions per course and sittings per day are capped so the program stays bounded. | Retire one first, or try again tomorrow for a sitting. | no |
| `CONFLICT/TRAINING_ATTEMPT_OPEN` | You already have an open sitting for this course. | One sitting per course is open at a time — finish it or have it retired first. | Submit the open sitting, or ask a manager to retire it. | no |
| `CONFLICT/TRAINING_TOO_FEW_QUESTIONS` | This course has too few questions to test yet. | A sitting draws from the active questions of the course, and the bank has fewer than the minimum. | Ask the owner to add questions to the course first. | no |
| `CONFLICT/TRAINING_PRACTICE_NOT_OPEN` | No practice is open for this course. | A practice is handed in against the draw its start made, and none is open. | Start a practice first, then hand in its answers. | no |
| `CONFLICT/APPDATA_CAP` | This app has reached its saved-settings limit. | Saved settings are capped per app so storage stays bounded. | Delete one first. | no |
| `CONFLICT/COUPON_EXHAUSTED` | That coupon has reached its redemption limit. | The coupon has been redeemed as many times as its limit allows. | Raise the limit to keep using it. | no |
| `CONFLICT/INSTRUMENT_CODE_TAKEN` | That code has already been used by a gift card or credit and can never be reused. | Gift card and credit codes are never reused once issued. | Choose a different code. | no |
| `CONFLICT/NOT_RELOADABLE` | That instrument cannot be reloaded. | The instrument was issued as single-load. | Issue a new one instead. | no |
| `CONFLICT/INSUFFICIENT_BALANCE` | The amount exceeds the available balance. | An instrument can never be drawn below zero. | Use the remaining balance and pay the rest another way. | no |
| `CONFLICT/BALANCE_OUTSTANDING` | There is still a balance on this. | An instrument with value on it cannot be retired. | Adjust it to zero first, then retire it. | no |
| `CONFLICT/INSUFFICIENT_POINTS` | The member does not have enough points for that. | A member balance can never go below zero. | Reduce the amount. | no |
| `CONFLICT/MEMBER_EXISTS` | That email is already enrolled in this program. | Each email can be enrolled once per program. | Nothing to do — the member is already enrolled; open the existing membership instead. | no |
| `CONFLICT/REFERRAL_CODE_TAKEN` | An active affiliate already uses that referral code. | Active referral codes are unique across the platform. | Choose a different code. | no |
| `CONFLICT/LIST_PRICE_WINDOW_OVERLAP` | The dates overlap an already-scheduled price list entry. | Only one scheduled entry can be in force at a time for the same list and product. | Remove or end the scheduled one first. | no |
| `CONFLICT/CREDIT_LIMIT` | This charge would exceed the customer credit limit. | On-account charges are held within the credit limit agreed with the customer. | Get approval, or reduce the balance first. | no |
| `CONFLICT/ORDER_MINIMUM` | The order is below this customer minimum order value. | The customer account carries a minimum order value. | Grow the order, or get approval. | no |
| `CONFLICT/INSUFFICIENT_AR_BALANCE` | The amount exceeds the customer outstanding balance. | An outstanding balance can never be reduced below zero. | Reduce it, or route the extra another way. | no |
| `CONFLICT/ERASE_FAILED` | The de-identification could not complete and nothing was changed. | De-identification is all-or-nothing, so a partial run leaves everything as it was. | Try the erase again. | yes |
