Import {{ detections|length }} file{{ "s" if detections|length != 1 else "" }}

{% for d in detections %} {% if d.parser_name == "schwab" %}
✓ Transaction History — {{ d.row_count }} rows
{{ d.filename }}
{% elif d.parser_name == "schwab_realized_gl" %}
✓ Realized G/L (Schwab) — {{ d.row_count }} lot rows
{{ d.filename }}
{% elif d.parser_name == "robinhood" %}
✓ Transaction History — {{ d.row_count }} rows
{{ d.filename }}
{% else %}
⚠ Unrecognized format
{{ d.filename }} — no parser matched headers
{% endif %} {% endfor %}
{% include "_imports_preview_table.html" %} {% if any_recognized %}
{% if detections|length > 1 %}

Each file is imported into its own account so cross-account wash sales (and the Rev. Rul. 2008-5 IRA-trap classifier) work correctly. Use the same label for multiple files that belong to one account.

{% for d in detections %}
{{ d.filename }}
{% endfor %}
{% for a in accounts %}
{% else %}
{% for a in accounts %}
{% endif %} {# Account type prompt — every fresh account defaults to taxable. If the file actually belongs to an IRA / Roth / 401(k) / HSA, the Rev. Rul. 2008-5 IRA-trap classifier won't kick in until the user flips it at /settings/accounts. Surface this near the label input instead of letting it lurk as a silent wrong-classification. #}
Importing an IRA, Roth, 401(k), or HSA? Each new account is created as taxable by default. Set the correct type at Settings → Account types after import — wash-sale rules differ across tax wrappers (Rev. Rul. 2008-5 IRA trap).

⚠ This is informational only. Consult a tax professional before filing.

{% else %}
None of the uploaded files matched a known broker format. Please drop a Schwab Transaction History or Realized G/L CSV.
{% endif %}