Jump to content
the_painkiller

Neobjeví se objednávka při platbě přes PayPal

Recommended Posts

Zdravím,

když mi zákazník zaplatí přes PayPal nebo kartou přes bránu PayPalu, tak sice vše proběhne hladce, peníze přijdou, ale objednávka se neobjeví v systému, zákazníkovi nepřijde potvrzení a mě zase nepřijde echo, že je nová objednávka.

Např. dneska vím o jedné objednávce jenom díky tomu, že mi PayPal napsal, že dorazili peníze. U zákazníka potom vidím, že sice naplnil košík, ale není k němu přiřazena žádná objednávka a nelze s tím nic dělat.

Nevíte, náhodou čím to? Či jak to napravit?

Díky.

Jirina

Share this post


Link to post
Share on other sites

Muselo by se to odladit. Podle popisu se něco stane po návratu z PayPalu. V té chvíli se vytváří objednávka a posílají emaily.

 

Něco se tam děje.Zažil jsem třeba, že po návratu z platby kartou pomocí modulu ATOS nezná prohlížeč cookies (a tím pádem přihlášeného zákazníka) a získá o něm pojem až později - neboli totální zmatek.

Share this post


Link to post
Share on other sites

Asi by bylo dobré vypsat nějaký info o shopu, verze, modifikace, verze paypal, hosting...

Share this post


Link to post
Share on other sites

Mam podobny problem a asi aj viem dovod ale nepotesim ta.

 

Zrejme zakaznici nepockaju, kym to paypal vsetko dokonci a skoro vypnu stranku. Takze paypal poziadavku dostane - potvrdi ju klientovi ale nestihne potvrdit tvojmu shopu.

Share this post


Link to post
Share on other sites

V úvodu chybí podstatná informace. Jestli se to stalo jen jednou nebo se to pravidelně opakuje anebo jestli se to děje pokaždé.

Share this post


Link to post
Share on other sites

Mám podobný problém. Po zaplacení již nepřijde email zákazníkovi z Prestashopu s potvrzením objednávky, ani platby.  A nepřijde email i s odkazem na stažení Přílohy (virtuální produkt).

Platba proběhne, přijde potvrzovací email  od Pay Pal (Receipt for Your Payment to..) i se objednávka zobrazí v systému. Verze Presty 1.5.6.0, modul Paypalu ten který byl v systému. díky za radu

Share this post


Link to post
Share on other sites

Dělá ta ztracená objednávku díru v číselné řadě v seznamu objednávek (čísla 1, 2, ztracená 3, 4, 5)?

 

Tento případ se řeší už dlouho a technicky je to vždy nějaké selhání v procesu zpracování objednávky (chyba platebního modulu, odeslání emailu aj.). Objednávka se uloží do databáze, i její položky a možná i další záznamy do jiných tabulek, ale neuloží se záznam do historie objednávek a vzhledem ke způsobu, jakým PrestaShop dělá dotaz do databáze pro získání seznamu objednávek, pak objednávka bez historie v seznamu chybí.

 

Řešení ani odhalení, kde přesně se děje chyba, neznám.

Share this post


Link to post
Share on other sites

Tento problém řeším taky, bohužel mi nikdo není schopen poradit.

 

Po vyzkoušení tipů, které jsem našel na internetu jsem skončil u výrobce modulu - zpřístupnil jsem jim sandbox kopii eshopu a zatím se nic neděje.

 

 

Kdokoliv by uměl pomoci, budu rád..

 

Petr

Share this post


Link to post
Share on other sites

nějaké info o paypal produktu... sice pro starší prestu, ale všechny body jsou dost pravděpodobný i u vás

 

http://www.presto-changeo.com/en/content/10-fixing-paypal-problems

 

ještě jednou opakuji, je to pro verze 1.2 a 1.3, takže to neberte jako modlu a nenadávejte mi, když to nebude fungovat zrovinka vám.

 

další info můžete hledat

http://www.prestashop.com/forums/topic/290686-prestashop-does-not-receive-order-confirmation-from-paypal/?p=1500191

http://forge.prestashop.com/browse/PNM-823

http://www.prestashop.com/forums/topic/292806-no-customer-info-received-by-paypal/?p=1572874

 

a mnoho, mnoho dalších možností při hledání na anglickém fóru.

 

info pro diskutující... vždy uvádějte verzi presty a verzi modulu (verzi presty uvedl jeden... jak pak může někdo pomoci - ikdyby chtěl?) no a pak obligátní odpověď JAKCRABBITa (divím se, že ji nepoužil i v tomto případě)... hledejte :)

Share this post


Link to post
Share on other sites

Ahoj,

 

hledal jsem dost, píšu protože si s tím opravdu nevím rady.

 

Verze e-shopu je 1.3.6.0, Paypal v1.7.1, paypal účet je ověřený - typ business, měna česká koruna - testoval jsem jak objednávku v eurech, tak v korunách, vždy to skončí stejně - návrat zpět na platební metodu, žádná php chyba se nevypíše, košík zůstane plný, peníze přes Paypal přijdou, ale objednávka v eshopu chybí.

 

Dokola čtu příspěvky ve fórech s různými nápady, ani jeden příspěk není označený za vyřešený, u mě také nic nezábírá.

Share this post


Link to post
Share on other sites

Ahoj,

 

hledal jsem dost, píšu protože si s tím opravdu nevím rady.

 

Verze e-shopu je 1.3.6.0, Paypal v1.7.1, paypal účet je ověřený - typ business, měna česká koruna - testoval jsem jak objednávku v eurech, tak v korunách, vždy to skončí stejně - návrat zpět na platební metodu, žádná php chyba se nevypíše, košík zůstane plný, peníze přes Paypal přijdou, ale objednávka v eshopu chybí.

 

Dokola čtu příspěvky ve fórech s různými nápady, ani jeden příspěk není označený za vyřešený, u mě také nic nezábírá.

Tohle se dost špatně odchytává. Podstatný je zjistit, na kterém řádku v modulu nebo přímo PrestaShopu to zkolabuje. Pak už jen krůček od nápravy.

 

Dělám to tak, že dávám na různá místa do kódu příkaz die('konec'); a pokud mi to vypisuje konec, tak jsem pořád před výskytem chyby. Pokud to přestane, tak chyba nastala. Takhle se dá příjít na přesný řádek v kódu.

 

PayPal module v PS1.3 je celkem jednoduchý, takže bych se zaměřil na krokování v metodě PaymentModule::validateOrder.

Share this post


Link to post
Share on other sites

Ahoj,

 

jestli chápu dobře, mám debugovat /classes/PaymentModule.php - function validateOrder.

 

Ještě jsem si všiml další věci - po provedení platby není nakupující z Paypalu automaticky přesměrován zpět na e-shop, ale zůstane na Paypalu.

 

Na e-shop přejde až po stisknutí tlačítka zpět na eshop - problém bude asi i v tomto, ne? Po platbě by měl zákazník automaticky přejít zpět na eshop a eshop pak může zpracovat objednávku, ne?

 

Podle poznámky v pluginu má být v paypal účtu autoreturn nastaveno na false, Data transfer na false - nastavil jsem obě na true, 

 

Postupoval jsem tedy:

 

1) do funkce validateOrder jsem umístil die('neco")

2) nastavil autoreturn url na http://www.e-flyfish.com/modules/paypal/validation.php

3) zapnul jsem Payment Data Transfer

4) provedl objednávku

6) výsledek je že platba na paypal odešla, návrat do eshopu na http://www.e-flyfish.com/history.php?slowvalidation a žádná objednávka, jen tabulku s historii objednávek

 

Po nezdaru jsem postupoval dál:

 

1) Nastavil jsem autoreturn i Data transfer na false

2) do souboru validation.php v paypal modulu napsal umístil die

3) učinil objednávku

4) výsledek je opět negativní - skončil jsem opět na http://www.e-flyfish.com/history.php?slowvalidation

5) žádná objednávka, jen tabulku s historii objednávek

 

Jak ten platební modul funguje a co se má po návratu z paypalu dít? A proč vždy skončím na /history.php?slowvalidation?

 

EDIT:

 

E-shop posílá paypalu formulář, kde v inputech figurují dvě URL:

 

<input type="hidden" name="return" value="http://www.e-flyfish.com/order-confirmation.php?key=cookies_vygenerovany_klic_&id_cart=100973&id_module=78&slowvalidation" />

<input type="hidden" name="notify_url" value="http://www.e-flyfish.com/modules/paypal/validation.php" />

 

Problém tedy bude někde tady:

 

https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/formbasics/

https://developer.paypal.com/webapps/developer/docs/classic/products/instant-payment-notification/

http://stackoverflow.com/questions/2865970/notify-url-of-paypal

 

- tedy IPN.. zřejmě

 

Petr

Edited by petr kapsia (see edit history)

Share this post


Link to post
Share on other sites

Pokud se uloží záznam do historie a už ne do objednávek, pak bych chybu hledal v:

 

$new_history->addWithemail(true, $extraVars);

Share this post


Link to post
Share on other sites

Našel jsem řešení problému - samozřejmě triviální.

 

Podle mých zpráv od klienta přestaly fungovat Paypal platby v květnu - v té době musel Paypal provést změny jak v snadboxu, tak v ostré administraci, protože Paypal přestal posílat do e-shopu IPN (Instant Payment Notification).

 

Zkrátka jsem zjistil, že po paypal platbě neproběhne volání /modules/paypal/validation.php - řešením je v administraci Paypal účtu povolíte posílání IPN a nastavíte tam URL.

 

Holt problém se v nepřehledné situaci hledá špatně.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More