English Version

Cash In

Fund deposits in API Broker are a 100% asynchronous process. The user initiates a bank transfer, and API Broker detects the deposit, associates it with the corresponding brokerage account, and notifies the partner via webhook. Your platform does not need to poll: it simply receives the event and updates the user's balance.


How it works

User transfers → Bank detects the credit → API Broker identifies the depositor by tax ID
      → Credits to investment_account_id → Fires deposit_create webhook → Your platform updates UI

The entire process occurs automatically. There is no endpoint the partner needs to call to initiate or confirm a deposit.


Deposit models

Option 1 — BIND bank collection account (default)

Adcap Securities provides collection bank accounts (CBU) in ARS and USD at BIND bank. The user transfers from any bank account to that CBU.

API Broker monitors movements in real time, identifies the depositor by tax ID, and credits the balance to the corresponding brokerage account.

Key requirement: the source CBU of the transfer must belong to the same account holder as the brokerage account (same tax ID). Deposits from third parties are not credited.

Option 2 — PSP or Bank collection account

For partners operating as Payment Service Providers or Banks looking to reduce latency and costs. In this model, Adcap operates a collection account (CVU/CBU) within the partner's PSP and/or Bank.

This requires the partner to develop and expose a set of endpoints so that API Broker can query movements, balances, and instruct transfers.


Webhook: deposit_create

When a deposit is successfully credited, API Broker sends a POST notification to the webhook URL configured for your platform.

Configuration

Your platform must expose a public URL accessible from the internet, without VPN. The URL is registered during the Homologation stage together with the API Broker team, and during integration in test environments.

Topic

deposit_create

Example payload

{
  "topic": "deposit_create",
  "items": [
    {
      "investment_account_id": 43101,
      "currency_id": "ARS",
      "amount": 50000.00,
      "trade_date": "2025-06-10",
      "status_id": "COMPLETED",
      "deposit_id": 631184,
      "tax_identification_value": "20301234567"
    }
  ]
}

Field descriptions

FieldTypeDescription
topicstringAlways "deposit_create"
investment_account_idintBrokerage account that received the deposit
currency_idstringCredited currency: ARS or USD
amountnumberCredited amount
trade_datestringDate of the credit (format YYYY-MM-DD)
status_idstringDeposit status. Always COMPLETED for this event
deposit_idintUnique deposit identifier in API Broker. Useful for reconciliation
tax_identification_valuestringDepositor's tax ID

Expected webhook response

Your endpoint must respond with HTTP 200 to confirm receipt. If API Broker does not receive a successful response, it will retry the delivery.

Process the webhook idempotently: the same event may be received more than once due to retries. Use deposit_id as the deduplication key.


Balance query after deposit

Once the webhook is received, you can confirm the credited balance by querying the account statement:

GET /api/portfolio/accountstatements/{investment_account_id}

If the Balance Remuneration module is active, include:

GET /api/portfolio/accountstatements/{investment_account_id}?include_remunerated_balance=true

Supported currencies

CurrencyBIND collection accountPSP collection account
ARS (Argentine Pesos)✅✅
USD (US Dollars)✅Subject to agreement

Operational considerations

  • Identification is by tax ID: if the depositor does not have an active brokerage account or the tax ID does not match the source CBU, the deposit will not be credited automatically.
  • Do not use polling: there is no need to periodically query the deposit status. The deposit_create webhook is the reliable crediting signal.
  • deposit_id is unique per deposit and can be used for traceability and reconciliation.
  • USD deposits are credited to the user's brokerage account and can be used directly to operate MEP Dollar or USD-denominated mutual funds.

Key points to remember

  1. The process is 100% asynchronous: there is no confirmation endpoint — everything arrives via webhook.
  2. Implementing deposit_create is mandatory for your platform to know when the balance is available.
  3. Use deposit_id for deduplication: process the event idempotently.
  4. Identification is by tax ID: the source CBU must match the brokerage account holder.
  5. Respond with HTTP 200 to the webhook to avoid unnecessary retries.
  6. Onboarding is a prerequisite: without an active investment_account_id, the deposit cannot be associated with the user.

Did this page help you?