Braintree Marketplace
Updating Sub-merchants
To update a sub-merchant, you must specify the merchant_account_id
along with the attributes to be changed. Any attributes not passed in the update call will remain unchanged.
- Java
MerchantAccountRequest request = new MerchantAccountRequest()
.individual()
.firstName("Joe")
.done();
Result<MerchantAccount> result = gateway.merchantAccount().update("blue_ladders_store", request);
result.isSuccess();
// true
If the merchant account can't be found, it will throw a NotFoundException
.
You can update the sub-merchant details that fall under these 3 attributes:
individual
business
funding
Individual details
Every sub-merchant must have an individual
tied to that account. To update or replace the individual
information, pass in the details via a merchant account update call as follows:
- java
MerchantAccountRequest request = new MerchantAccountRequest()
.individual()
.firstName("Jane")
.lastName("Doe")
.email("jane@14ladders.com")
.phone("5553334444")
.dateOfBirth("1981-11-19")
.ssn("456-45-4567")
.address()
.streetAddress("111 Main St")
.locality("Chicago")
.region("IL")
.postalCode("60622")
.done()
.done();
Result<MerchantAccount> result = gateway.merchantAccount().update("blue_ladders_store", request);
MerchantAccount merchantAccount = result.getTarget();
merchantAccount.getIndividualDetails().getFirstName();
// Jane
Only the last 4 digits of the SSN will be returned after a successful update since the field contains sensitive data.
Business details
If the sub-merchant is a registered business, you can update the DBA name, legal name, tax ID, and address fields.
- Java
MerchantAccountRequest request = new MerchantAccountRequest()
.business()
.legalName("Jane's Ladders")
.dbaName("Jane's Ladders")
.taxId("98-7654321")
.address()
.streetAddress("111 Main St")
.locality("Chicago")
.region("IL")
.postalCode("60622")
.done()
.done();
Result<MerchantAccount> result = gateway.merchantAccount().update("blue_ladders_store", request);
MerchantAccount merchantAccount = result.getTarget();
merchantAccount.getBusinessDetails().getLegalName();
// Jane's Ladders
Note that the business
details are optional and are in addition to the individual
details that are always required. See Onboarding Sub-merchants for more information.
Funding details
The funding
section controls where Braintree will disburse the settled funds. The fields can be updated as follows:
- Java
MerchantAccountRequest request = new MerchantAccountRequest()
.funding()
.descriptor("Blue Ladders")
.destination(MerchantAccount.FundingDestination.BANK)
.email("funding@blueladders.com")
.mobilePhone("071101307")
.accountNumber("1123581321")
.routingNumber("071101307")
.done();
Result<MerchantAccount> result = gateway.merchantAccount().update("blue_ladders_store", request);
MerchantAccount merchantAccount = result.getTarget();
merchantAccount.getFundingDetails().getRoutingNumber();
// 071101307
Only the last 4 digits of the account number will be returned after a successful update since the field contains sensitive data.