Sofort ERROR plgVmOnPaymentNotification: no transaction ID

Started by ksfbjoern, January 12, 2015, 13:02:57 PM

Previous topic - Next topic

alatak


alatak

Hello
Hum...
I added more infos in this new version.
Please try it

gba

Hi!

PHP 5.5.28

Here is the sofort.0.log.php with the new version:
Quote2015-10-23 17:28:21 DEBUG plgVmOnPaymentNotification: OK
2015-10-23 17:28:21 VMDEBUG SOFORT: getNotification Var1:
2015-10-23 17:28:21 ERROR plgVmOnPaymentNotification: SOFORT notification return Error Error: :
2015-10-23 17:28:21 ERROR plgVmOnPaymentNotification: no transaction ID for order number151023192701
2015-10-23 17:28:21 VMDEBUG SOFORT: plgVmOnPaymentNotification no transaction ID for order number151023192701 Var1: SofortLib_Notification Object
(
    [_parameters:protected] => Array
        (
        )
    [_response:protected] => Array
        (
        )
    [_transactionId:SofortLib_Notification:private] =>
    [_time:SofortLib_Notification:private] =>
    [_validateOnly:protected] =>
    [_apiVersion:protected] => 1.0
    [errorPos] => global
    [errors] => Array
        (
            [error] => Array
                (
                    [message] => could not parse message
                )
        )
    [warnings] => Array
        (
        )
    [enableLogging] =>
    [errorCountTemp] => 0
    [SofortLibHttp] => SofortLib_Http Object
        (
            [headers] => Array
                (
                   
  • => Authorization: Basic Og==
                        [1] => Content-Type: application/xml; charset=UTF-8
                        [2] => Accept: application/xml; charset=UTF-8
                        [3] => X-Powered-By: PHP/5.5.28
                    )
                [connectionMethod] =>
                [compression] =>
                [proxy] =>
                [url] =>
                [info] =>
                [error] =>
                [httpStatus] => 200
                [_response:protected] =>
            )
        [SofortLibLogger] => SofortLibLogger Object
            (
                [fp] =>
                [maxFilesize] => 1048576
            )
        [_apiKey:protected] =>
        [_userId:protected] =>
        [_products:protected] => Array
            (
               
  • => global
                [1] => sr
                [2] => su
                [3] => sv
                [4] => ls
                [5] => sl
                [6] => sf
            )
        [_logfilePath:SofortLib:private] =>
    )
Kind regards,
Gerald

alatak

Hello
I have fixed 2 issues i found this morning.
It works on my test environnement
but still not for you

the POST is empty, and i still do not understand why
Could it be that you have some protections like a jHackGuard plugin. I checked, but i did not find.

gba

Hi!

I want to try the installation on another webserver.
Could you, please, give me the latest sofort.zip?

Kind regards,
Gerald

gba

Hello!

I just tried the installation on another server - same behaviour.
It would be interesting to test with the latest version of sofort.zip...

Anyone else any idea?

Kind regards,
Gerald

Milbo

After hours being no the webpage, it seems it was a broken "eu cookie" plugin, which created a problem with the session. It leads me again to point on our Stickie
http://forum.virtuemart.net/index.php?topic=78322.0
Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

gba

Hi all!

As we found out, the cookie plugin didn't do any harm.

If I understood it right, the actual reason for this issue is:
SOFORT.de is trying to contact VM using 'www.mywebsite.com/index.php' via POST (here www.mywebsite.com is an example for the domain of the website).
When Joomla!3 is getting this request, it redirects to the SEFed default language URL 'www.mywebsite.com/index.php/de/'.
Due to this redirect, SOFORT.de assumes, the POST request did not succeed and tries it again using 'www.mywebsite.com/index.php/de/' via GET.
But VM tries to process a POST request, not a GET.
This is the real reason, why VM and SOFORT.de do not communicate right, when the Joomla SEF-URL function is ON.

The solution seems to be:
Either Joomla should allow SEF-requests without language shortcut, or VM should have kind of a fallback to process SOFORT.de's second try via GET.

I assume, that the better solution would be the first one.
How can we move the Joomla team to fix that?

Kind regards,
Gerald


gba

Hello all!

A temporary workaround could be to set 'Remove URL Language Code' to 'Yes' in the 'System - Language Filter' plugin.
What do you think about that?

Kind regards,
Gerald

Milbo

Quote from: gba on November 09, 2015, 17:30:26 PM
But VM tries to process a POST request, not a GET.
Nono, VM tries to process the raw! Neither POST, nor GET. The correct configuration is to Remove the language prefix for the default language.
Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

lindapowers

This works for us fine even with language prefix, maybe the fact that we use hidden menu items to cart and vm categories with defined language avoids issues. Also we use a home menu assigned to all languages.