Hvordan implementere Paypal betalingsløsning på et nettsted?

Mr Vest

Sjefen over alle sjefer!
Noen steder på internett er det i dag mulig å betale med kredittkort gjennom Paypal. Noen av disse nettstedene har selve formen hvor vi skriver inn kortdetaljer osv integrert i nettsiden - slik at man aldri må inn på Paypal sine nettsider for å skrive inn denne informasjonen.

Hvordan kan jeg få Paypal sin betalingsform inn på mitt nettsted?

Jeg har forsøkt å lese litt om Paypal sin api men finner ikke noe annet enn informasjon om kjøpeknapper osv. Det jeg egentlig vil unngå er jo nettopp det at Paypal sine nettsider åpner seg i et eget vindu.
 

picxx

WF 09
Er det ikke IPN integrasjon med business account da?

Tror dette er godt forklart på PP egne sider :)
 

Pong

Jeg selger sʇɥƃıluʍop :)
Det er litt fram og tilbake, synes nå jeg, men jeg gjorde det akkurat her:
SunCafe: Koffiezetapparaat 'par excellence'
samt her:
Festivo
Den siste er ikke live enda.

PayPal anroper en "ipn" - som er en php-fil som ligger hos meg og den oppretter en post i databasen. Thank-you siden sjekker om beløpet som da ble lagt inn i databasen er som forventet og gir beskjed alt etter.

Send pm hvis du trenger hjelp.
 

Pong

Jeg selger sʇɥƃıluʍop :)
Hmja... det var vel ikke slik jeg hadde tenkt - skal være mulig å betale også uten konto der... Takk for observeringen!
Skal poste ipn-koden senere når jeg har kommet meg hjem igjen samt har sett på dette.
 

Tonny Kluften

Administrator
Du kommer nok til den siden som en følge av at du har Paypal cookies på din PC..

Det stemte Yngve. Med IE fikk jeg opp en side hvor man kan plotte inn kredittkortopplysninger. Men det gjør ikke saken så mye bedre egentlig. Ideelt sett skulle jeg ha fått opp den samme siden selv om jeg har PayPal cookies i nettleseren.

Jeg burde ihvertfall ha fått opp teksten "Don't have a PayPal account? Use your credit card or bank account (where available)" slik som her: Tinnitus Behandling og hjelp Klikk på "kjøp nå" knappen litt ned på siden:
 
Sist redigert:

Yngve Larsen

E-commerce ekspert
Logg inn bildet er jo kun synlig om brukeren tidligere har vært innlogget på sin konto på paypal.com.

Teksten "Don't have a PayPal account?" står vell der, men på tysk i dette tilfellet..
 

Mr Vest

Sjefen over alle sjefer!
Slik som i videoen det linkes til over er jo ikke sånn 110% integrering. Brukeren blir jo sendt til paypal.com, og jeg vil jo tro det hele hadde vært mye mer brukervennlig dersom brukeren faktisk fikk skrive inn sine opplysninger på nettstedet som de faktisk handler hos, og ikke inne på Paypal sine nettsteder. At gjerne Paypal kunne kommet med en kvittering elns hadde liksom vært helt greit.

Jeg skal kikke litt mer på IPN når jeg gidder. Latskapen har tatt meg siste dagene, og 15timer i døgnet med tvserien Chuck som forresten er enormt bra får jeg vel snart dra meg opp fra sofaen. Jeg må innrømme at hele sesong1, sesong2 og begynnelsen på sesong3 virkelig er bra av den tvserien altså. Anbefales! :D
 

Mr Vest

Sjefen over alle sjefer!
Jeg er bombesikker på at jeg har sett dette på norske nettsteder, og jeg er også bombesikker på at nettstedene jeg har sett det på er registerert med norsk adresse hos Paypal. Det eneste er bare at jeg ikke akkurat nå husker hvor i alle dager jeg har sett det. Det eneste jeg kan si er at jeg en eller annen gang i løpet av kommende 30 dager vil ha et screen tilgjengelig av det jeg mener her, selv om jeg er rimelig sikker på at det er ganske klart allerede. :)
 

Pong

Jeg selger sʇɥƃıluʍop :)
Denne lenken er vel slik du skal ha det?
Festivo
(trykk på en CD, så kjøp-knappen, så ser du shopping cart).
Du ser dat også feltene med verdiene - det er en single form som genereres av litt php-kode (når det gjelder produktene) og delvis er fast (en del av paypal-feltene).

IPN'en ser slik ut:
<?
include_once('database.php'); // Database-settings

$link = @mysql_connect( $mysql_server, $mysql_username, $mysql_password );
if( @mysql_select_db( $mysql_database )) {
$content = var_export($_SERVER,true) ."\n" .var_export($_POST,true) ."\n" .var_export($_GET,true);

$sql_fields = '';
$sql_values = '';
$fields = array(
'payment_status' => 50,
'txn_id' => 50,
'mc_gross' => 50,
'address_name' => 255,
'address_street' => 255,
'address_zip' => 255,
'address_city' => 255,
'address_state' => 255,
'address_country' => 255,
'address_country_code' => 2 );
foreach( $fields as $name=>$len ) {
$sql_fields .= ',' .$name;
$sql_values .= ',"' .addslashes(substr($_POST[$name],0,$len)) .'"';
}

$sql = 'INSERT INTO paypal_payments (content' .$sql_fields .') VALUES ("' .addslashes($content) .'"' .$sql_values .')';
$q = @mysql_query( $sql );
}
@mysql_close($link);
?>

Koden slenger sammen inneholdet av de viktigste variablene (foreløpig - kommer til å slå det av senere fordi hvem trenger vel kikke på $_SERVER og $_POST når alt er i orden).
Så finner den ut av adresse-felt, betalingsstatus og beløp og lagrer det i en SQL-tabell.

Litt greit med å etterpå sjekke beløp fordi det feltet sendes rett som det er fra nettsiden client-side til paypal (altså: kan endres av brukeren før betalingen blir gjort på paypal).
På denne måten forteller paypal hvor mye penger som ble betalt, som skal da stemme overens med bestillingsorderen. Hvis det ikke gjør det får brukeren beskjed at jeg må se på bestillingen for hånd.
Uff.. for mye bla bla...
 

Mr Vest

Sjefen over alle sjefer!
Jeg ser greia der ja. Det var ikke 100% slik jeg så det for meg Pong, men takk for en god forklaring på hvordan det fungerte der hos deg.

Btw dette var alt jeg fikk etter jeg fylte ut skjemaet hos deg, og klikket "Betale med PayPal." Helt sikkert fordi jeg har disse coocies i nettleseren, men allikevel meget lite brukervennlig den som Paypal kom med der altså.:



Btw, hva i alle dager er egentlig Paypal Sandbox?
 
Topp