# RoutingResult

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

The persisted routing decision on a transaction document.
Contains the selected processor and the full evaluation audit trail.

## Fields
- `selectedProcessorKey` (string): The selected processor key. (nullable)
- `selectedProcessorProfileId` (string(uuid)): The selected processor profile ID.
- `routingIndicator` ([RoutingIndicator](https://devportal.demo.winkpg.io/docs/api/models/RoutingIndicator.md)): Optional routing indicator applied to the transaction. (nullable)
  Values:
  - `ProcessedAsCredit`: Indicates that the transaction was processed as a credit transaction.
  - `ProcessedAsDebit`: Indicates that the transaction was processed as a debit transaction.
  - `ProcessedAsStarSignatureDebit`: Indicates that the transaction was processed as a Star Signature debit transaction.
- `matchedRuleName` (string): The name of the merchant processor routing rule that selected the processor profile, when a  rule did. `null` on every transaction a routing rule did not route. (nullable)
- `auditTrail` (array<[RoutingRationale](https://devportal.demo.winkpg.io/docs/api/models/RoutingRationale.md)>): Full audit trail from the evaluation pipeline. (nullable)
  Fields of each item:
  - `contributorName` (string): Name of the contributor that produced this rationale. (nullable)
  - `reason` (string): Human-readable description of the action taken. (nullable)
- `candidateSummaries` (array<[RoutingOptionSummary](https://devportal.demo.winkpg.io/docs/api/models/RoutingOptionSummary.md)>): All candidates evaluated with their final scores. (nullable)
  Fields of each item:
  - `processorKey` (string): The processor key. (nullable)
  - `profileId` (string(uuid)): The profile ID.
  - `score` (integer(int32)): Final score after all contributors ran.
  - `eliminated` (boolean): Whether this candidate was eliminated.
  - `eliminationCategory` (string): The typed discriminator for <i>why</i> this candidate was eliminated, as its enum member  name. `null` when the candidate survived, and on any candidate persisted  before this field existed. (nullable)

## See also

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