diff --git a/main.go b/main.go
index 930e10f09bd749b22d53fe465ed7326a33b06e8d..62eafe71a3d6ef1c223d6102ed9fd072997cc9a8 100644
--- a/main.go
+++ b/main.go
@@ -82,6 +82,12 @@ func main() {
 	js.Global().Set("InitializeBackup", js.FuncOf(wasm.InitializeBackup))
 	js.Global().Set("ResumeBackup", js.FuncOf(wasm.ResumeBackup))
 
+	// bindings/errors.go
+	js.Global().Set("CreateUserFriendlyErrorMessage",
+		js.FuncOf(wasm.CreateUserFriendlyErrorMessage))
+	js.Global().Set("UpdateCommonErrors",
+		js.FuncOf(wasm.UpdateCommonErrors))
+
 	<-make(chan bool)
 	os.Exit(0)
 }
diff --git a/wasm/errors.go b/wasm/errors.go
new file mode 100644
index 0000000000000000000000000000000000000000..940571357e084f86034093d416fc5ed13d01810b
--- /dev/null
+++ b/wasm/errors.go
@@ -0,0 +1,59 @@
+////////////////////////////////////////////////////////////////////////////////
+// Copyright © 2020 xx network SEZC                                           //
+//                                                                            //
+// Use of this source code is governed by a license that can be found in the  //
+// LICENSE file                                                               //
+////////////////////////////////////////////////////////////////////////////////
+
+//go:build js && wasm
+
+package wasm
+
+import (
+	"gitlab.com/elixxir/client/bindings"
+	"syscall/js"
+)
+
+// CreateUserFriendlyErrorMessage will convert the passed in error string to an
+// error string that is user-friendly if a substring match is found to a
+// common error. Common errors is a map that can be updated using
+// UpdateCommonErrors. If the error is not common, some simple parsing is done
+// on the error message to make it more user-accessible, removing backend
+// specific jargon.
+//
+// Parameters:
+//   - args[0] - an error returned from the backend (string).
+//
+// Returns
+//  - A user-friendly error message. This should be devoid of technical speak
+//    but still be meaningful for front-end or back-end teams (string).
+func CreateUserFriendlyErrorMessage(_ js.Value, args []js.Value) interface{} {
+	return bindings.CreateUserFriendlyErrorMessage(args[0].String())
+}
+
+// UpdateCommonErrors updates the internal error mapping database. This internal
+// database maps errors returned from the backend to user-friendly error
+// messages.
+//
+// Parameters:
+//  - args[0] - contents of a JSON file whose format conforms to the example
+//    below (string).
+//
+// Example Input:
+//  {
+//    "Failed to Unmarshal Conversation": "Could not retrieve conversation",
+//    "Failed to unmarshal SentRequestMap": "Failed to pull up friend requests",
+//    "cannot create username when network is not health": "Cannot create username, unable to connect to network",
+//  }
+//
+// Returns:
+//  - throws a TypeError if the JSON cannot be unmarshalled.
+func UpdateCommonErrors(_ js.Value, args []js.Value) interface{} {
+	err := bindings.UpdateCommonErrors(args[0].String())
+	if err != nil {
+		Throw(TypeError, err.Error())
+		return nil
+	}
+
+	return nil
+}