                 }
             }
         }
+        paymentMethod.additionalInfoNeeded = additionalInfoNeeded
+
         
         if let accreditationTime = json["accreditation_time"] as? Int {
             paymentMethod.accreditationTime = accreditationTime
         }
         
-        
-        paymentMethod.additionalInfoNeeded = additionalInfoNeeded
+        var financialInstitutions : [FinancialInstitution] = [FinancialInstitution]()
+        if let financialInstitutionsArray = json["financial_institutions"] as? NSArray {
+            for i in 0..<financialInstitutionsArray.count {
+                if let financialInstitutionsDic = financialInstitutionsArray[i] as? NSDictionary {
+                    financialInstitutions.append(FinancialInstitution.fromJSON(financialInstitutionsDic))
+                }
+            }
+        }
+        paymentMethod.financialInstitutions = financialInstitutions
+        
+        
         return paymentMethod
     }
     

        }
        obj["additional_info_needed"] = String(additionalInfoJson.characters.dropLast())
      
        var settingsJson = " "
        for setting in self.settings {
            settingsJson.append(setting.toJSONString() + ",")
        }
        obj["settings"] = String(settingsJson.characters.dropLast())

        
        return obj

    obj1.name == obj2.name &&
    obj1.paymentTypeId == obj2.paymentTypeId &&
    obj1.settings == obj2.settings &&
    obj1.additionalInfoNeeded == obj2.additionalInfoNeeded &&
    obj1.financialInstitutions == obj2.financialInstitutions
    
    return areEqual
}
