diff --git a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py
index fbb0ebc..532e19c 100644
--- a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py
+++ b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_connector.py
@@ -3,30 +3,31 @@
 # For license information, please see license.txt
 
 from __future__ import unicode_literals
-import frappe
 from frappe import _
-import requests
+from frappe.utils.password import get_decrypted_password
 from plaid import Client
 from plaid.errors import APIError, ItemError
 
+import frappe
+import requests
+
 class PlaidConnector():
 	def __init__(self, access_token=None):
 
-		if not(frappe.conf.get("plaid_client_id") and frappe.conf.get("plaid_secret") and frappe.conf.get("plaid_public_key")):
-			frappe.throw(_("Please complete your Plaid API configuration before synchronizing your account"))
+		plaid_settings = frappe.get_single("Plaid Settings")
 
 		self.config = {
-			"plaid_client_id": frappe.conf.get("plaid_client_id"),
-			"plaid_secret": frappe.conf.get("plaid_secret"),
-			"plaid_public_key": frappe.conf.get("plaid_public_key"),
-			"plaid_env": frappe.conf.get("plaid_env")
+			"plaid_client_id": plaid_settings.plaid_client_id,
+			"plaid_secret": get_decrypted_password("Plaid Settings", "Plaid Settings", 'plaid_secret'),
+			"plaid_public_key": plaid_settings.plaid_public_key,
+			"plaid_env": plaid_settings.plaid_env
 		}
 
-		self.client = Client(client_id=self.config["plaid_client_id"],
-			secret=self.config["plaid_secret"],
-			public_key=self.config["plaid_public_key"],
-			environment=self.config["plaid_env"]
-		)
+		self.client = Client(client_id=self.config.get("plaid_client_id"),
+			secret=self.config.get("plaid_secret"),
+			public_key=self.config.get("plaid_public_key"),
+			environment=self.config.get("plaid_env")
+			)
 
 		self.access_token = access_token
 
@@ -78,4 +79,4 @@
 				transactions.extend(response['transactions'])
 			return transactions
 		except Exception:
-			frappe.log_error(frappe.get_traceback(), _("Plaid transactions sync error"))
\ No newline at end of file
+			frappe.log_error(frappe.get_traceback(), _("Plaid transactions sync error"))
diff --git a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.js b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.js
index ace4fbf..0ffbb87 100644
--- a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.js
+++ b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.js
@@ -4,8 +4,18 @@
 frappe.provide("erpnext.integrations");
 
 frappe.ui.form.on('Plaid Settings', {
-	link_new_account: function(frm) {
-		new erpnext.integrations.plaidLink(frm);
+	enabled: function(frm) {
+		frm.toggle_reqd('plaid_client_id', frm.doc.enabled);
+		frm.toggle_reqd('plaid_secret', frm.doc.enabled);
+		frm.toggle_reqd('plaid_public_key', frm.doc.enabled);
+		frm.toggle_reqd('plaid_env', frm.doc.enabled);
+	},
+	refresh: function(frm) {
+		if(frm.doc.enabled) {
+			frm.add_custom_button('Link a new bank account', () => {
+				new erpnext.integrations.plaidLink(frm);
+			});
+		}
 	}
 });
 
@@ -19,20 +29,10 @@
 
 	init_config() {
 		const me = this;
-		frappe.xcall('erpnext.erpnext_integrations.doctype.plaid_settings.plaid_settings.plaid_configuration')
-			.then(result => {
-				if (result !== "disabled") {
-					if (result.plaid_env == undefined || result.plaid_public_key == undefined) {
-						frappe.throw(__("Please add valid Plaid api keys in site_config.json first"));
-					}
-					me.plaid_env = result.plaid_env;
-					me.plaid_public_key = result.plaid_public_key;
-					me.client_name = result.client_name;
-					me.init_plaid();
-				} else {
-					frappe.throw(__("Please save your document before adding a new account"));
-				}
-			});
+		me.plaid_env = me.frm.doc.plaid_env;
+		me.plaid_public_key = me.frm.doc.plaid_public_key;
+		me.client_name = frappe.boot.sitename;
+		me.init_plaid();
 	}
 
 	init_plaid() {
@@ -104,4 +104,4 @@
 				});
 		}, __("Select a company"), __("Continue"));
 	}
-};
\ No newline at end of file
+};
diff --git a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.json b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.json
index ed51c4e..9903048 100644
--- a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.json
+++ b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.json
@@ -1,161 +1,96 @@
 {
- "allow_copy": 0, 
- "allow_events_in_timeline": 0, 
- "allow_guest_to_view": 0, 
- "allow_import": 0, 
- "allow_rename": 0, 
- "beta": 0, 
- "creation": "2018-10-25 10:02:48.656165", 
- "custom": 0, 
- "docstatus": 0, 
- "doctype": "DocType", 
- "document_type": "", 
- "editable_grid": 1, 
- "engine": "InnoDB", 
+ "creation": "2018-10-25 10:02:48.656165",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "enabled",
+  "column_break_2",
+  "automatic_sync",
+  "section_break_4",
+  "plaid_client_id",
+  "plaid_secret",
+  "column_break_7",
+  "plaid_public_key",
+  "plaid_env"
+ ],
  "fields": [
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "enabled", 
-   "fieldtype": "Check", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Enabled", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "default": "0",
+   "fieldname": "enabled",
+   "fieldtype": "Check",
+   "label": "Enabled"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "depends_on": "eval:doc.enabled==1", 
-   "fieldname": "automatic_sync", 
-   "fieldtype": "Check", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Synchronize all accounts every hour", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "default": "0",
+   "depends_on": "eval:doc.enabled==1",
+   "fieldname": "automatic_sync",
+   "fieldtype": "Check",
+   "label": "Synchronize all accounts every hour"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "depends_on": "eval:(doc.enabled==1)&&(!doc.__islocal)", 
-   "fieldname": "link_new_account", 
-   "fieldtype": "Button", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Link a new bank account", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
+   "depends_on": "eval:doc.enabled==1",
+   "fieldname": "plaid_client_id",
+   "fieldtype": "Data",
+   "in_list_view": 1,
+   "label": "Plaid Client ID",
+   "reqd": 1
+  },
+  {
+   "depends_on": "eval:doc.enabled==1",
+   "fieldname": "plaid_secret",
+   "fieldtype": "Password",
+   "in_list_view": 1,
+   "label": "Plaid Secret",
+   "reqd": 1
+  },
+  {
+   "depends_on": "eval:doc.enabled==1",
+   "fieldname": "plaid_public_key",
+   "fieldtype": "Data",
+   "in_list_view": 1,
+   "label": "Plaid Public Key",
+   "reqd": 1
+  },
+  {
+   "depends_on": "eval:doc.enabled==1",
+   "fieldname": "plaid_env",
+   "fieldtype": "Data",
+   "in_list_view": 1,
+   "label": "Plaid Environment",
+   "reqd": 1
+  },
+  {
+   "fieldname": "column_break_2",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "section_break_4",
+   "fieldtype": "Section Break"
+  },
+  {
+   "fieldname": "column_break_7",
+   "fieldtype": "Column Break"
   }
- ], 
- "has_web_view": 0, 
- "hide_heading": 0, 
- "hide_toolbar": 0, 
- "idx": 0, 
- "image_view": 0, 
- "in_create": 0, 
- "is_submittable": 0, 
- "issingle": 1, 
- "istable": 0, 
- "max_attachments": 0, 
- "modified": "2018-12-14 12:51:12.331395", 
- "modified_by": "Administrator", 
- "module": "ERPNext Integrations", 
- "name": "Plaid Settings", 
- "name_case": "", 
- "owner": "Administrator", 
+ ],
+ "issingle": 1,
+ "modified": "2019-08-13 17:00:06.939422",
+ "modified_by": "Administrator",
+ "module": "ERPNext Integrations",
+ "name": "Plaid Settings",
+ "owner": "Administrator",
  "permissions": [
   {
-   "amend": 0, 
-   "cancel": 0, 
-   "create": 1, 
-   "delete": 1, 
-   "email": 1, 
-   "export": 0, 
-   "if_owner": 0, 
-   "import": 0, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 0, 
-   "role": "System Manager", 
-   "set_user_permissions": 0, 
-   "share": 1, 
-   "submit": 0, 
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "print": 1,
+   "read": 1,
+   "role": "System Manager",
+   "share": 1,
    "write": 1
   }
- ], 
- "quick_entry": 0, 
- "read_only": 0, 
- "read_only_onload": 0, 
- "show_name_in_global_search": 0, 
- "sort_field": "modified", 
- "sort_order": "DESC", 
- "track_changes": 0, 
- "track_seen": 0, 
- "track_views": 0
+ ],
+ "sort_field": "modified",
+ "sort_order": "DESC"
 }
\ No newline at end of file
diff --git a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py
index 8d31e24..4af1d74 100644
--- a/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py
+++ b/erpnext/erpnext_integrations/doctype/plaid_settings/plaid_settings.py
@@ -16,8 +16,13 @@
 
 @frappe.whitelist()
 def plaid_configuration():
-	if frappe.db.get_value("Plaid Settings", None, "enabled") == "1":
-		return {"plaid_public_key": frappe.conf.get("plaid_public_key") or None, "plaid_env": frappe.conf.get("plaid_env") or None, "client_name": frappe.local.site }
+	if frappe.db.get_single_value("Plaid Settings", "enabled"):
+		plaid_settings = frappe.get_single("Plaid Settings")
+		return {
+			"plaid_public_key": plaid_settings.plaid_public_key,
+			"plaid_env": plaid_settings.plaid_env,
+			"client_name": frappe.local.site
+		}
 	else:
 		return "disabled"
 
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 2f74d54..7c1d8a0 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -625,6 +625,7 @@
 erpnext.patches.v12_0.update_ewaybill_field_position
 erpnext.patches.v12_0.create_accounting_dimensions_in_missing_doctypes
 erpnext.patches.v11_1.set_status_for_material_request_type_manufacture
+erpnext.patches.v12_0.move_plaid_settings_to_doctype
 execute:frappe.reload_doc('desk', 'doctype','dashboard_chart_link')
 execute:frappe.reload_doc('desk', 'doctype','dashboard')
 execute:frappe.reload_doc('desk', 'doctype','dashboard_chart_source')
diff --git a/erpnext/patches/v12_0/move_plaid_settings_to_doctype.py b/erpnext/patches/v12_0/move_plaid_settings_to_doctype.py
new file mode 100644
index 0000000..8e60d33
--- /dev/null
+++ b/erpnext/patches/v12_0/move_plaid_settings_to_doctype.py
@@ -0,0 +1,22 @@
+# Copyright (c) 2017, Frappe and Contributors
+# License: GNU General Public License v3. See license.txt
+
+from __future__ import unicode_literals
+import frappe
+
+def execute():
+	frappe.reload_doc("erpnext_integrations", "doctype", "plaid_settings")
+	plaid_settings = frappe.get_single("Plaid Settings")
+	if plaid_settings.enabled:
+		if not (frappe.conf.plaid_client_id and frappe.conf.plaid_env \
+			and frappe.conf.plaid_public_key and frappe.conf.plaid_secret):
+			plaid_settings.enabled = 0
+		else:
+			plaid_settings.update({
+				"plaid_client_id": frappe.conf.plaid_client_id,
+				"plaid_public_key": frappe.conf.plaid_public_key,
+				"plaid_env": frappe.conf.plaid_env,
+				"plaid_secret": frappe.conf.plaid_secret
+			})
+		plaid_settings.flags.ignore_mandatory = True
+		plaid_settings.save()
