POST /payment_sources/{cust-payment-source-id}/update_card
Merchants look to update card details when:
- The billing address of a customer has changed. In such a case, modify the billing address in the Chargebee and the payment gateway.
- The expiration date of the card has been extended by the bank. (This usually happens when the date of card expiry is in near future).
Multiple parameters such as address, expiry date, month, and so on, can be updated through this API.
Meta data can also be added additionally(supported in Stripe only). Metadata is a JSON object. It is used to store additional information about customers.
In Stripe and Braintree payment gateways, changes in card details are auto-updated. This feature can also be used for other payment gateways in which auto-update is not enabled or is not supported by Chargebee.
Note : This endpoint supports Chargebee Test Gateway, Stripe, Braintree, Authorize.net, Worldpay US eCom, and WorldPay Direct Integration. For all other gateways, your customers must re-enter the full card details to update existing card details. For example, consider a customer not using the gateways mentioned above and wants to update the card[billing_addr1] parameter. In such a case, the customer must re-enter the value of all the parameters present in the card object.
Servers
- {protocol}://{site}.{environment}:{port}/api/v2
- {protocol}://{site}-test.{environment}:{port}/api/v2
Path parameters
Name | Type | Required | Description |
---|---|---|---|
cust-payment-source-id |
String | Yes |
Request headers
Name | Type | Required | Description |
---|---|---|---|
chargebee-request-origin-device |
String | No |
The device from which the customer has made the request |
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/x-www-form-urlencoded" |
chargebee-event-webhook |
String | No |
skip only webhooks Possible values:
|
chargebee-business-entity-id |
String | No |
If the site has multiple business entities, you can use this custom HTTP header to specify the business entity for which Chargebee should perform the operation. |
chargebee-event-actions |
String | No |
skip all actions to be done on the events Possible values:
|
chargebee-request-origin-user |
String | No |
The email address of your customer/user. Use this when the email address has only ASCII characters. |
chargebee-request-origin-ip |
String | No |
The IP address of the customer where the request originated |
chargebee-request-origin-user-encoded |
String | No |
The Base64-encoded email address of your customer/user. Use this if the email address has UTF-8 characters. When this header is provided, the header |
chargebee-event-email |
String | No |
skip only emails Possible values:
|
Request body fields
Name | Type | Required | Description |
---|---|---|---|
gateway_meta_data |
Object | No |
Additional data about this resource can be passed to **Stripe** gateway here in the JSON Format. This will be stored along with payment source at the gateway account. |
reference_transaction |
String | No |
Reference transaction is used for future purchases. This is only applicable for Vantiv. |
card |
Object | No |
Parameters for card |
card.billing_addr2 |
String | No |
Address line 2, as available in card billing address. |
card.billing_addr1 |
String | No |
Address line 1, as available in card billing address. |
card.last_name |
String | No |
Cardholder's last name |
card.billing_zip |
String | No |
Postal or Zip code, as available in card billing address. |
card.billing_state_code |
String | No |
The ISO 3166-2 state/province code without the country prefix. Currently supported for USA, Canada and India. For instance, for Arizona (USA), set |
card.first_name |
String | No |
Cardholder's first name |
card.expiry_year |
Integer | No |
Card expiry year. |
card.billing_city |
String | No |
City, as available in card billing address. |
card.billing_state |
String | No |
The state/province name. |
card.expiry_month |
Integer | No |
Card expiry month. |
card.additional_information |
Object | No |
* `ebanx`: While passing raw card details to EBANX, the user's `document` is required for some countries. * `payer`: User related information. * `document`: Document is the user's identification number based on their country. |
card.billing_country |
String | No |
The billing address country of the customer. Must be one of ISO 3166 alpha-2 country code. Note : If you enter an invalid country code, the system will return an error. Brexit If you have enabled EU VAT in 2021 or later, or have manually enable the Brexit configuration, then |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.