A payment_intent
is created to help you navigate the 3DS flow of collecting payment from your customer. It is necessary only for implementing 3DS flow using Chargebee.js.
Auto-expiry
All payment_intent
s with status
as inited
, in_progress
or authorized
become expired
after an hour automatically.
Sample payment intent [ JSON ]
{
"amount": 5000,
"created_at": 1517501515,
"currency_code": "USD",
"expires_at": 1517503315,
"gateway": "chargebee",
"gateway_account_id": "gw___test__KyVnGlSBWTQeudG",
"id": "__test__KyVnHhSBWTQz2Cu__test__0DZayCQMcAwDkEIPpUrGwkiyL25s7W1X",
"modified_at": 1517501515,
"object": "payment_intent",
"payment_method_type": "card",
"status": "inited"
}
string, max chars=150
Identifier for PaymentIntent.
enumerated stringCurrent status of PaymentIntent.
Possible values are
initedIntent is initialized.in_progressStatus will be in_progress if the Active Payment Attempt state is in requires_identification, requires_challenge or requires_redirection.authorized3DS verification successfully completed.consumedIf any Chargebee operation such as create subscription etc. is completed using the intent, it will be in consumed state. Intent cannot be used if it's already in consumed state.expiredIntent has expired, since it was not consumed before the predefined time-out.
optional, string, max chars=3
The currency code (ISO 4217 format) of the amount used in transaction.
in cents, min=0
Amount(in cents) to be authorized for 3DS flow.
string, max chars=50
The gateway account used for performing the 3DS flow.
timestamp(UTC) in seconds
Timestamp indicating when the PaymentIntent will expire if left unconsumed.
optional, string, max chars=200
Reference for payment method at gateway. Only applicable when the PaymentIntent is created for cards stored in the gateway.
optional, enumerated string, default=cardThe payment method of this intent
Possible values are
cardcard.idealideal.sofortsofort.bancontactbancontact.google_paygoogle_pay.dotpaydotpay.giropaygiropay.apple_payapple_pay.upiupi.netbanking_emandatesnetbanking_emandates.paypal_express_checkoutpaypal_express_checkout.direct_debitdirect_debit.boletoboleto.
Show all values[+]
optional, string, max chars=250
The URL the customer will be directed to once 3DS verification is successful. Applicable only when payment_method_type
is ideal
, sofort
, dotpay
or giropay
.
optional, string, max chars=250
The URL the customer will be directed to when 3DS verification fails. Applicable only when payment_method_type
is ideal
, sofort
, dotpay
or giropay
.
timestamp(UTC) in seconds
Timestamp indicating when the PaymentIntent was created.
timestamp(UTC) in seconds
Timestamp indicating when the PaymentIntent was last modified.
optional, long
Version number of this resource. The resource_version
is updated with a new timestamp in milliseconds for every change made to the resource. This attribute will be present only if the resource has been updated after 2016-09-28.
optional, timestamp(UTC) in seconds
Timestamp indicating when this payment intent was last updated.
string, max chars=50The unique ID of the customer for which this payment_intent should be created. If not provided, a new customer is created and its ID is autogenerated.
optional, string, max chars=null
Gateway associated with the PaymentIntent.
optional, string, max chars=50The unique ID of the
business entity of this
payment_intent
optional, payment_attempt
Active payment attempt for the PaymentIntent.
Active payment attempt attributes
optional, string, max chars=70
Identifier for PaymentIntent's active payment attempt.
enumerated stringCurrent status of active payment attempt
Possible values are
initedPayment attempt is initialized.requires_identificationCustomer's device fingerprint is used to verify their identity. It needs to be sent to the Issuing Bank for verification.requires_challengeThe transaction has to go through 3DS Challenge flow and the customer needs to authenticate via 3DS 2.0requires_redirectionThe transaction has to go through 3DS Redirection flow and the customer needs to authenticate via 3DS 1.0authorized3DS verification successfully completed.refused3DS verification attempt failed.pending_authorizationWaiting for the authorization.
optional, enumerated string, default=cardThe payment method of this attempt
Possible values are
cardcardidealidealsofortsofortbancontactbancontactgoogle_paygoogle_paydotpaydotpaygiropaygiropayapple_payapple_payupiupinetbanking_emandatesnetbanking_emandatespaypal_express_checkoutpaypal_express_checkoutdirect_debitdirect_debitboletoboleto
Show all values[+]
optional, string, max chars=50
Reference of PaymentIntent at gateway
optional, string, max chars=100
Error code received from the payment gateway on failure.
optional, string, max chars=65k
Error message received from the payment gateway on failure.
timestamp(UTC) in seconds
Timestamp indicating when the active payment attempt was created.
timestamp(UTC) in seconds
Timestamp indicating when the active payment attempt was last modified.
Creates a PaymentIntent object. This is to be used with Chargebee.js API to complete the 3DS flow for new or stored cards.
While creating, specify the appropriate gateway account and amount. Exact amount can be estimated using our Estimate API.
Customer resource lookup and creation
When customer[id]
is provided for this operation, it is looked up by Chargebee, and if found, the payment_intent is created for it. If not found, a new customer resource is created with the ID provided, and the payment_intent is created.
Multiple business entities
If multiple business entities are created for the site, the customer resource lookup and creation happen within the context of the business entity specified in this API call. If no business entity is specified, the customer resource lookup is performed within the site context, and if not found, the resource is created for the default business entity of the site.
Sample Request
curl https://{site}.chargebee.com/api/v2/payment_intents \
-u {site_api_key}:\
-d amount=5000 \
-d currency_code="USD"
copy
curl https://{site}.chargebee.com/api/v2/payment_intents \
-u {site_api_key}:\
-d amount=5000 \
-d currency_code="USD"
Sample Response [ JSON ]
Show more...
{"payment_intent": {
"amount": 5000,
"created_at": 1517501515,
"currency_code": "USD",
"expires_at": 1517503315,
"gateway": "chargebee",
"gateway_account_id": "gw___test__KyVnGlSBWTQeudG",
"id": "__test__KyVnHhSBWTQz2Cu__test__0DZayCQMcAwDkEIPpUrGwkiyL25s7W1X",
"modified_at": 1517501515,
"object": "payment_intent",
"payment_method_type": "card",
"status": "inited"
}}
URL Format POST
https://{site}.chargebee.com/api/v2/payment_intents
optional, string, max chars=50Sets the context for this operation to the business entity specified. Applicable only when multiple business entities have been created for the site. When this parameter is provided, the operation is able to read/write data associated only to the business entity specified. When not provided, the operation can read/write data for the entire site.
optional, string, max chars=50The unique ID of the customer for which this payment_intent
should be created. If not provided, a new customer is created and its ID is autogenerated.
required, in cents, min=0
Amount(in cents) to be authorized for 3DS flow.
required, string, max chars=3
The currency code (ISO 4217 format) of the amount used in transaction.
optional, string, max chars=50
The gateway account used for performing the 3DS flow.
optional, string, max chars=200
Reference for payment method at gateway. Only applicable when the PaymentIntent is created for cards stored in the gateway.
optional, enumerated string, default=cardThe payment method of this intent.
Possible values are
cardcardidealidealsofortsofortbancontactbancontactgoogle_paygoogle_paydotpaydotpaygiropaygiropayapple_payapple_payupiupinetbanking_emandatesnetbanking_emandatespaypal_express_checkoutpaypal_express_checkoutdirect_debitdirect_debitboletoboleto
Show all values[+]
optional, string, max chars=250
The URL the customer will be directed to once 3DS verification is successful. Applicable only when payment_method_type
is ideal
, sofort
, dotpay
or giropay
.
optional, string, max chars=250
The URL the customer will be directed to when 3DS verification fails. Applicable only when payment_method_type
is ideal
, sofort
, dotpay
or giropay
.
always returned
Resource object representing payment_intent
Updating properties on a PaymentIntent object. All the subsequent 3DS transaction attempts will have the updated values.
Sample Request
curl https://{site}.chargebee.com/api/v2/payment_intents/__test__KyVnHhSBWTR3ZCw__test__6AP6PXGBruIztRxpb4L0Si0Rihcur2fil \
-u {site_api_key}:\
-d amount=4000 \
-d currency_code="USD"
copy
curl https://{site}.chargebee.com/api/v2/payment_intents/__test__KyVnHhSBWTR3ZCw__test__6AP6PXGBruIztRxpb4L0Si0Rihcur2fil \
-u {site_api_key}:\
-d amount=4000 \
-d currency_code="USD"
Sample Response [ JSON ]
Show more...
{"payment_intent": {
"amount": 4000,
"created_at": 1517501515,
"currency_code": "USD",
"expires_at": 1517503315,
"gateway": "chargebee",
"gateway_account_id": "gw___test__KyVnGlSBWTQeudG",
"id": "__test__KyVnHhSBWTR3ZCw__test__6AP6PXGBruIztRxpb4L0Si0Rihcur2fil",
"modified_at": 1517501515,
"object": "payment_intent",
"payment_method_type": "card",
"status": "inited"
}}
URL Format POST
https://{site}.chargebee.com/api/v2/payment_intents/{payment_intent_id}
optional, in cents, min=0
Amount(in cents) to be authorized for 3DS flow.
optional, string, max chars=3
The currency code (ISO 4217 format) of the amount used in transaction.
optional, string, max chars=50
The gateway account used for performing the 3DS flow.
optional, enumerated stringThe payment method of this intent.
Possible values are
cardcardidealidealsofortsofortbancontactbancontactgoogle_paygoogle_paydotpaydotpaygiropaygiropayapple_payapple_payupiupinetbanking_emandatesnetbanking_emandatespaypal_express_checkoutpaypal_express_checkoutdirect_debitdirect_debitboletoboleto
Show all values[+]
optional, string, max chars=250
The URL the customer will be directed to once 3DS verification is successful. Applicable only when payment_method_type
is ideal
, sofort
, dotpay
or giropay
.
optional, string, max chars=250
The URL the customer will be directed to when 3DS verification fails. Applicable only when payment_method_type
is ideal
, sofort
, dotpay
or giropay
.
always returned
Resource object representing payment_intent
Retrieves the PaymentIntent resource.
Sample Request
curl https://{site}.chargebee.com/api/v2/payment_intents/__test__KyVnHhSBWTR1HCv__test__5COaMLU3JrmJkDQKOFQqcdOocdusvy0UBl \
-u {site_api_key}:
copy
curl https://{site}.chargebee.com/api/v2/payment_intents/__test__KyVnHhSBWTR1HCv__test__5COaMLU3JrmJkDQKOFQqcdOocdusvy0UBl \
-u {site_api_key}:
Sample Response [ JSON ]
Show more...
{"payment_intent": {
"amount": 5000,
"created_at": 1517501515,
"currency_code": "USD",
"expires_at": 1517503315,
"gateway": "chargebee",
"gateway_account_id": "gw___test__KyVnGlSBWTQeudG",
"id": "__test__KyVnHhSBWTR1HCv__test__5COaMLU3JrmJkDQKOFQqcdOocdusvy0UBl",
"modified_at": 1517501515,
"object": "payment_intent",
"payment_method_type": "card",
"status": "inited"
}}
URL Format GET
https://{site}.chargebee.com/api/v2/payment_intents/{payment_intent_id}
always returned
Resource object representing payment_intent