Update a spending card | Moov Documentation
Update a spending card
Update a Moov issued card.
To access this endpoint using an access token you'll need to specify the /accounts/{accountID}/issued-cards.write scope.
PATCH
/issuing/{accountID}/cards/{issuedCardID}
Ask
curl -X PATCH "https://api.moov.io/issuing/{accountID}/cards/{issuedCardID}" \
-H "Authorization: Bearer {token}" \
-H "X-Moov-Version: v2026.04.00"
Ask
import { Moov } from "@moovio/sdk";
const moov = new Moov({
security: {
username: "",
password: "",
},
});
async function run() {
const result = await moov.cardIssuing.update({
accountID: "44db31bc-2813-424b-9b8c-2d3f5f1300e3",
issuedCardID: "69ca2a7e-7bbc-4176-9d0c-2a1aa7143006",
updateIssuedCard: {
metadata: {
"optional": "metadata",
},
billingAddress: {
addressLine1: "123 Main Street",
addressLine2: "Apt 302",
city: "Boulder",
stateOrProvince: "CO",
postalCode: "80301",
country: "US",
},
},
});
console.log(result);
}
run();
Ask
declare(strict_types=1);
require 'vendor/autoload.php';
use Moov\MoovPhp;
use Moov\MoovPhp\Models\Components;
$sdk = MoovPhp\Moov::builder()
->setSecurity(
new Components\Security(
username: '',
password: '',
)
)
->build();
$updateIssuedCard = new Components\UpdateIssuedCard(
metadata: [\
'optional' => 'metadata',\
],
billingAddress: new Components\BillingAddress(
addressLine1: '123 Main Street',
addressLine2: 'Apt 302',
city: 'Boulder',
stateOrProvince: 'CO',
postalCode: '80301',
country: 'US',
),
);
$response = $sdk->cardIssuing->update(
accountID: '44db31bc-2813-424b-9b8c-2d3f5f1300e3',
issuedCardID: '69ca2a7e-7bbc-4176-9d0c-2a1aa7143006',
updateIssuedCard: $updateIssuedCard
);
if ($response->issuedCard !== null) {
// handle response
}
Ask
package hello.world;
import io.moov.sdk.Moov;
import io.moov.sdk.models.components.*;
import io.moov.sdk.models.errors.GenericError;
import io.moov.sdk.models.errors.UpdateIssuedCardError;
import io.moov.sdk.models.operations.UpdateIssuedCardResponse;
import java.lang.Exception;
import java.util.Map;
public class Application {
public static void main(String[] args) throws GenericError, UpdateIssuedCardError, Exception {
Moov sdk = Moov.builder()
.security(Security.builder()
.username("")
.password("")
.build())
.build();
UpdateIssuedCardResponse res = sdk.cardIssuing().update()
.accountID("44db31bc-2813-424b-9b8c-2d3f5f1300e3")
.issuedCardID("69ca2a7e-7bbc-4176-9d0c-2a1aa7143006")
.updateIssuedCard(UpdateIssuedCard.builder()
.metadata(Map.ofEntries(
Map.entry("optional", "metadata")))
.billingAddress(BillingAddress.builder()
.addressLine1("123 Main Street")
.addressLine2("Apt 302")
.city("Boulder")
.stateOrProvince("CO")
.postalCode("80301")
.country("US")
.build())
.build())
.call();
if (res.issuedCard().isPresent()) {
System.out.println(res.issuedCard().get());
}
}
}
Ask
from moovio_sdk import Moov
from moovio_sdk.models import components
with Moov(
security=components.Security(
username="",
password="",
),
) as moov:
res = moov.card_issuing.update(account_id="44db31bc-2813-424b-9b8c-2d3f5f1300e3", issued_card_id="69ca2a7e-7bbc-4176-9d0c-2a1aa7143006", metadata={
"optional": "metadata",
}, billing_address={
"address_line1": "123 Main Street",
"address_line2": "Apt 302",
"city": "Boulder",
"state_or_province": "CO",
"postal_code": "80301",
"country": "US",
})
# Handle response
print(res)
Ask
require 'moov_ruby'
Models = ::Moov::Models
s = ::Moov::Client.new(
security: Models::Components::Security.new(
username: '',
password: ''
)
)
res = s.card_issuing.update(account_id: '44db31bc-2813-424b-9b8c-2d3f5f1300e3', issued_card_id: '69ca2a7e-7bbc-4176-9d0c-2a1aa7143006', update_issued_card: Models::Components::UpdateIssuedCard.new(
metadata: {
'optional' => 'metadata',
},
billing_address: Models::Components::BillingAddress.new(
address_line1: '123 Main Street',
address_line2: 'Apt 302',
city: 'Boulder',
state_or_province: 'CO',
postal_code: '80301',
country: 'US'
)
))
unless res.issued_card.nil?
# handle response
end
Ask
using Moov.Sdk;
using Moov.Sdk.Models.Components;
using System.Collections.Generic;
var sdk = new MoovClient(security: new Security() {
Username = "",
Password = "",
});
var res = await sdk.CardIssuing.UpdateAsync(
accountID: "44db31bc-2813-424b-9b8c-2d3f5f1300e3",
issuedCardID: "69ca2a7e-7bbc-4176-9d0c-2a1aa7143006",
body: new UpdateIssuedCard() {
Metadata = new Dictionary<string, string>() {
{ "optional", "metadata" },
},
BillingAddress = new BillingAddress() {
AddressLine1 = "123 Main Street",
AddressLine2 = "Apt 302",
City = "Boulder",
StateOrProvince = "CO",
PostalCode = "80301",
Country = "US",
},
}
);
// handle response
The request completed successfully.
Example
{
"issuedCardID": "string",
"brand": "Visa",
"lastFourCardNumber": "string",
"expiration": {
"month": "01",
"year": "21"
},
"fundingWalletID": "string",
"authorizedUserAccountID": "string",
"nickname": "string",
"metadata": {
"optional": "metadata"
},
"billingAddress": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 302",
"city": "Boulder",
"stateOrProvince": "CO",
"postalCode": "80301",
"country": "US"
},
"state": "active",
"formFactor": "virtual",
"controls": {
"singleUse": true,
"velocityLimits": [
{
"amount": 10000,
"interval": "per-transaction"
}
]
},
"createdOn": "2019-08-24T14:15:22Z",
"updatedOn": "2019-08-24T14:15:22Z"
}
Response headers
A unique identifier used to trace requests.
Example
{
"error": "string"
}
Response headers
A unique identifier used to trace requests.
Example
{
"state": "string",
"nickname": "string",
"metadata": "string",
"billingAddress": {
"addressLine1": "string",
"addressLine2": "string",
"city": "string",
"stateOrProvince": "string",
"postalCode": "string",
"country": "string"
}
}
Response headers
A unique identifier used to trace requests.