Skip to content

Export passwords, notes and TOTPs from Buttercup to Keepassxc

Notifications You must be signed in to change notification settings

kevinoliveira/buttercup-to-keepassxc

Repository files navigation

buttercup-to-keepassxc

Export passwords, notes and TOTPs from Buttercup to Keepassxc

Instructions

  1. Unlock your buttercup vault
  2. Export your vault to CSV (MENU > Current Vault > Export)
  3. Compile the program or download the binary from latest release
    • compile: bun build ./main.ts --compile --outfile bcup2kpass
    • download: releases page
  4. Feed the CSV into the program ./bcup2kpass --input BUTTERCUP_CSV --output KEEPASSXC_CSV
  5. Import the output csv into keepass (MENU > Database > Import)
  6. Finish the import wizard as you wish

Notes

  1. This scritpt works as of September 2024, might not work in the future, use at your own risk
  2. Nested groups will be flatten
  3. Groups with the same name will be merged
  4. Groups from Buttercup's trash will be ignored
  5. Any custom fields that begins with otpauth:// will be exported as TOTP
  6. Any other fields that does not qualify as TOTP will be exported as notes using the following pattern
        FIELD_1_NAME: FIELD_1_CONTENT
        FIELD_2_NAME: FIELD_2_CONTENT
    
  7. CSV fields are proprely escaped and passwords with commas and double quotes will be properly exported
  8. Buttercup does not export dates, therefore 'Created' and 'Last Modified' will be registed as the moment of export
  9. Test/Example files are avaliable on ./examples, the password for both buttercup and keepassxc vauts is banana