Import bank-statement CSV rows for a customer
Accepts rows parsed from a bank-statement CSV in the accountant portal and posts them to the selected "deposit to" account. accountId is polymorphic — an integration_account id (Mercury/Ramp/Plaid), a bank_account id (legacy/manual), or a gl_account id (direct Chart-of-Accounts selection) — and is resolved to a concrete GL account before any rows are written. Rows are deduped by a stable (company, account/entity, date, amount, normalized description) identity stored in transactions.external_id, so re-uploading the same file produces zero duplicates. The command carries the concrete legal entity; it is mandatory for a direct GL-account import and must match any connected account owner. The categorization engine runs on the newly imported set. When the async job service is configured (the production default) the request returns 202 with a pending job to poll via the import-jobs endpoint; account resolution and row processing happen in the worker, and failures surface on the job record. Servers without the job service process synchronously and return 200 with the final summary.
Request
- Base URL: https://api.medianfi.com/api/v1
- URL: https://api.medianfi.com/api/v1/accountant/companies/{customerId}/transactions/import
- Auth: one of:
- HTTP bearer
- API key in header X-API-Key
Request body
Response
Import processed synchronously (job service not configured)
Example response
{
"data": {
"resolvedAccount": {
"label": "1015 Personal Checking"
}
}
}Changes
No recorded changes to this operation across all 1 revision of this API.