×
Menu

Stripe Payment Gateway (Payment)

 
This page details the inputs, secure inputs and outputs available for the Stripe Payment Gateway, how to complete each field, and an external link to the Stripe integration documentation.
 
PCI Pal must check any payment gateway integrations prior to going live.  The documentation disclaimer (which applies throughout this guide) should be read before commencing any configuration of payment gateways.
 

Inputs

Input Fields
Requied
Character Limits/ Required Input
Description
amount
Yes
8 num
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).
currency
Yes
3 char
Three-letter ISO currency code, in lowercase. Must be a supported currency.
type
Yes
4 char
The type of the PaymentMethod (always card)
moto
Yes
boolean
True if this is a MOTO transaction (always true)
confirm
Yes
boolean
Set to true to attempt to confirm this PaymentIntent immediately. This parameter defaults to false.
capture_method
Yes
n/a
One of automatic (default) or manual.
 
When the capture method is automatic, Stripe automatically captures funds when the customer authorizes the payment.
 
Change capture_method to manual if you wish to separate authorization and capture for payment methods that support this.
payment_method_data_billing_details_name
No
N/A
Cardholder's full name.
 
payment_method_data_billing_details_email
No
N/A
Email address.
 
payment_method_data_billing_details_phone
No
N/A
Billing phone number (including extension).
payment_method_data_billing_details_address_line1
No
N/A
Address line 1 (Street address/PO Box/Company name).
payment_method_data_billing_details_address_line2
No
N/A
Address line 2 (Apartment/Suite/Unit/Building).
payment_method_data_billing_details_address_city
No
N/A
City/District/Suburb/Town/Village.
payment_method_data_billing_details_address_state
No
N/A
State/County/Province/Region.
payment_method_data_billing_details_address_country
No
2 char
Two-letter ISO code representing the country of the card.
payment_method_data_billing_details_address_postal_code
No
N/A
ZIP or postal code.
 
Secure Inputs
Input Fields
Required
Character Limits/
Required Input
Description
number
Yes
19 num
Secure input of the card number
fullexpiry
Yes
2 num
Secure input of the card expiry - in the format MM
cvc
Yes
3 or 4 num
Secure input of the card CVV, either three or four digits long depending on the card
 
Outputs
 
Output Fields
Description
id
ID of the payment intent
object
The type of object (payment intent)
resp_amount
Amount for the payment
amount_capturable
Amount that is able to be captured (auth only)
amount_received
Amount received
application
ID of the Connect Application that created the order.
application_fee_amount
A fee in cents that will be applied to the charge and transferred to the application owner’s Stripe account.
canceled_at
f the subscription has been canceled, the date of that cancellation. I
cancellation_reason
Reason for canceling this SetupIntent. Possible values are abandoned, requested_by_customer, or duplicate
resp_capture_method
The method of capture, automatic for full capture and manual for authorization only. Corresponds to the capture method sent in the request
charges_object
the type of object
charges_data_id
ID for the charge
charges_data_object
the type of object
charges_data_amount
Amount for the charge
charges_data_amount_refunded
Amount refunded, if applicable
charges_data_application
ID of the Connect Application that created the order.
charges_data_application_fee
 
charges_data_application_fee_amount
A fee in cents that will be applied to the charge and transferred to the application owner’s Stripe account.
charges_data_balance_transaction
ID of the balance transaction that describes the impact of this top-up on your account balance. May not be specified depending on status of top-up.
charges_data_billing_details_address_city
City for billing detials
charges_data_billing_details_address_country
Country for the billing detials
charges_data_billing_details_address_line1
Address line 1 for the billing detials
charges_data_billing_details_address_line2
Address line 2 for the billing detials
charges_data_billing_details_address_postal_code
Postal code for the billing details
charges_data_billing_details_address_state
State for the billing details
charges_data_billing_details_email
Email for the billing detials
charges_data_billing_details_name
Name of the card holder for the billing detials
charges_data_billing_details_phone
Phone number for the billing detials
charges_data_captured
If the charge was created without capturing, this Boolean represents whether it is still uncaptured or has since been captured.
charges_data_created
Timestamp for when the payment was created (linux epoch time)
charges_data_currency
Currency for the payment as a three character currency code
charges_data_customer
The customer that this card belongs to.
charges_data_description
Description for the payment that was sent as part of the request
charges_data_destination
The ID of an external account (if applicable)
charges_data_dispute
Details about the dispute if the charge has been disputed
charges_data_failure_code
Error code explaining reason for charge failure if available
charges_data_failure_message
Message to user further explaining reason for charge failure if available.
charges_data_fraud_details
Information on fraud assessments for the charge.
charges_data_invoice
ID of the invoice this charge is for if one exists.
charges_data_livemode
Has the value true if the object exists in live mode or the value false if the object exists in test mode.
charges_data_metadata
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.
charges_data_on_behalf_of
The account (if any) the charge was made on behalf of without triggering an automatic transfer
charges_data_order
ID of the order this charge is for if one exists
charges_data_outcome_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.
charges_data_outcome_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
charges_data_outcome_risk_level
Stripe’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.
charges_data_outcome_risk_score
Stripe’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.
charges_data_outcome_seller_message
A human-readable description of the outcome type and reason, designed for you (the recipient of the payment), not your customer.
charges_data_outcome_type
Possible values are authorized, manual_review, issuer_declined, blocked, and invalid
charges_data_paid
true if the charge succeeded, or was successfully authorized for later capture.
charges_data_payment_intent
ID of the PaymentIntent associated with this charge, if one exists.
charges_data_payment_method
ID of the payment method used in this charge.
charges_data_payment_method_details_card_brand
Card brand. Can be amex, diners, discover, jcb, mastercard, unionpay, visa, or unknown.
charges_data_payment_method_details_card_checks_address_line1_check
If a address line1 was provided, results of the check, one of ‘pass’, ‘failed’, ‘unavailable’ or ‘unchecked’.
charges_data_payment_method_details_card_checks_address_postal_code_check
If a address postal code was provided, results of the check, one of ‘pass’, ‘failed’, ‘unavailable’ or ‘unchecked’.
charges_data_payment_method_details_card_checks_cvc_check
If a CVC was provided, results of the check, one of ‘pass’, ‘failed’, ‘unavailable’ or ‘unchecked’.
charges_data_payment_method_details_card_country
Two-letter ISO code representing the country of the card.
charges_data_payment_method_details_card_exp_month
Two-digit number representing the card’s expiration month.
charges_data_payment_method_details_card_exp_year
Four-digit number representing the card’s expiration year.
charges_data_payment_method_details_card_fingerprint
Uniquely identifies this particular card number.
charges_data_payment_method_details_card_funding
Card funding type. Can be credit, debit, prepaid, or unknown.
charges_data_payment_method_details_card_installments
Installment details for this payment (Mexico only).
charges_data_payment_method_details_card_last4
The last four digits of the card.
charges_data_payment_method_details_card_moto
True if this payment was marked as MOTO and out of scope for SCA.
charges_data_payment_method_details_card_network
Identifies which network this charge was processed on. Can be amex, diners, discover, interac, jcb, mastercard, unionpay, visa, or unknown.
charges_data_payment_method_details_card_three_d_secure
Populated if this transaction used 3D Secure authentication.
charges_data_payment_method_details_card_wallet
If this Card is part of a card wallet, this contains the details of the card wallet.
charges_data_payment_method_details_type
The type of transaction-specific details of the payment method used in the payment, one of ach_credit_transfer, ach_debit, alipay, bancontact, card, card_present, eps, giropay, ideal, klarna, multibanco, p24, sepa_debit, sofort, stripe_account, or wechat. An additional hash is included on payment_method_details with a name matching this value. It contains information specific to the payment method.
charges_data_receipt_email
This is the email address that the receipt for this charge was sent to.
charges_data_receipt_number
This is the transaction number that appears on email receipts sent for this charge. This attribute will be null until a receipt has been sent.
charges_data_receipt_url
This is the URL to view the receipt for this charge. The receipt is kept up-to-date to the latest state of the charge, including any refunds. If the charge is for an Invoice, the receipt will be stylized as an Invoice receipt.
charges_data_refunded
Whether the charge has been fully refunded. If the charge is only partially refunded, this attribute will still be false.
charges_data_refunds_object
String representing the object’s type. Objects of the same type share the same value. Always has the value list.
charges_data_refunds_data
Refund array, present for refunds only
charges_data_refunds_has_more
True if this list has another page of items after this one that can be fetched.
charges_data_refunds_total_count
 
charges_data_refunds_url
The URL where this list can be accessed.
charges_data_review
ID of the review associated with this charge if one exists.
charges_data_shipping_address_city
City/District/Suburb/Town/Village.
charges_data_shipping_address_country
2-letter country code.
charges_data_shipping_address_line1
Address line 1 (Street address/PO Box/Company name).
charges_data_shipping_address_line2
Address line 2 (Apartment/Suite/Unit/Building).
charges_data_shipping_address_postal_code
ZIP or postal code.
charges_data_shipping_address_state
State/County/Province/Region.
charges_data_shipping_carrier
The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.
charges_data_shipping_name
Recipient name.
charges_data_shipping_phone
Recipient phone (including extension).
charges_data_shipping_tracking_number
The tracking number for a physical product, obtained from the delivery service
charges_data_source
The transfer ID which created this charge. Only present if the charge came from another Stripe account.
charges_data_source_transfer
The transfer ID which created this charge. Only present if the charge came from another Stripe account.
charges_data_statement_descriptor
Complete description of a charge on the card holder's statements.
charges_data_statement_descriptor_suffix
Provides information about the charge 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 22 characters for the concatenated descriptor.
charges_data_status
The status of the payment is either succeeded, pending, or failed.
charges_data_transfer_data
An optional dictionary including the account to automatically transfer to as part of a destination charge.
charges_data_transfer_group
A string that identifies this transaction as part of a group.
charges_has_more
True if this list has another page of items after this one that can be fetched.
charges_total_count
 
charges_url
The URL where this list can be accessed.
client_secret
The client secret of this PaymentIntent. Used for client-side retrieval using a publishable key.
confirmation_method
Either automatic or manual. Manual denotes a authorization only transactions and authomatic enotes a full capture
created
Time at which the object was created. Measured in seconds since the Unix epoch.
resp_currency
Three-letter ISO currency code, in lowercase.
customer
ID of the Customer this PaymentIntent belongs to, if one exists.
description
An arbitrary string attached to the object. Often useful for displaying to users. Sent in the request.
invoice
ID of the invoice that created this PaymentIntent, if it exists.
livemode
Has the value true if the object exists in live mode or the value false if the object exists in test mode.
metadata
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.
next_action
If present, this property tells you what actions you need to take in order for your customer to fulfill a payment using the provided source.
on_behalf_of
The account (if any) for which the funds of the PaymentIntent are intended.
payment_method
ID of the payment method used in this PaymentIntent.
payment_method_options_card_installments
Installment details for this payment (Mexico only).
payment_method_options_card_require_three_d_secure
Denotes if three d secure was requested to be used as part of this transaction
payment_method_types
The list of payment method types (e.g. card) that this PaymentIntent is allowed to use.
receipt_email
Email address that the receipt for the resulting payment will be sent to.
review
ID of the review associated with this PaymentIntent, if any.
setup_future_usage
Indicates that you intend to make future payments with this PaymentIntent’s payment method.
shipping_address_city
City/District/Suburb/Town/Village.
shipping_address_country
2-letter country code.
shipping_address_line1
Address line 1 (Street address/PO Box/Company name).
shipping_address_line2
Address line 2 (Apartment/Suite/Unit/Building).
shipping_address_postal_code
ZIP or postal code.
shipping_address_state
State/County/Province/Region.
shipping_carrier
The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.
shipping_name
Recipient name.
shipping_phone
Recipient phone (including extension).
shipping_tracking_number
The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas.
source
The source object for errors returned on a request involving a source.
statement_descriptor
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.
statement_descriptor_suffix
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 22 characters for the concatenated descriptor.
status
Status of this PaymentIntent, one of requires_payment_method, requires_confirmation, requires_action, processing, requires_capture, canceled, or succeeded.
transfer_data
The data with which to automatically create a Transfer when the payment is finalized. See the PaymentIntents use case for connected accounts for details.
transfer_group
A string that identifies the resulting payment as part of a group. See the PaymentIntents use case for connected accounts for details.
error_charge
For card errors, the ID of the failed charge.
error_code
For some errors that could be handled programmatically, a short string indicating the error code reported.
error_decline_code
For card errors resulting from a card issuer decline, a short string indicating the card issuer’s reason for the decline if they provide one.
error_doc_url
error_message
A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
error_type
The type of error returned. One of api_connection_error, api_error, authentication_error, card_error, idempotency_error, invalid_request_error, or rate_limit_error
error_payment_intent_last_payment_error_charge
For card errors, the ID of the failed charge.
error_payment_intent_last_payment_error_code
For some errors that could be handled programmatically, a short string indicating the error code reported.
error_payment_intent_last_payment_error_decline_code
For card errors resulting from a card issuer decline, a short string indicating the card issuer’s reason for the decline if they provide one.
error_payment_intent_last_payment_error_doc_url
A URL to more information about the error code reported.
error_payment_intent_last_payment_error_message
A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
error_payment_intent_last_payment_error_payment_method_id
Unique identifier for the object.
error_payment_intent_last_payment_error_payment_method_object
String representing the object’s type. Objects of the same type share the same value.
error_payment_intent_last_payment_error_payment_method_billing_details_address_city
City/District/Suburb/Town/Village.
error_payment_intent_last_payment_error_payment_method_billing_details_address_country
2-letter country code.
error_payment_intent_last_payment_error_payment_method_billing_details_address_line1
Address line 1 (Street address/PO Box/Company name).
error_payment_intent_last_payment_error_payment_method_billing_details_address_line2
Address line 2 (Apartment/Suite/Unit/Building).
error_payment_intent_last_payment_error_payment_method_billing_details_address_postal_code
ZIP or postal code.
error_payment_intent_last_payment_error_payment_method_billing_details_address_state
State/County/Province/Region.
error_payment_intent_last_payment_error_payment_method_billing_details_email
Email address.
error_payment_intent_last_payment_error_payment_method_billing_details_name
Full name.
error_payment_intent_last_payment_error_payment_method_billing_details_phone
Billing phone number (including extension).
error_payment_intent_last_payment_error_payment_method_card_brand
Card brand. Can be amex, diners, discover, jcb, mastercard, unionpay, visa, or unknown.
error_payment_intent_last_payment_error_payment_method_card_checks_address_line1_check
If a address line1 was provided, results of the check, one of ‘pass’, ‘failed’, ‘unavailable’ or ‘unchecked’.
error_payment_intent_last_payment_error_payment_method_card_checks_address_postal_code_check
If a address postal code was provided, results of the check, one of ‘pass’, ‘failed’, ‘unavailable’ or ‘unchecked’.
error_payment_intent_last_payment_error_payment_method_card_checks_cvc_check
If a CVC was provided, results of the check, one of ‘pass’, ‘failed’, ‘unavailable’ or ‘unchecked’.
error_payment_intent_last_payment_error_payment_method_card_country
Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you’ve collected.
error_payment_intent_last_payment_error_payment_method_card_exp_month
Two-digit number representing the card’s expiration month.
error_payment_intent_last_payment_error_payment_method_card_exp_year
Four-digit number representing the card’s expiration year.
error_payment_intent_last_payment_error_payment_method_card_fingerprint
Uniquely identifies this particular card number. You can use this attribute to check whether two customers who’ve signed up with you are using the same card number, for example.
error_payment_intent_last_payment_error_payment_method_card_funding
Card funding type. Can be credit, debit, prepaid, or unknown.
error_payment_intent_last_payment_error_payment_method_card_generated_from
Details of the original PaymentMethod that created this object.
error_payment_intent_last_payment_error_payment_method_card_last4
The last four digits of the card number
error_payment_intent_last_payment_error_payment_method_card_three_d_secure_usage_supported
Whether 3D Secure is supported on this card.
error_payment_intent_last_payment_error_payment_method_card_wallet
If this Card is part of a card wallet, this contains the details of the card wallet.
error_payment_intent_last_payment_error_payment_method_created
Time at which the object was created. Measured in seconds since the Unix epoch.
error_payment_intent_last_payment_error_payment_method_customer
The ID of the Customer to which this PaymentMethod is saved. This will not be set when the PaymentMethod has not been saved to a Customer.
error_payment_intent_last_payment_error_payment_method_livemode
Has the value true if the object exists in live mode or the value false if the object exists in test mode.
error_payment_intent_last_payment_error_payment_method_metadata
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.
error_payment_intent_last_payment_error_payment_method_type
The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
error_payment_intent_last_payment_error_type
The type of error returned. One of api_connection_error, api_error, authentication_error, card_error, idempotency_error, invalid_request_error, or rate_limit_error
 
Further information can be found by viewing the integration documentation:
The help manual was created with Dr.Explain