Update an account | Moov Documentation
Update an account
When can profile data be updated:
- For unverified accounts, all profile data can be edited.
- During the verification process, missing or incomplete profile data can be edited.
- Verified accounts can only add missing profile data.
When can't profile data be updated:
- Verified accounts cannot change any existing profile data.
If you need to update information in a locked state, please contact Moov support.
To access this endpoint using an access token you'll need to specify the /accounts/{accountID}/profile.write scope.
PATCH
/accounts/{accountID}
Ask
curl -X PATCH "https://api.moov.io/accounts/{accountID}" \
-H "Authorization: Bearer {token}" \
-H "X-Moov-Version: v2026.04.00"
Ask
mc, _ := moov.NewClient()
account := moov.Account{
AccountID: "accountID",
AccountType: moov.AccountType_Business,
Profile: moov.Profile{
Business: &moov.Business{
OwnersProvided: true,
},
},
}
mc.UpdateAccount(ctx, account)
Ask
import { Moov } from "@moovio/sdk";
const moov = new Moov({
security: {
username: "",
password: "",
},
});
async function run() {
const result = await moov.accounts.update({
accountID: "433cb9d1-5943-4fd5-91b4-2aef5b30e2e7",
patchAccount: {
profile: {
individual: {
name: {
firstName: "Jordan",
middleName: "Reese",
lastName: "Lee",
suffix: "Jr",
},
phone: {
number: "8185551212",
countryCode: "1",
},
email: "jordan.lee@classbooker.dev",
address: {
addressLine1: "123 Main Street",
addressLine2: "Apt 302",
city: "Boulder",
stateOrProvince: "CO",
postalCode: "80301",
country: "US",
},
birthDate: {
day: 9,
month: 11,
year: 1989,
},
},
business: {
businessType: "llc",
address: {
addressLine1: "123 Main Street",
addressLine2: "Apt 302",
city: "Boulder",
stateOrProvince: "CO",
postalCode: "80301",
country: "US",
},
phone: {
number: "8185551212",
countryCode: "1",
},
email: "jordan.lee@classbooker.dev",
taxID: {
ein: {
number: "12-3456789",
},
},
industryCodes: {
naics: "713940",
sic: "7991",
mcc: "7997",
},
industry: "electronics-appliances",
},
},
metadata: {
"optional": "metadata",
},
termsOfService: {
manual: {
acceptedIP: "172.217.2.46",
acceptedUserAgent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36",
},
},
customerSupport: {
phone: {
number: "8185551212",
countryCode: "1",
},
email: "jordan.lee@classbooker.dev",
address: {
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();
$patchAccount = new Components\PatchAccount(
profile: new Components\PatchProfile(
individual: new Components\PatchIndividual(
name: new Components\IndividualNameUpdate(
firstName: 'Jordan',
middleName: 'Reese',
lastName: 'Lee',
suffix: 'Jr',
),
phone: new Components\PhoneNumber(
number: '8185551212',
countryCode: '1',
),
email: 'jordan.lee@classbooker.dev',
address: new Components\AddressUpdate(
addressLine1: '123 Main Street',
addressLine2: 'Apt 302',
city: 'Boulder',
stateOrProvince: 'CO',
postalCode: '80301',
country: 'US',
),
birthDate: new Components\BirthDateUpdate(
day: 9,
month: 11,
year: 1989,
),
),
business: new Components\PatchBusiness(
businessType: Components\BusinessType::Llc,
address: new Components\AddressUpdate(
addressLine1: '123 Main Street',
addressLine2: 'Apt 302',
city: 'Boulder',
stateOrProvince: 'CO',
postalCode: '80301',
country: 'US',
),
phone: new Components\PhoneNumber(
number: '8185551212',
countryCode: '1',
),
email: 'jordan.lee@classbooker.dev',
taxID: new Components\TaxIDUpdate(
ein: new Components\TaxIDUpdateEin(
number: '12-3456789',
),
),
industryCodes: new Components\IndustryCodes(
naics: '713940',
sic: '7991',
mcc: '7997',
),
industry: 'electronics-appliances',
),
),
metadata: [\
'optional' => 'metadata',\
],
termsOfService: new Components\TermsOfServicePayloadUpdate(
manual: new Components\ManualTermsOfServiceUpdate(
acceptedIP: '172.217.2.46',
acceptedUserAgent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36',
),
),
customerSupport: new Components\PatchAccountCustomerSupport(
phone: new Components\PhoneNumber(
number: '8185551212',
countryCode: '1',
),
email: 'jordan.lee@classbooker.dev',
address: new Components\AddressUpdate(
addressLine1: '123 Main Street',
addressLine2: 'Apt 302',
city: 'Boulder',
stateOrProvince: 'CO',
postalCode: '80301',
country: 'US',
),
),
);
$response = $sdk->accounts->updateProfile(
accountID: '433cb9d1-5943-4fd5-91b4-2aef5b30e2e7',
patchAccount: $patchAccount
);
if ($response->account !== 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.PatchAccountError;
import io.moov.sdk.models.operations.UpdateAccountResponse;
import java.lang.Exception;
import java.util.Map;
public class Application {
public static void main(String[] args) throws GenericError, PatchAccountError, Exception {
Moov sdk = Moov.builder()
.security(Security.builder()
.username("")
.password("")
.build())
.build();
UpdateAccountResponse res = sdk.accounts().update()
.accountID("433cb9d1-5943-4fd5-91b4-2aef5b30e2e7")
.patchAccount(PatchAccount.builder()
.profile(PatchProfile.builder()
.individual(PatchIndividual.builder()
.name(IndividualNameUpdate.builder()
.firstName("Jordan")
.middleName("Reese")
.lastName("Lee")
.suffix("Jr")
.build())
.phone(PhoneNumber.builder()
.number("8185551212")
.countryCode("1")
.build())
.email("jordan.lee@classbooker.dev")
.address(AddressUpdate.builder()
.addressLine1("123 Main Street")
.addressLine2("Apt 302")
.city("Boulder")
.stateOrProvince("CO")
.postalCode("80301")
.country("US")
.build())
.birthDate(BirthDateUpdate.builder()
.day(9L)
.month(11L)
.year(1989L)
.build())
.build())
.business(PatchBusiness.builder()
.businessType(BusinessType.LLC)
.address(AddressUpdate.builder()
.addressLine1("123 Main Street")
.addressLine2("Apt 302")
.city("Boulder")
.stateOrProvince("CO")
.postalCode("80301")
.country("US")
.build())
.phone(PhoneNumber.builder()
.number("8185551212")
.countryCode("1")
.build())
.email("jordan.lee@classbooker.dev")
.taxID(TaxIDUpdate.builder()
.ein(TaxIDUpdateEin.builder()
.number("12-3456789")
.build())
.build())
.industryCodes(IndustryCodes.builder()
.naics("713940")
.sic("7991")
.mcc("7997")
.build())
.industry("electronics-appliances")
.build())
.build())
.metadata(Map.ofEntries(
Map.entry("optional", "metadata")))
.termsOfService(TermsOfServicePayloadUpdate.builder()
.manual(ManualTermsOfServiceUpdate.builder()
.acceptedIP("172.217.2.46")
.acceptedUserAgent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36")
.build())
.build())
.customerSupport(PatchAccountCustomerSupport.builder()
.phone(PhoneNumber.builder()
.number("8185551212")
.countryCode("1")
.build())
.email("jordan.lee@classbooker.dev")
.address(AddressUpdate.builder()
.addressLine1("123 Main Street")
.addressLine2("Apt 302")
.city("Boulder")
.stateOrProvince("CO")
.postalCode("80301")
.country("US")
.build())
.build())
.build())
.call();
if (res.account().isPresent()) {
System.out.println(res.account().get());
}
}
}
Ask
from moovio_sdk import Moov
from moovio_sdk.models import components
with Moov(
security=components.Security(
username="",
password="",
),
) as moov:
res = moov.accounts.update(account_id="433cb9d1-5943-4fd5-91b4-2aef5b30e2e7", profile=components.PatchProfile(
individual=components.PatchIndividual(
name=components.IndividualNameUpdate(
first_name="Jordan",
middle_name="Reese",
last_name="Lee",
suffix="Jr",
),
phone=components.PhoneNumber(
number="8185551212",
country_code="1",
),
email="jordan.lee@classbooker.dev",
address=components.AddressUpdate(
address_line1="123 Main Street",
address_line2="Apt 302",
city="Boulder",
state_or_province="CO",
postal_code="80301",
country="US",
),
birth_date=components.BirthDateUpdate(
day=9,
month=11,
year=1989,
),
),
business=components.PatchBusiness(
business_type=components.BusinessType.LLC,
address=components.AddressUpdate(
address_line1="123 Main Street",
address_line2="Apt 302",
city="Boulder",
state_or_province="CO",
postal_code="80301",
country="US",
),
phone=components.PhoneNumber(
number="8185551212",
country_code="1",
),
email="jordan.lee@classbooker.dev",
tax_id=components.TaxIDUpdate(
ein=components.TaxIDUpdateEin(
number="12-3456789",
),
),
industry_codes=components.IndustryCodes(
naics="713940",
sic="7991",
mcc="7997",
),
industry="electronics-appliances",
),
), metadata={
"optional": "metadata",
}, terms_of_service={
"manual": {
"accepted_ip": "172.217.2.46",
"accepted_user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36",
},
}, customer_support={
"phone": {
"number": "8185551212",
"country_code": "1",
},
"email": "jordan.lee@classbooker.dev",
"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.accounts.update(account_id: '433cb9d1-5943-4fd5-91b4-2aef5b30e2e7', patch_account: Models::Components::PatchAccount.new(
profile: Models::Components::PatchProfile.new(
individual: Models::Components::PatchIndividual.new(
name: Models::Components::IndividualNameUpdate.new(
first_name: 'Jordan',
middle_name: 'Reese',
last_name: 'Lee',
suffix: 'Jr'
),
phone: Models::Components::PhoneNumber.new(
number: '8185551212',
country_code: '1'
),
email: 'jordan.lee@classbooker.dev',
address: Models::Components::AddressUpdate.new(
address_line1: '123 Main Street',
address_line2: 'Apt 302',
city: 'Boulder',
state_or_province: 'CO',
postal_code: '80301',
country: 'US'
),
birth_date: Models::Components::BirthDateUpdate.new(
day: 9,
month: 11,
year: 1989
)
),
business: Models::Components::PatchBusiness.new(
business_type: Models::Components::BusinessType::LLC,
address: Models::Components::AddressUpdate.new(
address_line1: '123 Main Street',
address_line2: 'Apt 302',
city: 'Boulder',
state_or_province: 'CO',
postal_code: '80301',
country: 'US'
),
phone: Models::Components::PhoneNumber.new(
number: '8185551212',
country_code: '1'
),
email: 'jordan.lee@classbooker.dev',
tax_id: Models::Components::TaxIDUpdate.new(
ein: Models::Components::TaxIDUpdateEin.new(
number: '12-3456789'
)
),
industry_codes: Models::Components::IndustryCodes.new(
naics: '713940',
sic: '7991',
mcc: '7997'
),
industry: 'electronics-appliances'
)
),
metadata: {
'optional' => 'metadata',
},
terms_of_service: Models::Components::TermsOfServicePayloadUpdate.new(
manual: Models::Components::ManualTermsOfServiceUpdate.new(
accepted_ip: '172.217.2.46',
accepted_user_agent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36'
)
),
customer_support: Models::Components::PatchAccountCustomerSupport.new(
phone: Models::Components::PhoneNumber.new(
number: '8185551212',
country_code: '1'
),
email: 'jordan.lee@classbooker.dev',
address: Models::Components::AddressUpdate.new(
address_line1: '123 Main Street',
address_line2: 'Apt 302',
city: 'Boulder',
state_or_province: 'CO',
postal_code: '80301',
country: 'US'
)
)
))
unless res.account.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.Accounts.UpdateAsync(
accountID: "433cb9d1-5943-4fd5-91b4-2aef5b30e2e7",
body: new PatchAccount() {
Profile = new PatchProfile() {
Individual = new PatchIndividual() {
Name = new IndividualNameUpdate() {
FirstName = "Jordan",
MiddleName = "Reese",
LastName = "Lee",
Suffix = "Jr",
},
Phone = new PhoneNumber() {
Number = "8185551212",
CountryCode = "1",
},
Email = "jordan.lee@classbooker.dev",
Address = new AddressUpdate() {
AddressLine1 = "123 Main Street",
AddressLine2 = "Apt 302",
City = "Boulder",
StateOrProvince = "CO",
PostalCode = "80301",
Country = "US",
},
BirthDate = new BirthDateUpdate() {
Day = 9,
Month = 11,
Year = 1989,
},
},
Business = new PatchBusiness() {
BusinessType = BusinessType.Llc,
Address = new AddressUpdate() {
AddressLine1 = "123 Main Street",
AddressLine2 = "Apt 302",
City = "Boulder",
StateOrProvince = "CO",
PostalCode = "80301",
Country = "US",
},
Phone = new PhoneNumber() {
Number = "8185551212",
CountryCode = "1",
},
Email = "jordan.lee@classbooker.dev",
TaxID = new TaxIDUpdate() {
Ein = new TaxIDUpdateEin() {
Number = "12-3456789",
},
},
IndustryCodes = new IndustryCodes() {
Naics = "713940",
Sic = "7991",
Mcc = "7997",
},
Industry = "electronics-appliances",
},
},
Metadata = new Dictionary<string, string>() {
{ "optional", "metadata" },
},
TermsOfService = new TermsOfServicePayloadUpdate() {
Manual = new ManualTermsOfServiceUpdate() {
AcceptedIP = "172.217.2.46",
AcceptedUserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36",
},
},
CustomerSupport = new PatchAccountCustomerSupport() {
Phone = new PhoneNumber() {
Number = "8185551212",
CountryCode = "1",
},
Email = "jordan.lee@classbooker.dev",
Address = new AddressUpdate() {
AddressLine1 = "123 Main Street",
AddressLine2 = "Apt 302",
City = "Boulder",
StateOrProvince = "CO",
PostalCode = "80301",
Country = "US",
},
},
}
);
// handle response