> ## Documentation Index
> Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How to upload positions from Excel

> Position Import workbooks based on `PortfolioTemplate.xlsx`, with validation and checks of position effects for the configured import process before applying changes or retrying a failed upload

Applies to **Positions** → **Position Import** with **Import Summary** and **Import** controls.
The procedure covers the standard Excel position template.

Position Import validates workbook rows before applying their position changes.
The workbook identifies destination books and instrument details.

## What is required before importing?

* Access to **Position Import**.
* An Excel `.xlsx` workbook using the supported position-import structure.
* Owner or edit access to the active existing books named in the workbook.
* Confirmation of the account's ordinary or snapshot import process.

An Excel report export is not automatically a valid position-import workbook.
Organization-specific mappings can change the expected fields.
Confirm any custom file format with the configured support contact.

## How do ordinary and snapshot imports differ?

| Import process | Effect |
| - | - |
| Ordinary import with **NEW** rows | Adds position effects to the named books. Reimporting rows can add quantities again. |
| Configured snapshot import | Compares supplied holdings with existing positions and applies differences. Missing holdings can generate offsets. |

Snapshot mode is configured outside this screen.
Its validation preview shows parsed input, not necessarily the final calculated changes.
Use the agreed snapshot process when that mode is enabled.

For ordinary imports, a zero-quantity **NEW** row does not clear an existing holding.
Amendment and removal actions require their own identifiers and rules.
Review **Action** in the summary; do not treat every row as a new trade.

## How to prepare the workbook

1. Open **Positions** in the sidebar.
2. Select **Position Import**.
3. Select the download icon beside **Download Excel Template for Portfolio Positions:**.
4. Open `PortfolioTemplate.xlsx`.
5. Remove worksheets that are not required for the intended import.
6. Replace the retained worksheets' sample rows with the intended position data.
7. Enter each destination book in **Book**.
8. Enter the intended **Trade Date**, where required.
9. Enter **Trade Time** separately when a specific time is needed.
10. Save the workbook as `.xlsx`.

Preserve the retained instrument worksheet names and required headings.
Required instrument fields vary by worksheet.
The supplied template contains example data; review all retained rows before uploading.

<Frame caption="Position Import provides the standard template and file-selection area. Production, October 19, 2026.">
  <img src="https://mintcdn.com/activeviam/CzXHsipTpivw-IMh/risk-and-pricing/atoti-risk-services/images/user-guide/position-import.jpg?fit=max&auto=format&n=CzXHsipTpivw-IMh&q=85&s=11c25ee6146406456c171f4580d00199" alt="Position Import with the template download icon and workbook drop area" width="1600" height="1111" data-path="risk-and-pricing/atoti-risk-services/images/user-guide/position-import.jpg" />
</Frame>

Standard **Trade Date** and **Trade Time** fields combine into a UTC timestamp.
An omitted trade date uses the new trade's creation time.
A time embedded only in **Trade Date** is not preserved as the separate trade time.

## How to validate the file

1. Select **Drop file or click here**.
2. Choose the prepared workbook.
3. Wait for **Validating...** to finish.
4. Select the file card or its **Info** control.

Verify that **Import Summary** opens for a valid file.
If **Validation Errors** appears, review its worksheet and row messages.
Correct the workbook and upload the corrected file before proceeding.
Warnings can remain on a valid file and still require review.

## How to apply the import

1. Review **Book Name**, **Action**, **Quantity**, and the instrument details in **Import Summary**.
2. Check any **Client Transaction Id** values against the intended operation.
3. Review **Warnings**, where present.
4. Check **NEW BOOK**, **BOOK EXISTS**, and the list of books to be created.

<Warning>
  Import can change positions and create books from previously unknown names.
  Check spelling carefully: an unintended book name can create an unintended book.
  Some changes can persist before a later import error.
</Warning>

5. Select **Import** once.

Verify that **Position Import Successful!** appears and the file card is removed.
If **Import Failed** appears, inspect the affected books before correcting and resubmitting the workbook.
Do not assume a failed request left every position unchanged.

**Remove** dismisses a file card; it does not reverse an already completed import.
New books are not automatically attached to a portfolio by this upload.

## How to check the imported positions

1. Open **Positions** → **Portfolios Overview**.
2. Select **Books**.
3. Find an affected book using **Search**.
4. Expand the book.
5. Select its refresh control if the book was already open.
6. Review **Position** and **Quantity** against the intended changes.

Repeat the check for each affected book.
The current table can contain multiple effects for an instrument.
It excludes trades dated after the current time.
Use appropriate report dates when checking historical or future-dated effects.

[Launch a report](../login-and-start/launch-a-report) for a portfolio containing the relevant books to calculate updated results.
Use [Individual trades](./update-individual-records) for the separate manual booking workflow.
