Laravel.io
first = {
    "a": {"name": "A", "param": 1},
    "b": {"name": "B", "param": 2}
}
second = {
    "A": {"additional": "asd"},
    "B": {"additional": "dsa"}
}
 
combined = []
for key, value in first.iteritems():
    new = {
        "name": value["name"],
        "param": value["param"],
        "additional": second[value["name"]]["additional"],
        "key": key
    }
    combined.append(new)

print combined

# output: [{'key': 'a', 'name': 'A', 'param': 1, 'additional': 'asd'}, {'key': 'b', 'name': 'B', 'param': 2, 'additional': 'dsa'}]

Please note that all pasted data is publicly available.