public function confirmTransactionObject(TdbPkgShopPaymentTransaction $transaction, $iConfirmedDate)
    {
        if (false === $transaction->fieldConfirmed) {
            $transaction->AllowEditByAll(true);
            $transaction->SaveFieldsFast(
                array('confirmed' => '1', 'confirmed_date' => date('Y-m-d H:i:s', $iConfirmedDate))
            );
            $transaction->AllowEditByAll(false);
            // mark order as paid/unpaid depending on the remaining balance
            $this->updateOrderPaidStatusBasedOnCurrentBalance();
            $this->updateRealUsedVoucherValueBasedOnTransactions($transaction);
        }

        return $transaction;
    }