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.

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 like this: 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.