Mit folgendem Code lässt sich das Belegfeld 1 unterschiedlich befüllen, je nachdem welche Zahlungsart verwendet wird.
Hier war die Anforderung: Bei PayPal-Zahlungen die PayPal-Transaktions-ID verwendet werden. Bei Stripe-Zahlungen wird die Stripe-Transaktions-ID verwendet. Bei allen anderen Zahlungen soll die Rechnungsnummer verwendet werden.
add_action( 'wcdtvfe_create_raw_accounting_record_before_preprocessing', 'wcdtvfec_conditional_transaction_id', 10, 3);
function wcdtvfec_conditional_transaction_id( $accounting_record, $order_id, $type ) {
$order = wc_get_order( $order_id );
// If the order ID was not found
if( !$order ) return $accounting_record;
if( $order->get_type() !== "shop_order" ) return $accounting_record;
$payment_title = $order->get_payment_method();
if( $payment_title === "paypal_plus" ) {
// Replace Belegfeld 1 with placeholder for PayPal transaction ID
$accounting_record[ '011_note1' ] = "%%paypal_transaction_id%%";
}
else if( $payment_title === "stripe" ) {
$accounting_record[ '011_note1' ] = "%%stripe_transaction_id%%";
}
else {
$accounting_record[ '011_note1' ] = "%%invoice_number%%";
}
return $accounting_record;
}
Sie haben Fragen oder möchten ein Angebot anfordern?