HORIZON HASKELLDocslts/ghc-9.10.x248f8f02026-10-05Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05

Modulestripeapi-3.0.0.0Haskell2010

StripeAPI.Types.Charge

Contains the types generated from the schema Charge

  • 21 types
  • 7 values
datadata Charge
#

Defines the object schema located at components.schemas.charge in the specification.

To charge a credit or a debit card, you create a `Charge` object. You can retrieve and refund individual charges as well as list all charges. Charges are identified by a unique, random ID.

Related guide: Accept a payment with the Charges API.

Constructors

Instances4Eq, Show, FromJSON, ToJSON
  • Eq ChargeDefined in stripeapi-3.0.0.0 · StripeAPI.Types.Charge
  • Show ChargeDefined in stripeapi-3.0.0.0 · StripeAPI.Types.Charge
  • FromJSON ChargeDefined in stripeapi-3.0.0.0 · StripeAPI.Types.Charge
  • ToJSON ChargeDefined in stripeapi-3.0.0.0 · StripeAPI.Types.Charge

Defines the oneOf schema located at components.schemas.charge.properties.application.anyOf in the specification.

ID of the Connect application that created the charge.

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.application_fee.anyOf in the specification.

The application fee (if any) for the charge. See the Connect documentation for details.

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.balance_transaction.anyOf in the specification.

ID of the balance transaction that describes the impact of this charge on your account balance (not including refunds or disputes).

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.customer.anyOf in the specification.

ID of the customer this charge is for if one exists.

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.failure_balance_transaction.anyOf in the specification.

ID of the balance transaction that describes the reversal of the balance on your account due to payment failure.

Instances4Eq, Show, FromJSON, ToJSON

Defines the object schema located at components.schemas.charge.properties.fraud_details.anyOf in the specification.

Information on fraud assessments for the charge.

Constructors

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.invoice.anyOf in the specification.

ID of the invoice this charge is for if one exists.

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.on_behalf_of.anyOf in the specification.

The account (if any) the charge was made on behalf of without triggering an automatic transfer. See the Connect documentation for details.

Instances4Eq, Show, FromJSON, ToJSON

Defines the object schema located at components.schemas.charge.properties.outcome.anyOf in the specification.

Details about whether the payment was accepted, and why. See understanding declines for details.

Constructors

  • ChargeOutcome'NonNullable
    • chargeOutcome'NonNullableNetworkStatus :: Maybe (Nullable Text)

      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 after bank authorization, and may temporarily appear as "pending" on a cardholder's statement.

      Constraints:

      • Maximum length of 5000

    • chargeOutcome'NonNullableReason :: Maybe (Nullable Text)

      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 authorized, blocked, or placed in review by custom rules have the value `rule`. See understanding declines for more details.

      Constraints:

      • Maximum length of 5000

    • chargeOutcome'NonNullableRiskLevel :: Maybe Text

      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.

      Constraints:

      • Maximum length of 5000

    • chargeOutcome'NonNullableRiskScore :: Maybe Int

      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.

    • chargeOutcome'NonNullableRule :: Maybe ChargeOutcome'NonNullableRule'Variants

      rule: The ID of the Radar rule that matched the payment, if applicable.

    • chargeOutcome'NonNullableSellerMessage :: Maybe (Nullable Text)

      seller_message: A human-readable description of the outcome type and reason, designed for you (the recipient of the payment), not your customer.

      Constraints:

      • Maximum length of 5000

    • chargeOutcome'NonNullableType :: Maybe Text

      type: Possible values are `authorized`, `manual_review`, `issuer_declined`, `blocked`, and `invalid`. See understanding declines and Radar reviews for details.

      Constraints:

      • Maximum length of 5000

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.outcome.anyOf.properties.rule.anyOf in the specification.

The ID of the Radar rule that matched the payment, if applicable.

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.payment_intent.anyOf in the specification.

ID of the PaymentIntent associated with this charge, if one exists.

Instances4Eq, Show, FromJSON, ToJSON

Defines the object schema located at components.schemas.charge.properties.payment_method_details.anyOf in the specification.

Details about the payment method at the time of the transaction.

Constructors

Instances4Eq, Show, FromJSON, ToJSON
datadata ChargeRefunds'
#

Defines the object schema located at components.schemas.charge.properties.refunds in the specification.

A list of refunds that have been applied to the charge.

Constructors

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.review.anyOf in the specification.

ID of the review associated with this charge if one exists.

Instances4Eq, Show, FromJSON, ToJSON

Defines the object schema located at components.schemas.charge.properties.shipping.anyOf in the specification.

Shipping information for the charge.

Constructors

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.source_transfer.anyOf in the specification.

The transfer ID which created this charge. Only present if the charge came from another Stripe account. See the Connect documentation for details.

Instances4Eq, Show, FromJSON, ToJSON
datadata ChargeStatus'
#

Defines the enum schema located at components.schemas.charge.properties.status in the specification.

The status of the payment is either `succeeded`, `pending`, or `failed`.

Constructors

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.transfer.anyOf in the specification.

ID of the transfer to the `destination` account (only applicable if the charge was created using the `destination` parameter).

Instances4Eq, Show, FromJSON, ToJSON

Defines the object schema located at components.schemas.charge.properties.transfer_data.anyOf in the specification.

An optional dictionary including the account to automatically transfer to as part of a destination charge. See the Connect documentation for details.

Constructors

Instances4Eq, Show, FromJSON, ToJSON

Defines the oneOf schema located at components.schemas.charge.properties.transfer_data.anyOf.properties.destination.anyOf in the specification.

ID of an existing, connected Stripe account to transfer funds to if `transfer_data` was specified in the charge request.

Instances4Eq, Show, FromJSON, ToJSON