Rechnungsdaten bei Ratepay Kauf auf Rechnung (PayPal)

Hallo,

was meinst du mit Zahlungs-/Rechnungsdaten?

Deine Bankverbindung, an die der Kunde zahlen soll kannst du ja unabhängig von Ratepay in deine Rechnungen eintragen, die verändert sich ja nicht.

Viele Grüße
Jan

Nein, ich meine die Kontodaten, die Ratepay via IPN schickt, wenn man mit PayPal Pay Upon Invoice aka PayPal Kauf auf Rechnung mit dem neuen PayPal Checkout bezahlt.

Das würde mich auch mal interessieren. Daher hänge ich mich hier mal mit dran.
Unabhängig des Versands der Bankdaten per Email, sollte es dennoch möglich sein diese Daten mit auf der Rechnung auszudrucken und dem Kunden mitzuschicken.

Meine Lösung für Germanized als Shortcode, den man in die rechnung „eibauen“ kann:

add_filter('storeabill_document_shortcodes', 'itsw_ratepay_payment_instructions', 10, 2);

/**
 * @param $shortcodes
 * @param $shortcode_instance
 * @return array
 */
function itsw_ratepay_payment_instructions($shortcodes, $shortcode_instance): array {
	$shortcodes['itsw_ratepay_payment_instructions'] = static function($atts, $content = '') use ($shortcode_instance) {
		$document = $shortcode_instance->get_document();
		
		if ($document) {
			/** @var WC_Order $order */
			$order = $document->get_order();
			
			if ($order && $order->get_payment_method() === PayUponInvoiceGateway::ID) {
				$content .= itsw_pui_instructions($order);
			}
		}
		
		return $content;
	};
	
	return $shortcodes;
}

/**
 * @param \WC_Order $order
 * @return string|null
 */
function itsw_pui_instructions(WC_Order $order): ?string {
	$instructions = $order->get_meta('ppcp_ratepay_payment_instructions_payment_reference');
	$gateway_settings = get_option( 'woocommerce_ppcp-pay-upon-invoice-gateway_settings' );
	$merchant_name    = $gateway_settings['brand_name'] ?? '';
	$order_date = $order->get_date_created();
	$price = wc_price($order->get_total(), $order->get_currency());
	
	if ( NULL === $order_date ) {
		return NULL;
	}
	
	$order_purchase_date = $order_date->date( 'd.m.Y' );
	//$order_time          = $order_date->date( 'H:i:s' );
	$order_date          = $order_date->date( 'd-m-Y H:i:s' );
	
	
	$thirty_days_date = strtotime( $order_date . ' +30 days' );
	
	if ( false === $thirty_days_date ) {
		return NULL;
	}
	
	$order_date_30d = gmdate( 'd.m.Y', $thirty_days_date );
	
	$payment_reference   = $instructions[0] ?? '';
	$bic                 = $instructions[1]->bic ?? '';
	$bank_name           = $instructions[1]->bank_name ?? '';
	$iban                = $instructions[1]->iban ?? '';
	$account_holder_name = $instructions[1]->account_holder_name ?? '';
	
	if (!$payment_reference || !$bic || !$bank_name || !$iban || !$account_holder_name) {
		return NULL;
	}
	
	$content = wp_kses_post("<p>Für Ihre Bestellung {$order->get_id()} vom {$order_purchase_date} bei {$merchant_name} haben Sie die Zahlung mittels “Rechnungskauf mit Ratepay“ gewählt.");
	//$content .= '<br>Bitte benutzen Sie die folgenden Informationen für Ihre Überweisung:</br>';
	$content .= wp_kses_post( "<p>Bitte überweisen Sie den Betrag in Höhe von {$price} bis zum {$order_date_30d} auf das unten angegebene Konto. Wichtig: Bitte geben Sie unbedingt als Verwendungszweck {$payment_reference} an, sonst kann die Zahlung nicht zugeordnet werden.</p>" );
	$content .= wp_kses_post( "<p>Empfänger: {$account_holder_name}" );
	$content .= wp_kses_post( "<br>IBAN: {$iban}" );
	$content .= wp_kses_post( "<br>BIC: {$bic}" );
	$content .= wp_kses_post( "<br>Name der Bank: {$bank_name}" );
	$content .= wp_kses_post( "<br>Verwendungszweck: {$payment_reference}</p>" );
	$content .= wp_kses_post( "<p>{$merchant_name} hat die Forderung gegen Sie an die PayPal (Europe) S.à r.l. et Cie, S.C.A. abgetreten, die wiederum die Forderung an Ratepay GmbH abgetreten hat. Zahlungen mit schuldbefreiender Wirkung können nur an die Ratepay GmbH geleistet werden.</p>" );
	
	return $content;
}

der Shortcode wäre dann [itsw_ratepay_pament_structions], kann aber nach Belieben geändert werden 🙂

  • Diese Antwort wurde geändert vor 2 Stunden, 59 Minuten von wolkenkrieger.

*[itsw_ratepay_payment_instructions] ^^

Super, danke vielmals. Das probier ich mal aus. Ich nehme an der Quellcode muß in die functions.php?

 

This site will teach you how to build a WordPress website for beginners. We will cover everything from installing WordPress to adding pages, posts, and images to your site. You will learn how to customize your site with themes and plugins, as well as how to market your site online.

Buy WordPress Transfer