Beiträge von dieterlm

    Danke vielmals.

    das funktioniert soweit ganz gut. Was muss ich anpassen, um den Link in einem neuen Fenster/Tab zu öffnen?
    Gibt es eine Möglichkeit, den Warenkorb danach zu leeren?

    PHP
    // Hier den Benutzer auf den PayPal.Me-Link weiterleiten
    return array(
        'result'   => 'success',
        'redirect' => $paypal_me_link,
    );

    Gruß
    Marcus

    Punkt anstelle Komma ist schon mal gut. Und es steht auch keine Währung in dem String? Und wenn eine Währung enthalten ist, ist diese im richtigen Format?


    Das passt. Wenn ich den erstellten Link im Browser eingebe, komme ich auf Paypal und der richtige Betrag wird verwendet.


    PHP
    // PayPal.Me-Link mit Gesamtbetrag
    $paypal_me_link = 'https://paypal.me/meinName/' . $total_amount;
    
    
    // Hier den Benutzer auf den PayPal.Me-Link weiterleiten
    return array(
        'result'   => 'success',
        'redirect' => $paypal_me_link,
    );


    Verzichte nach Möglichkeit auf ein ?> am Ende einer PHP Datei.[/QUOTE]
    Werde ich nachher gleich mal testen. Danke

    Das mit dem Logfile funktioniert schon einmal. Es wird auch der richtige Betrag als xx.yy angezeigt. Jetzt muss noch eine Weiterleitung zu dem PayPal URL erfolgen.
    Das ist der aktuelle Stand:


    Hat jemand eine Idee?

    Gruß
    Marcus

    Code
    if (!is_ajax()) {


    ^- kannst du dies begründen?


    Da ich mich mit PHP und den Plugins nicht auskenne und es mein erster Versuch mit WP ist, kann ich es nicht. Hab ich so gesehen Paste and Copy

    Code
    // PayPal.Me-Link mit Gesamtbetrag           
    $paypal_me_link = 'https://paypal.me/meinName/' . rawurlencode($total_amount);


    PayPal erwartet den Betrag in einem bestimmten Format. Wo ist die Konvertierung in dieses Format? und wo leitest du die Kundin, den Kunden nach PayPal me weiter. Und wie kommst du auf die Idee, dass PayPal me für die Zahler ausreicht?


    Ich verwende WP nicht für kommerzielle Zwecke. Es geht um unseren jährlichen Ausflug von unserem "Verein". Als Produkt wählt man quasi die Teilnahme aus und die Anzahl, woraus sich dann der Preis (Anzahlung) ergibt. Das bezahlen soll dann über den PayPal.me link erfolgen. das reicht für uns vollkommen aus. Ich weiß, dass eine eigene WP Seite dafür etwas "über das Ziel hinaus" ist, aber ich bastel nun mal gerne. Darum wollte ich es so lösen.


    Code
    return array(
                    'result'   => 'success',
                    'redirect' => wc_get_checkout_url(),
                );

    ^- da kannst du dir schenken - dies sieht keiner bei Paypal me. ein zurück gibt es nicht...


    OK, gut zu wissen.

    Hallo Freunde,
    ich brächte mal eure Hilfe, denn ich komme nicht weiter. Ich versuche ein Plugin zu erstellen, mit dem ich per PayPal.me bezahlen kann. Da die Seite nicht kommerziell ist, möchte ich payPal.me verwenden. Ist für unsere Zwecke vollkommen ausreichend. Dafür habe ich ein Plugin, welches zwei Dateien enthält. Beide liegen im gleichen Ordner. In der Kasse wird mir die Bezahloption angezeigt. Wenn ich jedoch auf Bestellen klicke, erhalte ich die Meldung "Fehler beim Bezahlvorgang. Versuche es bitte nochmal." Was muss ich ändern, damit es funktioniert?

    Datei: paypal-gateway.php

    Datei: class-wc-paypal-gateway.php

    Vielen Dank schon mal im vorraus für eure Hilfe.

    Gruß
    Marcus

    Da kommen ja nicht deine Zugangsdaten rein, sondern die vom Verein. Diese erstellst du dir über
    https://developer.paypal.com/developer/applications/create


    Genau der funktioniert im Moment nicht. Die Hinterlegte Telefonnummer fängt mit der Länderkennzahl an. Daher kann ich beim Login die Nummer nicht verifizieren. Kann leider nur telefonisch geändert werden. Mo-Sa.



    man kann relativ einfach und schnell php lernen
    https://riptutorial.com/php/awesome-learning/tutorial


    ;-) Ich habe mir den Link mal in die Favoriten gelegt. Danke.



    javascript:
    Erstelle eine neue JavaScript-Datei und füge den folgenden Code hinzu:

    1. Füge den folgenden HTML-Code zu deiner Website hinzu:
    Code
    <input type="text" id="amount" placeholder="Amount">
    <input type="text" id="paypalMeId" placeholder="PayPal.Me ID">
    <button onclick="sendPayment(document.getElementById('amount').value, document.getElementById('paypalMeId').value)">Send Payment</button>


    1. Öffne die Website in deinem Browser und gib einen Betrag und eine PayPal.Me-ID ein. Klicke dann auf die Schaltfläche "Send Payment".


    Die Zahlung wird an das PayPal.Me-Konto gesendet.


    Das werde ich morgen versuchen, sobald ich wieder Zugang habe und die API auslesen kann. Muss dann schauen, wie ich das in die "Kassen-HTML" integriere.


    der, der zahlt, bekommt keine Rückmeldung? glaube ich nicht! Und in meinem Code Beispiel bekommt man "console.log("Payment successful.");" zurück..


    Ich meinte, dass es keine Rückmeldung an wordpress gibt, dass der "Kunde" bezahlt hat. Glaube ich zumindest.


    WooCommerce verfügt über fertige Schnittstellen. (nur vermutlich nicht für PayPal ME. Unter Covid konnte man PayPal me einfach an die Kasse hängen und die Kunden haben mit dem QR Code eben bezahlt.


    Ich habe kein entsprechendes Plugin gefunden.

    Vielen Dank für deine Hilfe und Kompetenz.

    Gruß
    Marcus

    Vielen Dank für deine Antwort. Leider gibt es gerade Schwierigkeiten bei meinem PayPal Account mit dem Login. Deren IT Abteilung will sich der Sache annehmen. Darum kann ich gerade die YOUR_CLIENT_ID und YOUR_CLIENT_SECRET nicht auslesen und es testen.
    So wie ich das Beispiel verstehe, wird ein fixer Betrag ("value":"10.00") überwiesen. Ist es möglich dies so zu ändern, dass der Kassen-Gesamtbetrag übernommen wird?

    Mit PHP hatte ich bis jetzt überhaupt nichts zu tun. Meine Stärken sind VBA und Datenbankprogrammierung. Hilft mir hier nicht wirklich.
    Zuvor hatte ich eine HTML Lösung welche mit einem Formular gelöst wurde:


    Eine ähnlich simple Lösung würde ich auch gerne mit wordpress hinbekommen.

    Ich weiß, dass es in dem Fall keine Rückmeldung von PayPal gibt, dass auch wirklich bezahlt wurde, was aber kein größeres Problem ist. Ziel ist es, dass jeder nur das buchen kann, was vorhanden ist (Lagerbestand) und dass er danach auf die PayPal Seite weitergeleitet wird und der richtige Betrag voreingestellt ist.

    Danke und Gruß
    Marcus

    Hallo,

    ich bin gerade dabei, für unseren Verein eine Möglichkeit zu schaffen, sich online für unsere Ausflüge zu registrieren. Zuvor wurde das alles mit Excellisten realisiert, was gerne zu einem Durcheinander geführt hat. Nun möchte ich alles automatisieren. Anmeldung, Anzahlung und Bettvergabe. Die Touren gehen über das Wochenende und daher ist von den Mitgliedern eine Anzahlung für die Übernachtung fällig. Dies hatten wir bis jetzt immer über PayPal senden an einen Freund an unser Vereinskonto gemacht.
    Ich habe nun Wordpress auf einem Server am Laufen. Als "Produkte" habe ich die Zimmer (EZ, DZ,...) erstellt. Der Preis ist dabei die Anzahlung. Mit dem Lagerbestand stelle sicher, dass ein Zimmer nicht überbucht werden kann. Eines der Vorteile von WP. Die Seite hat also keinerlei kommerziellen Hintergrund.
    Mein Problem ist, dass ich kein Plugin finde, mit dem ich die Zahlung an Freunde realisieren kann. Auch funktioniert mein selbst zusammengebasteltes Plugin nicht. Wer hat eine Idee?

    [PLAIN]
    <?php
    defined( 'ABSPATH' );

    /**
    * Plugin Name: WooCommerce PayPal Send to Friend
    * Description: This plugin allows you to send a PayPal payment to a friend.
    * Version: 0.0.8
    * Author: Marcus
    */
    add_action( 'plugins_loaded', function() {
    // Register the new payment gateway.
    add_action( 'woocommerce_payment_gateways', function() {
    register_woocommerce_payment_gateway( new WC_Gateway_PayPal_Send_To_Friend() );
    });

    // Add the settings page.
    add_action( 'admin_menu', function() {
    add_submenu_page(
    'woocommerce',
    'PayPal Send to Friend',
    'PayPal Send to Friend',
    'manage_options',
    'wc-settings-paypal-send-to-friend',
    function() {
    include 'views/settings-page.php';
    }
    );
    });
    });

    /**
    * Class WC_Gateway_PayPal_Send_To_Friend
    *
    * Represents the PayPal Send to Friend payment gateway.
    */
    class WC_Gateway_PayPal_Send_To_Friend extends WC_Payment_Gateway {

    /**
    * Constructor.
    */
    public function __construct() {
    $this->id = 'paypal_send_to_friend';
    $this->method_title = __( 'PayPal Send to Friend', 'woocommerce' );
    $this->method_description = __( 'Allows you to send a PayPal payment to a friend.', 'woocommerce' );
    $this->supports = array(
    'products',
    'subscriptions',
    'recurring_payments',
    );
    }

    /**
    * Get the payment gateway settings.
    *
    * @return array
    */
    public function get_settings() {
    return array(
    'enabled' => array(
    'title' => __( 'Enable', 'woocommerce' ),
    'type' => 'checkbox',
    ),
    'title' => array(
    'title' => __( 'Title', 'woocommerce' ),
    'type' => 'text',
    'default' => __( 'PayPal Send to Friend', 'woocommerce' ),
    ),
    'description' => array(
    'title' => __( 'Description', 'woocommerce' ),
    'type' => 'textarea',
    'default' => __( 'Send a PayPal payment to a friend.', 'woocommerce' ),
    ),
    );
    }

    /**
    * Process the payment.
    *
    * Param WC_Order $order
    * @return WC_Payment_Gateway_Result
    */
    public function process_payment( $order_id ) {
    $order = wc_get_order( $order_id );

    $redirect_url = add_query_arg(
    array(
    'wc_order' => $order->get_id(),
    ),
    wc_get_checkout_url()
    );

    return new WC_Payment_Gateway_Result(
    array(
    'result' => 'success',
    'redirect' => $redirect_url,
    )
    );
    }

    }

    [/PLAIN]

    [PLAIN]
    <div class="wrap">
    <h1><?php echo esc_html( get_admin_page_title() ); ?></h1>
    <?php
    settings_fields( 'paypal_send_to_friend_settings' );
    do_settings_sections( 'paypal_send_to_friend_settings' );
    ?>
    <form method="post" action="options.php">
    <table class="form-table">
    <tr>
    <th scope="row"><label for="friend_email"><?php _e( 'Freund E-Mail', 'woocommerce' ); ?></label></th>
    <td>
    <input type="email" name="friend_email" id="friend_email" value="<?php echo esc_attr( get_option( 'friend_email', '' ) ); ?>" class="regular-text" required />
    </td>
    </tr>
    <tr>
    <th scope="row"><label for="payment_amount"><?php _e( 'Zahlungsbetrag', 'woocommerce' ); ?></label></th>
    <td>
    <input type="number" name="payment_amount" id="payment_amount" value="<?php echo esc_attr( get_option( 'payment_amount', '' ) ); ?>" step="0.01" min="0" required />
    </td>
    </tr>
    </table>
    <?php
    submit_button();
    ?>
    </form>
    </div>

    [/PLAIN]

    Danke schon einmal für eure Ideen und Ratschläge