Autore Topic: PayPal  (Letto 18411 volte)

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
PayPal
« il: 17 Ott 2007, 15:28:56 »
Ciao  TUTTI..
Sono nuovo da queste parti... ma leggo il Forum da un po di tempo.
Cmq Ho un Problema con PayPal

Mi spiego meglio.
Sto facendo un sito e-commerce con VirtueMart 1.0.12 e ho configurato il pagamento con Paypal. Ho aperto un conto business, e quando si procede con la conferma dell'ordine, si apre la pagina di paypal, dove si effettua il pagamento con Carta di credito, per utenti non registrati a paypal, o con conto paypal, ovviamente per chi è iscritto.

fin qui tutto ok.. ma quando una persona clicca su conferma, arriva la mail sia all'utente, sia all'amm del sito, con l'ordine in stato pending. Ma in questo caso se una persona effettua il pagamento tutto ok, lo stato dell'ordine dovrebbe aggiornarsi.
Ho sentito parlare di notifica di pagamento... ma non riesco a capire come fare..
qualcuno può aiutarmi...!!!

Offline gswant

  • Esploratore
  • **
  • Post: 97
  • Sesso: Maschio
    • Mostra profilo
Re: PayPal
« Risposta #1 il: 17 Ott 2007, 16:15:59 »
Se non erro devi andare in pagamenti paypal configurazione e settare :

stato dell´ordine che determina se una transazione è andata a buon fine

su confermato

in questa maniera quando il cliente paga lo stato automaticamente ti si inserisce su confermato.


saluti

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #2 il: 17 Ott 2007, 16:37:27 »
Ho già provato, lo stato dell´ordine che determina se una transazione è andata a buon fine, è impostato su confermato.
ato dell
mi sono accorto, che appena si clicca su conferma, e quindi prima che il sito si colleghi a paypal, arriva la mail con il dettaglio ordine, dopo aver effettuato il pagamento, invece arriva la mail di paypal... e lo stato dell'ordine resta invariato su pending...

Sto impazzendo...!!!!

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #3 il: 17 Ott 2007, 17:05:34 »
Sto provando il modulo di paypal ma quando il cliente paga lo stato dell'ordine non si aggiorna da solo in pagato. Sapete dirmi come mai?
Il pagamento arriva corettamente!
Di virtuemart ho la versione 1.0.12.
Nella configurazione del modulo di paypal ho lasciato modalità di prova > no
e come mail paypal ho messo la mail dove ricevere i pagamenti.

in payment extra info ho questo....
<?php
$url = "https://www.paypal.com/cgi-bin/webscr";
$tax_total = $db->f("order_tax") + $db->f("order_shipping_tax");
$discount_total = $db->f("coupon_discount") + $db->f("order_discount");
$post_variables = Array(
"cmd" => "_xclick",
"business" => PAYPAL_EMAIL,
"receiver_email" => PAYPAL_EMAIL,
"item_name" => $VM_LANG->_PHPSHOP_ORDER_PRINT_PO_NUMBER.": ". $db->f("order_id"),
"order_id" => $db->f("order_id"),
"invoice" => $db->f("order_number"),
"amount" => round( $db->f("order_subtotal")+$tax_total-$discount_total, 2),
"shipping" => sprintf("%.2f", $db->f("order_shipping")),
"currency_code" => $_SESSION['vendor_currency'],"first_name" => $dbbt->f('first_name'),
"last_name" => $dbbt->f('last_name'),
"address_street" => $dbbt->f('address_1'),
"address_zip" => $dbbt->f('zip'),
"address_city" => $dbbt->f('city'),
"address_state" => $dbbt->f('state'),
"address_country" => $dbbt->f('country'),
"image_url" => $vendor_image_url,
"return" => SECUREURL ."index.php?option=com_virtuemart&page=checkout.result&order_id=".$db->f("order_id"),
"notify_url" => SECUREURL ."administrator/components/com_virtuemart/notify.php",
"cancel_return" => SECUREURL ."index.php",
"undefined_quantity" => "0",
"test_ipn" => PAYPAL_DEBUG,
"pal" => "NRUBJXESJTY24",
"no_shipping" => "1",
"no_note" => "1"
);
if( $page == "checkout.thankyou" ) {
$query_string = "?";
foreach( $post_variables as $name => $value ) {
$query_string .= $name. "=" . urlencode($value) ."&";
}
mosRedirect( $url . $query_string );
} else {

echo '<form action="'.$url.'" method="post" target="_blank">';
echo '<input type="image" name="submit" src="http://images.paypal.com/images/x-click-but6.gif" border="0" alt="Make payments with PayPal, it is fast, free, and secure!" />';

foreach( $post_variables as $name => $value ) {
echo '<input type="hidden" name="'.$name.'" value="'.$value.'" />';
}

echo '</form>';

}
?>



______ non ho trovato niente che mi possa aiutare...!



Offline trumpton

  • Esploratore
  • **
  • Post: 61
    • Mostra profilo
Re: PayPal
« Risposta #4 il: 28 Ott 2007, 21:01:29 »
Ho letto diverse volte questa problema. E navigando fra questo sito e quello inglese ho concluso che la il problema di "pending" a "confirmed" non e' facile risolvere. Ci sono alcuni che dici si e in bilancia quelli che dicano non funziona.

Per me ho semplicemente scrito nei termini di condizione una spiegazione che dopo la conferma da paypal l'ordine e' stato selezionato a Pending, perche' il negoziante "IO" non agggiorna lo status fino che l'email da Paypal e' stato ricevuto, confermando il pagamento e' andato a buon fine dal cliente.

Cosi, è chiaro che il cliente non deve avere un attaco di panico se vedi questo stato nel panello. Ho anche specificato che l'ordine è concluso quando ricevano il conferma da PAYPAL non. Quindi se il redirect non occure dopo al mio sito, il cliente non avrà un problema.

Per me questa funziona, ma non so per te. Mi sa che se hai un sito dove la conferma uguale accesso ad un download e' un po complicato.

Per ora aspetto che PayPal module sia aggiornato prima di fare qualcos'altro.

Nel fratempo cerca di essere molto chiaro con i cliente per in modo che lo sanno che succedde se questa or qualcosaltro succedde....ecc ecc.

mi disp. per l'italiano, scrito veloce.

Trumpton.

Offline pixma22

  • Appassionato
  • ***
  • Post: 253
  • Sesso: Maschio
    • Mostra profilo
Re: PayPal
« Risposta #5 il: 29 Ott 2007, 10:06:14 »
Per esempio a me lo stato dell'ordine viene cambiato automaticamente una volta che il cliente ha effettuato il pagamento.In questo modo parte subito la mail con il codice per il download.Non mi ricordo cosa ho modificato,ma la soluzione l'ho trovata sul forum di virtuemart.

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #6 il: 30 Ott 2007, 14:07:35 »
Ciao Ragazzi.. innanzitutto Vi Ringrazio per aver preso atto della difficoltà che attualmente su VirtueMart esiste, per quanto concerne questo tipo di problematica.

A me succede Questo:
- L'utente acquista un prodotto,
- Conferma L'ordine
- Arriva a me Administrator La mail in Pending
- Arriva a L'utente la mail con lo status Pending.
- il Cliente Lo paga con paypal o carta di credito
  (su circuito  paypal)
- Arriva a me la notifica del pagamento sulla mia mail
- Arriva al cliente la stessa notifica del pagamento effettuato

Fin qui tutto Ok..

Il cliente capisce che il pagamento è andato a buon fine.
Lo Stato dell'ordine resta Pending, devo andare io nel pannello Administrator, seleziono lo status dell'ordine esatto(es in Spedizione) allora, nella gestione account del cliente, lo status cambia.

Io volevo che una volta notificato il pagamento con Paypal, questo avviene in automatico.

Ho Visto sul Forum di VirtueMart, e ho letto che in effetti esiste un modo, per fare ciò, ma poichè il mio inglese è veramente Pessimo, sono in difficoltà...

Altrimenti farò come hai detto te trumpton.


Offline k0nan

  • Appassionato
  • ***
  • Post: 307
    • Mostra profilo
Re: PayPal
« Risposta #7 il: 30 Ott 2007, 14:20:07 »
bene, ora la problematica è molto chiara.

allora, la classe ps_paypal.php sita in administrator/components/com_virtuemart/classes/payment
contiene le istruzioni per l'aggiornamento dello stato dell'ordine.

il file di configurazione (il file dove vengono salvate le impostazioni inserite dal backend di vm per configurare questo modulo di pagamento) invece è ps_paypal.cfg.php

puoi verificare che il contenuto di  ps_paypal.cfg.php corrisponda con quanto hai inserito ?
in particolare devi verificare che questi valori
define ('PAYPAL_VERIFIED_STATUS', 'C');
define ('PAYPAL_PENDING_STATUS', 'P');
define ('PAYPAL_INVALID_STATUS', 'X');
corrispondano agli stati che hai selezionato

dopo aver fatto ciò, ti invito a verificare il file
administrator\com_virtuemart/notify.php
che è responsabile dell'aggiornamento dello stato dell'ordine (linea 411)

ciao




« Ultima modifica: 30 Ott 2007, 14:26:05 da k0nan »
VM Italia - Supporto italiano a virtuemart - http://www.vmitalia.net

VirtueMart Dev Team Member - User Interface - http://www.virtuemart.net

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #8 il: 30 Ott 2007, 16:07:47 »
In effetti ho verificato, il file di configurazione ps_paypal.cfg.php, contiene questo:

<?php
defined('_VALID_MOS') or die('Direct Access to this location is not allowed.');

define ('PAYPAL_DEBUG', '0');
define ('PAYPAL_EMAIL', 'mailpaypal@pagamenti.it');
define ('PAYPAL_VERIFIED_ONLY', '0');
define ('PAYPAL_VERIFIED_STATUS', 'C');
define ('PAYPAL_PENDING_STATUS', 'P');
define ('PAYPAL_INVALID_STATUS', 'X');
?>

l file administrator\com_virtuemart/notify.php
te lo posto....



[allegato eliminato da un amministratore]

Offline biofede

  • Esploratore
  • **
  • Post: 87
  • Sesso: Maschio
    • Mostra profilo
Re: PayPal
« Risposta #9 il: 06 Nov 2007, 18:46:04 »
Continuo la discussione anche perchè mi sembra la strada più corretta da seguire... comunque sia io ho:

<?php
defined('_VALID_MOS') or die('Direct Access to this location is not allowed.');

define ('PAYPAL_DEBUG', '1');
define ('PAYPAL_EMAIL', 'mioindirizzopaypal@xxxx.it');
define ('PAYPAL_VERIFIED_ONLY', '0');
define ('PAYPAL_VERIFIED_STATUS', 'C');
define ('PAYPAL_PENDING_STATUS', 'P');
define ('PAYPAL_INVALID_STATUS', 'X');
?>

Da notare che PAYPAL_DEBUG assume valore 1 e non 0.

La linea 411 del file notify.php inizia con un commento e quello che ne consegue non è di mia comprensione, ad intuito comunque penso che sia apposto perchè "Paypal Verified Status e Completed" e nel file ps_paypal.cfg.php è "define ('PAYPAL_VERIFIED_STATUS', 'C');"


Se due piu' due fa quattro... sembrerebbe corretto.

Comunque una volta pagato l'ordine cambia da pending a confirmed ma non arriva la mail per il download. Logicamente de intervengo manualmente la mail viene spedita. Il problema per la maggior parte degli intervenuti è la risoluzione dell'automatismo se non sbaglio? Il mio di sicuro!
Federico. Non sono un programmatore ma un comunicatore - Juumla il mio amore VMart la mia amante.

Offline k0nan

  • Appassionato
  • ***
  • Post: 307
    • Mostra profilo
Re: PayPal
« Risposta #10 il: 07 Nov 2007, 00:29:46 »
questo allora


Citazione
Lo Stato dell'ordine resta Pending, devo andare io nel pannello Administrator, seleziono lo status dell'ordine esatto(es in Spedizione) allora, nella gestione account del cliente, lo status cambia.

Io volevo che una volta notificato il pagamento con Paypal, questo avviene in automatico.

è risolto.


non ho mai utilizzato vm per la vendità di beni scaricabili , non so come venga fornito il link o quali procedure siano coinvolte, mis piace

sul forum di virtuemart.net cosa dicono in merito ?
VM Italia - Supporto italiano a virtuemart - http://www.vmitalia.net

VirtueMart Dev Team Member - User Interface - http://www.virtuemart.net

Offline biofede

  • Esploratore
  • **
  • Post: 87
  • Sesso: Maschio
    • Mostra profilo
Re: PayPal
« Risposta #11 il: 07 Nov 2007, 11:07:34 »
Allora sul sito ufficiale risolvono la questione, almeno sulla carta e metto il link:

Easy paypal question: http://forum.virtuemart.net/index.php?topic=29372.0  (forum sezione Checkout, Payment/Shipping, Order Management a pagina 19, titolo easy paypal question)

Nella pagina ci sono ulteriori link che fanno scaricare una serie di modifiche ai file interessati. Comunque sia io li ho provati e la situazione in un certo senso peggiora. Peggiora perchè il mio problema è l'invio del messaggio Download-info e cambio stato dell'ordine.

Attualmente l'ordine cambia stato ma non lo notifica al cliente. invece sostitundo quei file, non cambia neanche piu' stato e rimane in Pending.

Vecchio cruccio: Penso che il valore del DEBUG " define ('PAYPAL_DEBUG', '1'); " debba essere 1(PUO' ASSUMERE DIE VALORI 0/1)

Comunque ho fatto anche la modifica all'interno del conto paypal nella sezione "modifica profilo" nella sezione "Preferenze per notifica immediata del pagamento". in questo caso ho fatto l'attivazione e inserito il link che porta al file notify.php. Comunque non ho notato cambiamenti, ma per adesso l'ho lasciato così come lo ho modificato.

Per adesso l'ultimo appunto che posso fare e l'impedimento per via del file .htaccess e se la soluzione è qui, io matematicamente sono fregato. Fregato perchè avendo il sito su register.it non posso fare modifiche al file... e mai ho provveduto a fare qualcosa per risolvere il problema.

La questione va risolta una volta per tutte, intervenire manualmente per mandare la mail con le informazioni per il download penso che sia improprio, anche se più sicuro per la sicurezza del portale.
Federico. Non sono un programmatore ma un comunicatore - Juumla il mio amore VMart la mia amante.

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #12 il: 07 Nov 2007, 11:54:09 »
Ragazzi date un Occhiata quì

http://forum.virtuemart.net/index.php?topic=27261.0

Non ho verificato!!!!

Ma mi hanno detto che potrebbe esserci la soluzione al mio problema (se si vendono prodotti nn scaricabili)

Il mio Inglese è pessimo... 

Fatemi sapere...Ci CONTO..!!!

Offline biofede

  • Esploratore
  • **
  • Post: 87
  • Sesso: Maschio
    • Mostra profilo
La situazione è questa
« Risposta #13 il: 07 Nov 2007, 21:15:45 »
Nel sito ufficiale di www.virtuemart.net nell'articolo segnalato da lalax ' http://forum.virtuemart.net/index.php?topic=27261.0 ' e nell'articolo dal titolo ' Request IPN notification be moved to 'front-end' location ' (mettere su cerca nel forum) sembrerebbe che piu' persone siano riuscite a inviare in automatico l'ordine confermato e a quanto pare il download-info per chi vende prodotti scaricabili. Pare che per riuscire nell'imprese basterebbe cambiare la posizione del file notify.php e questo perché è necessario uscire dal backend per il frontend. per esempio spostare il file da amministratore / componenti / com_virtuemart / notify.php in componenti / com_virtuemart / notify.php. Inoltre bisogna modificare sul modulo di pagamento paypal il "pagamento supplementare info" sulla scheda di configurazione. come per esempio amministratore / componenti / com_virtuemart / notify.php in componenti / com_virtuemart / notify.php.

Per adesso a me non funziona, se qualcuno ci vuole mettere mano, ce se la puo' fare.

Qualcuno puo' controllarmi il file ps_paypal.cfg.php

<?php
defined('_VALID_MOS') or die('Direct Access to this location is not allowed.');

define ('PAYPAL_DEBUG', '1');
define ('PAYPAL_EMAIL', 'federicobiondi@netscape.net');
define ('PAYPAL_VERIFIED_ONLY', '1');
define ('PAYPAL_VERIFIED_STATUS', 'C');
define ('PAYPAL_PENDING_STATUS', 'P');
define ('PAYPAL_INVALID_STATUS', 'X');
?>

GRAZIE
Federico. Non sono un programmatore ma un comunicatore - Juumla il mio amore VMart la mia amante.

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #14 il: 09 Nov 2007, 10:31:27 »
Ciao Ragazzi.
Vi posto questo link
http://forum.virtuemart.net/index.php?topic=24147.0

Sono Fuori ancora per pochi giorni,quindi non riesco ad effettuare delle prove.

Con questo vorrei fare anche un appello a tutta la community, affinchè si possa trovare una soluzione a questo problema.

Molti sono riusciti, e penso che un sito ecomm che si rispetti, possa avere la possibilità di poter gestire il cambio dello stato dell'ordine in automatico, dopo il pagamento.

Pensate a quando gli ordini giornalieri sono numerosi, a geestire manualmente la cosa, comporta una grande perdita di tempo.

Io personalmente sarei anche interessato, a qualche soluzione a pagamento, perchè vorrei venirne fuori..

CIAO a tutti amici..

Offline pixma22

  • Appassionato
  • ***
  • Post: 253
  • Sesso: Maschio
    • Mostra profilo
Re: PayPal
« Risposta #15 il: 12 Nov 2007, 11:18:08 »
Codice: [Seleziona]
View Profile


Re: Confirmation email to go out AFTER PayPal has confirmed transaction [SOLVED]
« Reply #5 on: March 21, 2007, 18:22:16 pm »

Ok, we've finally got a working solution. Don't thank me, thank Ganesh, a freelancer in India who has figured it out for me...!

This is a hack to get the email confirmations  for PayPal payments, using VirtueMart 1.0.10 on Joomla 1.0.11.

Step 1 .................................
Open notify.php.
Around line 434 you'll find the following code:
Quote
                $mail->Send();
            }
            else {
                //----------------------------------------------------------------------
                // If the payment_status is not Completed... do nothing but mail
                //----------------------------------------------------------------------
JUST AFTER the first line ($mail->Send()) enter the following code:
Quote
            //----------------------------------------------------------------------
            // Mod by takeroyd - call email_receipt function after payment confirmation
            //----------------------------------------------------------------------
            if(eregi ("Completed", $payment_status)) {
               require_once($mosConfig_absolute_path. '/includes/sef.php');
               require_once( CLASSPATH . 'vmAbstractObject.class.php');
               require_once ( CLASSPATH . 'class_currency_display.php' );
               require_once ( CLASSPATH . 'ps_checkout.php' );
               
               $default_vendor = 1;
               if( $my->id ) {
                  $db->query( 'SELECT `vendor_id` FROM `#__{vm}_auth_user_vendor` WHERE `user_id` ='.$my->id );
                  $db->next_record();
                  if( $db->f( 'vendor_id' ) ) {
                     $default_vendor = $db->f( 'vendor_id' );
                  }
               }
               $q = "SELECT vendor_currency_display_style
                     FROM (`#__{vm}_vendor`, `#__{vm}_country`)
                     WHERE `vendor_id`=$default_vendor
                     AND (vendor_country=country_2_code OR vendor_country=country_3_code);";
               $db->query($q);
               $db->next_record();
               $vendor_currency_display_style = $db->f("vendor_currency_display_style");
               $currency_display = vendor_currency_display_style( $vendor_currency_display_style );                             
               $GLOBALS['CURRENCY_DISPLAY'] =& new CurrencyDisplay($currency_display["id"], $currency_display["symbol"], $currency_display["nbdecimal"], $currency_display["sdecimal"], $currency_display["thousands"], $currency_display["positive"], $currency_display["negative"]);
               $ps_checkout = new ps_checkout;
               $ps_checkout->email_receipt($order_id);
            }
            // end of Mod by takeroyd
Step 2 .................................
You'll want to turn off the "Order Status Changed" email, because this would now arrive at the same time as the confirmation. So, in the same file notify.php, around line 365, change the "Y" to an "N" in the following code:
Quote
$d['notify_customer'] = "Y";
Step 3 .................................
Then you'll need to stop the initial email confirmations being sent out when the buyer clicks the "confirm" button. This one is easy, just modify one line in the file ps_checkout.php. Find and comment out this line:
Quote
// $this->email_receipt($order_id);
That's it. Buyers now receive their email confirmation only after they have paid with PayPal.

Hope this will help some of you - do let me know if you can see any inherent problems with this hack... Cheers,
Tim

guardate questo

Offline biofede

  • Esploratore
  • **
  • Post: 87
  • Sesso: Maschio
    • Mostra profilo
Re: PayPal
« Risposta #16 il: 12 Nov 2007, 11:27:30 »
Interessante... Pixma. Questo file te lo ha dato Gamesh... caspiterna, c'è stato quindi un intervento divino, per la risoluzione del problema. Ma facendo queste tre modifiche, dopo funziona tutto? Comunque sia, sei molto gentile. Adesso verifico.

Hai qualche avvertenza per l'uso da specificare?
Federico. Non sono un programmatore ma un comunicatore - Juumla il mio amore VMart la mia amante.

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #17 il: 29 Nov 2007, 19:16:49 »
CIAO RAGAZZI.. VOLEVO TORNARE SULL'ARGOMENTO..
HO PROVATO E PROVO DA PIU MESI.. MA NON NE ESCO FUORI..

NON TROVO NEANCHE SOLUZIONI A PAGAMENTO...

Offline trumpton

  • Esploratore
  • **
  • Post: 61
    • Mostra profilo
Re: PayPal
« Risposta #18 il: 17 Dic 2007, 11:41:28 »
La risposta non e' facile, e ho letto diversi articoli, anche nel forum ingelese. A la fine ho inserito questo nel sito:

Se il  Cliente ha utilizzato PayPal per il pagamento, è da notare che lo status dell’ordine nelle  24 ore successive al pagamento viene automaticamente impostato su “pending”. Quando riceviamo conferma da PayPal che il pagamento è stato accettato, lo status dell’ordine sarà cambiato in “Confirmed”

Trumpton.

Offline lalax

  • Nuovo arrivato
  • *
  • Post: 25
    • Mostra profilo
Re: PayPal
« Risposta #19 il: 18 Gen 2008, 14:56:08 »
Volevo dire a tutti gli utenti della community di Joomla che di questo argomento se ne sta discutendo anche su questo forum:

http://www.vmitalia.net/forum/index.php?topic=75.0


 

Host

Torna su