The Payment Evaluation object 

Fraud
Payment Evaluations
The Payment Evaluation object

Attributes

  • idstring

    Unique identifier for the object.

  • client_device_metadata_detailsnullable objectExpandable

    Details about the Client Device Metadata associated with the payment evaluation.

    • client_device_metadata_details.radar_sessionstring

      ID for the Radar Session associated with the payment evaluation. A Radar Session is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.

  • customer_detailsobjectExpandable

    Details about the customer associated with the payment evaluation.

    • customer_details.customernullable string

      The ID of the customer associated with the payment evaluation.

    • customer_details.customer_accountnullable string

      The ID of the Account representing the customer associated with the payment evaluation.

    • customer_details.emailnullable string

      The customer’s email address.

    • customer_details.namenullable string

      The customer’s full name or business name.

    • customer_details.phonenullable string

      The customer’s phone number.

  • eventsarray of objectsExpandable

    Event information associated with the payment evaluation, such as refunds, dispute, early fraud warnings, or user interventions.

    • events.dispute_openednullable object

      Details about the dispute opened event.

      • events.dispute_opened.amountinteger

        Amount to dispute for this payment. A positive integer representing how much to charge in the smallest currency unit (for example, 100 cents to charge 1.00 USD or 100 to charge 100 Yen, a zero-decimal currency).

      • events.dispute_opened.currencyenum

        Three-letter ISO currency code, in lowercase. Must be a supported currency.

      • events.dispute_opened.reasonenum

        Reason given by cardholder for dispute.

        Possible enum values
        account_not_available

        The account isn’t available.

        credit_not_processed

        The cardholder claims they should have received a refund or credit but haven’t.

        customer_initiated

        The cardholder disputed the transaction.

        duplicate

        The cardholder claims they were incorrectly charged multiple times for the same products or services.

        fraudulent

        The cardholder claims that a payment was unauthorized and that they didn’t initiate it or give permission for it to happen.

        general

        The reason doesn’t match any of the other dispute reasons.

        noncompliant

        The transaction is noncompliant.

        product_not_received

        The cardholder claims they didn’t receive the products or services they purchased.

        product_unacceptable

        The cardholder claims a product they received is defective, damaged, or not as described. This includes issues with the product itself or how it was represented on the seller’s site.

        subscription_canceled

        The cardholder claims that a business continued to charge them after their subscription was canceled.

        Show 1 more
    • events.early_fraud_warning_receivednullable object

      Details about the early fraud warning received event.

      • events.early_fraud_warning_received.fraud_typeenum

        The type of fraud labeled by the issuer.

        Possible enum values
        made_with_lost_card

        The payment might be fraudulent because the card was reported lost.

        made_with_stolen_card

        The payment might be fraudulent because the card was reported stolen.

        other

        The reason doesn’t match any of the other reasons.

        unauthorized_use_of_card

        The payment might be fraudulent because the card was used without the cardholder’s permission.

    • events.occurred_attimestamp

      Timestamp when the event occurred.

    • events.refundednullable object

      Details about the refunded event.

      • events.refunded.amountinteger

        Amount refunded for this payment. A positive integer representing how much to charge in the smallest currency unit (for example, 100 cents to charge 1.00 USD or 100 to charge 100 Yen, a zero-decimal currency).

      • events.refunded.currencyenum

        Three-letter ISO currency code, in lowercase. Must be a supported currency.

      • events.refunded.reasonenum

        Indicates the reason for the refund.

        Possible enum values
        duplicate

        The merchant has indicated the refund is because of a duplicate payment.

        fraudulent

        The merchant has indicated the refund is because of fraud.

        other

        The reason doesn’t match any of the other refund reasons.

        requested_by_customer

        The merchant has indicated the refund was requested by the customer.

    • events.typeenum

      Indicates the type of event attached to the payment evaluation.

      Possible enum values
      dispute_opened

      Event type for when a dispute is opened.

      early_fraud_warning_received

      Event type for when an early fraud warning is received.

      refunded

      Event type for when a payment is refunded.

      user_intervention_raised

      Event type for when a user intervention is raised.

      user_intervention_resolved

      Event type for when a user intervention is resolved.

    • events.user_intervention_raisednullable object

      Details about the user intervention raised event.

      • events.user_intervention_raised.customnullable object

        Details for custom interventions.

        • events.user_intervention_raised.custom.typestring

          Custom type of user intervention raised. The string must use a snake case description for the type of intervention performed.

      • events.user_intervention_raised.keystring

        Unique identifier for the user intervention event.

      • events.user_intervention_raised.typeenum

        Type of user intervention raised.

        Possible enum values
        3ds

        3DS Authentication

        captcha

        CAPTCHA Security Test

        custom

        Custom Intervention

    • events.user_intervention_resolvednullable object

      Details about the user intervention resolved event.

      • events.user_intervention_resolved.keystring

        Unique ID of this intervention. Use this to provide the result.

      • events.user_intervention_resolved.outcomenullable enum

        Result of the intervention if it has been completed.

        Possible enum values
        abandoned

        The customer abandoned the user intervention.

        failed

        The customer failed the user intervention.

        passed

        The customer passed the user intervention.

  • insightsobject

    Provides Stripe Radar’s evaluation of the risk level of the payment.

    • insights.card_issuer_declinenullable object

      Stripe Radar’s evaluation of the likelihood of a card issuer decline on this payment.

      • insights.card_issuer_decline.model_scorefloat

        Stripe Radar’s evaluation of the likelihood that the payment will be declined by the card issuer. Scores range from 0 to 100, with higher values indicating a higher likelihood of decline.

      • insights.card_issuer_decline.recommended_actionenum

        Recommended action based on the model score. Possible values are block and continue.

        Possible enum values
        block

        The recommendation is to block the payment from proceeding.

        continue

        The recommendation is to allow this payment to continue to processing.

    • insights.evaluated_attimestamp

      The timestamp when the evaluation was performed.

    • insights.fraudulent_disputeobject

      The likelihood of a future fraudulent dispute claim (regardless of early fraud warning) for this PaymentEvaluation.

      • insights.fraudulent_dispute.recommended_actionenum

        Recommended action based on the risk score. Possible values are block and continue.

        Possible enum values
        block

        The recommendation is to block the payment from proceeding.

        continue

        The recommendation is to allow this payment to continue to processing.

      • insights.fraudulent_dispute.risk_scoreinteger

        Stripe Radar’s evaluation of the risk level of the payment. Possible values for evaluated payments are between 0 and 100, with higher scores indicating higher risk.

  • metadatanullable object

    Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

  • payment_detailsobjectExpandable

    Details about the payment.

    • payment_details.amountinteger

      Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The minimum amount is $0.50 US or equivalent in charge currency. The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).

    • payment_details.currencyenum

      Three-letter ISO currency code, in lowercase. Must be a supported currency.

    • payment_details.descriptionnullable string

      An arbitrary string attached to the object. Often useful for displaying to users.

    • payment_details.money_movement_detailsnullable object

      Details about the payment’s customer presence and type.

      • payment_details.money_movement_details.cardnullable object

        Describes card money movement details for the payment evaluation.

        • payment_details.money_movement_details.card.customer_presencenullable enum

          Describes the presence of the customer during the payment.

          Possible enum values
          off_session

          Customer isn’t present because the payment was initiated automatically or by the merchant.

          on_session

          Customer is present in the checkout flow.

        • payment_details.money_movement_details.card.payment_typenullable enum

          Describes the type of payment.

          Possible enum values
          one_off

          Charge an on-session or off-session customer using a previously stored card.

          recurring

          Charge an on-session or off-session customer using a previously stored card.

          setup_one_off

          Charge an on-session customer and store their card for future unscheduled on-session or off-session usage.

          setup_recurring

          Charge an on-session customer and store their card for future off-session usage on recurring payments.

      • payment_details.money_movement_details.money_movement_typeenum

        Describes the type of money movement. Currently only card is supported.

        Possible enum values
        card

        The money movement details for a card payment.

    • payment_details.payment_method_detailsnullable object

      Details about the payment method used for the payment.

      • payment_details.payment_method_details.billing_detailsnullable object

        Billing information associated with the payment evaluation.

        • payment_details.payment_method_details.billing_details.addressobject

          Billing address.

          • payment_details.payment_method_details.billing_details.address.citynullable string

            City, district, suburb, town, or village.

          • payment_details.payment_method_details.billing_details.address.countrynullable string

            Two-letter country code (ISO 3166-1 alpha-2).

          • payment_details.payment_method_details.billing_details.address.line1nullable string

            Address line 1, such as the street, PO Box, or company name.

          • payment_details.payment_method_details.billing_details.address.line2nullable string

            Address line 2, such as the apartment, suite, unit, or building.

          • payment_details.payment_method_details.billing_details.address.postal_codenullable string

            ZIP or postal code.

          • payment_details.payment_method_details.billing_details.address.statenullable string

            State, county, province, or region (ISO 3166-2).

        • payment_details.payment_method_details.billing_details.emailnullable string

          Email address.

        • payment_details.payment_method_details.billing_details.namenullable string

          Full name.

        • payment_details.payment_method_details.billing_details.phonenullable string

          Billing phone number (including extension).

      • payment_details.payment_method_details.payment_methodstringExpandable

        The payment method used in this payment evaluation.

    • payment_details.shipping_detailsnullable object

      Shipping details for the payment evaluation.

      • payment_details.shipping_details.addressobject

        Shipping address.

        • payment_details.shipping_details.address.citynullable string

          City, district, suburb, town, or village.

        • payment_details.shipping_details.address.countrynullable string

          Two-letter country code (ISO 3166-1 alpha-2).

        • payment_details.shipping_details.address.line1nullable string

          Address line 1, such as the street, PO Box, or company name.

        • payment_details.shipping_details.address.line2nullable string

          Address line 2, such as the apartment, suite, unit, or building.

        • payment_details.shipping_details.address.postal_codenullable string

          ZIP or postal code.

        • payment_details.shipping_details.address.statenullable string

          State, county, province, or region (ISO 3166-2).

      • payment_details.shipping_details.namenullable string

        Shipping name.

      • payment_details.shipping_details.phonenullable string

        Shipping phone number.

    • payment_details.statement_descriptornullable string

      Payment statement descriptor.

More attributes

  • objectstring

    String representing the object’s type. Objects of the same type share the same value.

  • created_attimestamp

    Time at which the object was created. Measured in seconds since the Unix epoch.

  • livemodeboolean

    Has the value true if the object exists in live mode or the value false if the object exists in test mode.

  • outcomenullable objectExpandable

    Indicates the final outcome for the payment evaluation.

    • outcome.merchant_blockednullable object

      Details of the merchant blocked outcome.

      • outcome.merchant_blocked.reasonenum

        The reason the payment was blocked by the merchant.

        Possible enum values
        authentication_required

        The issuer requested (3DS) authentication to proceed with the payment, but the merchant chose to block the transaction instead.

        blocked_for_fraud

        The merchant or PSP fraud system blocked the payment for suspected fraud.

        invalid_payment

        Payment was rejected for a non-fraud reason. For example, the customer forgot to supply a date in the future for their card’s expiration date.

        other

        A non-system failure reason for why the merchant blocked the transaction. If the system failed (for example, because of infrastructure failure), use outcome.failed instead.

    • outcome.payment_intent_idnullable string

      The PaymentIntent ID associated with the payment evaluation.

    • outcome.rejectednullable object

      Details of the rejected outcome.

      • outcome.rejected.cardnullable object

        Rejected card details attached to this payment evaluation.

        • outcome.rejected.card.address_line1_checkenum

          Result of the address line 1 check.

          Possible enum values
          fail

          Check failed.

          pass

          Check was passed.

          unavailable

          Check was unavailable.

          unchecked

          Check not performed.

        • outcome.rejected.card.address_postal_code_checkenum

          Indicates whether the cardholder provided a postal code and if it matched the cardholder’s billing address.

          Possible enum values
          fail

          Check failed.

          pass

          Check was passed.

          unavailable

          Check was unavailable.

          unchecked

          Check not performed.

        • outcome.rejected.card.cvc_checkenum

          Result of the CVC check.

          Possible enum values
          fail

          Check failed.

          pass

          Check was passed.

          unavailable

          Check was unavailable.

          unchecked

          Check not performed.

        • outcome.rejected.card.reasonenum

          Card issuer’s reason for the network decline.

          Possible enum values
          authentication_failed

          The payment method was declined because the transaction failed to pass authentication (3DS).

          do_not_honor

          The payment method was declined for an unknown reason.

          expired

          The card has expired.

          incorrect_cvc

          The CVC number is incorrect.

          incorrect_number

          The payment method information is incorrect.

          incorrect_postal_code

          The postal code or ZIP code is incorrect.

          insufficient_funds

          The payment method has insufficient funds to complete the purchase.

          invalid_account

          The card, or account the card is connected to, is invalid.

          lost_card

          The payment was declined because the card is reported lost.

          other

          The reason doesn’t match any other network decline reasons.

          Show 3 more
    • outcome.succeedednullable object

      Details of the succeeded outcome.

      • outcome.succeeded.cardnullable object

        Succeeded card details attached to this payment evaluation.

        • outcome.succeeded.card.address_line1_checkenum

          Result of the address line 1 check.

          Possible enum values
          fail

          Check failed.

          pass

          Check was passed.

          unavailable

          Check was unavailable.

          unchecked

          Check not performed.

        • outcome.succeeded.card.address_postal_code_checkenum

          Indicates whether the cardholder provided a postal code and if it matched the cardholder’s billing address.

          Possible enum values
          fail

          Check failed.

          pass

          Check was passed.

          unavailable

          Check was unavailable.

          unchecked

          Check not performed.

        • outcome.succeeded.card.cvc_checkenum

          Result of the CVC check.

          Possible enum values
          fail

          Check failed.

          pass

          Check was passed.

          unavailable

          Check was unavailable.

          unchecked

          Check not performed.

    • outcome.typeenum

      Indicates the outcome of the payment evaluation.

      Possible enum values
      failed

      The payment failed.

      merchant_blocked

      The payment wasn’t sent for processing.

      rejected

      The payment was rejected by the issuer.

      succeeded

      The payment succeeded.

The Payment Evaluation object
{
"id": "peval_123456789",
"created_at": 1704067200,
"insights": {
"evaluated_at": 1726181396,
"fraudulent_dispute": {
"recommended_action": "continue",
"risk_score": 50
}
},
"livemode": false,
"metadata": {},
"status": "requires_action"
}