# BillingRunPreSelectionReason

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

Machine-readable reason a merchant was excluded from a billing run <b>before selection</b>: that
is, dropped by the `BillingRunMerchantLoader` filter before it could ever become a
`MerchantBillingRunResultStatus` row. Distinct from the per-merchant result statuses,
which apply to merchants that <em>were</em> selected but could not be billed (e.g.
`NoFulfillmentPath`).

## Values

| Value | Description |
| --- | --- |
| `Inactive` | The merchant is deactivated, so a billing run must not bill it. These merchants are filtered out by the billing-assignment lookup's active-state query filter; the run records them here purely so the operator can see why the count is lower. (Soft-deleted merchants remain hidden and are not surfaced as exclusions.) |
| `NoPricePlanAssigned` | The merchant's billing assignment has no price plan (PricePlanId is null/empty), so there is nothing to rate against. |
| `EffectiveWindowOutsidePeriod` | The billing assignment's effective window (EffectiveFrom/EffectiveTo) does not overlap the billed period: e.g. a plan whose effective date is after the billed month. This is the exact confusion behind the effective-date billing investigation: a merchant is assigned to a plan but skipped because the assignment is not effective for the period. |

## See also

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