diff --git a/xxclient/src/main/java/io/elixxir/xxclient/callbacks/GroupMessageListener.kt b/xxclient/src/main/java/io/elixxir/xxclient/callbacks/GroupMessageListener.kt
index 4947c26694d7f262c9dbfcee8d92a0733e3fed0f..c08dcd1f8ffb8f7272526ec4e8872d0d1eb910ba 100644
--- a/xxclient/src/main/java/io/elixxir/xxclient/callbacks/GroupMessageListener.kt
+++ b/xxclient/src/main/java/io/elixxir/xxclient/callbacks/GroupMessageListener.kt
@@ -1,16 +1,20 @@
 package io.elixxir.xxclient.callbacks
 
 import bindings.GroupChatProcessor
+import io.elixxir.xxclient.models.BindingsModel.Companion.decode
+import io.elixxir.xxclient.models.GroupChatMessage
+import io.elixxir.xxclient.utils.ReceptionId
+import io.elixxir.xxclient.utils.RoundId
 
 interface GroupMessageListener {
     val name: String
 
     fun onMessageReceived(
-        decryptedMessage: ByteArray?,
+        decryptedMessage: GroupChatMessage?,
         message: ByteArray?,
-        receptionId: ByteArray?,
+        receptionId: ReceptionId?,
         ephemeralId: Long,
-        roundId: Long,
+        roundId: RoundId,
         error: Exception?
     )
 }
@@ -27,7 +31,12 @@ open class GroupChatProcessorAdapter(
         error: Exception?
     ) {
         listener.onMessageReceived(
-            decryptedMessage, message, receptionId, ephemeralId, roundId, error
+            decode<GroupChatMessage>(decryptedMessage),
+            message,
+            receptionId,
+            ephemeralId,
+            roundId,
+            error
         )
     }
 
diff --git a/xxclient/src/main/java/io/elixxir/xxclient/group/Group.kt b/xxclient/src/main/java/io/elixxir/xxclient/group/Group.kt
index ee3d291133ca0d6141af7f603a7d53406bacde58..a174b490375670dc740ce7ca0dd74daa1cb9c565 100644
--- a/xxclient/src/main/java/io/elixxir/xxclient/group/Group.kt
+++ b/xxclient/src/main/java/io/elixxir/xxclient/group/Group.kt
@@ -1,13 +1,15 @@
 package io.elixxir.xxclient.group
 
+import io.elixxir.xxclient.models.BindingsModel.Companion.decodeArray
+import io.elixxir.xxclient.models.GroupMember
 import bindings.Group as GroupBindings
 
 interface Group {
     val createdMs: Long
-    val createdNano:Long
+    val createdNano: Long
     val id: ByteArray
     val initMessage: ByteArray
-    val membership:ByteArray
+    val membership: List<GroupMember>
     val name: ByteArray
     val serialize: ByteArray
 }
@@ -23,8 +25,8 @@ open class GroupAdapter(
         get() = group.id
     override val initMessage: ByteArray
         get() = group.initMessage
-    override val membership: ByteArray
-        get() = group.membership
+    override val membership: List<GroupMember>
+        get() = decodeArray(group.membership)
     override val name: ByteArray
         get() = group.name
     override val serialize: ByteArray
diff --git a/xxclient/src/main/java/io/elixxir/xxclient/models/GroupChatMessage.kt b/xxclient/src/main/java/io/elixxir/xxclient/models/GroupChatMessage.kt
new file mode 100644
index 0000000000000000000000000000000000000000..d28624e58e99280882e7d6fdd13962c7fb7e85d9
--- /dev/null
+++ b/xxclient/src/main/java/io/elixxir/xxclient/models/GroupChatMessage.kt
@@ -0,0 +1,12 @@
+package io.elixxir.xxclient.models
+
+import io.elixxir.xxclient.utils.Payload
+import io.elixxir.xxclient.utils.UserId
+
+data class GroupChatMessage(
+    val groupId: ByteArray,
+    val senderId: UserId,
+    val messageId: ByteArray,
+    val payload: Payload,
+    val timestamp: Long
+) : BindingsModel
\ No newline at end of file
diff --git a/xxclient/src/main/java/io/elixxir/xxclient/models/GroupMember.kt b/xxclient/src/main/java/io/elixxir/xxclient/models/GroupMember.kt
new file mode 100644
index 0000000000000000000000000000000000000000..153fea7ace518d2a438a7787b123ed8e277cf540
--- /dev/null
+++ b/xxclient/src/main/java/io/elixxir/xxclient/models/GroupMember.kt
@@ -0,0 +1,12 @@
+package io.elixxir.xxclient.models
+
+
+data class GroupMember(
+    val id: ByteArray,
+    val dhKey: DHKey
+) : BindingsModel
+
+data class DHKey(
+    val value: String,
+    val fingerprint: Int
+) : BindingsModel
\ No newline at end of file