otp-simplepay-woocommerce_icon

Amennyiben szeretnénk felülírni az alapértelmezett SimplePay logot a "Pénztár" oldalon, úgy az otp-simplepay-woocommerce_icon filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_icon', function (string $url): string {
    return $url;
});

otp-simplepay-woocommerce_enable_two_step_payment

A kétlépcsős fizetés engedélyezése elérhető az admin felületről. Amennyiben ezt rendelés, vagy más egyedi logika alapján szeretnénk eldönteni, úgy az otp-simplepay-woocommerce_enable_two_step_payment filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_enable_two_step_payment', function (bool $value, WC_Order $order): bool {
    return $order->get_total() > 10000;
}, 10, 2);

otp-simplepay-woocommerce_payment_timeout

Amennyiben a fizetés időtúllépését akarjuk konfigurálni, úgy az otp-simplepay-woocommerce_payment_timeout filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_timeout', function (string $value, WC_Order $order): string {
    return '+30 minutes';
}, 10, 2);

otp-simplepay-woocommerce_payment_methods

Amennyiben az elérhető fizetési módokat akarjuk módosítani, úgy az otp-simplepay-woocommerce_payment_methods filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_methods', function (array $value, WC_Order $order): array {
    return ['CARD'];
}, 10, 2);

Lehetséges értékek: ['CARD'], ['WIRE'], ['EAM'], ['CARD', 'EAM'].

otp-simplepay-woocommerce_order_ref

Az újraírt, v3-as verzió az előző verziótól eltérően nem egy előtaggal ellátott rendelés azonosítót (pl.: wc-889) ad át a SimplePay-nek, hanem a rendelés kulcsát (pl.: wc_order_q6MXBjFKQwm7B), amely teljesen egyedi. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_order_ref filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_order_ref', function (string $ref, WC_Order $order): string {
    return 'xyz-'.$order->get_order_number();
}, 10, 2);

otp-simplepay-woocommerce_finished_virtual_order_status

A bővítmény a csak virtuális termékeket tartalmazó rendelések esetén, a sikeres fizetést igazoló IPN hívást követően, "Teljesített" állapotúra állítja a rendelést. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_finished_virtual_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_finished_virtual_order_status', function (string $status, WC_Order $order): string {
    return 'pending';
}, 10, 2);

otp-simplepay-woocommerce_payment_success_order_status

A sikeres fizetési hitelesítés után a rendelést pending állapotúra állítja a bővítmény. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_payment_success_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_success_order_status', function (string $status, WC_Order $order): string {
    return 'pending';
}, 10, 2);

otp-simplepay-woocommerce_payment_cancelled_order_status

A megszakított fizetés után a rendelést pending állapotúra állítja a bővítmény. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_payment_cancelled_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_cancelled_order_status', function (string $status, WC_Order $order): string {
    return 'pending';
}, 10, 2);

otp-simplepay-woocommerce_payment_failed_order_status

A sikertelen fizetés után a rendelést failed állapotúra állítja a bővítmény. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_payment_failed_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_failed_order_status', function (string $status, WC_Order $order): string {
    return 'failed';
}, 10, 2);

otp-simplepay-woocommerce_payment_timeout_order_status

A fizetés időkorlát túllépését követően a rendelést cancelled állapotúra állítja a bővítmény. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_payment_timeout_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_timeout_order_status', function (string $status, WC_Order $order): string {
    return 'cancelled';
}, 10, 2);

otp-simplepay-woocommerce_payment_not_authorized_order_status

A sikertelen autorizációt követően a rendelést failed állapotúra állítja a bővítmény. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_payment_not_authorized_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_not_authorized_order_status', function (string $status, WC_Order $order): string {
    return 'failed';
}, 10, 2);

otp-simplepay-woocommerce_payment_authorized_order_status

Kétlépcsős fizetés esetén az összeg befoglalásakor, vagy előautorizációt követően a rendelést on-hold állapotúra állítja a bővítmény. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_payment_authorized_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_authorized_order_status', function (string $status, WC_Order $order): string {
    return 'on-hold';
}, 10, 2);

otp-simplepay-woocommerce_payment_reversed_order_status

Kétlépcsős fizetés esetén az összeg feloldásakor a rendelést cancelled állapotúra állítja a bővítmény. Amennyiben ezt módosítani akarjuk, úgy az otp-simplepay-woocommerce_payment_reversed_order_status filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_payment_reversed_order_status', function (string $status, WC_Order $order): string {
    return 'cancelled';
}, 10, 2);

otp-simplepay-woocommerce_hidden_mode

A bővítmény lehetőséget nyújt arra, hogy csak adminisztrátorok lássák a fizetési kaput a fizetésnél. Amennyiben ennek a logikáját módosítani akarjuk, úgy a otp-simplepay-woocommerce_hidden_mode filter segítségével ezt megtehetjük:

add_filter('otp-simplepay-woocommerce_hidden_mode', function (bool $hidden): bool {
    return ! is_user_logged_in();
});

otp-simplepay-woocommerce_discount_item_types

Amennyiben olyan bővítményeket használunk amelyek az alapértelmezettől eltérő kosárelemekkel dolgoznak (pl.: ajándékkártya, egyedi kupon), úgy ezeknek a feldolgozásáról külön kell gondoskodni. Automatikusan ezt nem tudjuk lekezelni, mivel az egyedi típusok működése eltérhet az alapértelmezett működéstől.

A bővítmény lehetőséget nyújt arra, hogy kedvezmény számolás esetén, az egyedi kosár elem típusokhoz egyedi logikát rendeljünk, amellyel a kedvezmény értékét lehet módosítani. Ezt a otp-simplepay-woocommerce_discount_item_types filter segítségével tehetjük meg:

add_filter('otp-simplepay-woocommerce_discount_item_types', function (array $types, WC_Order $order): array {
    $types['pw_gift_card'] = function ($item): float {
        return $item->get_amount();
    };

    return $types;
}, 10, 2);