# EnhancedDataQualificationFindingDto

A model the API reference uses in a request or a response. The operation pages link every field typed as this model here.

One enhanced-data qualification finding: a stable code, plus the line item that raised it when the
check was line-level.

## Fields
- `code` ([CedpFindingCode](https://devportal.demo.winkpg.io/docs/api/models/CedpFindingCode.md)): The reason this line, or the transaction as a whole, is unlikely to qualify. (nullable)
  Values:
  - `QuantityNotPositive`: A line item's quantity is null, zero, or negative. Enhanced rates need a positive quantity.
  - `UnitPriceNotPositive`: A line item's unit price is null, zero, or negative. Enhanced rates need a positive unit cost.
  - `LineTotalMismatch`: A line item's total does not reconcile with quantity, unit price, discount, and line tax within a penny.
  - `BlankOrPlaceholderDescription`: A line item's description is null, blank, or all zeros.
  - `BlankOrPlaceholderProductCode`: A line item's product code is null, blank, or all zeros.
  - `BlankOrPlaceholderCommodityCode`: A line item's commodity code is null, blank, or all zeros.
  - `BlankOrPlaceholderUnitOfMeasure`: A line item's unit of measure is null, blank, or all zeros.
  - `TaxRatioOutOfBounds`: Tax is present but falls outside the card brand's accepted share of the settled total: at least 0.1%, and at most 22% for Visa or 30% for Mastercard.
  - `ZeroTaxWithoutExemptFlag`: Tax is zero or absent and the transaction is not flagged tax exempt. Informational: a genuinely untaxed sale is legitimate, but it will not earn an enhanced rate without the exempt flag.
  - `MissingCustomerCode`: No customer reference of any kind was supplied: purchase order, order number, and invoice number are all blank or placeholder.
  - `NoLineItems`: Level 3 header data was supplied with no line items, so the row settles on the Level 2 path and cannot reach a Level 3 rate.
  - `Level3WithheldIncomplete`: The merchant supplied Level 3 data, but the addendum was deliberately withheld because the values that would have gone on the wire were incomplete. The processor sends no fabricated filler in their place, so the row settles at the fallback level for its card brand instead.
  - `UnitOfMeasureNotRecognized`: A line item's unit of measure is present but is not a recognized unit-of-measure code: each or units where the programs expect EA. Compared case-insensitively after trimming, so ea is recognized.
  - `QuantityTruncatedToWholeNumber`: A line item's quantity was submitted with a fractional part, and the addendum carries only the whole-number part of it.
  - `DescriptionMatchesMerchantName`: A line item's description is the merchant's own name. Acquirer guidance treats a line that names the seller instead of what was sold as a placeholder, the same as a blank.
  - `GenericDescription`: A line item's description is a single generic word that says nothing about the item, such as Service, Product, Item or Misc. The list of generic words is deliberately short.
  - `SingleCharacterValue`: A line item's description or product code is a single character once trimmed. One character cannot describe or identify anything, and acquirer guidance reads it as filler typed to get past a required field.
  - `PipeCharacterPresent`: A pipe character (|) is present in a line item's description, product code, commodity code or unit of measure, or in the purchase order, order number or invoice number. A pipe is a field delimiter in the formats enhanced data is exchanged in, and its presence usually means several values were concatenated into one field.
- `lineIndex` (integer(int32)): The zero-based index of the line item that raised the finding, or `null` when  the finding is about the transaction as a whole rather than one line. (nullable)

## See also

- [All documentation](https://devportal.demo.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
