Micro-Deposits

Link a customer’s bank account, verify it with micro-deposits, then start ACH transactions—all in one smooth flow.

Prerequisites

  • Customer: you need their user_id in Paynote (via Create a Customer)
  • Webhooks: listener for funding-source events (e.g. PendingVerified) (docs.paynote.io)

Flow Overview

  1. Create Funding Source (Unverified)
  2. Send Micro-Deposits
  3. Verify Micro-Deposits
  4. (Optional) Hosted Verification Redirect

1. Create Funding Source (Unverified)

POST https://{env}-paynote.seamlesschex.com/v2/funding-source
Authorization: Bearer sk_{YOUR_KEY}
Content-Type: application/json

{
  "user_id": "usr_abc123",
  "routing_number": "021000021",
  "account_number": "000123456789",
  "account_type": "checking",
  "nickname": "Main Checking"
}

2. Send Micro-Deposits

POST https://{env}-paynote.seamlesschex.com/v2/funding-source/initiate/verification
Authorization: Bearer sk_{YOUR_KEY}
Content-Type: application/json

{
  "funding_source_id": "fs_123abc"
}
  • Sends two small deposits to the customer’s bank (arrive in 1–2 business days) (docs.paynote.io)

3. Verify Micro-Deposits

POST https://{env}-paynote.seamlesschex.com/v2/funding-source/verify
Authorization: Bearer sk_{YOUR_KEY}
Content-Type: application/json

{
  "funding_source_id": "fs_123abc",
  "amounts": [0.12, 0.15]
}
  • Submit the exact deposit amounts → status updates to Verified (docs.paynote.io)

4. Hosted Verification Redirect (Optional)

Let customers enter amounts in a Paynote-hosted modal instead of your own UI:

https://paynote.seamlesschex.com/#/bank-account/{PUBLIC_KEY}/{USER_ID}/{FUNDING_SOURCE_ID}?successUrl={SUCCESS_URL}&cancelUrl={CANCEL_URL}
  • Replace placeholders with your values
  • Successful entry fires your webhook with status Verified (docs.paynote.io)

After Verification

Once your funding source is Verified, you can immediately:


Summary

  1. Link bank account → get funding_source_id
  2. Send micro-deposits → wait for deposits
  3. Verify amounts → status becomes Verified
  4. (Optional) Use hosted UI for deposit entry

This consolidated flow ensures only verified accounts get charged—and gives your customers a smooth ACH onboarding experience.