# `Stripe.Resources.Charge.Outcome`
[🔗](https://github.com/jeffhuen/tiger_stripe/blob/main/lib/stripe/resources/charge.ex#L294)

Nested struct within the parent resource.

# `t`

```elixir
@type t() :: %Stripe.Resources.Charge.Outcome{
  advice_code: String.t() | nil,
  network_advice_code: String.t() | nil,
  network_decline_code: String.t() | nil,
  network_status: String.t() | nil,
  reason: String.t() | nil,
  risk_level: String.t() | nil,
  risk_score: integer() | nil,
  rule: String.t() | Stripe.Resources.Radar.Rule.t() | nil,
  seller_message: String.t() | nil,
  type: String.t() | nil
}
```

* `advice_code` - An enumerated value providing a more detailed explanation on [how to proceed with an error](https://docs.stripe.com/declines#retrying-issuer-declines). Possible values: `confirm_card_data`, `do_not_try_again`, `try_again_later`. Nullable.
* `network_advice_code` - For charges declined by the network, a 2 digit code which indicates the advice returned by the network on how to proceed with an error. Max length: 5000. Nullable.
* `network_decline_code` - For charges declined by the network, an alphanumeric code which indicates the reason the charge failed. Max length: 5000. Nullable.
* `network_status` - Possible values are `approved_by_network`, `declined_by_network`, `not_sent_to_network`, and `reversed_after_approval`. The value `reversed_after_approval` indicates the payment was [blocked by Stripe](https://docs.stripe.com/declines#blocked-payments) after bank authorization, and may temporarily appear as "pending" on a cardholder's statement. Max length: 5000. Nullable.
* `reason` - An enumerated value providing a more detailed explanation of the outcome's `type`. Charges blocked by Radar's default block rule have the value `highest_risk_level`. Charges placed in review by Radar's default review rule have the value `elevated_risk_level`. Charges blocked because the payment is unlikely to be authorized have the value `low_probability_of_authorization`. Charges authorized, blocked, or placed in review by custom rules have the value `rule`. See [understanding declines](https://docs.stripe.com/declines) for more details. Max length: 5000. Nullable.
* `risk_level` - Stripe Radar's evaluation of the riskiness of the payment. Possible values for evaluated payments are `normal`, `elevated`, `highest`. For non-card payments, and card-based payments predating the public assignment of risk levels, this field will have the value `not_assessed`. In the event of an error in the evaluation, this field will have the value `unknown`. This field is only available with Radar. Max length: 5000.
* `risk_score` - Stripe Radar's evaluation of the riskiness of the payment. Possible values for evaluated payments are between 0 and 100. For non-card payments, card-based payments predating the public assignment of risk scores, or in the event of an error during evaluation, this field will not be present. This field is only available with Radar for Fraud Teams.
* `rule` - The ID of the Radar rule that matched the payment, if applicable.
* `seller_message` - A human-readable description of the outcome type and reason, designed for you (the recipient of the payment), not your customer. Max length: 5000. Nullable.
* `type` - Possible values are `authorized`, `manual_review`, `issuer_declined`, `blocked`, and `invalid`. See [understanding declines](https://docs.stripe.com/declines) and [Radar reviews](https://docs.stripe.com/radar/reviews) for details. Max length: 5000.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
