diff --git a/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt b/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt
index e3dd4669720cfbecaa59990224c1c14356bf1e88..e83576f837892dd934e0e3967bce63b65b501f7e 100644
--- a/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt
+++ b/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt
@@ -4,11 +4,28 @@ import android.content.BroadcastReceiver
 import android.content.Context
 import android.content.Intent
 import android.util.Log
+import com.sleepee.bondoman.data.model.TransactionDao
+import com.sleepee.bondoman.data.model.TransactionDatabase
+import kotlin.concurrent.thread
 
 class TransactionReceiver : BroadcastReceiver() {
-
+    private lateinit var database: TransactionDatabase
+    private val transactionDao: TransactionDao by lazy {
+        database.getTransactionDao()
+    }
     override fun onReceive(context: Context, intent: Intent) {
+        database = TransactionDatabase.getDatabase(context)
         println(intent.action.toString())
-        println(intent.getStringExtra("title"))
+        val formattedDate = TransactionUtils.getCurrentDate()
+        val title = intent.getStringExtra("title")
+        val amount = intent.getIntExtra("amount", 0)
+        val location = intent.getStringExtra("location")
+        val category = intent.getStringExtra("category")
+        println(amount)
+
+        val transaction = TransactionUtils.convertToTransaction(title.toString(), amount, formattedDate, location.toString(), category.toString())
+        thread {
+            transactionDao.createTransaction(transaction)
+        }
     }
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt
index 8cd91f4052c422523c733df2cd49c4e3dc4a0579..a1f629470b92d0b647bb0753ed50b310b344cb1c 100644
--- a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt
+++ b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt
@@ -16,6 +16,8 @@ import androidx.fragment.app.DialogFragment
 import com.google.gson.Gson
 import com.sleepee.bondoman.R
 import com.sleepee.bondoman.data.model.Transaction
+import com.sleepee.bondoman.data.util.CredentialManager
+import com.sleepee.bondoman.data.util.TokenManager
 import com.sleepee.bondoman.data.util.TransactionUtils
 import org.apache.poi.hssf.usermodel.HSSFWorkbook
 import org.apache.poi.ss.usermodel.FillPatternType
@@ -28,7 +30,7 @@ import java.io.FileOutputStream
 
 
 class SendTransactionDialogFragment : DialogFragment() {
-    private val email = "mindscape.02@gmail.com"
+    private val email = context?.let { CredentialManager.getEmail(it) }
     private val fileName = "Attachment"
     private var format = ".xlsx"
     private val sendVal = 215
diff --git a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt
index 7414db900c11308e604293385432ca1512562f31..c16278c8d124e2d92d301617eb53ab35d786a93a 100644
--- a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt
+++ b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt
@@ -9,6 +9,7 @@ import android.widget.Button
 import android.widget.Toast
 import androidx.fragment.app.Fragment
 import com.sleepee.bondoman.databinding.FragmentSettingsBinding
+import kotlin.random.Random
 
 class SettingsFragment: Fragment() {
     private lateinit var binding: FragmentSettingsBinding
@@ -48,8 +49,22 @@ class SettingsFragment: Fragment() {
 
         acakButton.setOnClickListener {
             Intent().also { intent ->
+
+                val titles = arrayOf("Jalan-Jalan", "Beli Geprek", "Beli Rendang", "Beli Minecraft", "Beli Sayuran", "Donasi", "Honor", "Gajian Cuy", "Jackpot", "Menang Give Away", "Gacor Kang")
+                val tidx = Random.nextInt(titles.size)
+                val pidx = 5
+                val selectedTitle = titles[tidx]
+                val category = if (tidx <= pidx) "Pengeluaran" else "Pemasukan"
+                val amount = Random.nextInt(1000, 100001)
+                val locations = arrayOf("Cisistu", "Sangkuriang", "Dago", "Lembang", "ITB", "Jatinangor")
+                val lidx = Random.nextInt(locations.size)
+                val selectedLocation = locations[lidx]
+
                 intent.setAction("com.sleepee.bondoman.addTransaction")
-                intent.putExtra("title", "Beli Geprek")
+                intent.putExtra("title", selectedTitle)
+                intent.putExtra("amount", amount)
+                intent.putExtra("category", category)
+                intent.putExtra("location", selectedLocation)
                 context?.sendBroadcast(intent)
             }
             Toast.makeText(requireContext(), "Randomized transaction has been broadcasted", Toast.LENGTH_SHORT).show()
@@ -57,6 +72,7 @@ class SettingsFragment: Fragment() {
 
         keluarButton.setOnClickListener{
             // TO DO Implement
+
         }
     }
 }
\ No newline at end of file