Hi everybody,

on 16.9. we released our newest Project on an OXID EE 4.5.1.
Today the finacial accounter told me that he has a lot of payments, that did not execute an order. Usually I would search in the paymentmodule. But the problem was not continuous and it just happened in connection with the "Trusted Shop Käuferschutz". I Looked in the source and found a almost criminal part of native Oxid code in the finalizeOrder function of oxorder.

// executing payment (on failure deletes order and returns error code)
        // in case when recalcualting order, payment execution is skipped
        if ( !$blRecalculatingOrder ) {
            $blRet = $this->_executePayment( $oBasket, $oUserPayment );
            if ( $blRet !== true ) {
                return $blRet;
            }
        }

        // executing TS protection
        if ( !$blRecalculatingOrder && $oBasket->getTsProductId()) {
            $blRet = $this->_executeTsProtection( $oBasket );
            if ( $blRet !== true ) {
                return $blRet;
            }
        }

This means to me that first a payment is executed and THEN depending on the success of a Trustedshops call Order will be saved or skipped. I Looked at the Orders and I found, some orders with successful Trusted Shops Calls. but ther must be many, that failed an Money was already sent.

In my opinion there shouldnt be any interface call after a payment, that could prohibit the execution of the order.

Please share some thoughts about a better Implementation of TrustedShops Käufeschutz within the finalizeOrder.

best regards,
Reinhard Vogl
_______________________________________________
dev-general mailing list
[email protected]
http://dir.gmane.org/gmane.comp.php.oxid.general

Reply via email to