diff --git a/app/Classes/Modules/Transactions/ControllersLogic/UpdatePaymentTransactionStatusLogic.php b/app/Classes/Modules/Transactions/ControllersLogic/UpdatePaymentTransactionStatusLogic.php
new file mode 100644
index 00000000..11f0a377
--- /dev/null
+++ b/app/Classes/Modules/Transactions/ControllersLogic/UpdatePaymentTransactionStatusLogic.php
@@ -0,0 +1,76 @@
+ 'Updated Transaction',
+ 'message' => 'You have successfully updated a transaction'
+ ];
+ }
+
+ /** @var FetchesTransaction */
+ private $fetchesTransaction;
+
+ /** @var UpdatesTransactionStatus */
+ private $updatesTransactionStatus;
+
+ /** @var DeletesDocument */
+ private $deletesDocument;
+
+ /**
+ * CreatePaymentVerificationDocumentLogic constructor.
+ * @param FetchesTransaction $fetchesTransaction
+ * @param UpdatesTransactionStatus $updatesTransactionStatus
+ * @param DeletesDocument $deletesDocument
+ */
+ public function __construct(FetchesTransaction $fetchesTransaction, UpdatesTransactionStatus $updatesTransactionStatus, DeletesDocument $deletesDocument)
+ {
+ $this->fetchesTransaction = $fetchesTransaction;
+ $this->updatesTransactionStatus = $updatesTransactionStatus;
+ $this->deletesDocument = $deletesDocument;
+ }
+
+ /**
+ * @param Request $request
+ * @return JsonResponse
+ * @throws \App\Classes\Exceptions\MalformedRequestException
+ */
+ public function logic(Request $request) : JsonResponse
+ {
+ $transaction = $this->fetchesTransaction->execute(['id' => $request->route('id')]);
+ $status = $request->route('status');
+
+ $this->updatesTransactionStatus->execute($transaction, $status === 'pending' ? ApprovalStatus::PENDING_VERIFICATION : ApprovalStatus::COMPLETED);
+
+ if ($status == 'pending') {
+ $document = $transaction->documents()->first();
+ if ($document) {
+ $this->deletesDocument->execute($document);
+ }
+ }
+
+ return $this->response([]);
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Transactions/UpdatePaymentTransactionStatusController.php b/app/Http/Controllers/Transactions/UpdatePaymentTransactionStatusController.php
new file mode 100644
index 00000000..047bc1dc
--- /dev/null
+++ b/app/Http/Controllers/Transactions/UpdatePaymentTransactionStatusController.php
@@ -0,0 +1,14 @@
+execute($request);
+ }
+}
\ No newline at end of file
diff --git a/resources/assets/vue/components/bookings/elements/PaymentProofComponent.vue b/resources/assets/vue/components/bookings/elements/PaymentProofComponent.vue
index 494427cb..415655a5 100644
--- a/resources/assets/vue/components/bookings/elements/PaymentProofComponent.vue
+++ b/resources/assets/vue/components/bookings/elements/PaymentProofComponent.vue
@@ -41,6 +41,14 @@