v1

latestOpenAPI 3.0.02026-07-26168846732.2 KB
Payments

Payments - Cancel Post Capture

A Payment could can be cancelled when it is in one of these statuses: succeeded, partially_captured, partially_captured_and_capturable.

post/payments/{payment_id}/cancel_post_capture

Path parameters

payment_idstring required

The identifier for payment

Request body

cancellation_reasonstring nullable

The reason for the payment cancel

Response

Payment canceled post capture

payment_idstring required

Unique identifier for the payment. This ensures idempotency for multiple payments that have been done by a single merchant.

merchant_idstring required

This is an identifier for the merchant account. This is inferred from the API key provided during the request

status'succeeded' | 'failed' | 'cancelled' | 'cancelled_post_capture' | 'processing' | 'requires_customer_action' | 'requires_merchant_action' | 'requires_payment_method' | 'requires_confirmation' | 'requires_capture' | 'partially_captured' | 'partially_captured_and_capturable' | 'partially_authorized_and_requires_capture' | 'partially_captured_and_processing' | 'conflicted' | 'expired' | 'review' required

Represents the overall status of a payment intent. The status transitions through various states depending on the payment method, confirmation, capture method, and any subsequent actions (like customer authentication or manual capture).

amountinteger required

The payment amount. Amount for the payment in lowest denomination of the currency. (i.e) in cents for USD denomination, in paisa for INR denomination etc.,

net_amountinteger required

The payment net amount. net_amount = amount + surcharge_details.surcharge_amount + surcharge_details.tax_amount + shipping_cost + order_tax_amount, If no surcharge_details, shipping_cost, order_tax_amount, net_amount = amount

shipping_costinteger nullable

The shipping cost for the payment.

amount_capturableinteger required

The amount (in minor units) that can still be captured for this payment. This is relevant when capture_method is manual. Once fully captured, or if capture_method is automatic and payment succeeded, this will be 0.

amount_receivedinteger nullable

The total amount (in minor units) that has been captured for this payment. For fauxpay sandbox connector, this might reflect the authorized amount if status is succeeded even if capture_method was manual.

processor_merchant_idstring required

The identifier for the processor merchant account. In platform-connected setups, this is the connected merchant ID. For standard merchants, this is same as merchant_id.

initiator'platform' | 'connected'

Represents the initiator context in platform-connected setups Used in payment/refund/dispute responses to indicate who initiated the operation None indicates a standard merchant flow / JWT flow / Admin flow or insufficient information

sdk_authorizationstring nullable

Token containing encoded information for sdk authorization.

connectorstring nullable

The name of the payment connector (e.g., 'stripe', 'adyen') that processed or is processing this payment.

client_secretstring nullable

A secret token unique to this payment intent. It is primarily used by client-side applications (e.g., Hyperswitch SDKs) to authenticate actions like confirming the payment or handling next actions. This secret should be handled carefully and not exposed publicly beyond its intended client-side use.

createdstring date-time nullable

Timestamp indicating when this payment intent was created, in ISO 8601 format.

modified_atstring date-time nullable

Timestamp indicating when this payment intent was last modified, in ISO 8601 format.

connector_customer_idstring nullable

A unique identifier for a customer provided by the connector.

currency'AED' | 'AFN' | 'ALL' | 'AMD' | 'ANG' | 'AOA' | 'ARS' | 'AUD' | 'AWG' | 'AZN' | 'BAM' | 'BBD' | 'BDT' | 'BGN' | 'BHD' | 'BIF' | 'BMD' | 'BND' | 'BOB' | 'BRL' | 'BSD' | 'BTN' | 'BWP' | 'BYN' | 'BZD' | 'CAD' | 'CDF' | 'CHF' | 'CLF' | 'CLP' | 'CNY' | 'COP' | 'CRC' | 'CUC' | 'CUP' | 'CVE' | 'CZK' | 'DJF' | 'DKK' | 'DOP' | 'DZD' | 'EGP' | 'ERN' | 'ETB' | 'EUR' | 'FJD' | 'FKP' | 'GBP' | 'GEL' | 'GHS' | 'GIP' | 'GMD' | 'GNF' | 'GTQ' | 'GYD' | 'HKD' | 'HNL' | 'HRK' | 'HTG' | 'HUF' | 'IDR' | 'ILS' | 'INR' | 'IQD' | 'IRR' | 'ISK' | 'JMD' | 'JOD' | 'JPY' | 'KES' | 'KGS' | 'KHR' | 'KMF' | 'KPW' | 'KRW' | 'KWD' | 'KYD' | 'KZT' | 'LAK' | 'LBP' | 'LKR' | 'LRD' | 'LSL' | 'LYD' | 'MAD' | 'MDL' | 'MGA' | 'MKD' | 'MMK' | 'MNT' | 'MOP' | 'MRU' | 'MUR' | 'MVR' | 'MWK' | 'MXN' | 'MYR' | 'MZN' | 'NAD' | 'NGN' | 'NIO' | 'NOK' | 'NPR' | 'NZD' | 'OMR' | 'PAB' | 'PEN' | 'PGK' | 'PHP' | 'PKR' | 'PLN' | 'PYG' | 'QAR' | 'RON' | 'RSD' | 'RUB' | 'RWF' | 'SAR' | 'SBD' | 'SCR' | 'SDG' | 'SEK' | 'SGD' | 'SHP' | 'SLE' | 'SLL' | 'SOS' | 'SRD' | 'SSP' | 'STD' | 'STN' | 'SVC' | 'SYP' | 'SZL' | 'THB' | 'TJS' | 'TMT' | 'TND' | 'TOP' | 'TRY' | 'TTD' | 'TWD' | 'TZS' | 'UAH' | 'UGX' | 'USD' | 'UYU' | 'UZS' | 'VES' | 'VND' | 'VUV' | 'WST' | 'XAF' | 'XCD' | 'XOF' | 'XPF' | 'YER' | 'ZAR' | 'ZMW' | 'ZWL' required

The three-letter ISO 4217 currency code (e.g., "USD", "EUR") for the payment amount. This field is mandatory for creating a payment.

customer_idstring nullable

The identifier for the customer object. If not provided the customer ID will be autogenerated. This field will be deprecated soon. Please refer to customer.id

descriptionstring nullable

An arbitrary string providing a description for the payment, often useful for display or internal record-keeping.

mandate_idstring nullable

A unique identifier to link the payment to a mandate, can be used instead of payment_method_data, in case of setting up recurring payments

setup_future_usage'off_session' | 'on_session'

Specifies how the payment method can be used for future payments.

  • off_session: The payment method can be used for future payments when the customer is not present.
  • on_session: The payment method is intended for use only when the customer is present during checkout. If omitted, defaults to on_session.
off_sessionboolean nullable

Set to true to indicate that the customer is not in your checkout flow during this payment, and therefore is unable to authenticate. This parameter is intended for scenarios where you collect card details and charge them later. This parameter can only be used with confirm=true.

capture_onstring date-time nullable

A timestamp (ISO 8601 code) that determines when the payment should be captured. Providing this field will automatically set capture to true

capture_method'automatic' | 'manual' | 'manual_multiple' | 'scheduled' | 'sequential_automatic'

Specifies how the payment is captured.

  • automatic: Funds are captured immediately after successful authorization. This is the default behavior if the field is omitted.
  • manual: Funds are authorized but not captured. A separate request to the /payments/{payment_id}/capture endpoint is required to capture the funds.
payment_method'card' | 'card_redirect' | 'pay_later' | 'wallet' | 'bank_redirect' | 'bank_transfer' | 'crypto' | 'bank_debit' | 'reward' | 'real_time_payment' | 'upi' | 'voucher' | 'gift_card' | 'open_banking' | 'mobile_payment' | 'network_token' required

Indicates the type of payment method. Eg: 'card', 'wallet', etc.

payment_tokenstring nullable

Provide a reference to a stored payment method

emailstring nullable

description: The customer's email address This field will be deprecated soon. Please refer to customer.email object

namestring nullable

description: The customer's name This field will be deprecated soon. Please refer to customer.name object

phonestring nullable

The customer's phone number This field will be deprecated soon. Please refer to customer.phone object

return_urlstring nullable

The URL to redirect after the completion of the operation

authentication_type'three_ds' | 'no_three_ds'

Specifies the type of cardholder authentication to be applied for a payment.

  • ThreeDs: Requests 3D Secure (3DS) authentication. If the card is enrolled, 3DS authentication will be activated, potentially shifting chargeback liability to the issuer.
  • NoThreeDs: Indicates that 3D Secure authentication should not be performed. The liability for chargebacks typically remains with the merchant. This is often the default if not specified.

Note: The actual authentication behavior can also be influenced by merchant configuration and specific connector defaults. Some connectors might still enforce 3DS or bypass it regardless of this parameter.

statement_descriptor_namestring nullable

For non-card charges, you can use this value as the complete description that appears on your customers’ statements. Must contain at least one letter, maximum 22 characters. To be deprecated soon, use billing_descriptor instead.

statement_descriptor_suffixstring nullable

Provides information about a card payment that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 255 characters for the concatenated descriptor. To be deprecated soon, use billing_descriptor instead.

cancellation_reasonstring nullable

If the payment intent was cancelled, this field provides a textual reason for the cancellation (e.g., "requested_by_customer", "abandoned").

error_codestring nullable

The connector-specific error code from the last failed payment attempt associated with this payment intent.

error_messagestring nullable

A human-readable error message from the last failed payment attempt associated with this payment intent.

unified_codestring nullable

error code unified across the connectors is received here if there was an error while calling connector

unified_messagestring nullable

error message unified across the connectors is received here if there was an error while calling connector

payment_experience'redirect_to_url' | 'invoke_sdk_client' | 'display_qr_code' | 'one_click' | 'link_wallet' | 'invoke_payment_app' | 'display_wait_screen' | 'collect_otp'

To indicate the type of payment experience that the customer would go through

payment_method_type'ach' | 'affirm' | 'afterpay_clearpay' | 'alfamart' | 'ali_pay' | 'ali_pay_hk' | 'alma' | 'amazon_pay' | 'paysera' | 'apple_pay' | 'atome' | 'bacs' | 'bancontact_card' | 'becs' | 'benefit' | 'bizum' | 'blik' | 'bluecode' | 'boleto' | 'bca_bank_transfer' | 'bni_va' | 'breadpay' | 'bri_va' | 'bhn_card_network' | 'card_redirect' | 'cimb_va' | 'classic' | 'credit' | 'crypto_currency' | 'cashapp' | 'dana' | 'danamon_va' | 'debit' | 'duit_now' | 'efecty' | 'eft' | 'eft_debit_order' | 'eps' | 'flexiti' | 'fps' | 'evoucher' | 'giropay' | 'givex' | 'google_pay' | 'go_pay' | 'gcash' | 'ideal' | 'interac' | 'indomaret' | 'klarna' | 'kakao_pay' | 'local_bank_redirect' | 'mandiri_va' | 'knet' | 'mb_way' | 'mobile_pay' | 'momo' | 'momo_atm' | 'multibanco' | 'online_banking_thailand' | 'online_banking_czech_republic' | 'online_banking_finland' | 'online_banking_fpx' | 'online_banking_poland' | 'online_banking_slovakia' | 'oxxo' | 'pago_efectivo' | 'permata_bank_transfer' | 'open_banking_uk' | 'pay_bright' | 'payjustnow' | 'paypal' | 'paze' | 'pix' | 'pix_key' | 'pix_emv' | 'pix_qr' | 'pix_automatico_qr' | 'pix_automatico_push' | 'pay_safe_card' | 'przelewy24' | 'prompt_pay' | 'pse' | 'qris' | 'red_compra' | 'red_pagos' | 'samsung_pay' | 'sepa' | 'sepa_bank_transfer' | 'sepa_guarenteed_debit' | 'skrill' | 'sofort' | 'swish' | 'touch_n_go' | 'trustly' | 'twint' | 'upi_collect' | 'upi_intent' | 'upi_qr' | 'vipps' | 'viet_qr' | 'venmo' | 'walley' | 'we_chat_pay' | 'seven_eleven' | 'lawson' | 'mini_stop' | 'family_mart' | 'seicomart' | 'pay_easy' | 'local_bank_transfer' | 'mifinity' | 'open_banking_pis' | 'direct_carrier_billing' | 'instant_bank_transfer' | 'instant_bank_transfer_finland' | 'instant_bank_transfer_poland' | 'revolut_pay' | 'indonesian_bank_transfer' | 'open_banking' | 'network_token'

Indicates the sub type of payment method. Eg: 'google_pay' & 'apple_pay' for wallets.

connector_labelstring nullable

A label identifying the specific merchant connector account (MCA) used for this payment. This often combines the connector name, business country, and a custom label (e.g., "stripe_US_primary").

business_country'AF' | 'AX' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BQ' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'KH' | 'CM' | 'CA' | 'CV' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CD' | 'CK' | 'CR' | 'CI' | 'HR' | 'CU' | 'CW' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KP' | 'KR' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MK' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'BL' | 'SH' | 'KN' | 'LC' | 'MF' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SX' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SZ' | 'SE' | 'CH' | 'SY' | 'TW' | 'TJ' | 'TZ' | 'TH' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'GB' | 'UM' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'ZM' | 'ZW' | 'US'
business_labelstring nullable

The label identifying the specific business unit or profile under which this payment was processed by the merchant. To be deprecated soon. Pass the profile_id instead

business_sub_labelstring nullable

An optional sub-label for further categorization of the business unit or profile used for this payment. To be deprecated soon. Pass the profile_id instead

allowed_payment_method_typesPaymentMethodType[] nullable

Allowed Payment Method Types for a given PaymentIntent

manual_retry_allowedboolean nullable

If true the payment can be retried with same or different payment method which means the confirm call can be made again.

connector_transaction_idstring nullable

A unique identifier for a payment provided by the connector

metadataobject nullable

You can specify up to 50 keys, with key names up to 40 characters long and values up to 500 characters long. Metadata is useful for storing additional, structured information on an object.

reference_idstring nullable

reference(Identifier) to the payment at connector side

profile_idstring nullable

The business profile that is associated with this payment

attempt_countinteger required

Total number of attempts associated with this payment

merchant_decisionstring nullable

Denotes the action(approve or reject) taken by merchant in case of manual review. Manual review can occur when the transaction is marked as risky by the frm_processor, payment processor or when there is underpayment/over payment incase of crypto payment

merchant_connector_idstring nullable

Identifier of the connector ( merchant connector account ) which was chosen to make the payment

incremental_authorization_allowedboolean nullable

If true, incremental authorization can be performed on this payment, in case the funds authorized initially fall short.

authorization_countinteger nullable

Total number of authorizations happened in an incremental_authorization payment

external_3ds_authentication_attemptedboolean nullable

Flag indicating if external 3ds authentication is made or not

expires_onstring date-time nullable

Date Time for expiry of the payment

fingerprintstring nullable

Payment Fingerprint, to identify a particular card. It is a 20 character long alphanumeric code.

payment_method_idstring nullable

A unique identifier for the payment method used in this payment. If the payment method was saved or tokenized, this ID can be used to reference it for future transactions or recurring payments. Refer payment_method_tokenization_details for detailed view of payment method tokenization

network_transaction_idstring nullable

The network transaction ID is a unique identifier for the transaction as recognized by the payment network (e.g., Visa, Mastercard), this ID can be used to reference it for future transactions or recurring payments. Refer payment_method_tokenization_details for detailed view of payment method tokenization

network_transaction_link_idstring nullable

The Mastercard Transaction Link Identifier (TLID) for this payment. Returned on CITs that set up stored credentials. External-vault merchants should persist this and echo it back on subsequent MIT requests. Mandatory for Mastercard recurring/MIT (no static fallback).

payment_method_status'active' | 'inactive' | 'processing' | 'awaiting_data' | 'new' | 'redacted'

Payment Method Status

updatedstring date-time nullable

Date time at which payment was updated

frm_metadataobject nullable

You can specify up to 50 keys, with key names up to 40 characters long and values up to 500 characters long. FRM Metadata is useful for storing additional, structured information on an object related to FRM.

extended_authorization_appliedboolean nullable

flag that indicates if extended authorization is applied on this payment or not

extended_authorization_last_applied_atstring date-time nullable

date and time at which extended authorization was last applied on this payment

request_extended_authorizationboolean nullable

Optional boolean value to extent authorization period of this payment

capture method must be manual or manual_multiple

capture_beforestring date-time nullable

date and time after which this payment cannot be captured

merchant_order_reference_idstring nullable

Merchant's identifier for the payment/invoice. This will be sent to the connector if the connector provides support to accept multiple reference ids. In case the connector supports only one reference id, Hyperswitch's Payment ID will be sent as reference.

order_tax_amountinteger

This Unit struct represents MinorUnit in which core amount works

connector_mandate_idstring nullable

Connector Identifier for the payment method

card_discovery'manual' | 'saved_card' | 'click_to_pay'

Indicates the method by which a card is discovered during a payment

force_3ds_challengeboolean nullable

Indicates if 3ds challenge is forced

force_3ds_challenge_triggerboolean nullable

Indicates if 3ds challenge is triggered

issuer_error_codestring nullable

Error code received from the issuer in case of failed payments

issuer_error_messagestring nullable

Error message received from the issuer in case of failed payments

is_iframe_redirection_enabledboolean nullable

Indicates if the redirection has to open in the iframe

whole_connector_responsestring nullable

Contains whole connector response

enable_partial_authorizationboolean nullable

Allow partial authorization for this payment

enable_overcaptureboolean nullable

Bool indicating if overcapture must be requested for this payment

is_overcapture_enabledboolean nullable

Boolean indicating whether overcapture is effectively enabled for this payment

is_stored_credentialboolean nullable

Boolean flag indicating whether this payment method is stored and has been previously used for payments

mit_category'installment' | 'unscheduled' | 'recurring' | 'resubmission'

Specifies the category of a Merchant Initiated Transaction (MIT). In the case of MIT, mit_category tells what kind of MIT is being processed. In the case of CIT, it tells the future intended MIT type.

tokenization'skip_psp' | 'tokenize_at_psp'

The type of tokenization to use for the payment method

sender_payment_instrument_idstring nullable

A connector-specific identifier representing the stored payment instrument

Example response

{
  "payment_id": "pay_mbabizu24mvu3mela5njyhpit4",
  "merchant_id": "merchant_1668273825",
  "amount": 6540,
  "net_amount": 6540,
  "shipping_cost": 6540,
  "amount_capturable": 6540,
  "amount_received": 6540,
  "processor_merchant_id": "merchant_1689512302",
  "sdk_authorization": "cHJvZmlsZV9pZD1wcm9mXzEyMyxwdWJsaXNoYWJsZV9rZXk9cGtfbGl2ZV8xMjM=",
  "connector": "stripe",
  "client_secret": "pay_U42c409qyHwOkWo3vK60_secret_el9ksDkiB8hi6j9N78yo",
  "created": "2022-09-10T10:11:12Z",
  "modified_at": "2022-09-10T10:11:12Z",
  "connector_customer_id": "cus_Rnm2pDKGyQi506",
  "customer_id": "cus_y3oqhf46pyzuxjbcn2giaqnb44",
  "customer": {
    "id": "cus_y3oqhf46pyzuxjbcn2giaqnb44",
    "name": "John Doe",
    "email": "johntest@test.com",
    "phone": "9123456789",
    "phone_country_code": "+1",
    "customer_document_details": {
      "document_number": "12345678911"
    }
  },
  "description": "It's my first payment request",
  "refunds": [
    {
      "amount": 6540,
      "connector": "stripe",
      "split_refunds": {
        "adyen_split_refund": {
          "split_items": [
            {
              "amount": 6540
            }
          ]
        }
      }
    }
  ],
  "attempts": [
    {
      "amount": 6540,
      "order_tax_amount": 6540,
      "created_at": "2022-09-10T10:11:12Z",
      "modified_at": "2022-09-10T10:11:12Z",
      "reference_id": "993672945374576J"
    }
  ],
  "captures": [
    {
      "amount": 6540
    }
  ],
  "mandate_id": "mandate_iwer89rnjef349dni3",
  "mandate_data": {
    "customer_acceptance": {
      "accepted_at": "2022-09-10T10:11:12Z",
      "online": {
        "ip_address": "123.32.25.123"
      }
    },
    "mandate_type": {
      "single_use": {
        "amount": 6540,
        "start_date": "2022-09-10T00:00:00Z",
        "end_date": "2023-09-10T23:59:59Z"
      }
    }
  },
  "off_session": true,
  "capture_on": "2022-09-10T10:11:12Z",
  "payment_method_data": {
    "billing": {
      "address": {
        "city": "New York",
        "line1": "123, King Street",
        "line2": "Powelson Avenue",
        "line3": "Bridgewater",
        "zip": "08807",
        "state": "New York",
        "first_name": "John",
        "last_name": "Doe",
        "origin_zip": "08807"
      },
      "phone": {
        "number": "9123456789",
        "country_code": "+1"
      }
    }
  },
  "payment_token": "187282ab-40ef-47a9-9206-5099ba31e432",
  "shipping": {
    "address": {
      "city": "New York",
      "line1": "123, King Street",
      "line2": "Powelson Avenue",
      "line3": "Bridgewater",
      "zip": "08807",
      "state": "New York",
      "first_name": "John",
      "last_name": "Doe",
      "origin_zip": "08807"
    },
    "phone": {
      "number": "9123456789",
      "country_code": "+1"
    }
  },
  "billing": {
    "address": {
      "city": "New York",
      "line1": "123, King Street",
      "line2": "Powelson Avenue",
      "line3": "Bridgewater",
      "zip": "08807",
      "state": "New York",
      "first_name": "John",
      "last_name": "Doe",
      "origin_zip": "08807"
    },
    "phone": {
      "number": "9123456789",
      "country_code": "+1"
    }
  },
  "order_details": [
    {
      "product_name": "shirt",
      "quantity": 1
    }
  ],
  "email": "johntest@test.com",
  "name": "John Test",
  "phone": "9123456789",
  "return_url": "https://hyperswitch.io",
  "statement_descriptor_name": "Hyperswitch Router",
  "statement_descriptor_suffix": "Payment for shoes purchase",
  "next_action": {
    "redirect_to_url": "https://example.com/redirect"
  },
  "error_code": "E0001",
  "error_message": "Failed while verifying the card",
  "connector_label": "stripe_US_food",
  "connector_transaction_id": "993672945374576J",
  "connector_metadata": {
    "santander": {
      "boleto": {
        "discount_rules": {
          "tiers": [
            {
              "amount": "5.50",
              "end_date": "2027-12-31"
            }
          ]
        },
        "penalties": {
          "fixed_penalty": {
            "value": "2.00",
            "grace_period_days": 1
          },
          "interest": {
            "interest_percentage": "5.00",
            "iof_percentage": "32.45325"
          }
        },
        "collection_actions": {
          "legal_protest": {
            "days_after_due_date": 30
          },
          "auto_write_off_days": 60
        },
        "payment_constraints": {
          "details": {
            "min_value": "38.02",
            "max_value": "38.02"
          }
        },
        "beneficiary": {
          "name": "João da Silva",
          "document_number": "9615865832"
        }
      }
    }
  },
  "feature_metadata": {
    "apple_pay_recurring_details": {
      "regular_billing": {
        "recurring_payment_start_date": "2023-09-10T23:59:59Z",
        "recurring_payment_end_date": "2023-09-10T23:59:59Z"
      },
      "management_url": "https://hyperswitch.io"
    },
    "pix_additional_details": {
      "scheduled": {
        "date": "2026-07-08",
        "validity_after_expiration": 10
      }
    },
    "boleto_additional_details": {
      "due_date": "2026-12-31",
      "covenant_code": "3568253",
      "discount_rules": {
        "tiers": [
          {
            "amount": "5.50",
            "end_date": "2027-12-31"
          }
        ]
      },
      "penalties": {
        "fixed_penalty": {
          "value": "2.00",
          "grace_period_days": 1
        },
        "interest": {
          "interest_percentage": "5.00",
          "iof_percentage": "32.45325"
        }
      },
      "collection_actions": {
        "legal_protest": {
          "days_after_due_date": 30
        },
        "auto_write_off_days": 60
      },
      "payment_constraints": {
        "details": {
          "min_value": "38.02",
          "max_value": "38.02"
        }
      },
      "beneficiary": {
        "name": "João da Silva",
        "document_number": "9615865832"
      }
    },
    "pix_automatico_additional_details": {
      "time": 3600,
      "retry_policy": true,
      "mandate_details": {
        "fixed_recurring_amount": 6540,
        "min_recurring_amount": 6540,
        "start_date": "2026-12-31",
        "end_date": "2026-12-31"
      }
    },
    "finix_additional_details": {
      "fraud_session_id": "1234567890abcdef"
    }
  },
  "reference_id": "993672945374576J",
  "surcharge_details": {
    "surcharge_amount": 6540
  },
  "incremental_authorizations": [
    {
      "amount": 6540
    }
  ],
  "expires_on": "2022-09-10T10:11:12Z",
  "browser_info": {
    "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"
  },
  "updated": "2022-09-10T10:11:12Z",
  "split_payments": {
    "stripe_split_payment": {
      "application_fees": 6540,
      "on_behalf_of": "acct_1234567890"
    }
  },
  "extended_authorization_last_applied_at": "2022-09-10T10:11:12Z",
  "merchant_order_reference_id": "Custom_Order_id_123",
  "is_stored_credential": true,
  "billing_descriptor": {
    "name": "The Online Retailer",
    "city": "San Francisco",
    "phone": "9123456789"
  },
  "partner_merchant_identifier_details": {
    "partner_details": {
      "version": "1.0.0"
    }
  }
}