**Summary:** I wanted to see if I can synchronize Firefox and ProtonPass passwords. It works more or less. One just need to pay attention to using only one or another for saving passwords and if later wanted to switch, just delete outdated app passwords database and import other app passwords. NOTE: If you choose to delete ProtonPass logins and import 3rd party logins, it will possibly NOT import your 2FA secret and aliases (you would have to move these to a separate vault before deleting everything else!
**Here is exactly written on what i did and what I have faced in July 2024** (maybe later version of the Proton Pass will work better).
After backing up Firefox browser data/profile and exporting its passwords at "about:logins" page (three dots in the top corner), i have deleted all Firefox passwords (from same three dots menu). Then enabled Firefox passwords import (there were no import entry in that three dots menu) by going to "about:config" and searching for "signon.management.page.fileImport.enabled" double-clicking "false" to set it to "true". Reloaded "about:logins" page and then again using three dots menu imported the .csv export file made by the Proton Pass. Result:
```
New logins added: 1,808
Existing logins updated: 0
Duplicate logins found: 28 (not imported)
Errors: 12 (not imported)
```
Under details, i could see which rows was problematic (only problem type was "Missing url") and after opening .csv file in a Calc editor i could see that the problematic rows were indeed "missing url" (or anything) in "url" row but the "name" field had the domain name. The problematic rows were almost exclusively Proton aliases (and these does not need any fixing and their later import into Proton Pass failed anyway - in the current version of the Pass that I have used), yet not knowing that at the moment, I have fixed all rows with missing url by copying name into url and prefixing with https:// using Linux command:
`awk 'BEGIN{FS=OFS=","} $3=="" {$3="https://" $2} 1' "input.csv" > output_tmp && mv output_tmp "output.csv"`
For Windows, this may work: `for /f "tokens=1-7 delims=," %a in (input.csv) do @echo %a,%b,%c,%d,%e,%f,%g,%h,%i >> output_tmp && move /y output_tmp output.csv`
Upon import of the fixed file, there was same number of errors and this time it was "Missing password".
I did insert a random passwords by modifying previous command like this: `awk 'BEGIN{FS=OFS=","} $5=="" {$5="ng21@Ak" $9} 1' "input.csv" > tmp && mv tmp "output.csv"`
.csv file can be opened inside LibreOffice Calc (or other table processor), where it is visible in easy to read format.
So after all, import from Proton Pass using .csv file was successful (despite a few harmless errors).
**Opposite direction - synchronizing from Firefox to ProtonPass** may be problematic. At least in my case was. Because Proton Pass did not delete any duplicates. So if Proton Pass is outdated and Firefox has all ProtonPass items(logins) + new items, it can be done as follows, yet please note that deleting Pass logins and importing 3rd party app logins (Firefox) will possibly not import 2FA settings, so if you are using 2FA, make sure you save private keys so you can setup it again later - keys are visible when editing login with 2FA):
Export Proton Pass for backup purpose. Create new vault and move to it all email aliases (meaning aliases not regular logins). Delete vault with logins and create new one and fill it with Firefox .csv file.
I have been told that it is not safe to enable 2FA and use Pass as an authenticator. For Proton account 2FA I am using not only Pass but also KeePassXC as a backup solution (for the case when Pass logout and requires 2FA code in order to login - and in such a case you can not get the 2FA code out of Pass - chicken-egg problem). Yet when using Pass desktop app, maybe logout issue is minimized (it remember my password across reboot and paid Pass is said to work offline).