how to merge 2 Dataframes with different indexes using fuzzy matching in python

i have 2 data frames that look like this:

account name   GM%    Opportunities   score
 
addiso ag      34        3             123
keller         54        24            56
ggt            12        6             230
ikea           21        7             34
electronic     30        2             20

customer       GM%    revenue         score
 
adiso ag       14        300           39
kelleren       24        204           80
ggt sk         10        60            20
Sikea n        5         70            300

i would like to have something like this:

account name   GM%    Opportunities   score       GM%    revenue         score
 
addiso ag      34        3             123       14        300           39
keller         54        24            56        24        204           80
ggt            12        6             230       10        60            20
ikea           21        7             34        5         70            300
electronic     30        2             20        0          0             0

(note that electronic is present in only one of the df and goes at the end)

I would like to merge them on their indexes "customer" and "account name" which are a little different and concatenate the columns. In addition one of the 2 DF has more rows the the other one. df = 521 rows dfG = 914 rows I tried this fuzzy function

def fuzzy_merge(df_1, df_2, key1, key2, threshold=90, limit=2):
    """
    :param df_1: the left table to join
    :param df_2: the right table to join
    :param key1: key column of the left table
    :param key2: key column of the right table
    :param threshold: how close the matches should be to return a match, based on Levenshtein distance
    :param limit: the amount of matches that will get returned, these are sorted high to low
    :return: dataframe with boths keys and matches
    """
    s = df_2[key2].tolist()

    m = df_1[key1].apply(lambda x: process.extract(x, s, limit=limit))    
    df_1['matches'] = m

    m2 = df_1['matches'].apply(lambda x: ', '.join([i[0] for i in x if i[1] >= threshold]))
    df_1['matches'] = m2

    return df_1


from fuzzywuzzy import fuzz
from fuzzywuzzy import process

fuzzy_merge(dfG, df, dfG.index, df.index, threshold=80)

but i get this error:

KeyError: "None of [Index([   'ABS',\n             'ABEARE . PE',\n        'AE',\n       'Br',\n               'BARa',\n                                    'BEEN',\n               'Trelle',\n                                                           'VELO',\n                  'Wit'],\n      dtype='object', name='Customer', length=551)] are in the [columns]"