Initiate micro-deposits
Micro-deposits help confirm bank account ownership, helping reduce fraud and the risk of unauthorized activity. Use this method to initiate the micro-deposit verification, sending two small credit transfers to the bank account you want to confirm.
If you request micro-deposits before 4:15PM ET, they will appear that same day. If you request micro-deposits any time after 4:15PM ET, they will appear the next banking day. When the two credits are initiated, Moov simultaneously initiates a debit to recoup the micro-deposits.
Micro-deposits initiated for a sandbox bank account will always be $0.00 / $0.00 and instantly verifiable once initiated.
You can simulate micro-deposit verification in test mode. See our test mode guide for more information.
To access this endpoint using an access token
you'll need to specify the /accounts/{accountID}/bank-accounts.write scope.
curl -X POST "https://api.moov.io/accounts/{accountID}/bank-accounts/{bankAccountID}/micro-deposits" \
-H "Authorization: Bearer {token}" \
-H "x-moov-version: v2024.01.00" \
mc, _ := moov.NewClient()
var accountID string
var bankAccountID string
mc.MicroDepositInitiate(ctx, accountID, bankAccountID)
using Moov.Sdk;
var sdk = new MoovClient(xMoovVersion: "<value>");
var res = await sdk.BankAccounts.InitiateMicroDepositsAsync(
accountID: "ced90412-ebb4-43d4-a171-0a929ed5fb37",
bankAccountID: "f2b630cc-a8ae-44be-970b-7bed47b2d952"
);
// handle responsepackage hello.world;
import io.moov.sdk.Moov;
import io.moov.sdk.models.components.Security;
import io.moov.sdk.models.errors.GenericError;
import io.moov.sdk.models.operations.InitiateMicroDepositsResponse;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GenericError, Exception {
Moov sdk = Moov.builder()
.xMoovVersion("v2024.01.00")
.security(Security.builder()
.username("")
.password("")
.build())
.build();
InitiateMicroDepositsResponse res = sdk.bankAccounts().initiateMicroDeposits()
.accountID("ced90412-ebb4-43d4-a171-0a929ed5fb37")
.bankAccountID("f2b630cc-a8ae-44be-970b-7bed47b2d952")
.call();
// handle response
}
}require 'moov_ruby'
Models = ::Moov::Models
s = ::Moov::Client.new(
x_moov_version: 'v2024.01.00',
)
res = s.bank_accounts.initiate_micro_deposits(account_id: 'ced90412-ebb4-43d4-a171-0a929ed5fb37', bank_account_id: 'f2b630cc-a8ae-44be-970b-7bed47b2d952')
if res.status_code == 200
# handle response
endimport { Moov } from "@moovio/sdk";
const moov = new Moov({
xMoovVersion: "v2024.01.00",
security: {
username: "",
password: "",
},
});
async function run() {
const result = await moov.bankAccounts.initiateMicroDeposits({
accountID: "ced90412-ebb4-43d4-a171-0a929ed5fb37",
bankAccountID: "f2b630cc-a8ae-44be-970b-7bed47b2d952",
});
console.log(result);
}
run();declare(strict_types=1);
require 'vendor/autoload.php';
use Moov\MoovPhp;
use Moov\MoovPhp\Models\Components;
$sdk = MoovPhp\Moov::builder()
->setXMoovVersion('v2024.01.00')
->setSecurity(
new Components\Security(
username: '',
password: '',
)
)
->build();
$response = $sdk->bankAccounts->initiateMicroDeposits(
accountID: 'ced90412-ebb4-43d4-a171-0a929ed5fb37',
bankAccountID: 'f2b630cc-a8ae-44be-970b-7bed47b2d952'
);
if ($response->statusCode === 200) {
// handle response
}from moovio_sdk import Moov
from moovio_sdk.models import components
with Moov(
x_moov_version="v2024.01.00",
security=components.Security(
username="",
password="",
),
) as moov:
res = moov.bank_accounts.initiate_micro_deposits(account_id="ced90412-ebb4-43d4-a171-0a929ed5fb37", bank_account_id="f2b630cc-a8ae-44be-970b-7bed47b2d952")
# Handle response
print(res)Response headers
x-request-id
string
required
{
"error": "string"
}Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
{
"error": "string"
}Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Response headers
x-request-id
string
required
Headers
X-Moov-Version
string
Specify an API version.
API versioning follows the format vYYYY.QQ.BB, where
YYYYis the yearQQis the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)BBis the build number, starting at.01, for subsequent builds in the same quarter.- For example,
v2024.01.00is 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.
When no version is specified, the API defaults to v2024.01.00.
Path parameters
accountID
string
required
bankAccountID
string
required