When you create a new credit card, you must specify a customer or recipient on which to create it.
If the card’s owner has no default card, then the new card will become the default. However, if the owner already has a default, then it will not change. To change the default, you should update the customer to have a new default_
.
Parameters
- sourceobject | stringRequired
A token, like the ones returned by Stripe.js or a dictionary containing a user’s card details (with the options shown below). Stripe will automatically validate the card.
- metadataobject
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. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to
metadata
.
Returns
Returns the Card
object.
{ "id": "card_1NGTaT2eZvKYlo2CZWSctn5n", "object": "card", "address_city": null, "address_country": null, "address_line1": null, "address_line1_check": null, "address_line2": null, "address_state": null, "address_zip": null, "address_zip_check": null, "brand": "Visa", "country": "US", "customer": "cus_9s6XGDTHzA66Po", "cvc_check": "pass", "dynamic_last4": null, "exp_month": 8, "exp_year": 2024, "fingerprint": "Xt5EWLLDS7FJjR1c", "funding": "credit", "last4": "4242", "metadata": {}, "name": null, "redaction": null, "tokenization_method": null, "wallet": null}
Updates a specified card for a given customer.
Parameters
- address_
citystring City/District/Suburb/Town/Village.
- address_
countrystring Billing address country, if provided when creating card.
- address_
line1string Address line 1 (Street address/PO Box/Company name).
- address_
line2string Address line 2 (Apartment/Suite/Unit/Building).
- address_
statestring State/County/Province/Region.
- address_
zipstring ZIP or postal code.
- exp_
monthstring Two digit number representing the card’s expiration month.
- exp_
yearstring Four digit number representing the card’s expiration year.
- metadataobject
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. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to
metadata
. - namestring
Cardholder name.
Returns
{ "id": "card_1NBLeN2eZvKYlo2CIq1o7Pzs", "object": "card", "address_city": null, "address_country": null, "address_line1": null, "address_line1_check": null, "address_line2": null, "address_state": null, "address_zip": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": "pass", "dynamic_last4": null, "exp_month": 8, "exp_year": 2024, "fingerprint": "Xt5EWLLDS7FJjR1c", "funding": "credit", "last4": "4242", "metadata": {}, "name": "Jenny Rosen", "redaction": null, "tokenization_method": null, "wallet": null, "account": "acct_1032D82eZvKYlo2C"}
You can always see the 10 most recent cards directly on a customer; this method lets you retrieve details about a specific card stored on the customer.
Parameters
No parameters.
Returns
Returns the Card
object.
{ "id": "card_1MvoiELkdIwHu7ixOeFGbN9D", "object": "card", "address_city": null, "address_country": null, "address_line1": null, "address_line1_check": null, "address_line2": null, "address_state": null, "address_zip": null, "address_zip_check": null, "brand": "Visa", "country": "US", "customer": "cus_NhD8HD2bY8dP3V", "cvc_check": null, "dynamic_last4": null, "exp_month": 4, "exp_year": 2024, "fingerprint": "mToisGZ01V71BCos", "funding": "credit", "last4": "4242", "metadata": {}, "name": null, "tokenization_method": null, "wallet": null}
You can see a list of the cards belonging to a customer. Note that the 10 most recent sources are always available on the Customer
object. If you need more than those 10, you can use this API method and the limit
and starting_
parameters to page through additional cards.
Parameters
No parameters.
More parameters
- ending_
beforestring - limitinteger
- starting_
afterstring
Returns
Returns a list of the cards stored on the customer.
{ "object": "list", "url": "/v1/customers/cus_NhD8HD2bY8dP3V/cards", "has_more": false, "data": [ { "id": "card_1MvoiELkdIwHu7ixOeFGbN9D", "object": "card", "address_city": null, "address_country": null, "address_line1": null, "address_line1_check": null, "address_line2": null, "address_state": null, "address_zip": null, "address_zip_check": null, "brand": "Visa", "country": "US", "customer": "cus_NhD8HD2bY8dP3V", "cvc_check": null, "dynamic_last4": null, "exp_month": 4, "exp_year": 2024, "fingerprint": "mToisGZ01V71BCos", "funding": "credit", "last4": "4242", "metadata": {}, "name": null, "tokenization_method": null, "wallet": null } ]}
You can delete cards from a customer. If you delete a card that is currently the default source, then the most recently added source will become the new default. If you delete a card that is the last remaining source on the customer, then the default_source attribute will become null.
For recipients: if you delete the default card, then the most recently added card will become the new default. If you delete the last remaining card on a recipient, then the default_card attribute will become null.
Note that for cards belonging to customers, you might want to prevent customers on paid subscriptions from deleting all cards on file, so that there is at least one default card for the next invoice payment attempt.
Parameters
No parameters.
Returns
{ "id": "card_1NGTaT2eZvKYlo2CZWSctn5n", "object": "card", "deleted": true}