Hola buenos dias!
Hace un tiempesito hice algo con paypal primeramente tienes que registrate y crear cuentas de prueba paypal en su sitio te pérmite hacer eso en esta seccion https://developer.paypal.com/ puedes crear tu cuenta de vendedor y cuentas como comprador, cargarle saldo a tus compradores y despues hacer tus test, activas ipn notificacion de pago instantaneo biene en tu cuenta que ayas creado . lo mas facil es que generes un boton en el sitio copies el html y lo pegues en tu pagina cuando el usuario hace click en el boton automaticamente se vinula con tu cuenta creada. -- paypal te pide una url a donde quieres que te mande los datos de los pagos echos. - por tanto tienes que tener una web. - los datos te los manda por post o get y con la suiguiente funcion resives y procesas el pago function paypal_ipn(){ $req = 'cmd=_notify-validate'; foreach ($_POST as $key => $value) { $value = urlencode(stripslashes($value)); $req .= "&$key=$value"; } // post back to PayPal system to validate $header .= "POST /cgi-bin/webscr HTTP/1.0\r\n"; $header .= "Content-Type: application/x-www-form-urlencoded\r\n"; $header .= "Content-Length: " . strlen($req) . "\r\n\r\n"; $fp = fsockopen ('ssl://www.paypal.com', 443, $errno, $errstr, 30); // assign posted variables to local variables $item_name = $_POST['item_name']; $item_number = $_POST['item_number']; $payment_status = $_POST['payment_status']; $payment_amount = $_POST['mc_gross']; $payment_currency = $_POST['mc_currency']; $txn_id = $_POST['txn_id']; $receiver_email = $_POST['receiver_email']; $payer_email = $_POST['payer_email']; if(!$fp){ // HTTP ERROR }else{ fputs($fp,$header.$req); while (!feof($fp)) { $res = fgets ($fp, 1024); if(strcmp ($res, "VERIFIED")==0){ // check the payment_status is Completed // check that txn_id has not been previously processed // check that receiver_email is your Primary PayPal email // check that payment_amount/payment_currency are correct // process payment if($_POST['payment_status']=="Completado" || $_POST['payment_status']=="Processed"){ ## comprobar no suplicados transaccion $existe=$this->Recarga->find("count",array("conditions"=>array("Recarga.txn_id"=>$_POST['txn_id']))); if($existe<=0){ $usuario=$this->Usuario->find("first",array("conditions"=>array("Usuario.mail"=>$_POST['payer_email']))); if(!empty($usuario)){ if($_POST['receiver_email']=="[email protected]"){ ##Registramos una nueva recarga $d['Recarga']['usuario_id']=$usuario['Usuario']['id']; $d['Recarga']['txn_id']=$_POST['txn_id']; $d['Recarga']['monto']=$_POST['mc_gross']; $d['Recarga']['estatus']=$_POST['payment_status']; $this->Recarga->create(); $this->Recarga->save($d); ##Actualizamos el saldo del usuario $this->Usuario->id=$usuario['Usuario']['id']; $this->Usuario->saveField("creditos",($usuario['Usuario']['creditos']+$_POST['mc_gross'])); } } } } } else if (strcmp($res,"INVALID")==0){ // log for manual investigation } } fclose($fp); } } Esta función la puse en un controlador llamado recargas y que no pida login saludos cualquier cosa escribeme aqui. :) El miércoles, 7 de noviembre de 2012 09:43:53 UTC-6, tux escribió: > > Hola a todos, deseo implementar pagos con paypal, pero no se por donde > empezar, o si existe plugin o componentes o deberia trabajarlo a puro > codigo con el ejemplo de paypal. sin embargo estoy usando cakephp 2.2 y me > pierdo mucho, si alguno de uds. ya ha hecho algo parecido o tiene > informacion, les agradeceria su ayuda. > -- Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos de Google. Para ver este debate en la Web, visita https://groups.google.com/d/msg/cakephp-es/-/7K9T1DMsSYIJ. Para publicar una entrada en este grupo, envía un correo electrónico a [email protected]. Para anular tu suscripción a este grupo, envía un correo electrónico a [email protected] Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/cakephp-es?hl=es.
