Getting started: Cash vs Deposit/Reference accounts

Hi - apologies for the basic question, but I’m trying to avoid a bunch of portfolio import and setup and then findig I have to start again. I’ve got securities and transactions loaded after a lot of effort, but want to get deposits, withdrawals and dividends etc imported as my next step.

Can’t find the answer through searching.

What’s the proper way to handle the non security account side of things? So far, I have created one Deposit Account (which seems to be a synonym for
Reference Account) for each of my security accounts. I plan to add a different currency Deposit Account one for at least one of these.

But I noticed when importing that PP says that I am not using the field “Cash Account”.

Is this something different? e.g. should I by creating my bank account(s) (Cash Account) alongside the brokerage accounts?


Hi, cash account is deposit account
it’s optional in the import file, as you should be able to select it in the wizard directly

I think often (at least it’s what I’m doing) it’s better to have one deposit account mapped to one security account.

If you want to address deposits, you could still put a ‘cash account’ column in your csv file, with the name of the corresponding deposit account you want to update

Thank-you Spartok.

Cash Account = Deposit Account (= Reference Account)

I see it uses the term Cash Account in the wizard now.

Still can’t get the CSV import to work correctly however. I have columns now for Securities Account and Cash Account, but when the transactions are loaded, the Securities Account I specified ends up in Cash Account and Cash Account ends up in Offset Account

What’s an Offset Account?

Hopefully I’ll be able to contribute a guide somewhere at the end of this as there are so many gotchas along the way which could be avoided.


Scratch that - it seems to be just a column naming issue on the Transactions view (I guess I can rename the columns).

When I look at the individual transactions or other views, I think it has imported correctly.

Still confused by Offset Accounts however. The term shows up on the column name for what is actually the Securities Account when I look at the transactions listed against my Deposit Accounts

Thanks again for your help.

Thank-you. Links to other topics very useful also as I had the same questions about contributing to translations and documentation as user husch. I will write up my learnings when I have this all working.

1 Like

Hi Stuart,
I’v tried to document the import function. As you experienced, it’s not that simple. You can find it in the Reference manual under File > Import. Please let me know if you have any suggestions or where I can improve on the text.

Thank-you. I must admit I only found the manual a little later in the process. I shall read and come back to you with any suggestions (I have written up what I’ve done/found out along the way).



I had a chance to read your guide to importing. It’s very good and I think covers most things. Three comments:

  1. There is an error I think on the final screenshot where you show a Portfolio Transaction import using different currencies. In the Currency Gross Amount column your example shows “USD”. I believe this should be the Gross Amount but in the original currency (i.e. it is a numerical value rather than a text field).

  2. The other problem is not a problem of the guide, but what seems to be a PP bug. Account Transactions (e.g. dividends) do not seem to be able to be entered in different currencies. I’ve posted elsewhere in the German and English forums to see if I’ve missed something.

As far as I can tell, the Exchange Rate column gets ignored in the import and PP then gives an error saying that the Exchange Rate is missing.

Not something you can really address in the guide however.

  1. Minor points where emphasis and signporting may help some:

i) I believe it’s worth saying to include the Securities Account column in imports. It’s easy otherwise to forget to specify the right accounts in the import wizard. Transactions then get loaded into to the wrong account. It’s difficult to reverse that cleanly without deleting all transactions from the account - I wasted a lot of time that way. Including the Securities Account in the CSV from the start avoids this.

ii) Perhaps put a comment at the beginning highlighting that there are key differences needed when currencies of transactions do not match the Security currency. You cover how to do it, but a note early on signposting that readers will need to understand this before diving “might” be helpful. Highlighting for for UK readers that a different “currency” affects them even if they think tehy only have £/GBP stocks would be worthwhile. The whole GBX/GBP import thing wasted hours and hours for me before finding relevant posts.

If you would like anything more specific etc, please let me know. Your guide is a very well written and helpful resource. Is there any way to do sticky posts on this forum? I think tehre should be link at the top of the forums (and not just on teh PP website).


Hi Stuart,

Thank you very much for your valuable comments. Much appreciated!

Indeed, there was an error in the Portfolio Account import section. I have changed it and brought it more in line with the workflow you proposed (always naming the accounts). Doing this, I stumbled upon a few other problems/errors.

  • It makes no sense (like I did) for the CSV file to contain the Gross Account value as this is anyway overwritten by the calculation from: (Net) Value minus fees minus taxes. The field “Currency Gross Amount” however does refer to the currency e.g. “USD” but it is not necessary (see below).
  • In fact, the minimal required info is: (net) Value, the exchange rate and number of shares. As you said, it’s good practice to define expicitly the accounts and not to rely on the default ones. I’ve changed the example in this line.
  • There could also be a potential problem with the format of the numeric fields (such as Exchange Rate) because the example follows the European standard of decimal comma instead of decimal point.

I think that the GBP/GBX issue deserves a special how-to page in the manual. I also have wrestled quite a bit with the Rio Tinto share (listed in GBX on Yahoo but reported in GBP by my broker). If you should like to contribute to the manual for this page, please don’t hesitate to contact me.

Kind regards

Thanks Hugo. One other worth highlighting perhaps is date format. The default YYYY/MM/DD caught me out a lot and it’s easy to miss as the transactions still load.

I have some things written about GBP/GBX import. I’ll tidy it up and let you see.

Sadly I don’t have a solution for importing dividends in this situation and I’m bemused that it seems to be an ignored issue despite the German forum thread on it having 2.5k views.

Hi Stuart,
Looking into your question about dividends, I finally managed to create a CSV-import for a dividend paid in USD but cashed in EUR. Is this what you are looking for?

I’ve described the workflow in Reference > File > Import. Fees and Taxes aren’t yet supported, I think. Is this correct to you?

1 Like


Outstanding! I had not understood what “Currency Gross Amount” was or how to use value and gross amount for foreign currency imports - as you can see from incorrect feedback earlier in the thread.

Thank-you for figuring this out and posting. I’ve just had a quick read through the guide and had a go at importing my dividends again. It’s going to work. I just have one problematic security as it is USD denominated but the dividends were already reported to me in GBP so I need to add exchange rates for those dividends.

Made my day! I’ll have a more thorough read of the guide and come back if there is any feedback I can offer.


I shall come back with some content you can consider for inclusion on GBX/GBP imports. Thanks to your help, I have it working and have just been reconciling accounts.

I think I finally have it correct, but I want to test again as yoru comments above suggest that the Gross Amount and Currency Gross Amount columns are not needed. I just need to have a go like that and see if I can write something which fits with what you have in the manual without too much duplication.

Thanks again.

Hugo - what’s the best way for me to contribute to the manual? I have written some stuff which is nearly finished. I don’t know at the moment the process for submitting something in github (I’ll have to figure out the markup language - but don’t mind that).

Can you give me a couple of pointers or a link to info just on the process of submitting something?


Hi Stuart,
Great! I’m looking forward to it.
From a helicopter view, you need to complete the following steps. I’ll be glad to help you, if you’re stuck somewhere in the process.

I will provide a more detailled text on the README page of PortfolioPerformance Help.

  1. Forking: Forking creates a personal (independent) copy of someone else’s project. This allows you to freely experiment with changes without affecting the original project.

  2. Cloning: Cloning is the process of downloading a copy of the repository from GitHub to your local machine. This allows you to work on the project locally, using your preferred tools and editors.

  3. Committing: Committing is the process of saving your changes locally. In Git, every time after you made changes, you need to commit those changes, which saves a snapshot of your work at that point in time.

  4. Pushing: Pushing is the process of uploading your local repository, including all of your commits, to your GitHub account. This updates your forked repository on GitHub with your latest changes.

  5. Creating a Pull Request: Once you’ve pushed your changes to GitHub, the next step is to notify the original repository maintainers of your changes. This is done by creating a pull request. In the pull request, you propose your changes and request that the original repository maintainers pull your changes into their repository.


Great - I’ll give it a whirl.


Hi Hugo,

I am nearly there on my guide (at least in Word) and have installed Python, Git and MD etc :face_with_spiral_eyes: So hopefully will be able to convert something to MD and contribute to check out soon.

Reading your Import guide again as I go so that I can build on that rather than duplicate. I take my hat off to you as creating these guides with accurate examples is, as you now :smile:, considerably more time-consuming than it may first appear.

Anyway, I think 5. Portfolio Transactions import maybe needs a small edit. At the top you say:

“This type of import requires three fields: Shares, Date, Value”
I think one of Ticker Symbol, ISIN, or WKN is also needed.


Hi Stuart, thanks for letting me know. The required/optional fields are not always very logically implemented. Identification of the security (via Ticker Symbol, ISIN, WKN, or security name) is indeed ‘necessary’ info for most transactions (e.g. sell, buy, …). It is however not ‘required’ in the sense that you can go to the next step in the wizard without it. On the other hand, if the date is missing, the next-button is greyed out and you can’t proceed. But, it does not make much sense to make shares a required field because an interest transaction does not need it. I will try to update the text.

If you need any help with the conversion or uploading, please let me know. I’ll be glad to help. You can always mail me on my mailadress on


Thanks Hugo. After installing Python, Git, mkdocs-material, forking, cloning etc I hit a bunch of errors just trying to get the existing docs to open in the mkdocs server.

I’ve run out of time for now as I need to do other stuff, but I’ve put the first part of what I’ve written up on Google Docs for now. I hope to finish some more I’ve started on about ways to set up Excel or Sheets to make it easier to prep data for import.

Hopefully some people will find this and it may save a bit of time:

1 Like