Zurück   xt:Commerce Webshop Shop Support > xt:Commerce Shopsoftware Community Area > Shopbereich

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 16.12.2006, 00:05
Neuer Benutzer
 
Registriert seit: 01.11.2006
Beiträge: 6
Standard Paypal-Workflow nicht sauber in V3.04SP2.1

Leider funktioniert der PayPal-Workflow immer noch nicht richtig. Eigentlich müssten alle Shopbetreiber mit der Verison 3.04SP2.1 dieses Problem haben:

Wenn der Kunde eine Bestellung mit PayPal tätigt, wird er zu PayPal weitergeleitet. Daraufhin wird diese Bestellung schon in der Datenbank hinterlegt und ist für den Admin sichtbar. Wenn der Käufer die Bezahlung abbricht, da er z.B. sein PP-Passwort nicht zu Hand hat, kann er nicht zu einem späteren Zeitpunkt mehr bezahlen und der Kunde weiss nicht, ob die Bestellung vollzogen ist oder nicht. Er bekommt ja auch keine Bestellbestätigung. Meldet sich der Kunde nun im Shop wieder an, sieht er als erstes, dass der Warenkorb noch voll ist. Er vermutet also, dass keine Bestellung erfolgte. Schaut er jedoch in sein Kundenkonto, ist dort die nicht bezahlte Bestellung sichtbar. Das ist doch nicht sauber !?!

Wünschenswert wäre für meine Begriffe folgender Work-Flow:
- nach der Bestellung wir diese in die Datenbank hinterlegt
- es erscheint die "Danke-Seite"
- Kunde erhält Bestellbestätigung mit Zahlunsaufforderung in Form eines Links, mit den entsprechenen Daten (E-Mailadresse, Preis, Versandkosten, ...)

Der Kunde kann so den Zeitpunkt der PayPal-Bezahlung selber wählen.

Was meint Ihr?
Ist die Umsetzung dessen durch kleine Codeänderungen mit der Version 3.04SP2.1 mgl.?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #2 (permalink)  
Alt 17.12.2006, 13:06
Neuer Benutzer
 
Registriert seit: 01.11.2006
Beiträge: 6
Standard Kein Interesse an kundenfreundichen PayPal-Workflow?

Nachdem ich feststellen musste, dass kein Interesse an einem kundenfreundlichen PayPal-Workflow besteht, habe ich selber versucht, die oben geschilderte PayPal-Abwicklung umzusetzen.

Als erstes habe ich in der include/modules/payment/paypal.php folgende Zeile auskommentiert:

// $this->form_action_url = 'https://www.paypal.com/cgi-bin/webscr';

Somit wird schon mal eine Bestellung abgelegt, der Kunde erhält eine Bestellbestätigung, der Warenkorb ist leer und im System ist ein Bestellung angelegt worden --> alles Super.

Nun soll in der Bestellbestätigung eine Link zu Paypal integriert werden, so dass der Kunde, wann immer er möchte, die Zahlung durchführen kann. Dazu habe ich in der Mail-Vorlage folgenden Code hinzugefügt:

{if $PAYMENT_METHOD eq 'PayPal'}
Klicken Sie auf den untenstehenden Link, um die Bestellung per PayPal zu bezahlen:
https://www.paypal.com/de/cgi-bin/we...lick&business=email-adresse&item_name=Bestellnummer:{$oID}&amount=??????????&currency_code=EUR&no_shipping=1
{/if}

Leider kenne ich nicht die Variable, in der der Gesamtbetrag steht, der dann auch mit einem Punkt und nicht mit einem Komma die Cents von den Euros trennt.

Kann mir da wenigstens einer helfen? Kommen die Variablen aus der /include/classes/afterbuy.php?

Weiterhin interessiert mich auch die Meinung anderer, zu diesem Worflow.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #3 (permalink)  
Alt 17.12.2006, 19:26
xt:C Sponsor
 
Registriert seit: 22.11.2006
Beiträge: 23
Standard

Wie wäre es denn den Paypal-Link dann auch im Kundenkonto anzugeben, so dass er von dort auch die Zahlung auslösen kann?
Ich finde eine Möglichkeit, die Zahlung später durchzuführen, ist ein Muß. Bei Paypal kann man ja z.B. auch sein Konto erst per Überweisung auffüllen, bevor man die eigentliche Zahlung durchführt.

Eine IPN-Anbindung vermisse ich ja auch, da muß ich mir erstmal die Modulstrukturen genauer ansehen :-/.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #4 (permalink)  
Alt 17.12.2006, 21:35
xt:C Sponsor
 
Registriert seit: 05.04.2006
Beiträge: 166
Standard

Hallo,

die Lösung einen Link bereitzustellen ist meiner Meinung nach sehr vernünftig, hat für alle Seiten nur Vorteile.

Die notwendigen Werte für den Zahlbetrag kommen aus der
TABLE_ORDERS_TOTAL


text - formatierter Wert kommagetrennt mit EUR
value - php zahlenwert, einfach auf 2 Nachkommestellen runden und dann in den Link damit

Funktioniert wunderbar

Gruß
Heiko
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #5 (permalink)  
Alt 18.12.2006, 13:54
Neuer Benutzer
 
Registriert seit: 01.11.2006
Beiträge: 6
Standard Link in Email funktioniert bei mir

Hallo,

erstmal vielen Dank für die ersten Rückmeldungen, dass diese Vorgehensweise eine doch gute Alternative zum eingebauten PayPal-Workflow ist.

Den Link in den E-Mail-Text habe ich jetzt integriert und funktioniert super.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #6 (permalink)  
Alt 18.12.2006, 19:33
xt:Commerce Support Kunde
 
Registriert seit: 03.08.2006
Beiträge: 16
Standard

Zitat:
Zitat von fiedler
Hallo,

erstmal vielen Dank für die ersten Rückmeldungen, dass diese Vorgehensweise eine doch gute Alternative zum eingebauten PayPal-Workflow ist.

Den Link in den E-Mail-Text habe ich jetzt integriert und funktioniert super.
Hallo fiedler,
was genau muss man denn nun machen, bin leider nicht so versiert.

MfG
Perle
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #7 (permalink)  
Alt 19.12.2006, 14:11
Benutzer
 
Registriert seit: 09.10.2006
Beiträge: 51
Standard

Zitat:
Zitat von fiedler
Als erstes habe ich in der include/modules/payment/paypal.php folgende Zeile auskommentiert:

// $this->form_action_url = 'https://www.paypal.com/cgi-bin/webscr';

Somit wird schon mal eine Bestellung abgelegt, der Kunde erhält eine Bestellbestätigung, der Warenkorb ist leer und im System ist ein Bestellung angelegt worden --> alles Super.

Weiterhin interessiert mich auch die Meinung anderer, zu diesem Worflow.
Hallo Fieldler,

die Idee finde ich ganz gut, jetzt nur eine Frage ich habe deine Änderung bis jetzt nicht eingebaut. Wir der Kunde immer noch direkt zu Paypal geleitet und kann dort direkt bezahlen? Oder bekommt er nur noch den PayPal link per Email?
Wir haben auch das Problem dass das PayPal Modul von XT:Commerce nicht feststellen kann ob die Bestellung auch bezahlt wurde. Man muss also immer bei PayPal nachschauen.

Mit meinen alten Oscommerce Shop ging das PayPalIPN Modul, aber ich musste ja auch XT umsteigen.

Falls jemand vom SUPPORT TEAM das liest, soll ja vorkommen.
Wann gibt es ein funktionierendes PayPal IPN Modul bzw wann gibt es eine neue Version ;-((.
Irgendwann hab ihr mal was von Ende des Jahres geschrieben
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #8 (permalink)  
Alt 22.12.2006, 13:41
Neuer Benutzer
 
Registriert seit: 01.11.2006
Beiträge: 6
Standard PayPal-Link in Bestellbestätigungs-Mail

Hallo,

ich bin leider kein großer Programmierer und daher denke ich, dass meine Code-Manipulation nicht die sauberste ist. Aber es funktioniert:

Folgende Änderungen habe ich vorgenommen:

1. in /includes/modules/payment/paypal.php folgende Zeile auskommentieren:
[PHP]// $this->form_action_url = 'https://www.paypal.com/cgi-bin/webscr';[/PHP\
--> somit entfällt die direkte Weiterleitung zu PayPal, es wird eine Bestellung angelegt und der Kunde erhält für diese die Bestätigungs-Mail

2. in /sendorders.php --> Code eingefügt (siehe "Eigener Code" ganz unten):
PHP-Code:
if ($_SESSION['customer_id'] == $order_check['customers_id']) {

    
$order = new order($insert_id);

    
$smarty->assign('address_label_customer'xtc_address_format($order->customer['format_id'], $order->customer1'''<br />'));
    
$smarty->assign('address_label_shipping'xtc_address_format($order->delivery['format_id'], $order->delivery1'''<br />'));
    if (
$_SESSION['credit_covers'] != '1') {
        
$smarty->assign('address_label_payment'xtc_address_format($order->billing['format_id'], $order->billing1'''<br />'));
    }
    
$smarty->assign('csID'$order->customer['csID']);
    
    
$order_total $order->getTotalData($insert_id); 
        
$smarty->assign('order_data'$order->getOrderData($insert_id));
        
$smarty->assign('order_total'$order_total['data']);

    
// assign language to template for caching
    
$smarty->assign('language'$_SESSION['language']);
    
$smarty->assign('tpl_path''templates/'.CURRENT_TEMPLATE.'/');
    
$smarty->assign('logo_path'HTTP_SERVER.DIR_WS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/img/');
    
$smarty->assign('oID'$insert_id);
    if (
$order->info['payment_method'] != '' && $order->info['payment_method'] != 'no_payment') {
        include (
DIR_WS_LANGUAGES.$_SESSION['language'].'/modules/payment/'.$order->info['payment_method'].'.php');
        
$payment_method constant(strtoupper('MODULE_PAYMENT_'.$order->info['payment_method'].'_TEXT_TITLE'));
    }
    
$smarty->assign('PAYMENT_METHOD'$payment_method);
    
$smarty->assign('DATE'xtc_date_long($order->info['date_purchased']));

    
$smarty->assign('NAME'$order->customer['name']);
    
$smarty->assign('COMMENTS'$order->info['comments']);
    
$smarty->assign('EMAIL'$order->customer['email_address']);
    
$smarty->assign('PHONE',$order->customer['telephone']);
// eigener Code
    
$smarty->assign('CURRENCY1',$order->info['currency']);
    
$tmp1 eregi_replace ',''.' $order->info['total'] );
    
$tmp2 floatval ($tmp1);
    
$smarty->assign('TOTAL1',$tmp2);
// Ende eigener Code 
3. in templates/.../mail/german/order_mail.txt Link einfügen:
PHP-Code:
Ihre gewählte Zahlungsmethode:
----------------------------------------------------------
{if 
$PAYMENT_METHOD}Zahlungsmethode: {$PAYMENT_METHOD}{/if}
{if 
$PAYMENT_METHOD eq 'PayPal'}


Klicken Sie auf den untenstehenden Linkum die Bestellung per PayPal zu bezahlen:

https://www.paypal.com/de/cgi-bin/webscr?cmd=_xclick&business=<eure email-Adresse>&item_name=Bestellnummer:{$oID}&amount={$TOTAL1}&currency_code={$CURRENCY1}&no_shipping=1

HinweisFalls der Link nicht funktioniertkopieren Sie diesen bitte manuell in das Adressfenster Ihres Browsers.
{/if} 
Das wars.
Über diesen Link in der Bestätigungsmail kommt der Kunde wie bisher auch direkt zu Paypal. Dort wird die Gesamtsumme angezeigt, die er zu bezahlen hat sowie die Empfänger-Adresse (Der Online-Shop) und die Bestellnummer als Zahlungsgrund werden übermitteln.

Der Vorteil ist, dass der Kunde auch zu einem späteren Zeitpunkt bezahlen kann.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #9 (permalink)  
Alt 22.12.2006, 14:17
Benutzer
 
Registriert seit: 09.10.2006
Beiträge: 51
Daumen hoch

Hallo Fiedler,

vielen Dank für die Antwort ich werde über die Feiertage mal deine Änderungen ausprobieren, solche Antworten würde ich mir von dem Support auch gerne wünschen.
Aber vielleicht kann man ja mit der Antwort vom XT:C Meister

********
Beiträge aus dem Support forun sind nicht für das freie Forum bestimmt.
********

und deiner was zusammen basteln
Wobei ich jetzt zwar nicht weis wie man den Zahlungs status Zahlungserinnerung einrichtet, vielleicht meint er ja Orderstatus, Zahlungserinnerung, aber ich werde nach fragen
***************

Geändert von mzanier (22.12.2006 um 14:38 Uhr)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #10 (permalink)  
Alt 30.01.2007, 22:42
Neuer Benutzer
 
Registriert seit: 27.01.2007
Beiträge: 12
Standard Payment PayPal

Bei Tausenderbeträgen wurden diese nicht korrekt übernommen!
Habe den Code in der send_order.php mal abgeändert. Allerdings nur für EUR beträge!

// eigener Code
$smarty->assign('CURRENCY1',$order->info['currency']);
$tmp1 = str_replace ( '.', '', $order->info['total'] );
$tmp2 = eregi_replace ( ',', '.', $tmp1);
$tmp3 = eregi_replace ( ' EUR', '', $tmp2);
//$tmp3 = floatval ($tmp2);
$smarty->assign('TOTAL1',$tmp3);
// Ende eigener Code
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
paypalworkflow, sauber, v304sp21

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus



Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr.

Copyright © 2011 xt:Commerce GmbH / xt:Commerce International Ltd. - All Rights Reserved

xt:Commerce is a SafeCharge brand