Update a card
Update a linked card and/or resubmit it for verification.
If a value is provided for CVV, a new verification ($0 authorization) will be submitted for the card. Updating the expiration date or address will update the information stored on file for the card but will not be verified.
Read our accept card payments guide to learn more.
Only use this endpoint if you have provided Moov with a copy of your PCI attestation of compliance.
To access this endpoint using an access token
you'll need to specify the /accounts/{accountID}/cards.write
scope.
|
|
|
|
|
|
|
|
|
|
{
"description": "Describes a card on a Moov account.",
"example": {
"billingAddress": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 302",
"city": "Boulder",
"country": "US",
"postalCode": "80301",
"stateOrProvince": "CO"
},
"bin": "411111",
"brand": "Visa",
"cardAccountUpdater": {
"updateType": "number-update",
"updatedOn": "2024-05-06T12:20:38.184Z"
},
"cardCategory": "CLASSIC",
"cardID": "01234567-89ab-cdef-0123-456789abcdef",
"cardOnFile": true,
"cardType": "credit",
"cardVerification": {
"accountName": {
"firstName": "match",
"fullName": "match",
"lastName": "match",
"middleName": "match"
},
"addressLine1": "match",
"cvv": "match",
"postalCode": "match"
},
"commercial": false,
"domesticPullFromCard": "supported",
"domesticPushToCard": "standard",
"expiration": {
"month": "01",
"year": "21"
},
"fingerprint": "9948962d92a1ce40c9f918cd9ece3a22bde62fb325a2f1fe2e833969de672ba3",
"holderName": "Jules Jackson",
"issuer": "GRINGOTTS BANK",
"issuerCountry": "US",
"issuerPhone": "8185551212",
"issuerURL": "HTTPS://WWW.EXAMPLE.COM/",
"lastFourCardNumber": "1111",
"merchantAccountID": "01234567-89ab-cdef-0123-456789abcdef",
"regulated": false
},
"properties": {
"billingAddress": {
"example": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 302",
"city": "Boulder",
"country": "US",
"postalCode": "80301",
"stateOrProvince": "CO"
},
"properties": {
"addressLine1": {
"maxLength": 60,
"type": "string"
},
"addressLine2": {
"maxLength": 32,
"type": "string"
},
"city": {
"maxLength": 32,
"type": "string"
},
"country": {
"maxLength": 2,
"type": "string"
},
"postalCode": {
"maxLength": 10,
"type": "string"
},
"stateOrProvince": {
"maxLength": 2,
"type": "string"
}
},
"required": [
"postalCode"
],
"type": "object"
},
"bin": {
"description": "The first six to eight digits of the card number, which identifies the financial institution that issued the card.",
"maxLength": 8,
"minLength": 6,
"type": "string"
},
"brand": {
"description": "The card brand.",
"enum": [
"American Express",
"Discover",
"Mastercard",
"Visa",
"Unknown"
],
"example": "Visa",
"type": "string"
},
"cardAccountUpdater": {
"description": "The results of the most recent card update request.",
"example": {
"updateType": "number-update",
"updatedOn": "2024-05-06T12:20:38.184Z"
},
"properties": {
"updateType": {
"description": "The results of the card update request.",
"enum": [
"unspecified",
"account-closed",
"contact-cardholder",
"expiration-update",
"no-change",
"no-match",
"number-update"
],
"example": "number-update",
"type": "string"
},
"updatedOn": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"cardCategory": {
"description": "The category or level of the card defined by the issuer.\nExamples include, but not limited to, \"REWARDS\", \"TRADITIONAL REWARDS\", \"CLASSIC\", and \"CORPORATE PURCHASING\".",
"type": "string"
},
"cardID": {
"description": "ID of the card.",
"example": "01234567-89ab-cdef-0123-456789abcdef",
"format": "uuid",
"type": "string"
},
"cardOnFile": {
"description": "Indicates cardholder has authorized card to be stored for future payments.",
"type": "boolean"
},
"cardType": {
"description": "The type of the card.",
"enum": [
"debit",
"credit",
"prepaid",
"unknown"
],
"example": "credit",
"type": "string"
},
"cardVerification": {
"description": "The results of submitting cardholder data to a card network for verification.",
"example": {
"accountName": {
"firstName": "match",
"fullName": "match",
"lastName": "match",
"middleName": "match"
},
"addressLine1": "match",
"cvv": "match",
"postalCode": "match"
},
"properties": {
"accountName": {
"description": "The results of submitting cardholder name to a card network for verification.",
"example": {
"firstName": "match",
"fullName": "match",
"lastName": "match",
"middleName": "match"
},
"properties": {
"firstName": {
"enum": [
"noMatch",
"match",
"notChecked",
"unavailable",
"partialMatch"
],
"example": "match",
"type": "string"
},
"fullName": {
"enum": [
"noMatch",
"match",
"notChecked",
"unavailable",
"partialMatch"
],
"example": "match",
"type": "string"
},
"lastName": {
"enum": [
"noMatch",
"match",
"notChecked",
"unavailable",
"partialMatch"
],
"example": "match",
"type": "string"
},
"middleName": {
"enum": [
"noMatch",
"match",
"notChecked",
"unavailable",
"partialMatch"
],
"example": "match",
"type": "string"
}
},
"type": "object"
},
"addressLine1": {
"enum": [
"noMatch",
"match",
"notChecked",
"unavailable",
"partialMatch"
],
"example": "match",
"type": "string"
},
"cvv": {
"enum": [
"noMatch",
"match",
"notChecked",
"unavailable",
"partialMatch"
],
"example": "match",
"type": "string"
},
"postalCode": {
"enum": [
"noMatch",
"match",
"notChecked",
"unavailable",
"partialMatch"
],
"example": "match",
"type": "string"
}
},
"required": [
"cvv",
"addressLine1",
"postalCode"
],
"type": "object"
},
"commercial": {
"description": "If true, the card is for commercial use, or associated with a business.\nIf false, the card is associated with a general consumer.",
"type": "boolean"
},
"domesticPullFromCard": {
"description": "Indicates if the card supports domestic pull-from-card transfer.",
"enum": [
"not-supported",
"supported",
"unknown"
],
"example": "supported",
"type": "string"
},
"domesticPushToCard": {
"description": "Indicates which level of domestic push-to-card transfer is supported by the card, if any.",
"enum": [
"not-supported",
"standard",
"fast-funds",
"unknown"
],
"example": "standard",
"type": "string"
},
"expiration": {
"description": "The expiration date of the card or token.",
"example": {
"month": "01",
"year": "21"
},
"properties": {
"month": {
"maxLength": 2,
"minLength": 2,
"type": "string"
},
"year": {
"maxLength": 2,
"minLength": 2,
"type": "string"
}
},
"required": [
"month",
"year"
],
"type": "object"
},
"fingerprint": {
"description": "Uniquely identifies a linked payment card or token.\nFor Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user's device.\nThis field can be used to identify specific payment methods across multiple accounts on your platform.",
"example": "9948962d92a1ce40c9f918cd9ece3a22bde62fb325a2f1fe2e833969de672ba3",
"maxLength": 100,
"type": "string"
},
"holderName": {
"description": "The name of the cardholder as it appears on the card.",
"type": "string"
},
"issuer": {
"description": "Financial institution that issued the card.",
"type": "string"
},
"issuerCountry": {
"description": "Country where the card was issued.",
"type": "string"
},
"issuerPhone": {
"description": "Phone number of the issuer.",
"type": "string"
},
"issuerURL": {
"description": "URL of the issuer.",
"format": "uri",
"type": "string"
},
"lastFourCardNumber": {
"description": "Last four digits of the card number",
"maxLength": 4,
"minLength": 4,
"type": "string"
},
"merchantAccountID": {
"format": "uuid",
"type": "string"
},
"paymentMethods": {
"description": " Includes any payment methods created as a result of linking a card with the `x-wait-for` header set to `payment-method`.\n\n Only returned by the link card endpoint; not included when getting or listing cards.",
"items": {
"properties": {
"paymentMethodID": {
"description": "ID of the payment method.",
"format": "uuid",
"type": "string"
},
"paymentMethodType": {
"description": "The payment method type that represents a payment rail and directionality",
"enum": [
"moov-wallet",
"ach-debit-fund",
"ach-debit-collect",
"ach-credit-standard",
"ach-credit-same-day",
"rtp-credit",
"card-payment",
"push-to-card",
"pull-from-card",
"apple-pay",
"card-present-payment"
],
"type": "string"
}
},
"required": [
"paymentMethodID",
"paymentMethodType"
],
"type": "object"
},
"type": "array"
},
"regulated": {
"description": "If true, the card issuing bank is regulated, and the scheme fees for debit transactions will be limited based on the Durbin Amendment.\nIf false, the card issuing bank is not regulated, and the scheme fees will not be limited.",
"type": "boolean"
}
},
"required": [
"cardID",
"fingerprint",
"brand",
"cardType",
"lastFourCardNumber",
"bin",
"expiration",
"billingAddress",
"cardVerification"
],
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
{
"properties": {
"error": {
"type": "string"
}
},
"required": [
"error"
],
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
{
"properties": {
"error": {
"type": "string"
}
},
"required": [
"error"
],
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
{
"properties": {
"billingAddress": {
"type": "string"
},
"cardCvv": {
"type": "string"
},
"cardOnFile": {
"type": "string"
},
"e2ee": {
"properties": {
"token": {
"type": "string"
}
},
"type": "object"
},
"expiration": {
"type": "string"
},
"holderName": {
"type": "string"
},
"merchantAccountID": {
"type": "string"
},
"verifyName": {
"type": "string"
}
},
"type": "object"
}
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Response headers
x-request-id
string
<uuid>
required
Headers
x-moov-version
string
API version
Specify an API version.
API versioning follows the format vYYYY.QQ.BB
, where
YYYY
is the yearQQ
is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)BB
is the build number, starting at.01
, for subsequent builds in the same quarter.- For example,
v2024.01.00
is the initial release of the first quarter of 2024.
- For example,
The latest
version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
v2024.01.00
Path parameters
accountID
string
<uuid>
required
cardID
string
<uuid>
required
Body
billingAddress
object
Show child attributes
addressLine1
string
<=60 characters
addressLine2
string
<=32 characters
city
string
<=32 characters
country
string
<=2 characters
postalCode
string
<=10 characters
stateOrProvince
string
<=2 characters
cardCvv
string
cardOnFile
boolean
e2ee
object
Show child attributes
token
string<jwe>
expiration
object
Show child attributes
month
string
year
string
holderName
string
merchantAccountID
string
verifyName
boolean
Response
billingAddress
object
required
Show child attributes
postalCode
string
<=10 characters
required
addressLine1
string
<=60 characters
addressLine2
string
<=32 characters
city
string
<=32 characters
country
string
<=2 characters
stateOrProvince
string
<=2 characters
bin
string
[6 to 8] characters
required
brand
string<enum>
required
American Express
,
Discover
,
Mastercard
,
Visa
,
Unknown
cardID
string<uuid>
required
cardType
string<enum>
required
debit
,
credit
,
prepaid
,
unknown
cardVerification
object
required
Show child attributes
addressLine1
string<enum>
required
noMatch
,
match
,
notChecked
,
unavailable
,
partialMatch
cvv
string<enum>
required
noMatch
,
match
,
notChecked
,
unavailable
,
partialMatch
postalCode
string<enum>
required
noMatch
,
match
,
notChecked
,
unavailable
,
partialMatch
accountName
object
Show child attributes
firstName
string<enum>
noMatch
,
match
,
notChecked
,
unavailable
,
partialMatch
fullName
string<enum>
noMatch
,
match
,
notChecked
,
unavailable
,
partialMatch
lastName
string<enum>
noMatch
,
match
,
notChecked
,
unavailable
,
partialMatch
middleName
string<enum>
noMatch
,
match
,
notChecked
,
unavailable
,
partialMatch
expiration
object
required
Show child attributes
month
string
2 characters
required
year
string
2 characters
required
fingerprint
string
<=100 characters
required
lastFourCardNumber
string
4 characters
required
cardAccountUpdater
object
Show child attributes
updateType
string<enum>
unspecified
,
account-closed
,
contact-cardholder
,
expiration-update
,
no-change
,
no-match
,
number-update
updatedOn
string<date-time>
cardCategory
string
cardOnFile
boolean
commercial
boolean
domesticPullFromCard
string<enum>
not-supported
,
supported
,
unknown
domesticPushToCard
string<enum>
not-supported
,
standard
,
fast-funds
,
unknown
holderName
string
issuer
string
issuerCountry
string
issuerPhone
string
issuerURL
string<uri>
merchantAccountID
string<uuid>
paymentMethods
array
Includes any payment methods created as a result of linking a card with the x-wait-for
header set to payment-method
.
Only returned by the link card endpoint; not included when getting or listing cards.
Show child attributes
paymentMethodID
string<uuid>
paymentMethodType
string<enum>
moov-wallet
,
ach-debit-fund
,
ach-debit-collect
,
ach-credit-standard
,
ach-credit-same-day
,
rtp-credit
,
card-payment
,
push-to-card
,
pull-from-card
,
apple-pay
,
card-present-payment
regulated
boolean