Sofort Payment Method

  • Posts: 7
  • Thank you received: 1
8 years 2 months ago #230647

hi
is there a update on this issue? i am having exactly the same problems "Must not be empty"...
and the additional code for the sofort.php did not help.

Please Log in or Create an account to join the conversation.

  • Posts: 12953
  • Thank you received: 1778
8 years 2 months ago #230654

Hello,

Giving us more details of your issue, and about the errors that you are having through some screenshots for example will probably help us to understand it.

Please Log in or Create an account to join the conversation.

  • Posts: 21
  • Thank you received: 2
8 years 2 months ago #230762

Our Programmer fixed it because at sofort they saw that the plugin was asking to much info.

I will see if i can send the changed files.

The following user(s) said Thank You: Mohamed Thelji, afatz

Please Log in or Create an account to join the conversation.

  • Posts: 7
  • Thank you received: 1
8 years 2 months ago #230771

to get the code would be great!

the problem itself is that when hikashop redirects to sofort.com an error occurs. in the api log of sofort following messages appear:
multipay.sr.shipping_address.country_code Must not be empty.
multipay.sr.invoice_address.country_code Must not be empty.
multipay.sr.invoice_address.firstname Must not be empty.
multipay.sr.invoice_address.lastname Must not be empty.
multipay.sr.invoice_address.street Must not be empty.
multipay.sr.invoice_address.zipcode Must not be empty.
multipay.sr.invoice_address.city Must not be empty.
multipay.sr.shipping_address.firstname Must not be empty.
multipay.sr.shipping_address.lastname Must not be empty.
multipay.sr.shipping_address.street Must not be empty.
multipay.sr.shipping_address.zipcode Must not be empty.
multipay.sr.shipping_address.city Must not be empty.
multipay.sr.logic_error Activate this product in your project settings.

it seems like the method was changed to multipay which needs more parameters. and worst of all it is not part of my contract. so i don´t know where but the method needs to be changed back!

EDIT: the sofort plugin from hikashop version 2.5 is working just fine...

Last edit: 8 years 2 months ago by shiddy.
The following user(s) said Thank You: afatz

Please Log in or Create an account to join the conversation.

  • Posts: 2
  • Thank you received: 0
8 years 2 months ago #230787

Hi all,

I can confirm "shiddy's" post. With Hika version 2.5 it works again. After updating to hika version 2.6.0 we had troubles with the sofort.plugin. We also had the "multipay" problem and no payment was possible.

Anyway, we are also very interessted to get the fixed code from "immagine1967"

THANK YOU Shiddy!!

Last edit: 8 years 2 months ago by afatz.

Please Log in or Create an account to join the conversation.

  • Posts: 12953
  • Thank you received: 1778
8 years 2 months ago #230849

Hello,

it seems like the method was changed to multipay which needs more parameters. and worst of all it is not part of my contract. so i don´t know where but the method needs to be changed back!

EDIT: the sofort plugin from hikashop version 2.5 is working just fine...

That's weird because from the begining the Sofort payment plugin is using the "Multipay" method, especially the SofortLib_Multipay Library

The solution will probably be to talk about it and also about the "multipay.sr.logic_error" error to the Sofort support.

Last edit: 8 years 2 months ago by Mohamed Thelji.

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 1
8 years 2 months ago #231697

Hello,
we have exactly the same problem with Sofort payment.

The message log shows also
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>shipping_address.country_code</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.country_code</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.firstname</field>

and so on.
Tried to download the latest Sofort plugin but it didnt't help. Also have Hikashop 2.6.1.
Is there any update or a corrected version of the plugin ?


There are no kangaroos in Austria! ;-)

Please Log in or Create an account to join the conversation.

  • Posts: 12953
  • Thank you received: 1778
8 years 2 months ago #231708

Hello,
As I said through my last post :
Regarding your "Must not be empty" errors, you should probably test it by adding through the "sofort.php" file, these lines :

if(isset($order->cart->billing_address))
			$Sofort->setSofortlastschriftAddress($order->cart->billing_address->address_firstname, $order->cart->billing_address->address_lastname, $order->cart->billing_address->address_street, '', $order->cart->billing_address->address_post_code, $order->cart->billing_address->address_city, $order->cart->billing_address->address_title, $order->cart->billing_address->address_country->zone_code_2);
just after this line :
$Sofort->setNotificationUrl($notify_url);

Last edit: 8 years 2 months ago by Mohamed Thelji.

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 1
8 years 1 month ago #231798

I did this but it didn't help


There are no kangaroos in Austria! ;-)

Please Log in or Create an account to join the conversation.

  • Posts: 12953
  • Thank you received: 1778
8 years 1 month ago #231819

Hello,
Can you tell and show me if your error message change when you try it with that customization ? If not, can you talk about it to the Sofort payment platform so that we can have more information about it ? Because setting these information through the "setSofortlastschriftAddress" of their library should do the job.

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 1
8 years 1 month ago #232729

So, tried again:

sofort.php:

$Sofort->setNotificationUrl($notify_url);

if(isset($order->cart->billing_address))
$Sofort->setSofortlastschriftAddress($order->cart->billing_address->address_firstname, $order->cart->billing_address->address_lastname, $order->cart->billing_address->address_street, '', $order->cart->billing_address->address_post_code, $order->cart->billing_address->address_city, $order->cart->billing_address->address_title, $order->cart->billing_address->address_country->zone_code_2);

$Sofort->sendRequest();

On the SOFORT side It shows:

multipay.sr.shipping_address.country_code Must not be empty.
multipay.sr.invoice_address.country_code Must not be empty.
multipay.sr.invoice_address.firstname Must not be empty.
multipay.sr.invoice_address.lastname Must not be empty.
multipay.sr.invoice_address.street Must not be empty.
multipay.sr.invoice_address.zipcode Must not be empty.
multipay.sr.invoice_address.city Must not be empty.
multipay.sr.shipping_address.firstname Must not be empty.
multipay.sr.shipping_address.lastname Must not be empty.
multipay.sr.shipping_address.street Must not be empty.
multipay.sr.shipping_address.zipcode Must not be empty.
multipay.sr.shipping_address.city Must not be empty.
multipay.sr.logic_error Activate this product in your project settings.

Serverdialog:

<?xml version="1.0" encoding="UTF-8"?>
<multipay version="1.0">
<project_id>260436</project_id>
<su/>
<amount>55.5</amount>
<currency_code>EUR</currency_code>
<reasons>
<reason>beXXXXXX FeXXX XX riXXXXX</reason>
<reason/>
</reasons>
<user_variables>
<user_variable>XX</user_variable>
<user_variable>X</user_variable>
</user_variables>
<sr>
<order_id>72</order_id>
</sr>
<success_url>htXXXXXXXXXXXXXXXXXXXXXXXXX</success_url>
<success_link_redirect>1</success_link_redirect>
<abort_url>htXXXXXXXXXXXXXXXXXXXXXXXXX</abort_url>
<timeout_url>htXXXXXXXXXXXXXXXXXXXXXXXXX</timeout_url>
<notification_urls>
<notification_url>htXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</notification_url>
</notification_urls>
</multipay>

Response:

<?xml version="1.0" encoding="UTF-8"?>
<new_transaction>
<transaction>123368-260436-56E13B9E-D2C0</transaction>
<payment_url> www.sofort.com/payment/go/23c6abc0125416...adc85ac2d6ae3fb18016 </payment_url>
<sr>
<errors>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>shipping_address.country_code</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.country_code</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.firstname</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.lastname</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.street</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.zipcode</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>invoice_address.city</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>shipping_address.firstname</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>shipping_address.lastname</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>shipping_address.street</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>shipping_address.zipcode</field>
</error>
<error>
<code>8010</code>
<message>Must not be empty.</message>
<field>shipping_address.city</field>
</error>
<error>
<code>8057</code>
<message>Activate this product in your project settings.</message>
</error>
</errors>
</sr>
</new_transaction>

Hope it helps!
Regards, Eva


There are no kangaroos in Austria! ;-)

Please Log in or Create an account to join the conversation.

  • Posts: 77
  • Thank you received: 4
  • Hikashop Business
8 years 1 month ago #232739

As a hint, you need to set these 2 as well:

$Sofort->setSofortrechnungShippingAddress('a','b','c','1','123','f','2','DE');
$Sofort->setSofortrechnungInvoiceAddress

I got it working as a test with this, but it needs also this:

multipay.sr.logic_error Activate this product in your project settings.

No idea how to activate it.

Please Log in or Create an account to join the conversation.

  • Posts: 77
  • Thank you received: 4
  • Hikashop Business
8 years 1 month ago #232744

OK, found it.
Just remove this line in

sofort.php

Line to remove or comment:
$Sofort->setSofortrechnungOrderId($order->order_id);

Then it works again.
Otherwise it uses "Sofort Rechnung" as payment method and there the adresses are required.

The following user(s) said Thank You: Mohamed Thelji, Herm

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 1
8 years 1 month ago #232754

Hello,

I modified my sofort.php as suggested:

$transactionId = 0;
$Sofort = new SofortLib_Multipay($configkey);
$Sofort->setSofortueberweisung();
$Sofort->setAmount($amount,$this->currency->currency_code);
$Sofort->setReason($order_text);
$Sofort->addUserVariable($order->order_id);
/* $Sofort->setSofortrechnungOrderId($order->order_id); */
$Sofort->addUserVariable($method_id);
$Sofort->setSuccessUrl($return_url);
$Sofort->setAbortUrl($cancel_url);
$Sofort->setTimeoutUrl($cancel_url);
$Sofort->setNotificationUrl($notify_url);

if(isset($order->cart->billing_address))
$Sofort->setSofortlastschriftAddress($order->cart->billing_address->address_firstname, $order->cart->billing_address->address_lastname, $order->cart->billing_address->address_street, '', $order->cart->billing_address->address_post_code, $order->cart->billing_address->address_city, $order->cart->billing_address->address_title, $order->cart->billing_address->address_country->zone_code_2);

$Sofort->setSofortrechnungShippingAddress('a','b','c','1','123','f','2','DE');
$Sofort->setSofortrechnungInvoiceAddress('a','b','c','1','123','f','2','DE');

$Sofort->sendRequest();

if($Sofort->isError()) {
//PNAG-API didn't accept the data
echo $Sofort->getError();
return false;
} else {
//buyer must be redirected to $paymentUrl else payment cannot be successfully completed!
$this->redirect_url = $Sofort->getPaymentUrl();
//header('Location: '.$this->redirect_url);
}

But the errors are still the same :-(

multipay.sr.shipping_address.country_code Must not be empty.
multipay.sr.invoice_address.country_code Must not be empty.
multipay.sr.invoice_address.firstname Must not be empty.
multipay.sr.invoice_address.lastname Must not be empty.
multipay.sr.invoice_address.street Must not be empty.
multipay.sr.invoice_address.zipcode Must not be empty.
multipay.sr.invoice_address.city Must not be empty.
multipay.sr.shipping_address.firstname Must not be empty.
multipay.sr.shipping_address.lastname Must not be empty.
multipay.sr.shipping_address.street Must not be empty.
multipay.sr.shipping_address.zipcode Must not be empty.
multipay.sr.shipping_address.city Must not be empty.
multipay.sr.logic_error Activate this product in your project settings.

Any more ideas?


There are no kangaroos in Austria! ;-)

Please Log in or Create an account to join the conversation.

  • Posts: 77
  • Thank you received: 4
  • Hikashop Business
8 years 1 month ago #232773

Remove all this:

if(isset($order->cart->billing_address))
$Sofort->setSofortlastschriftAddress($order->cart->billing_address->address_firstname, $order->cart->billing_address->address_lastname, $order->cart->billing_address->address_street, '', $order->cart->billing_address->address_post_code, $order->cart->billing_address->address_city, $order->cart->billing_address->address_title, $order->cart->billing_address->address_country->zone_code_2);

$Sofort->setSofortrechnungShippingAddress('a','b','c','1','123','f','2','DE');
$Sofort->setSofortrechnungInvoiceAddress('a','b','c','1','123','f','2','DE');



Do not add any address. Otherwise it takes SOFORT Rechnung instead of SOFORT Überweisung

From the original sofort.php file just remve/comment this one line:
$Sofort->setSofortrechnungOrderId($order->order_id);
(as you already did).

The following user(s) said Thank You: eurokompass.com

Please Log in or Create an account to join the conversation.

  • Posts: 12953
  • Thank you received: 1778
8 years 1 month ago #232778

Hello Eva,

You should probably talk about the "Activate this product in your project settings" error message and the "setSofortlastschriftAddress" function of their library which is supposed to to send them the details about the address to the Sofort team, because you are not supposed to have these issues if you are correctly sending them your customer billing address by having the "Address" action via "Hikashop->System->Configuration->Checkout".

Note that I also sent them an email regarding these issues to Sofort, but can you give us a temporary back-end and FTP access to your website so that we can directly test and debug it ? You can send it through our contact form (please attach the link to that thread with your message) : www.hikashop.com/support/contact-us.html

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 1
8 years 1 month ago #232844

Hello,

removed the address settings but still no success:

$Sofort = new SofortLib_Multipay($configkey);
$Sofort->setSofortueberweisung();
$Sofort->setAmount($amount,$this->currency->currency_code);
$Sofort->setReason($order_text);
$Sofort->addUserVariable($order->order_id);
/* $Sofort->setSofortrechnungOrderId($order->order_id); */
$Sofort->addUserVariable($method_id);
$Sofort->setSuccessUrl($return_url);
$Sofort->setAbortUrl($cancel_url);
$Sofort->setTimeoutUrl($cancel_url);
$Sofort->setNotificationUrl($notify_url);

/*
if(isset($order->cart->billing_address))
$Sofort->setSofortlastschriftAddress($order->cart->billing_address->address_firstname, $order->cart->billing_address->address_lastname, $order->cart->billing_address->address_street, '', $order->cart->billing_address->address_post_code, $order->cart->billing_address->address_city, $order->cart->billing_address->address_title, $order->cart->billing_address->address_country->zone_code_2);

$Sofort->setSofortrechnungShippingAddress('a','b','c','1','123','f','2','DE');
$Sofort->setSofortrechnungInvoiceAddress('a','b','c','1','123','f','2','DE');
*/

$Sofort->sendRequest();


I don't know, if you compare with the Sofort API documentation, it looks differently
github.com/sofort/sofortlib-php/blob/mas...fortueberweisung.php

I check with the customer regarding ftp and backend access and come back to you!
Thanks, Eva


There are no kangaroos in Austria! ;-)

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 1
8 years 1 month ago #233680

Hello,

sent you ftp access and backend access via mail.
The plugin can be found at
/web/administrator/components/com_hikashop/extensions/plg_hikashoppayment_sofort

Thanks, Eva


There are no kangaroos in Austria! ;-)

Please Log in or Create an account to join the conversation.

  • Posts: 12953
  • Thank you received: 1778
8 years 1 month ago #233949

Hello Eva,
I just contacted the Sofort platform and they told us that :

The functions you have mentioned were used in our outdated products 'SOFORT
Invoice' and 'SOFORT Debit'.
We don't offer these products anymore to our merchants and customers since
4 years.
That is why some customers see this error 'multipay.sr.logic_error Activate
this product in your project settings'. For that products normally a
project should be created in the merchants menu which is not possible.

So we just asked them the last Library/Documentation and a test account so that we can update the Sofort payment method.

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 1
8 years 1 month ago #234301

Thanks for the information.
Is there something we should do now? The only product my customer sees is the "Sofort Überweisung" (sofort transferal). I can't find any place where this could be changed ...

Kind Regards,
Eva


There are no kangaroos in Austria! ;-)

Please Log in or Create an account to join the conversation.

Time to create page: 0.174 seconds
Powered by Kunena Forum