Plugin Directory

Changeset 3045559


Ignore:
Timestamp:
03/05/2024 10:47:42 AM (2 years ago)
Author:
PerfectSolution
Message:

Update trunk/ - 7.2.0

Location:
woocommerce-quickpay
Files:
18 edited
1 copied

Legend:

Unmodified
Added
Removed
  • woocommerce-quickpay/tags/7.2.0/README.txt

    r3029485 r3045559  
    33Tags: gateway, woo commerce, quickpay, quick pay, gateway, integration, woocommerce, woocommerce quickpay, payment, payment gateway, psp
    44Requires at least: 4.0.0
    5 Tested up to: 6.3
     5Tested up to: 6.4
    66Stable tag: trunk
    77License: GPLv2
     
    2828
    2929== Changelog ==
     30= 7.2.0 =
     31* Feat: Add possibility to set a new order status upon cancelled payments
     32* Feat: MobilePay Subscriptions is now transitioning orders with failed payments to "failed" to maintain correct state of orders and their corresponding subscription.
     33* Fix: WC_QuickPay_Helper::is_browser now checks if HTTP_USER_AGENT is set on the request.
     34* Fix: Accessing the callback handler directly without a payload resulted in an Uncaught JsonException. This exception is now handled by returning an HTTP 400 response with a proper message.
     35
    3036= 7.1.0 =
    3137* Feat: Add payment gateway support for WC Checkout Blocks
  • woocommerce-quickpay/tags/7.2.0/classes/instances/mobilepay-subscriptions.php

    r2924617 r3045559  
    55    public $main_settings = null;
    66
    7     const instance_id = 'mobilepay-subscriptions';
     7    public const instance_id = 'mobilepay-subscriptions';
    88
    99    public function __construct() {
     
    4444        add_filter( 'woocommerce_subscription_payment_meta', [ $this, 'woocommerce_subscription_payment_meta' ], 10, 2 );
    4545        add_action( 'woocommerce_quickpay_callback_subscription_cancelled', [ $this, 'on_subscription_cancelled' ], 10, 4 );
     46        add_filter( 'woocommerce_quickpay_payment_cancelled_order_transition_status', [ $this, 'payment_cancelled_order_transition_status' ], 10, 4 );
     47        add_filter( 'woocommerce_quickpay_payment_cancelled_order_transition_status_note', [ $this, 'payment_cancelled_order_transition_status_note' ], 10, 4 );
    4648    }
    4749
     
    5860            $allowed_transition_from = apply_filters( 'woocommerce_quickpay_mps_cancelled_from_status', [ 'active' ], $subscription, $order, $json );
    5961            if ( $subscription->has_status( $allowed_transition_from ) && ! $subscription->has_status( $transition_to ) && WC_QuickPay_Helper::is_subscription_status( $transition_to ) ) {
    60                 $subscription->update_status( $transition_to, ! empty( $operation->aq_status_msg ) ? $operation->aq_status_msg : __( 'Payment transaction has been cancelled by merchant or customer', 'woo-quickpay' ) );
     62                $subscription->update_status( $transition_to, ! empty( $operation->aq_status_msg ) ? $operation->aq_status_msg : __( 'Subscription transaction has been cancelled by merchant or customer', 'woo-quickpay' ) );
    6163            }
    6264        }
    6365    }
    6466
     67
     68    /**
     69     *  Perform gateway specific order status updates in case of specific scenarios:
     70     *
     71     *  code 50000: Payment failed to execute during the due-date.
     72     *  code 50001: User rejected the Pending payment in MobilePay
     73     *
     74     * @param $transition_to_status
     75     * @param WC_Order $order
     76     * @param $transaction
     77     * @param $operation
     78     *
     79     * @return mixed
     80     */
     81    public function payment_cancelled_order_transition_status( $transition_to_status, WC_Order $order, $transaction, $operation ) {
     82        if ( $this->is_cancelled_transaction_failed( $operation, $order ) ) {
     83            $transition_to_status = 'failed';
     84        }
     85
     86        return $transition_to_status;
     87    }
     88
     89    /**
     90     *  Perform gateway specific order status updates in case of specific scenarios:
     91     *
     92     *  code 50000: Payment failed to execute during the due-date.
     93     *  code 50001: User rejected the Pending payment in MobilePay
     94     *
     95     * @param $note
     96     * @param WC_Order $order
     97     * @param $transaction
     98     * @param $operation
     99     *
     100     * @return mixed
     101     */
     102    public function payment_cancelled_order_transition_status_note( $note, WC_Order $order, $transaction, $operation ) {
     103        if ( $this->is_cancelled_transaction_failed( $operation, $order ) ) {
     104            $note = sprintf( '%s - %s', $note, $operation->aq_status_msg );
     105        }
     106
     107        return $note;
     108    }
     109
     110    /**
     111     * Checks if the cancel operation on a payment should be considered as a failed payment.
     112     *
     113     * aq_status_code 50000: Payment failed to execute during the due-date.
     114     * aq_status_code 50001: User rejected the Pending payment in MobilePay
     115     *
     116     * @param $operation
     117     * @param WC_Order $order
     118     *
     119     * @return bool
     120     */
     121    private function is_cancelled_transaction_failed( $operation, WC_Order $order ): bool {
     122        return in_array( (int) $operation->aq_status_code, [ 50000, 50001 ], true ) && $order->get_payment_method() === $this->id;
     123    }
     124
    65125    /**
    66126     * init_form_fields function.
     
    69129     *
    70130     * @access public
    71      * @return array
    72131     */
    73132    public function init_form_fields(): void {
  • woocommerce-quickpay/tags/7.2.0/classes/woocommerce-quickpay-callbacks.php

    r2932188 r3045559  
    6767
    6868    /**
     69     * @param WC_Order $order
     70     * @param $transaction - the complete transaction object
     71     * @param $operation - last operation on transaction
     72     *
     73     * @return void
     74     */
     75    public static function payment_cancelled( WC_Order $order, $transaction, $operation ): void {
     76        // Fetch optional transition status
     77        $transition_status = WC_QP()->s( 'quickpay_payment_cancelled_order_transition_status' );
     78
     79        // Allow 3rd party code to overwrite the status
     80        $transition_status = apply_filters( 'woocommerce_quickpay_payment_cancelled_order_transition_status',
     81            $transition_status,
     82            $order,
     83            $transaction,
     84            $operation
     85        );
     86
     87        // Allow 3rd party code to overwrite the note
     88        $transition_status_note = apply_filters( 'woocommerce_quickpay_payment_cancelled_order_transition_status_note',
     89            __( 'Payment cancelled.', 'woo-quickpay' ),
     90            $order,
     91            $transaction,
     92            $operation,
     93            $transition_status
     94        );
     95
     96        // If a transition status is set, attempt to update the order status
     97        if ( ! empty( $transition_status ) ) {
     98            $order->update_status( $transition_status, $transition_status_note );
     99        } else {
     100            // Write a note to the order history
     101            $order->add_order_note( $transition_status_note );
     102        }
     103
     104        // Allow plugins or submodules to hook in here to perform custom actions
     105        do_action( 'woocommerce_quickpay_callback_payment_cancelled', $order, $transaction, $operation );
     106    }
     107
     108    /**
    69109     * @param WC_Subscription $subscription
    70110     * @param WC_Order $related_order can be parent or renewal order
  • woocommerce-quickpay/tags/7.2.0/classes/woocommerce-quickpay-helper.php

    r3029485 r3045559  
    272272        ];
    273273
    274         if ( array_key_exists( trim( $payment_type ), $logos ) ) {
     274        if ( $payment_type !== null && array_key_exists( trim( $payment_type ), $logos ) ) {
    275275            return WC_QP()->plugin_url( 'assets/images/cards/' . $logos[ $payment_type ] );
    276276        }
     
    363363     * @return bool
    364364     */
    365     public static function is_browser( $browser ) {
     365    public static function is_browser( $browser ): bool {
     366
     367        if ( ! isset( $_SERVER['HTTP_USER_AGENT'] ) ) {
     368            return false;
     369        }
     370
    366371        $u_agent = $_SERVER['HTTP_USER_AGENT'];
    367372        $name    = 'Unknown';
  • woocommerce-quickpay/tags/7.2.0/classes/woocommerce-quickpay-settings.php

    r2974637 r3045559  
    104104                ],
    105105
    106                 'quickpay_autofee'                      => [
     106                'quickpay_autofee'                                   => [
    107107                    'title'       => __( 'Enable autofee', 'woo-quickpay' ),
    108108                    'type'        => 'checkbox',
     
    112112                    'desc_tip'    => true,
    113113                ],
    114                 'quickpay_captureoncomplete'            => [
     114                'quickpay_captureoncomplete'                         => [
    115115                    'title'       => __( 'Capture on complete', 'woo-quickpay' ),
    116116                    'type'        => 'checkbox',
     
    120120                    'desc_tip'    => true,
    121121                ],
    122                 'quickpay_complete_on_capture'          => [
    123                     'title'       => __( 'Complete order on capture callbacks', 'woo-quickpay' ),
    124                     'type'        => 'checkbox',
    125                     'label'       => __( 'Enable', 'woo-quickpay' ),
    126                     'description' => __( 'When enabled, an order will be automatically completed when capture callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when the payment is captured from either the shop or the QuickPay manager. Keep disabled to manually complete orders. ', 'woo-quickpay' ),
    127                     'default'     => 'no',
    128                 ],
    129                 'quickpay_cancel_transaction_on_cancel' => [
     122                'quickpay_payment_cancelled_order_transition_status' => [
     123                    'title'       => __( 'Order status update on payment cancellation', 'woo-quickpay' ),
     124                    'type'        => 'select',
     125                    'options'     => self::get_payment_cancelled_order_transition_statuses(),
     126                    'label'       => __( 'Enable', 'woo-quickpay' ),
     127                    'description' => __( 'When activated, orders linked to payments will change to the chosen status if the merchant cancels the payment.', 'woo-quickpay' ),
     128                    'default'     => 'no',
     129                ],
     130                'quickpay_cancel_transaction_on_cancel'              => [
    130131                    'title'       => __( 'Cancel payments on order cancellation', 'woo-quickpay' ),
    131132                    'type'        => 'checkbox',
     
    134135                    'default'     => 'no',
    135136                ],
    136                 'quickpay_text_on_statement'            => [
     137                'quickpay_text_on_statement'                         => [
    137138                    'title'             => __( 'Text on statement', 'woo-quickpay' ),
    138139                    'type'              => 'text',
     
    269270
    270271        return $fields;
     272    }
     273
     274    /**
     275     * Get the array of payment cancelled order transition statuses.
     276     *
     277     * This method retrieves the order statuses that are considered as cancellation transitions
     278     * for a payment. It includes the order statuses 'wc-failed', 'wc-pending', 'wc-on-hold',
     279     * and 'wc-cancelled' by default. Additional statuses can be added or modified through the
     280     * 'woocommerce_quickpay_payment_cancelled_order_transition_statuses' filter.
     281     *
     282     * @return array The array of payment cancelled order transition statuses.
     283     */
     284    private static function get_payment_cancelled_order_transition_statuses(): array {
     285        $statuses       = wc_get_order_statuses();
     286        $allowed_status = apply_filters( 'woocommerce_quickpay_payment_cancelled_order_transition_statuses', [
     287            'wc-failed',
     288            'wc-pending',
     289            'wc-on-hold',
     290            'wc-cancelled'
     291        ], $statuses );
     292
     293        $filtered_statuses = array_filter( $statuses, static fn( $status ) => in_array( $status, $allowed_status, true, ), ARRAY_FILTER_USE_KEY );
     294
     295        return array_merge( [ null => __( '-- Select (optional) --', 'woo-quickpay' ) ], $filtered_statuses );
    271296    }
    272297
  • woocommerce-quickpay/tags/7.2.0/languages/woo-quickpay-da_DK.po

    r2974637 r3045559  
    22msgstr ""
    33"Project-Id-Version: WooCommerce QuickPay\n"
    4 "POT-Creation-Date: 2023-10-04 11:48+0200\n"
    5 "PO-Revision-Date: 2023-10-04 11:48+0200\n"
     4"POT-Creation-Date: 2024-03-01 15:22+0100\n"
     5"PO-Revision-Date: 2024-03-01 15:24+0100\n"
    66"Last-Translator: \n"
    77"Language-Team: \n"
     
    1111"Content-Transfer-Encoding: 8bit\n"
    1212"Plural-Forms: nplurals=2; plural=(n != 1);\n"
    13 "X-Generator: Poedit 3.4\n"
     13"X-Generator: Poedit 3.4.2\n"
    1414"X-Poedit-Basepath: ..\n"
    1515"X-Poedit-WPHeader: woocommerce-quickpay.php\n"
     
    8282msgstr "Dette er dit betalingslink"
    8383
    84 #: classes/instances/anyday.php:36 classes/instances/apple-pay.php:37
    85 #: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:52
     84#: classes/instances/anyday.php:35 classes/instances/apple-pay.php:36
     85#: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:51
    8686#: classes/instances/ideal.php:35 classes/instances/klarna.php:36
    8787#: classes/instances/mobilepay-checkout.php:348
    88 #: classes/instances/mobilepay-subscriptions.php:76
    89 #: classes/instances/mobilepay-subscriptions.php:104
    90 #: classes/instances/mobilepay-subscriptions.php:111
    91 #: classes/instances/mobilepay-subscriptions.php:122
     88#: classes/instances/mobilepay-subscriptions.php:135
     89#: classes/instances/mobilepay-subscriptions.php:163
     90#: classes/instances/mobilepay-subscriptions.php:170
     91#: classes/instances/mobilepay-subscriptions.php:181
    9292#: classes/instances/mobilepay.php:34 classes/instances/paypal.php:37
    9393#: classes/instances/quickpay-extra.php:41 classes/instances/resurs.php:35
     
    9999#: classes/woocommerce-quickpay-settings.php:109
    100100#: classes/woocommerce-quickpay-settings.php:117
    101 #: classes/woocommerce-quickpay-settings.php:125
    102 #: classes/woocommerce-quickpay-settings.php:132
    103 #: classes/woocommerce-quickpay-settings.php:219
    104 #: classes/woocommerce-quickpay-settings.php:253
    105 #: classes/woocommerce-quickpay-settings.php:263
    106 #: classes/woocommerce-quickpay-settings.php:353
     101#: classes/woocommerce-quickpay-settings.php:126
     102#: classes/woocommerce-quickpay-settings.php:133
     103#: classes/woocommerce-quickpay-settings.php:220
     104#: classes/woocommerce-quickpay-settings.php:254
     105#: classes/woocommerce-quickpay-settings.php:264
     106#: classes/woocommerce-quickpay-settings.php:378
    107107msgid "Enable"
    108108msgstr "Aktiver"
    109109
    110 #: classes/instances/anyday.php:38 classes/instances/apple-pay.php:39
    111 #: classes/instances/google-pay.php:54
    112 #: classes/instances/mobilepay-subscriptions.php:78
     110#: classes/instances/anyday.php:37 classes/instances/apple-pay.php:38
     111#: classes/instances/google-pay.php:53
     112#: classes/instances/mobilepay-subscriptions.php:137
    113113#, php-format
    114114msgid "Enable %s payment"
    115115msgstr "Aktiver %s-betalinger"
    116116
    117 #: classes/instances/anyday.php:43 classes/instances/apple-pay.php:45
    118 #: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:60
     117#: classes/instances/anyday.php:42 classes/instances/apple-pay.php:44
     118#: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:59
    119119#: classes/instances/ideal.php:42 classes/instances/klarna.php:43
    120120#: classes/instances/mobilepay-checkout.php:355
    121 #: classes/instances/mobilepay-subscriptions.php:83
     121#: classes/instances/mobilepay-subscriptions.php:142
    122122#: classes/instances/mobilepay.php:41 classes/instances/paypal.php:44
    123123#: classes/instances/quickpay-extra.php:48 classes/instances/resurs.php:42
    124124#: classes/instances/sofort.php:43 classes/instances/swish.php:42
    125125#: classes/instances/trustly.php:42 classes/instances/viabill.php:42
    126 #: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:150
     126#: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:151
    127127msgid "Shop setup"
    128128msgstr "Shop-indstillinger"
    129129
    130 #: classes/instances/anyday.php:46 classes/instances/apple-pay.php:48
    131 #: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:63
     130#: classes/instances/anyday.php:45 classes/instances/apple-pay.php:47
     131#: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:62
    132132#: classes/instances/ideal.php:45 classes/instances/klarna.php:46
    133133#: classes/instances/mobilepay-checkout.php:358
    134 #: classes/instances/mobilepay-subscriptions.php:86
     134#: classes/instances/mobilepay-subscriptions.php:145
    135135#: classes/instances/mobilepay.php:44 classes/instances/paypal.php:47
    136136#: classes/instances/quickpay-extra.php:51 classes/instances/resurs.php:45
    137137#: classes/instances/sofort.php:46 classes/instances/swish.php:45
    138138#: classes/instances/trustly.php:45 classes/instances/viabill.php:45
    139 #: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:153
     139#: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:154
    140140msgid "Title"
    141141msgstr "Titel"
    142142
    143 #: classes/instances/anyday.php:48 classes/instances/apple-pay.php:50
    144 #: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:65
     143#: classes/instances/anyday.php:47 classes/instances/apple-pay.php:49
     144#: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:64
    145145#: classes/instances/ideal.php:47 classes/instances/klarna.php:48
    146146#: classes/instances/mobilepay-checkout.php:360
    147 #: classes/instances/mobilepay-subscriptions.php:88
     147#: classes/instances/mobilepay-subscriptions.php:147
    148148#: classes/instances/mobilepay.php:46 classes/instances/paypal.php:49
    149149#: classes/instances/quickpay-extra.php:53 classes/instances/resurs.php:47
    150150#: classes/instances/sofort.php:48 classes/instances/swish.php:47
    151151#: classes/instances/trustly.php:47 classes/instances/viabill.php:47
    152 #: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:155
     152#: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:156
    153153msgid "This controls the title which the user sees during checkout."
    154154msgstr ""
     
    156156"QuickPay i checkout-processen."
    157157
    158 #: classes/instances/anyday.php:49
     158#: classes/instances/anyday.php:48
    159159msgid "Anyday"
    160160msgstr "Anyday"
    161161
    162 #: classes/instances/anyday.php:52 classes/instances/apple-pay.php:54
    163 #: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:69
     162#: classes/instances/anyday.php:51 classes/instances/apple-pay.php:53
     163#: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:68
    164164#: classes/instances/ideal.php:51 classes/instances/klarna.php:52
    165165#: classes/instances/mobilepay-checkout.php:364
    166 #: classes/instances/mobilepay-subscriptions.php:92
     166#: classes/instances/mobilepay-subscriptions.php:151
    167167#: classes/instances/mobilepay.php:50 classes/instances/paypal.php:53
    168168#: classes/instances/quickpay-extra.php:57 classes/instances/resurs.php:51
    169169#: classes/instances/sofort.php:52 classes/instances/swish.php:51
    170170#: classes/instances/trustly.php:51 classes/instances/viabill.php:51
    171 #: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:160
     171#: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:161
    172172msgid "Customer Message"
    173173msgstr "Besked til kunde"
    174174
    175 #: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
    176 #: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:71
     175#: classes/instances/anyday.php:53 classes/instances/apple-pay.php:55
     176#: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:70
    177177#: classes/instances/ideal.php:53 classes/instances/klarna.php:54
    178178#: classes/instances/mobilepay-checkout.php:366
    179 #: classes/instances/mobilepay-subscriptions.php:94
     179#: classes/instances/mobilepay-subscriptions.php:153
    180180#: classes/instances/mobilepay.php:52 classes/instances/paypal.php:55
    181181#: classes/instances/quickpay-extra.php:59 classes/instances/resurs.php:53
    182182#: classes/instances/sofort.php:54 classes/instances/swish.php:53
    183183#: classes/instances/trustly.php:53 classes/instances/viabill.php:53
    184 #: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:162
     184#: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:163
    185185msgid "This controls the description which the user sees during checkout."
    186186msgstr ""
     
    188188"kunder under checkout-processen."
    189189
    190 #: classes/instances/anyday.php:55 classes/instances/apple-pay.php:57
    191 #: classes/instances/google-pay.php:72
    192 #: classes/instances/mobilepay-subscriptions.php:95
     190#: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
     191#: classes/instances/google-pay.php:71
     192#: classes/instances/mobilepay-subscriptions.php:154
    193193#, php-format
    194194msgid "Pay with %s"
    195195msgstr "Betal med %s"
    196196
    197 #: classes/instances/apple-pay.php:41 classes/instances/google-pay.php:55
     197#: classes/instances/apple-pay.php:40 classes/instances/google-pay.php:54
    198198#, php-format
    199199msgid "Works only in %s."
    200200msgstr "Virker kun i %s."
    201201
    202 #: classes/instances/apple-pay.php:51
     202#: classes/instances/apple-pay.php:50
    203203msgid "Apple Pay"
    204204msgstr "Apple Pay"
     
    216216msgstr "Betal med Forbrugsforeningen af 1886"
    217217
    218 #: classes/instances/google-pay.php:66
     218#: classes/instances/google-pay.php:65
    219219msgid "Google Pay"
    220220msgstr "Google Pay"
     
    232232msgstr "Betal med iDEAL"
    233233
    234 #: classes/instances/instance.php:58 woocommerce-quickpay.php:897
     234#: classes/instances/instance.php:58 woocommerce-quickpay.php:911
    235235#, php-format
    236236msgid "Allows you to receive payments via %s"
     
    300300"IKKE blive påvirket."
    301301
    302 #: classes/instances/mobilepay-subscriptions.php:60
     302#: classes/instances/mobilepay-subscriptions.php:62
    303303msgid "Payment transaction has been cancelled by merchant or customer"
    304304msgstr "Betalingstransaktionen er blevet annulleret af medarbejder eller kunde"
    305305
    306 #: classes/instances/mobilepay-subscriptions.php:102
     306#: classes/instances/mobilepay-subscriptions.php:161
    307307msgid "Activate subscriptions immediately."
    308308msgstr "Aktiver abonnementer omgående."
    309309
    310 #: classes/instances/mobilepay-subscriptions.php:106
     310#: classes/instances/mobilepay-subscriptions.php:165
    311311msgid ""
    312312"Activates the subscription after the customer authorizes an agreement. "
     
    324324"target=“_blank”>her</a>"
    325325
    326 #: classes/instances/mobilepay-subscriptions.php:109
     326#: classes/instances/mobilepay-subscriptions.php:168
    327327msgid "Pre-fill phone number"
    328328msgstr "Præ-udfyld telefonnummer"
    329329
    330 #: classes/instances/mobilepay-subscriptions.php:113
     330#: classes/instances/mobilepay-subscriptions.php:172
    331331msgid ""
    332332"When enabled the customer's phone number will be used on the MobilePay "
     
    336336"Telefonnummeret bliver præ-udfyldt i MobilePay’s formular."
    337337
    338 #: classes/instances/mobilepay-subscriptions.php:120
     338#: classes/instances/mobilepay-subscriptions.php:179
    339339msgid "Keep subscription active"
    340340msgstr "Hold abonnement aktivt"
    341341
    342 #: classes/instances/mobilepay-subscriptions.php:124
     342#: classes/instances/mobilepay-subscriptions.php:183
    343343msgid ""
    344344"When enabled the subscription will automatically be activated after "
     
    350350"bliver abonnementet sat på pause."
    351351
    352 #: classes/instances/mobilepay-subscriptions.php:128
     352#: classes/instances/mobilepay-subscriptions.php:187
    353353msgid "Agreements"
    354354msgstr "Betalingsaftaler"
    355355
    356 #: classes/instances/mobilepay-subscriptions.php:131
     356#: classes/instances/mobilepay-subscriptions.php:190
    357357msgid "Cancelled agreements status"
    358358msgstr "Annullerede aftaler - status"
    359359
    360 #: classes/instances/mobilepay-subscriptions.php:136
     360#: classes/instances/mobilepay-subscriptions.php:195
    361361msgid ""
    362362"Changes subscription status in case of cancelled payment agreement from "
     
    366366"manageren eller kundens MobilePay app"
    367367
    368 #: classes/instances/mobilepay-subscriptions.php:139
     368#: classes/instances/mobilepay-subscriptions.php:198
    369369msgid "Select status"
    370370msgstr "Vælg status"
    371371
    372 #: classes/instances/mobilepay-subscriptions.php:147
     372#: classes/instances/mobilepay-subscriptions.php:206
    373373msgid "Do nothing"
    374374msgstr "Gør ingenting"
    375375
    376 #: classes/instances/mobilepay-subscriptions.php:214
     376#: classes/instances/mobilepay-subscriptions.php:273
    377377#, php-format
    378378msgid "Payment of #%s"
    379379msgstr "Betaling af #%s"
    380380
    381 #: classes/instances/mobilepay-subscriptions.php:233
     381#: classes/instances/mobilepay-subscriptions.php:292
    382382msgid ""
    383383"'Activate subscriptions immediately.' enabled. Activating subscription due "
     
    387387"autoriseret aftale med MobilePay Subscriptions"
    388388
    389 #: classes/instances/mobilepay-subscriptions.php:282
    390 #: woocommerce-quickpay.php:661
     389#: classes/instances/mobilepay-subscriptions.php:341
     390#: woocommerce-quickpay.php:667
    391391msgid "QuickPay Transaction ID"
    392392msgstr "QuickPay Transaktions-ID"
     
    421421
    422422#: classes/instances/quickpay-extra.php:54
    423 #: classes/woocommerce-quickpay-settings.php:156
     423#: classes/woocommerce-quickpay-settings.php:157
    424424msgid "QuickPay"
    425425msgstr "QuickPay"
     
    446446
    447447#: classes/instances/quickpay-extra.php:69
    448 #: classes/woocommerce-quickpay-settings.php:181
     448#: classes/woocommerce-quickpay-settings.php:182
    449449msgid "Credit card icons"
    450450msgstr "Kreditkort-ikoner"
    451451
    452452#: classes/instances/quickpay-extra.php:71
    453 #: classes/woocommerce-quickpay-settings.php:183
     453#: classes/woocommerce-quickpay-settings.php:184
    454454msgid ""
    455455"Choose the card icons you wish to show next to the QuickPay payment option "
     
    459459
    460460#: classes/instances/quickpay-extra.php:76
    461 #: classes/woocommerce-quickpay-settings.php:188
     461#: classes/woocommerce-quickpay-settings.php:189
    462462msgid "Select icons"
    463463msgstr "Vælg ikoner"
     
    571571
    572572#: classes/modules/woocommerce-quickpay-admin-orders-meta.php:30
    573 #: woocommerce-quickpay.php:753
     573#: woocommerce-quickpay.php:759
    574574msgid "QuickPay Payment"
    575575msgstr "QuickPay betaling"
     
    664664msgstr "Betaling hævet."
    665665
    666 #: classes/woocommerce-quickpay-callbacks.php:74
     666#: classes/woocommerce-quickpay-callbacks.php:89
     667msgid "Payment cancelled."
     668msgstr "Betaling annulleret."
     669
     670#: classes/woocommerce-quickpay-callbacks.php:114
    667671#, php-format
    668672msgid "Subscription authorized. Transaction ID: %s"
     
    691695
    692696#: classes/woocommerce-quickpay-settings.php:37
    693 #: classes/woocommerce-quickpay-settings.php:377
     697#: classes/woocommerce-quickpay-settings.php:402
    694698msgid "Api User key"
    695699msgstr "API Key til din API bruger"
     
    704708
    705709#: classes/woocommerce-quickpay-settings.php:43
    706 #: classes/woocommerce-quickpay-settings.php:376
     710#: classes/woocommerce-quickpay-settings.php:401
    707711msgid "Private key"
    708712msgstr "Privat nøgle"
     
    807811
    808812#: classes/woocommerce-quickpay-settings.php:123
    809 msgid "Complete order on capture callbacks"
    810 msgstr "Afslut ordrer ved capture callbacks"
    811 
    812 #: classes/woocommerce-quickpay-settings.php:126
    813 msgid ""
    814 "When enabled, an order will be automatically completed when capture "
    815 "callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when the "
    816 "payment is captured from either the shop or the QuickPay manager. Keep "
    817 "disabled to manually complete orders. "
    818 msgstr ""
    819 "Ved aktivering afslutter systemet automatisk ordrer, når WooCommerce "
    820 "modtager callbacks vedr. trækning på ordren. Callbacks sendes af QuickPay, "
    821 "når en betaling er trukket, enten via WooCommerce eller via QuickPay "
    822 "manageren. Deaktiver hvis du ønsker at bibeholde manuel ordre-håndtering. "
    823 
    824 #: classes/woocommerce-quickpay-settings.php:130
     813msgid "Order status update on payment cancellation"
     814msgstr "Ordrestatusopdatering ved annullering af betaling"
     815
     816#: classes/woocommerce-quickpay-settings.php:127
     817msgid ""
     818"When activated, orders linked to payments will change to the chosen status "
     819"if the merchant cancels the payment."
     820msgstr ""
     821"Når aktiveret, vil ordrer knyttet til betalinger ændre sig til den valgte "
     822"status, såfremt merchant annullerer betalingen."
     823
     824#: classes/woocommerce-quickpay-settings.php:131
    825825msgid "Cancel payments on order cancellation"
    826826msgstr "Annuller betalinger ved annullering af ordrer"
    827827
    828 #: classes/woocommerce-quickpay-settings.php:133
     828#: classes/woocommerce-quickpay-settings.php:134
    829829msgid ""
    830830"Automatically cancel payments via the API when an order's status changes to "
     
    834834"annulleret."
    835835
    836 #: classes/woocommerce-quickpay-settings.php:137
     836#: classes/woocommerce-quickpay-settings.php:138
    837837msgid "Text on statement"
    838838msgstr "Text on statement"
    839839
    840 #: classes/woocommerce-quickpay-settings.php:139
     840#: classes/woocommerce-quickpay-settings.php:140
    841841msgid ""
    842842"Text that will be placed on cardholder’s bank statement (MAX 22 ASCII "
     
    848848"er ikke tilladt)."
    849849
    850 #: classes/woocommerce-quickpay-settings.php:163
     850#: classes/woocommerce-quickpay-settings.php:164
    851851msgid "Pay via QuickPay. Allows you to pay with your credit card via QuickPay."
    852852msgstr "Betal via QuickPay. Betal med kreditkort via QuickPay."
    853853
    854 #: classes/woocommerce-quickpay-settings.php:167
     854#: classes/woocommerce-quickpay-settings.php:168
    855855msgid "Order button text"
    856856msgstr "Tekst på ordreknap"
    857857
    858 #: classes/woocommerce-quickpay-settings.php:169
     858#: classes/woocommerce-quickpay-settings.php:170
    859859msgid "Text shown on the submit button when choosing payment method."
    860860msgstr "Tekst der vises på checkud-knappen, når man vælger betalingsmetode."
    861861
    862 #: classes/woocommerce-quickpay-settings.php:170
     862#: classes/woocommerce-quickpay-settings.php:171
    863863msgid "Go to payment"
    864864msgstr "Gå til betaling"
    865865
    866 #: classes/woocommerce-quickpay-settings.php:174
     866#: classes/woocommerce-quickpay-settings.php:175
    867867msgid "Email instructions"
    868868msgstr "Email-instruktioner"
    869869
    870 #: classes/woocommerce-quickpay-settings.php:176
     870#: classes/woocommerce-quickpay-settings.php:177
    871871msgid "Instructions that will be added to emails."
    872872msgstr "Eventuelle instruktioner, der bliver tilføjet ordrebekræftelsen."
    873873
    874 #: classes/woocommerce-quickpay-settings.php:194
     874#: classes/woocommerce-quickpay-settings.php:195
    875875msgid "Credit card icons maximum height"
    876876msgstr "Maximumhøjde på kreditkortikonerne"
    877877
    878 #: classes/woocommerce-quickpay-settings.php:196
     878#: classes/woocommerce-quickpay-settings.php:197
    879879msgid ""
    880880"Set the maximum pixel height of the credit card icons shown on the frontend."
     
    882882"Sæt den maximale pixelhøjde på kreditkortikonerne der vises i din shop."
    883883
    884 #: classes/woocommerce-quickpay-settings.php:202
     884#: classes/woocommerce-quickpay-settings.php:203
    885885msgid "Google Analytics"
    886886msgstr "Google Analytics"
    887887
    888 #: classes/woocommerce-quickpay-settings.php:205
     888#: classes/woocommerce-quickpay-settings.php:206
    889889msgid "Tracking ID"
    890890msgstr "Tracking ID"
    891891
    892 #: classes/woocommerce-quickpay-settings.php:207
     892#: classes/woocommerce-quickpay-settings.php:208
    893893msgid "Your Google Analytics tracking ID. I.E: UA-XXXXXXXXX-X"
    894894msgstr "Dit Google Analytics tracking ID. Eks: UA-XXXXXXXXX-X"
    895895
    896 #: classes/woocommerce-quickpay-settings.php:213
     896#: classes/woocommerce-quickpay-settings.php:214
    897897msgid "Shop Admin Setup"
    898898msgstr "Shop Admin Indstillinger"
    899899
    900 #: classes/woocommerce-quickpay-settings.php:217
     900#: classes/woocommerce-quickpay-settings.php:218
    901901msgid "Fetch Transaction Info"
    902902msgstr "Hent transaktions-info"
    903903
    904 #: classes/woocommerce-quickpay-settings.php:220
     904#: classes/woocommerce-quickpay-settings.php:221
    905905msgid "Show transaction information in the order overview."
    906906msgstr "Vis transaktions-information i ordre-oversigten."
    907907
    908 #: classes/woocommerce-quickpay-settings.php:227
     908#: classes/woocommerce-quickpay-settings.php:228
    909909msgid "Custom Variables"
    910910msgstr "Variabel Data"
    911911
    912 #: classes/woocommerce-quickpay-settings.php:230
     912#: classes/woocommerce-quickpay-settings.php:231
    913913msgid "Select Information"
    914914msgstr "Vælg information"
    915915
    916 #: classes/woocommerce-quickpay-settings.php:235
     916#: classes/woocommerce-quickpay-settings.php:236
    917917msgid ""
    918918"Selected options will store the specific data on your transaction inside "
     
    922922"QuickPay Manager."
    923923
    924 #: classes/woocommerce-quickpay-settings.php:239
     924#: classes/woocommerce-quickpay-settings.php:240
    925925msgid "Select order data"
    926926msgstr "Vælg ordredata"
    927927
    928 #: classes/woocommerce-quickpay-settings.php:251
     928#: classes/woocommerce-quickpay-settings.php:252
    929929msgid "Complete renewal orders"
    930930msgstr "Gennemfør fornyelsesordrer"
    931931
    932 #: classes/woocommerce-quickpay-settings.php:254
     932#: classes/woocommerce-quickpay-settings.php:255
    933933msgid ""
    934934"Automatically mark a renewal order as complete on successful recurring "
     
    938938"abonnementsbetaling."
    939939
    940 #: classes/woocommerce-quickpay-settings.php:261
     940#: classes/woocommerce-quickpay-settings.php:262
    941941msgid "Update card on manual renewal payment"
    942942msgstr "Opdater betalingskort ved manuel betaling af renewal ordrer"
    943943
    944 #: classes/woocommerce-quickpay-settings.php:264
     944#: classes/woocommerce-quickpay-settings.php:265
    945945msgid ""
    946946"When paying failed renewals, the payment link will authorize a new "
     
    954954"renewal ordre."
    955955
    956 #: classes/woocommerce-quickpay-settings.php:321
     956#: classes/woocommerce-quickpay-settings.php:295
     957msgid "-- Select (optional) --"
     958msgstr "-- Select (optional) --"
     959
     960#: classes/woocommerce-quickpay-settings.php:346
    957961msgid "Billing: Complete Customer Details"
    958962msgstr "Faktura: Komplet kundeinformation"
    959963
    960 #: classes/woocommerce-quickpay-settings.php:322
     964#: classes/woocommerce-quickpay-settings.php:347
    961965msgid "Browser: User Agent"
    962966msgstr "Browser: User Agent"
    963967
    964 #: classes/woocommerce-quickpay-settings.php:323
     968#: classes/woocommerce-quickpay-settings.php:348
    965969msgid "Customer: Email Address"
    966970msgstr "Customer: Email Address"
    967971
    968 #: classes/woocommerce-quickpay-settings.php:324
     972#: classes/woocommerce-quickpay-settings.php:349
    969973msgid "Customer: Phone Number"
    970974msgstr "Kunde: Telefonnummer"
    971975
    972 #: classes/woocommerce-quickpay-settings.php:325
     976#: classes/woocommerce-quickpay-settings.php:350
    973977msgid "Shipping: Complete Customer Details"
    974978msgstr "Levering: Komplet kundeinformation"
    975979
    976 #: classes/woocommerce-quickpay-settings.php:326
     980#: classes/woocommerce-quickpay-settings.php:351
    977981msgid "Shipping: Shipping Method"
    978982msgstr "Levering: Leveringsmetode"
    979983
    980 #: classes/woocommerce-quickpay-settings.php:340
     984#: classes/woocommerce-quickpay-settings.php:365
    981985msgid "Debug"
    982986msgstr "Fejlsøgning"
    983987
    984 #: classes/woocommerce-quickpay-settings.php:341
     988#: classes/woocommerce-quickpay-settings.php:366
    985989msgid "Got problems? Check out the Wiki."
    986990msgstr "Har du brug for hjælp? Tag et kig på Wiki’en."
    987991
    988 #: classes/woocommerce-quickpay-settings.php:342
     992#: classes/woocommerce-quickpay-settings.php:367
    989993msgid "View debug logs"
    990994msgstr "Se fejl-loggen"
    991995
    992 #: classes/woocommerce-quickpay-settings.php:345
     996#: classes/woocommerce-quickpay-settings.php:370
    993997msgid "Empty debug logs"
    994998msgstr "Tøm fejl-loggen"
    995999
    996 #: classes/woocommerce-quickpay-settings.php:349
     1000#: classes/woocommerce-quickpay-settings.php:374
    9971001msgid "Empty transaction cache"
    9981002msgstr "Tøm transaktions-cache"
    9991003
    10001004#. Plugin Name of the plugin/theme
    1001 #: classes/woocommerce-quickpay-settings.php:387
     1005#: classes/woocommerce-quickpay-settings.php:412
    10021006msgid "WooCommerce QuickPay"
    10031007msgstr "WooCommerce QuickPay"
    10041008
    1005 #: classes/woocommerce-quickpay-settings.php:388
     1009#: classes/woocommerce-quickpay-settings.php:413
    10061010#, php-format
    10071011msgid ""
     
    10121016"href=\"%s\">indstillings-siden.</a>."
    10131017
    1014 #: classes/woocommerce-quickpay-settings.php:391
     1018#: classes/woocommerce-quickpay-settings.php:416
    10151019#, php-format
    10161020msgid "<strong>%s</strong> is mandatory."
     
    11711175msgstr "Cachet"
    11721176
    1173 #: woocommerce-quickpay.php:31
     1177#: woocommerce-quickpay.php:32
    11741178msgid "WooCommerce QuickPay requires WooCommerce to be active."
    11751179msgstr "WooCommerce QuickPay kræver at WooCommerce er aktiv."
    11761180
    1177 #: woocommerce-quickpay.php:32
     1181#: woocommerce-quickpay.php:33
    11781182msgid "Go to the plugins page to activate WooCommerce"
    11791183msgstr "Gå til plugin-siden for at aktivere WooCommerce"
    11801184
    1181 #: woocommerce-quickpay.php:329
     1185#: woocommerce-quickpay.php:335
    11821186msgid "Settings"
    11831187msgstr "Indstillinger"
    11841188
    1185 #: woocommerce-quickpay.php:523
     1189#: woocommerce-quickpay.php:529
    11861190#, php-format
    11871191msgid "No transaction ID for order: %s"
    11881192msgstr "Intet transaktions-id for ordre nr: %s"
    11891193
    1190 #: woocommerce-quickpay.php:533
     1194#: woocommerce-quickpay.php:539
    11911195msgid "A non-captured payment cannot be refunded."
    11921196msgstr "En betaling der ikke er trukket, kan ikke refunderes."
    11931197
    1194 #: woocommerce-quickpay.php:536
     1198#: woocommerce-quickpay.php:542
    11951199msgid "Transaction state does not allow refunds."
    11961200msgstr "Ordrens transaktionsstatus tillader ikke refunderinger."
    11971201
    1198 #: woocommerce-quickpay.php:689
     1202#: woocommerce-quickpay.php:695
    11991203#, php-format
    12001204msgid "QuickPay Transaction ID updated from #%d to #%d"
    12011205msgstr "QuickPay Transaktions-ID blev opdateret fra #%d til #%d"
    12021206
    1203 #: woocommerce-quickpay.php:746
     1207#: woocommerce-quickpay.php:752
    12041208msgid ""
    12051209"<p><strong>Payment failure</strong> A problem with your payment on order "
     
    12101214"p>"
    12111215
    1212 #: woocommerce-quickpay.php:753
     1216#: woocommerce-quickpay.php:759
    12131217msgid "Cancelled during process"
    12141218msgstr "Annulleret under betalingsprocessen"
    12151219
    1216 #: woocommerce-quickpay.php:755
     1220#: woocommerce-quickpay.php:761
    12171221msgid "Payment cancelled"
    12181222msgstr "Betaling annulleret"
    12191223
    1220 #: woocommerce-quickpay.php:755
     1224#: woocommerce-quickpay.php:761
    12211225msgid ""
    12221226"Due to cancellation of your payment, the order process was not completed. "
     
    12261230"betalingsprocessen for at gennemføre din bestilling."
    12271231
    1228 #: woocommerce-quickpay.php:755
     1232#: woocommerce-quickpay.php:761
    12291233#, php-format
    12301234msgid "<p><strong>%s</strong>: %s</p>"
    12311235msgstr "<p><strong>%s</strong>: %s</p>"
    12321236
    1233 #: woocommerce-quickpay.php:807
    1234 msgid "Payment cancelled."
    1235 msgstr "Betaling annulleret."
    1236 
    1237 #: woocommerce-quickpay.php:815
     1237#: woocommerce-quickpay.php:825
    12381238#, php-format
    12391239msgid "Refunded %s %s"
    12401240msgstr "Refunderet %s %s"
    12411241
    1242 #: woocommerce-quickpay.php:862
     1242#: woocommerce-quickpay.php:872
    12431243#, php-format
    12441244msgid "Invalid callback body for order #%s."
     
    12611261msgid "http://perfect-solution.dk"
    12621262msgstr "http://perfect-solution.dk"
     1263
     1264#~ msgid "Complete order on capture callbacks"
     1265#~ msgstr "Afslut ordrer ved capture callbacks"
     1266
     1267#~ msgid ""
     1268#~ "When enabled, an order will be automatically completed when capture "
     1269#~ "callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when "
     1270#~ "the payment is captured from either the shop or the QuickPay manager. "
     1271#~ "Keep disabled to manually complete orders. "
     1272#~ msgstr ""
     1273#~ "Ved aktivering afslutter systemet automatisk ordrer, når WooCommerce "
     1274#~ "modtager callbacks vedr. trækning på ordren. Callbacks sendes af "
     1275#~ "QuickPay, når en betaling er trukket, enten via WooCommerce eller via "
     1276#~ "QuickPay manageren. Deaktiver hvis du ønsker at bibeholde manuel ordre-"
     1277#~ "håndtering. "
    12631278
    12641279#~ msgid ""
  • woocommerce-quickpay/tags/7.2.0/languages/woo-quickpay.pot

    r2974637 r3045559  
    33msgstr ""
    44"Project-Id-Version: WooCommerce QuickPay\n"
    5 "POT-Creation-Date: 2023-10-04 11:48+0200\n"
     5"POT-Creation-Date: 2024-03-01 15:22+0100\n"
    66"PO-Revision-Date: 2016-06-21 13:16+0200\n"
    77"Last-Translator: \n"
     
    1111"Content-Transfer-Encoding: 8bit\n"
    1212"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
    13 "X-Generator: Poedit 3.4\n"
     13"X-Generator: Poedit 3.4.2\n"
    1414"X-Poedit-Basepath: ..\n"
    1515"X-Poedit-WPHeader: woocommerce-quickpay.php\n"
     
    8080msgstr ""
    8181
    82 #: classes/instances/anyday.php:36 classes/instances/apple-pay.php:37
    83 #: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:52
     82#: classes/instances/anyday.php:35 classes/instances/apple-pay.php:36
     83#: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:51
    8484#: classes/instances/ideal.php:35 classes/instances/klarna.php:36
    8585#: classes/instances/mobilepay-checkout.php:348
    86 #: classes/instances/mobilepay-subscriptions.php:76
    87 #: classes/instances/mobilepay-subscriptions.php:104
    88 #: classes/instances/mobilepay-subscriptions.php:111
    89 #: classes/instances/mobilepay-subscriptions.php:122
     86#: classes/instances/mobilepay-subscriptions.php:135
     87#: classes/instances/mobilepay-subscriptions.php:163
     88#: classes/instances/mobilepay-subscriptions.php:170
     89#: classes/instances/mobilepay-subscriptions.php:181
    9090#: classes/instances/mobilepay.php:34 classes/instances/paypal.php:37
    9191#: classes/instances/quickpay-extra.php:41 classes/instances/resurs.php:35
     
    9797#: classes/woocommerce-quickpay-settings.php:109
    9898#: classes/woocommerce-quickpay-settings.php:117
    99 #: classes/woocommerce-quickpay-settings.php:125
    100 #: classes/woocommerce-quickpay-settings.php:132
    101 #: classes/woocommerce-quickpay-settings.php:219
    102 #: classes/woocommerce-quickpay-settings.php:253
    103 #: classes/woocommerce-quickpay-settings.php:263
    104 #: classes/woocommerce-quickpay-settings.php:353
     99#: classes/woocommerce-quickpay-settings.php:126
     100#: classes/woocommerce-quickpay-settings.php:133
     101#: classes/woocommerce-quickpay-settings.php:220
     102#: classes/woocommerce-quickpay-settings.php:254
     103#: classes/woocommerce-quickpay-settings.php:264
     104#: classes/woocommerce-quickpay-settings.php:378
    105105msgid "Enable"
    106106msgstr ""
    107107
    108 #: classes/instances/anyday.php:38 classes/instances/apple-pay.php:39
    109 #: classes/instances/google-pay.php:54
    110 #: classes/instances/mobilepay-subscriptions.php:78
     108#: classes/instances/anyday.php:37 classes/instances/apple-pay.php:38
     109#: classes/instances/google-pay.php:53
     110#: classes/instances/mobilepay-subscriptions.php:137
    111111#, php-format
    112112msgid "Enable %s payment"
    113113msgstr ""
    114114
    115 #: classes/instances/anyday.php:43 classes/instances/apple-pay.php:45
    116 #: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:60
     115#: classes/instances/anyday.php:42 classes/instances/apple-pay.php:44
     116#: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:59
    117117#: classes/instances/ideal.php:42 classes/instances/klarna.php:43
    118118#: classes/instances/mobilepay-checkout.php:355
    119 #: classes/instances/mobilepay-subscriptions.php:83
     119#: classes/instances/mobilepay-subscriptions.php:142
    120120#: classes/instances/mobilepay.php:41 classes/instances/paypal.php:44
    121121#: classes/instances/quickpay-extra.php:48 classes/instances/resurs.php:42
    122122#: classes/instances/sofort.php:43 classes/instances/swish.php:42
    123123#: classes/instances/trustly.php:42 classes/instances/viabill.php:42
    124 #: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:150
     124#: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:151
    125125msgid "Shop setup"
    126126msgstr ""
    127127
    128 #: classes/instances/anyday.php:46 classes/instances/apple-pay.php:48
    129 #: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:63
     128#: classes/instances/anyday.php:45 classes/instances/apple-pay.php:47
     129#: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:62
    130130#: classes/instances/ideal.php:45 classes/instances/klarna.php:46
    131131#: classes/instances/mobilepay-checkout.php:358
    132 #: classes/instances/mobilepay-subscriptions.php:86
     132#: classes/instances/mobilepay-subscriptions.php:145
    133133#: classes/instances/mobilepay.php:44 classes/instances/paypal.php:47
    134134#: classes/instances/quickpay-extra.php:51 classes/instances/resurs.php:45
    135135#: classes/instances/sofort.php:46 classes/instances/swish.php:45
    136136#: classes/instances/trustly.php:45 classes/instances/viabill.php:45
    137 #: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:153
     137#: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:154
    138138msgid "Title"
    139139msgstr ""
    140140
    141 #: classes/instances/anyday.php:48 classes/instances/apple-pay.php:50
    142 #: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:65
     141#: classes/instances/anyday.php:47 classes/instances/apple-pay.php:49
     142#: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:64
    143143#: classes/instances/ideal.php:47 classes/instances/klarna.php:48
    144144#: classes/instances/mobilepay-checkout.php:360
    145 #: classes/instances/mobilepay-subscriptions.php:88
     145#: classes/instances/mobilepay-subscriptions.php:147
    146146#: classes/instances/mobilepay.php:46 classes/instances/paypal.php:49
    147147#: classes/instances/quickpay-extra.php:53 classes/instances/resurs.php:47
    148148#: classes/instances/sofort.php:48 classes/instances/swish.php:47
    149149#: classes/instances/trustly.php:47 classes/instances/viabill.php:47
    150 #: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:155
     150#: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:156
    151151msgid "This controls the title which the user sees during checkout."
    152152msgstr ""
    153153
    154 #: classes/instances/anyday.php:49
     154#: classes/instances/anyday.php:48
    155155msgid "Anyday"
    156156msgstr ""
    157157
    158 #: classes/instances/anyday.php:52 classes/instances/apple-pay.php:54
    159 #: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:69
     158#: classes/instances/anyday.php:51 classes/instances/apple-pay.php:53
     159#: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:68
    160160#: classes/instances/ideal.php:51 classes/instances/klarna.php:52
    161161#: classes/instances/mobilepay-checkout.php:364
    162 #: classes/instances/mobilepay-subscriptions.php:92
     162#: classes/instances/mobilepay-subscriptions.php:151
    163163#: classes/instances/mobilepay.php:50 classes/instances/paypal.php:53
    164164#: classes/instances/quickpay-extra.php:57 classes/instances/resurs.php:51
    165165#: classes/instances/sofort.php:52 classes/instances/swish.php:51
    166166#: classes/instances/trustly.php:51 classes/instances/viabill.php:51
    167 #: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:160
     167#: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:161
    168168msgid "Customer Message"
    169169msgstr ""
    170170
    171 #: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
    172 #: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:71
     171#: classes/instances/anyday.php:53 classes/instances/apple-pay.php:55
     172#: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:70
    173173#: classes/instances/ideal.php:53 classes/instances/klarna.php:54
    174174#: classes/instances/mobilepay-checkout.php:366
    175 #: classes/instances/mobilepay-subscriptions.php:94
     175#: classes/instances/mobilepay-subscriptions.php:153
    176176#: classes/instances/mobilepay.php:52 classes/instances/paypal.php:55
    177177#: classes/instances/quickpay-extra.php:59 classes/instances/resurs.php:53
    178178#: classes/instances/sofort.php:54 classes/instances/swish.php:53
    179179#: classes/instances/trustly.php:53 classes/instances/viabill.php:53
    180 #: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:162
     180#: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:163
    181181msgid "This controls the description which the user sees during checkout."
    182182msgstr ""
    183183
    184 #: classes/instances/anyday.php:55 classes/instances/apple-pay.php:57
    185 #: classes/instances/google-pay.php:72
    186 #: classes/instances/mobilepay-subscriptions.php:95
     184#: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
     185#: classes/instances/google-pay.php:71
     186#: classes/instances/mobilepay-subscriptions.php:154
    187187#, php-format
    188188msgid "Pay with %s"
    189189msgstr ""
    190190
    191 #: classes/instances/apple-pay.php:41 classes/instances/google-pay.php:55
     191#: classes/instances/apple-pay.php:40 classes/instances/google-pay.php:54
    192192#, php-format
    193193msgid "Works only in %s."
    194194msgstr ""
    195195
    196 #: classes/instances/apple-pay.php:51
     196#: classes/instances/apple-pay.php:50
    197197msgid "Apple Pay"
    198198msgstr ""
     
    210210msgstr ""
    211211
    212 #: classes/instances/google-pay.php:66
     212#: classes/instances/google-pay.php:65
    213213msgid "Google Pay"
    214214msgstr ""
     
    226226msgstr ""
    227227
    228 #: classes/instances/instance.php:58 woocommerce-quickpay.php:897
     228#: classes/instances/instance.php:58 woocommerce-quickpay.php:911
    229229#, php-format
    230230msgid "Allows you to receive payments via %s"
     
    287287msgstr ""
    288288
    289 #: classes/instances/mobilepay-subscriptions.php:60
     289#: classes/instances/mobilepay-subscriptions.php:62
    290290msgid "Payment transaction has been cancelled by merchant or customer"
    291291msgstr ""
    292292
    293 #: classes/instances/mobilepay-subscriptions.php:102
     293#: classes/instances/mobilepay-subscriptions.php:161
    294294msgid "Activate subscriptions immediately."
    295295msgstr ""
    296296
    297 #: classes/instances/mobilepay-subscriptions.php:106
     297#: classes/instances/mobilepay-subscriptions.php:165
    298298msgid ""
    299299"Activates the subscription after the customer authorizes an agreement. "
     
    305305msgstr ""
    306306
    307 #: classes/instances/mobilepay-subscriptions.php:109
     307#: classes/instances/mobilepay-subscriptions.php:168
    308308msgid "Pre-fill phone number"
    309309msgstr ""
    310310
    311 #: classes/instances/mobilepay-subscriptions.php:113
     311#: classes/instances/mobilepay-subscriptions.php:172
    312312msgid ""
    313313"When enabled the customer's phone number will be used on the MobilePay "
     
    315315msgstr ""
    316316
    317 #: classes/instances/mobilepay-subscriptions.php:120
     317#: classes/instances/mobilepay-subscriptions.php:179
    318318msgid "Keep subscription active"
    319319msgstr ""
    320320
    321 #: classes/instances/mobilepay-subscriptions.php:124
     321#: classes/instances/mobilepay-subscriptions.php:183
    322322msgid ""
    323323"When enabled the subscription will automatically be activated after "
     
    326326msgstr ""
    327327
    328 #: classes/instances/mobilepay-subscriptions.php:128
     328#: classes/instances/mobilepay-subscriptions.php:187
    329329msgid "Agreements"
    330330msgstr ""
    331331
    332 #: classes/instances/mobilepay-subscriptions.php:131
     332#: classes/instances/mobilepay-subscriptions.php:190
    333333msgid "Cancelled agreements status"
    334334msgstr ""
    335335
    336 #: classes/instances/mobilepay-subscriptions.php:136
     336#: classes/instances/mobilepay-subscriptions.php:195
    337337msgid ""
    338338"Changes subscription status in case of cancelled payment agreement from "
     
    340340msgstr ""
    341341
    342 #: classes/instances/mobilepay-subscriptions.php:139
     342#: classes/instances/mobilepay-subscriptions.php:198
    343343msgid "Select status"
    344344msgstr ""
    345345
    346 #: classes/instances/mobilepay-subscriptions.php:147
     346#: classes/instances/mobilepay-subscriptions.php:206
    347347msgid "Do nothing"
    348348msgstr ""
    349349
    350 #: classes/instances/mobilepay-subscriptions.php:214
     350#: classes/instances/mobilepay-subscriptions.php:273
    351351#, php-format
    352352msgid "Payment of #%s"
    353353msgstr ""
    354354
    355 #: classes/instances/mobilepay-subscriptions.php:233
     355#: classes/instances/mobilepay-subscriptions.php:292
    356356msgid ""
    357357"'Activate subscriptions immediately.' enabled. Activating subscription due "
     
    359359msgstr ""
    360360
    361 #: classes/instances/mobilepay-subscriptions.php:282
    362 #: woocommerce-quickpay.php:661
     361#: classes/instances/mobilepay-subscriptions.php:341
     362#: woocommerce-quickpay.php:667
    363363msgid "QuickPay Transaction ID"
    364364msgstr ""
     
    393393
    394394#: classes/instances/quickpay-extra.php:54
    395 #: classes/woocommerce-quickpay-settings.php:156
     395#: classes/woocommerce-quickpay-settings.php:157
    396396msgid "QuickPay"
    397397msgstr ""
     
    415415
    416416#: classes/instances/quickpay-extra.php:69
    417 #: classes/woocommerce-quickpay-settings.php:181
     417#: classes/woocommerce-quickpay-settings.php:182
    418418msgid "Credit card icons"
    419419msgstr ""
    420420
    421421#: classes/instances/quickpay-extra.php:71
    422 #: classes/woocommerce-quickpay-settings.php:183
     422#: classes/woocommerce-quickpay-settings.php:184
    423423msgid ""
    424424"Choose the card icons you wish to show next to the QuickPay payment option "
     
    427427
    428428#: classes/instances/quickpay-extra.php:76
    429 #: classes/woocommerce-quickpay-settings.php:188
     429#: classes/woocommerce-quickpay-settings.php:189
    430430msgid "Select icons"
    431431msgstr ""
     
    539539
    540540#: classes/modules/woocommerce-quickpay-admin-orders-meta.php:30
    541 #: woocommerce-quickpay.php:753
     541#: woocommerce-quickpay.php:759
    542542msgid "QuickPay Payment"
    543543msgstr ""
     
    628628msgstr ""
    629629
    630 #: classes/woocommerce-quickpay-callbacks.php:74
     630#: classes/woocommerce-quickpay-callbacks.php:89
     631msgid "Payment cancelled."
     632msgstr ""
     633
     634#: classes/woocommerce-quickpay-callbacks.php:114
    631635#, php-format
    632636msgid "Subscription authorized. Transaction ID: %s"
     
    653657
    654658#: classes/woocommerce-quickpay-settings.php:37
    655 #: classes/woocommerce-quickpay-settings.php:377
     659#: classes/woocommerce-quickpay-settings.php:402
    656660msgid "Api User key"
    657661msgstr ""
     
    664668
    665669#: classes/woocommerce-quickpay-settings.php:43
    666 #: classes/woocommerce-quickpay-settings.php:376
     670#: classes/woocommerce-quickpay-settings.php:401
    667671msgid "Private key"
    668672msgstr ""
     
    755759
    756760#: classes/woocommerce-quickpay-settings.php:123
    757 msgid "Complete order on capture callbacks"
    758 msgstr ""
    759 
    760 #: classes/woocommerce-quickpay-settings.php:126
    761 msgid ""
    762 "When enabled, an order will be automatically completed when capture "
    763 "callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when the "
    764 "payment is captured from either the shop or the QuickPay manager. Keep "
    765 "disabled to manually complete orders. "
    766 msgstr ""
    767 
    768 #: classes/woocommerce-quickpay-settings.php:130
     761msgid "Order status update on payment cancellation"
     762msgstr ""
     763
     764#: classes/woocommerce-quickpay-settings.php:127
     765msgid ""
     766"When activated, orders linked to payments will change to the chosen status "
     767"if the merchant cancels the payment."
     768msgstr ""
     769
     770#: classes/woocommerce-quickpay-settings.php:131
    769771msgid "Cancel payments on order cancellation"
    770772msgstr ""
    771773
    772 #: classes/woocommerce-quickpay-settings.php:133
     774#: classes/woocommerce-quickpay-settings.php:134
    773775msgid ""
    774776"Automatically cancel payments via the API when an order's status changes to "
     
    776778msgstr ""
    777779
    778 #: classes/woocommerce-quickpay-settings.php:137
     780#: classes/woocommerce-quickpay-settings.php:138
    779781msgid "Text on statement"
    780782msgstr ""
    781783
    782 #: classes/woocommerce-quickpay-settings.php:139
     784#: classes/woocommerce-quickpay-settings.php:140
    783785msgid ""
    784786"Text that will be placed on cardholder’s bank statement (MAX 22 ASCII "
     
    787789msgstr ""
    788790
    789 #: classes/woocommerce-quickpay-settings.php:163
     791#: classes/woocommerce-quickpay-settings.php:164
    790792msgid "Pay via QuickPay. Allows you to pay with your credit card via QuickPay."
    791793msgstr ""
    792794
    793 #: classes/woocommerce-quickpay-settings.php:167
     795#: classes/woocommerce-quickpay-settings.php:168
    794796msgid "Order button text"
    795797msgstr ""
    796798
    797 #: classes/woocommerce-quickpay-settings.php:169
     799#: classes/woocommerce-quickpay-settings.php:170
    798800msgid "Text shown on the submit button when choosing payment method."
    799801msgstr ""
    800802
    801 #: classes/woocommerce-quickpay-settings.php:170
     803#: classes/woocommerce-quickpay-settings.php:171
    802804msgid "Go to payment"
    803805msgstr ""
    804806
    805 #: classes/woocommerce-quickpay-settings.php:174
     807#: classes/woocommerce-quickpay-settings.php:175
    806808msgid "Email instructions"
    807809msgstr ""
    808810
    809 #: classes/woocommerce-quickpay-settings.php:176
     811#: classes/woocommerce-quickpay-settings.php:177
    810812msgid "Instructions that will be added to emails."
    811813msgstr ""
    812814
    813 #: classes/woocommerce-quickpay-settings.php:194
     815#: classes/woocommerce-quickpay-settings.php:195
    814816msgid "Credit card icons maximum height"
    815817msgstr ""
    816818
    817 #: classes/woocommerce-quickpay-settings.php:196
     819#: classes/woocommerce-quickpay-settings.php:197
    818820msgid ""
    819821"Set the maximum pixel height of the credit card icons shown on the frontend."
    820822msgstr ""
    821823
    822 #: classes/woocommerce-quickpay-settings.php:202
     824#: classes/woocommerce-quickpay-settings.php:203
    823825msgid "Google Analytics"
    824826msgstr ""
    825827
    826 #: classes/woocommerce-quickpay-settings.php:205
     828#: classes/woocommerce-quickpay-settings.php:206
    827829msgid "Tracking ID"
    828830msgstr ""
    829831
    830 #: classes/woocommerce-quickpay-settings.php:207
     832#: classes/woocommerce-quickpay-settings.php:208
    831833msgid "Your Google Analytics tracking ID. I.E: UA-XXXXXXXXX-X"
    832834msgstr ""
    833835
    834 #: classes/woocommerce-quickpay-settings.php:213
     836#: classes/woocommerce-quickpay-settings.php:214
    835837msgid "Shop Admin Setup"
    836838msgstr ""
    837839
    838 #: classes/woocommerce-quickpay-settings.php:217
     840#: classes/woocommerce-quickpay-settings.php:218
    839841msgid "Fetch Transaction Info"
    840842msgstr ""
    841843
    842 #: classes/woocommerce-quickpay-settings.php:220
     844#: classes/woocommerce-quickpay-settings.php:221
    843845msgid "Show transaction information in the order overview."
    844846msgstr ""
    845847
    846 #: classes/woocommerce-quickpay-settings.php:227
     848#: classes/woocommerce-quickpay-settings.php:228
    847849msgid "Custom Variables"
    848850msgstr ""
    849851
    850 #: classes/woocommerce-quickpay-settings.php:230
     852#: classes/woocommerce-quickpay-settings.php:231
    851853msgid "Select Information"
    852854msgstr ""
    853855
    854 #: classes/woocommerce-quickpay-settings.php:235
     856#: classes/woocommerce-quickpay-settings.php:236
    855857msgid ""
    856858"Selected options will store the specific data on your transaction inside "
     
    858860msgstr ""
    859861
    860 #: classes/woocommerce-quickpay-settings.php:239
     862#: classes/woocommerce-quickpay-settings.php:240
    861863msgid "Select order data"
    862864msgstr ""
    863865
    864 #: classes/woocommerce-quickpay-settings.php:251
     866#: classes/woocommerce-quickpay-settings.php:252
    865867msgid "Complete renewal orders"
    866868msgstr ""
    867869
    868 #: classes/woocommerce-quickpay-settings.php:254
     870#: classes/woocommerce-quickpay-settings.php:255
    869871msgid ""
    870872"Automatically mark a renewal order as complete on successful recurring "
     
    872874msgstr ""
    873875
    874 #: classes/woocommerce-quickpay-settings.php:261
     876#: classes/woocommerce-quickpay-settings.php:262
    875877msgid "Update card on manual renewal payment"
    876878msgstr ""
    877879
    878 #: classes/woocommerce-quickpay-settings.php:264
     880#: classes/woocommerce-quickpay-settings.php:265
    879881msgid ""
    880882"When paying failed renewals, the payment link will authorize a new "
     
    884886msgstr ""
    885887
    886 #: classes/woocommerce-quickpay-settings.php:321
     888#: classes/woocommerce-quickpay-settings.php:295
     889msgid "-- Select (optional) --"
     890msgstr ""
     891
     892#: classes/woocommerce-quickpay-settings.php:346
    887893msgid "Billing: Complete Customer Details"
    888894msgstr ""
    889895
    890 #: classes/woocommerce-quickpay-settings.php:322
     896#: classes/woocommerce-quickpay-settings.php:347
    891897msgid "Browser: User Agent"
    892898msgstr ""
    893899
    894 #: classes/woocommerce-quickpay-settings.php:323
     900#: classes/woocommerce-quickpay-settings.php:348
    895901msgid "Customer: Email Address"
    896902msgstr ""
    897903
    898 #: classes/woocommerce-quickpay-settings.php:324
     904#: classes/woocommerce-quickpay-settings.php:349
    899905msgid "Customer: Phone Number"
    900906msgstr ""
    901907
    902 #: classes/woocommerce-quickpay-settings.php:325
     908#: classes/woocommerce-quickpay-settings.php:350
    903909msgid "Shipping: Complete Customer Details"
    904910msgstr ""
    905911
    906 #: classes/woocommerce-quickpay-settings.php:326
     912#: classes/woocommerce-quickpay-settings.php:351
    907913msgid "Shipping: Shipping Method"
    908914msgstr ""
    909915
    910 #: classes/woocommerce-quickpay-settings.php:340
     916#: classes/woocommerce-quickpay-settings.php:365
    911917msgid "Debug"
    912918msgstr ""
    913919
    914 #: classes/woocommerce-quickpay-settings.php:341
     920#: classes/woocommerce-quickpay-settings.php:366
    915921msgid "Got problems? Check out the Wiki."
    916922msgstr ""
    917923
    918 #: classes/woocommerce-quickpay-settings.php:342
     924#: classes/woocommerce-quickpay-settings.php:367
    919925msgid "View debug logs"
    920926msgstr ""
    921927
    922 #: classes/woocommerce-quickpay-settings.php:345
     928#: classes/woocommerce-quickpay-settings.php:370
    923929msgid "Empty debug logs"
    924930msgstr ""
    925931
    926 #: classes/woocommerce-quickpay-settings.php:349
     932#: classes/woocommerce-quickpay-settings.php:374
    927933msgid "Empty transaction cache"
    928934msgstr ""
    929935
    930936#. Plugin Name of the plugin/theme
    931 #: classes/woocommerce-quickpay-settings.php:387
     937#: classes/woocommerce-quickpay-settings.php:412
    932938msgid "WooCommerce QuickPay"
    933939msgstr ""
    934940
    935 #: classes/woocommerce-quickpay-settings.php:388
     941#: classes/woocommerce-quickpay-settings.php:413
    936942#, php-format
    937943msgid ""
     
    940946msgstr ""
    941947
    942 #: classes/woocommerce-quickpay-settings.php:391
     948#: classes/woocommerce-quickpay-settings.php:416
    943949#, php-format
    944950msgid "<strong>%s</strong> is mandatory."
     
    10911097msgstr ""
    10921098
    1093 #: woocommerce-quickpay.php:31
     1099#: woocommerce-quickpay.php:32
    10941100msgid "WooCommerce QuickPay requires WooCommerce to be active."
    10951101msgstr ""
    10961102
    1097 #: woocommerce-quickpay.php:32
     1103#: woocommerce-quickpay.php:33
    10981104msgid "Go to the plugins page to activate WooCommerce"
    10991105msgstr ""
    11001106
    1101 #: woocommerce-quickpay.php:329
     1107#: woocommerce-quickpay.php:335
    11021108msgid "Settings"
    11031109msgstr ""
    11041110
    1105 #: woocommerce-quickpay.php:523
     1111#: woocommerce-quickpay.php:529
    11061112#, php-format
    11071113msgid "No transaction ID for order: %s"
    11081114msgstr ""
    11091115
    1110 #: woocommerce-quickpay.php:533
     1116#: woocommerce-quickpay.php:539
    11111117msgid "A non-captured payment cannot be refunded."
    11121118msgstr ""
    11131119
    1114 #: woocommerce-quickpay.php:536
     1120#: woocommerce-quickpay.php:542
    11151121msgid "Transaction state does not allow refunds."
    11161122msgstr ""
    11171123
    1118 #: woocommerce-quickpay.php:689
     1124#: woocommerce-quickpay.php:695
    11191125#, php-format
    11201126msgid "QuickPay Transaction ID updated from #%d to #%d"
    11211127msgstr ""
    11221128
    1123 #: woocommerce-quickpay.php:746
     1129#: woocommerce-quickpay.php:752
    11241130msgid ""
    11251131"<p><strong>Payment failure</strong> A problem with your payment on order "
     
    11271133msgstr ""
    11281134
    1129 #: woocommerce-quickpay.php:753
     1135#: woocommerce-quickpay.php:759
    11301136msgid "Cancelled during process"
    11311137msgstr ""
    11321138
    1133 #: woocommerce-quickpay.php:755
     1139#: woocommerce-quickpay.php:761
    11341140msgid "Payment cancelled"
    11351141msgstr ""
    11361142
    1137 #: woocommerce-quickpay.php:755
     1143#: woocommerce-quickpay.php:761
    11381144msgid ""
    11391145"Due to cancellation of your payment, the order process was not completed. "
     
    11411147msgstr ""
    11421148
    1143 #: woocommerce-quickpay.php:755
     1149#: woocommerce-quickpay.php:761
    11441150#, php-format
    11451151msgid "<p><strong>%s</strong>: %s</p>"
    11461152msgstr ""
    11471153
    1148 #: woocommerce-quickpay.php:807
    1149 msgid "Payment cancelled."
    1150 msgstr ""
    1151 
    1152 #: woocommerce-quickpay.php:815
     1154#: woocommerce-quickpay.php:825
    11531155#, php-format
    11541156msgid "Refunded %s %s"
    11551157msgstr ""
    11561158
    1157 #: woocommerce-quickpay.php:862
     1159#: woocommerce-quickpay.php:872
    11581160#, php-format
    11591161msgid "Invalid callback body for order #%s."
  • woocommerce-quickpay/tags/7.2.0/woocommerce-quickpay.php

    r3029485 r3045559  
    44 * Plugin URI: http://wordpress.org/plugins/woocommerce-quickpay/
    55 * Description: Integrates your QuickPay payment gateway into your WooCommerce installation.
    6  * Version: 7.1.0
     6 * Version: 7.2.0
    77 * Author: Perfect Solution
    88 * Text Domain: woo-quickpay
     
    1111 * Wiki: http://quickpay.perfect-solution.dk/
    1212 * WC requires at least: 7.1.0
    13  * WC tested up to: 8.1
     13 * WC tested up to: 8.6
    1414 */
    1515
     
    1919}
    2020
    21 define( 'WCQP_VERSION', '7.1.0' );
     21define( 'WCQP_VERSION', '7.2.0' );
    2222define( 'WCQP_URL', plugins_url( __FILE__ ) );
    2323define( 'WCQP_PATH', plugin_dir_path( __FILE__ ) );
     
    768768         */
    769769        public function callback_handler(): void {
    770             // Get callback body
    771             $request_body = file_get_contents( "php://input" );
    772 
    773             // Decode the body into JSON
    774             $json = json_decode( $request_body, false, 512, JSON_THROW_ON_ERROR );
    775 
    776             // Instantiate payment object
    777             $payment = new WC_QuickPay_API_Payment( $json );
    778 
    779             // Fetch order number;
    780             $order_number = WC_QuickPay_Callbacks::get_order_id_from_callback( $json );
    781 
    782             // Fetch subscription post ID if present
    783             $subscription_id = WC_QuickPay_Callbacks::get_subscription_id_from_callback( $json );
    784             $subscription    = null;
    785             if ( $subscription_id !== null ) {
    786                 $subscription = woocommerce_quickpay_get_subscription( $subscription_id );
    787             }
    788 
    789             if ( $payment->is_authorized_callback( $request_body ) ) {
    790                 // Instantiate order object
    791                 $order = woocommerce_quickpay_get_order( $order_number );
    792 
    793                 // Get last transaction in operation history
    794                 $transaction = end( $json->operations );
    795 
    796                 // Is the transaction accepted and approved by QP / Acquirer?
    797                 // Did we find an order?
    798                 if ( $json->accepted && $order ) {
    799                     do_action( 'woocommerce_quickpay_accepted_callback_before_processing', $order, $json );
    800                     do_action( 'woocommerce_quickpay_accepted_callback_before_processing_status_' . $transaction->type, $order, $json );
    801 
    802                     // Perform action depending on the operation status type
    803                     try {
    804                         switch ( $transaction->type ) {
    805                             //
    806                             // Cancel callbacks are currently not supported by the QuickPay API
    807                             //
    808                             case 'cancel' :
    809                                 if ( $subscription_id !== null && $subscription ) {
    810                                     do_action( 'woocommerce_quickpay_callback_subscription_cancelled', $subscription, $order, $transaction, $json );
    811                                 }
    812                                 // Write a note to the order history
    813                                 $order->add_order_note( __( 'Payment cancelled.', 'woo-quickpay' ) );
    814                                 break;
    815 
    816                             case 'capture' :
    817                                 WC_QuickPay_Callbacks::payment_captured( $order, $json );
    818                                 break;
    819 
    820                             case 'refund' :
    821                                 $order->add_order_note( sprintf( __( 'Refunded %s %s', 'woo-quickpay' ), WC_QuickPay_Helper::price_normalize( $transaction->amount, $json->currency ), $json->currency ) );
    822                                 break;
    823 
    824                             case 'recurring':
    825                                 WC_QuickPay_Callbacks::payment_authorized( $order, $json );
    826                                 break;
    827 
    828                             case 'authorize' :
    829                                 WC_QuickPay_Callbacks::authorized( $order, $json );
    830 
    831                                 // Subscription authorization
    832                                 if ( $subscription_id !== null && isset( $subscription ) && strtolower( $json->type ) === 'subscription' ) {
    833                                     // Write log
    834                                     WC_QuickPay_Callbacks::subscription_authorized( $subscription, $order, $json );
    835                                 } // Regular payment authorization
    836                                 else {
     770            try {
     771                // Get callback body
     772                $request_body = file_get_contents( "php://input" );
     773
     774                // Decode the body into JSON
     775                $json = json_decode( $request_body, false, 512, JSON_THROW_ON_ERROR );
     776
     777                // Instantiate payment object
     778                $payment = new WC_QuickPay_API_Payment( $json );
     779
     780                // Fetch order number;
     781                $order_number = WC_QuickPay_Callbacks::get_order_id_from_callback( $json );
     782
     783                // Fetch subscription post ID if present
     784                $subscription_id = WC_QuickPay_Callbacks::get_subscription_id_from_callback( $json );
     785                $subscription    = null;
     786                if ( $subscription_id !== null ) {
     787                    $subscription = woocommerce_quickpay_get_subscription( $subscription_id );
     788                }
     789
     790                if ( $payment->is_authorized_callback( $request_body ) ) {
     791                    // Instantiate order object
     792                    $order = woocommerce_quickpay_get_order( $order_number );
     793
     794                    // Get last transaction in operation history
     795                    $transaction = end( $json->operations );
     796
     797                    // Is the transaction accepted and approved by QP / Acquirer?
     798                    // Did we find an order?
     799                    if ( $json->accepted && $order ) {
     800                        do_action( 'woocommerce_quickpay_accepted_callback_before_processing', $order, $json );
     801                        do_action( 'woocommerce_quickpay_accepted_callback_before_processing_status_' . $transaction->type, $order, $json );
     802
     803                        // Perform action depending on the operation status type
     804                        try {
     805                            switch ( $transaction->type ) {
     806                                //
     807                                // Cancel callbacks are currently not supported by the QuickPay API
     808                                //
     809                                case 'cancel' :
     810                                    if ( $subscription_id !== null && $subscription ) {
     811                                        do_action( 'woocommerce_quickpay_callback_subscription_cancelled', $subscription, $order, $transaction, $json );
     812                                    }
     813
     814                                    if ( strtolower( $json->type ) === 'payment' ) {
     815                                        WC_QuickPay_Callbacks::payment_cancelled( $order, $json, $transaction );
     816                                    }
     817
     818                                    break;
     819
     820                                case 'capture' :
     821                                    WC_QuickPay_Callbacks::payment_captured( $order, $json );
     822                                    break;
     823
     824                                case 'refund' :
     825                                    $order->add_order_note( sprintf( __( 'Refunded %s %s', 'woo-quickpay' ), WC_QuickPay_Helper::price_normalize( $transaction->amount, $json->currency ), $json->currency ) );
     826                                    break;
     827
     828                                case 'recurring':
    837829                                    WC_QuickPay_Callbacks::payment_authorized( $order, $json );
    838                                 }
    839                                 break;
     830                                    break;
     831
     832                                case 'authorize' :
     833                                    WC_QuickPay_Callbacks::authorized( $order, $json );
     834
     835                                    // Subscription authorization
     836                                    if ( $subscription_id !== null && isset( $subscription ) && strtolower( $json->type ) === 'subscription' ) {
     837                                        // Write log
     838                                        WC_QuickPay_Callbacks::subscription_authorized( $subscription, $order, $json );
     839                                    } // Regular payment authorization
     840                                    else {
     841                                        WC_QuickPay_Callbacks::payment_authorized( $order, $json );
     842                                    }
     843                                    break;
     844                            }
     845
     846                            do_action( 'woocommerce_quickpay_accepted_callback', $order, $json );
     847                            do_action( 'woocommerce_quickpay_accepted_callback_status_' . $transaction->type, $order, $json );
     848
     849                        } catch ( QuickPay_API_Exception $e ) {
     850                            $e->write_to_logs();
    840851                        }
    841 
    842                         do_action( 'woocommerce_quickpay_accepted_callback', $order, $json );
    843                         do_action( 'woocommerce_quickpay_accepted_callback_status_' . $transaction->type, $order, $json );
    844 
    845                     } catch ( QuickPay_API_Exception $e ) {
    846                         $e->write_to_logs();
    847852                    }
    848                 }
    849 
    850                 // The transaction was not accepted.
    851                 // Print debug information to logs
    852                 else {
    853                     // Write debug information
    854                     $this->log->add( [
    855                         'order'          => $order_number,
    856                         'qp_status_code' => $transaction->qp_status_code,
    857                         'qp_status_msg'  => $transaction->qp_status_msg,
    858                         'aq_status_code' => $transaction->aq_status_code,
    859                         'aq_status_msg'  => $transaction->aq_status_msg,
    860                         'request'        => $request_body,
    861                     ] );
    862 
    863                     if ( $order && ( $transaction->type === 'recurring' || 'rejected' !== $json->state ) ) {
    864                         $order->update_status( 'failed', sprintf( 'Payment failed <br />QuickPay Message: %s<br />Acquirer Message: %s', $transaction->qp_status_msg, $transaction->aq_status_msg ) );
     853
     854                    // The transaction was not accepted.
     855                    // Print debug information to logs
     856                    else {
     857                        // Write debug information
     858                        $this->log->add( [
     859                            'order'          => $order_number,
     860                            'qp_status_code' => $transaction->qp_status_code,
     861                            'qp_status_msg'  => $transaction->qp_status_msg,
     862                            'aq_status_code' => $transaction->aq_status_code,
     863                            'aq_status_msg'  => $transaction->aq_status_msg,
     864                            'request'        => $request_body,
     865                        ] );
     866
     867                        if ( $order && ( $transaction->type === 'recurring' || 'rejected' !== $json->state ) ) {
     868                            $order->update_status( 'failed', sprintf( 'Payment failed <br />QuickPay Message: %s<br />Acquirer Message: %s', $transaction->qp_status_msg, $transaction->aq_status_msg ) );
     869                        }
    865870                    }
    866                 }
    867             } else {
    868                 $this->log->add( sprintf( __( 'Invalid callback body for order #%s.', 'woo-quickpay' ), $order_number ) );
    869             }
     871                } else {
     872                    $this->log->add( sprintf( __( 'Invalid callback body for order #%s.', 'woo-quickpay' ), $order_number ) );
     873                }
     874            } catch ( JsonException $e ) {
     875                wp_send_json_error( 'Invalid request', 400 );
     876            }
     877
    870878        }
    871879
  • woocommerce-quickpay/trunk/README.txt

    r3029485 r3045559  
    33Tags: gateway, woo commerce, quickpay, quick pay, gateway, integration, woocommerce, woocommerce quickpay, payment, payment gateway, psp
    44Requires at least: 4.0.0
    5 Tested up to: 6.3
     5Tested up to: 6.4
    66Stable tag: trunk
    77License: GPLv2
     
    2828
    2929== Changelog ==
     30= 7.2.0 =
     31* Feat: Add possibility to set a new order status upon cancelled payments
     32* Feat: MobilePay Subscriptions is now transitioning orders with failed payments to "failed" to maintain correct state of orders and their corresponding subscription.
     33* Fix: WC_QuickPay_Helper::is_browser now checks if HTTP_USER_AGENT is set on the request.
     34* Fix: Accessing the callback handler directly without a payload resulted in an Uncaught JsonException. This exception is now handled by returning an HTTP 400 response with a proper message.
     35
    3036= 7.1.0 =
    3137* Feat: Add payment gateway support for WC Checkout Blocks
  • woocommerce-quickpay/trunk/classes/instances/mobilepay-subscriptions.php

    r2924617 r3045559  
    55    public $main_settings = null;
    66
    7     const instance_id = 'mobilepay-subscriptions';
     7    public const instance_id = 'mobilepay-subscriptions';
    88
    99    public function __construct() {
     
    4444        add_filter( 'woocommerce_subscription_payment_meta', [ $this, 'woocommerce_subscription_payment_meta' ], 10, 2 );
    4545        add_action( 'woocommerce_quickpay_callback_subscription_cancelled', [ $this, 'on_subscription_cancelled' ], 10, 4 );
     46        add_filter( 'woocommerce_quickpay_payment_cancelled_order_transition_status', [ $this, 'payment_cancelled_order_transition_status' ], 10, 4 );
     47        add_filter( 'woocommerce_quickpay_payment_cancelled_order_transition_status_note', [ $this, 'payment_cancelled_order_transition_status_note' ], 10, 4 );
    4648    }
    4749
     
    5860            $allowed_transition_from = apply_filters( 'woocommerce_quickpay_mps_cancelled_from_status', [ 'active' ], $subscription, $order, $json );
    5961            if ( $subscription->has_status( $allowed_transition_from ) && ! $subscription->has_status( $transition_to ) && WC_QuickPay_Helper::is_subscription_status( $transition_to ) ) {
    60                 $subscription->update_status( $transition_to, ! empty( $operation->aq_status_msg ) ? $operation->aq_status_msg : __( 'Payment transaction has been cancelled by merchant or customer', 'woo-quickpay' ) );
     62                $subscription->update_status( $transition_to, ! empty( $operation->aq_status_msg ) ? $operation->aq_status_msg : __( 'Subscription transaction has been cancelled by merchant or customer', 'woo-quickpay' ) );
    6163            }
    6264        }
    6365    }
    6466
     67
     68    /**
     69     *  Perform gateway specific order status updates in case of specific scenarios:
     70     *
     71     *  code 50000: Payment failed to execute during the due-date.
     72     *  code 50001: User rejected the Pending payment in MobilePay
     73     *
     74     * @param $transition_to_status
     75     * @param WC_Order $order
     76     * @param $transaction
     77     * @param $operation
     78     *
     79     * @return mixed
     80     */
     81    public function payment_cancelled_order_transition_status( $transition_to_status, WC_Order $order, $transaction, $operation ) {
     82        if ( $this->is_cancelled_transaction_failed( $operation, $order ) ) {
     83            $transition_to_status = 'failed';
     84        }
     85
     86        return $transition_to_status;
     87    }
     88
     89    /**
     90     *  Perform gateway specific order status updates in case of specific scenarios:
     91     *
     92     *  code 50000: Payment failed to execute during the due-date.
     93     *  code 50001: User rejected the Pending payment in MobilePay
     94     *
     95     * @param $note
     96     * @param WC_Order $order
     97     * @param $transaction
     98     * @param $operation
     99     *
     100     * @return mixed
     101     */
     102    public function payment_cancelled_order_transition_status_note( $note, WC_Order $order, $transaction, $operation ) {
     103        if ( $this->is_cancelled_transaction_failed( $operation, $order ) ) {
     104            $note = sprintf( '%s - %s', $note, $operation->aq_status_msg );
     105        }
     106
     107        return $note;
     108    }
     109
     110    /**
     111     * Checks if the cancel operation on a payment should be considered as a failed payment.
     112     *
     113     * aq_status_code 50000: Payment failed to execute during the due-date.
     114     * aq_status_code 50001: User rejected the Pending payment in MobilePay
     115     *
     116     * @param $operation
     117     * @param WC_Order $order
     118     *
     119     * @return bool
     120     */
     121    private function is_cancelled_transaction_failed( $operation, WC_Order $order ): bool {
     122        return in_array( (int) $operation->aq_status_code, [ 50000, 50001 ], true ) && $order->get_payment_method() === $this->id;
     123    }
     124
    65125    /**
    66126     * init_form_fields function.
     
    69129     *
    70130     * @access public
    71      * @return array
    72131     */
    73132    public function init_form_fields(): void {
  • woocommerce-quickpay/trunk/classes/woocommerce-quickpay-callbacks.php

    r2932188 r3045559  
    6767
    6868    /**
     69     * @param WC_Order $order
     70     * @param $transaction - the complete transaction object
     71     * @param $operation - last operation on transaction
     72     *
     73     * @return void
     74     */
     75    public static function payment_cancelled( WC_Order $order, $transaction, $operation ): void {
     76        // Fetch optional transition status
     77        $transition_status = WC_QP()->s( 'quickpay_payment_cancelled_order_transition_status' );
     78
     79        // Allow 3rd party code to overwrite the status
     80        $transition_status = apply_filters( 'woocommerce_quickpay_payment_cancelled_order_transition_status',
     81            $transition_status,
     82            $order,
     83            $transaction,
     84            $operation
     85        );
     86
     87        // Allow 3rd party code to overwrite the note
     88        $transition_status_note = apply_filters( 'woocommerce_quickpay_payment_cancelled_order_transition_status_note',
     89            __( 'Payment cancelled.', 'woo-quickpay' ),
     90            $order,
     91            $transaction,
     92            $operation,
     93            $transition_status
     94        );
     95
     96        // If a transition status is set, attempt to update the order status
     97        if ( ! empty( $transition_status ) ) {
     98            $order->update_status( $transition_status, $transition_status_note );
     99        } else {
     100            // Write a note to the order history
     101            $order->add_order_note( $transition_status_note );
     102        }
     103
     104        // Allow plugins or submodules to hook in here to perform custom actions
     105        do_action( 'woocommerce_quickpay_callback_payment_cancelled', $order, $transaction, $operation );
     106    }
     107
     108    /**
    69109     * @param WC_Subscription $subscription
    70110     * @param WC_Order $related_order can be parent or renewal order
  • woocommerce-quickpay/trunk/classes/woocommerce-quickpay-helper.php

    r3029485 r3045559  
    272272        ];
    273273
    274         if ( array_key_exists( trim( $payment_type ), $logos ) ) {
     274        if ( $payment_type !== null && array_key_exists( trim( $payment_type ), $logos ) ) {
    275275            return WC_QP()->plugin_url( 'assets/images/cards/' . $logos[ $payment_type ] );
    276276        }
     
    363363     * @return bool
    364364     */
    365     public static function is_browser( $browser ) {
     365    public static function is_browser( $browser ): bool {
     366
     367        if ( ! isset( $_SERVER['HTTP_USER_AGENT'] ) ) {
     368            return false;
     369        }
     370
    366371        $u_agent = $_SERVER['HTTP_USER_AGENT'];
    367372        $name    = 'Unknown';
  • woocommerce-quickpay/trunk/classes/woocommerce-quickpay-settings.php

    r2974637 r3045559  
    104104                ],
    105105
    106                 'quickpay_autofee'                      => [
     106                'quickpay_autofee'                                   => [
    107107                    'title'       => __( 'Enable autofee', 'woo-quickpay' ),
    108108                    'type'        => 'checkbox',
     
    112112                    'desc_tip'    => true,
    113113                ],
    114                 'quickpay_captureoncomplete'            => [
     114                'quickpay_captureoncomplete'                         => [
    115115                    'title'       => __( 'Capture on complete', 'woo-quickpay' ),
    116116                    'type'        => 'checkbox',
     
    120120                    'desc_tip'    => true,
    121121                ],
    122                 'quickpay_complete_on_capture'          => [
    123                     'title'       => __( 'Complete order on capture callbacks', 'woo-quickpay' ),
    124                     'type'        => 'checkbox',
    125                     'label'       => __( 'Enable', 'woo-quickpay' ),
    126                     'description' => __( 'When enabled, an order will be automatically completed when capture callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when the payment is captured from either the shop or the QuickPay manager. Keep disabled to manually complete orders. ', 'woo-quickpay' ),
    127                     'default'     => 'no',
    128                 ],
    129                 'quickpay_cancel_transaction_on_cancel' => [
     122                'quickpay_payment_cancelled_order_transition_status' => [
     123                    'title'       => __( 'Order status update on payment cancellation', 'woo-quickpay' ),
     124                    'type'        => 'select',
     125                    'options'     => self::get_payment_cancelled_order_transition_statuses(),
     126                    'label'       => __( 'Enable', 'woo-quickpay' ),
     127                    'description' => __( 'When activated, orders linked to payments will change to the chosen status if the merchant cancels the payment.', 'woo-quickpay' ),
     128                    'default'     => 'no',
     129                ],
     130                'quickpay_cancel_transaction_on_cancel'              => [
    130131                    'title'       => __( 'Cancel payments on order cancellation', 'woo-quickpay' ),
    131132                    'type'        => 'checkbox',
     
    134135                    'default'     => 'no',
    135136                ],
    136                 'quickpay_text_on_statement'            => [
     137                'quickpay_text_on_statement'                         => [
    137138                    'title'             => __( 'Text on statement', 'woo-quickpay' ),
    138139                    'type'              => 'text',
     
    269270
    270271        return $fields;
     272    }
     273
     274    /**
     275     * Get the array of payment cancelled order transition statuses.
     276     *
     277     * This method retrieves the order statuses that are considered as cancellation transitions
     278     * for a payment. It includes the order statuses 'wc-failed', 'wc-pending', 'wc-on-hold',
     279     * and 'wc-cancelled' by default. Additional statuses can be added or modified through the
     280     * 'woocommerce_quickpay_payment_cancelled_order_transition_statuses' filter.
     281     *
     282     * @return array The array of payment cancelled order transition statuses.
     283     */
     284    private static function get_payment_cancelled_order_transition_statuses(): array {
     285        $statuses       = wc_get_order_statuses();
     286        $allowed_status = apply_filters( 'woocommerce_quickpay_payment_cancelled_order_transition_statuses', [
     287            'wc-failed',
     288            'wc-pending',
     289            'wc-on-hold',
     290            'wc-cancelled'
     291        ], $statuses );
     292
     293        $filtered_statuses = array_filter( $statuses, static fn( $status ) => in_array( $status, $allowed_status, true, ), ARRAY_FILTER_USE_KEY );
     294
     295        return array_merge( [ null => __( '-- Select (optional) --', 'woo-quickpay' ) ], $filtered_statuses );
    271296    }
    272297
  • woocommerce-quickpay/trunk/languages/woo-quickpay-da_DK.po

    r2974637 r3045559  
    22msgstr ""
    33"Project-Id-Version: WooCommerce QuickPay\n"
    4 "POT-Creation-Date: 2023-10-04 11:48+0200\n"
    5 "PO-Revision-Date: 2023-10-04 11:48+0200\n"
     4"POT-Creation-Date: 2024-03-01 15:22+0100\n"
     5"PO-Revision-Date: 2024-03-01 15:24+0100\n"
    66"Last-Translator: \n"
    77"Language-Team: \n"
     
    1111"Content-Transfer-Encoding: 8bit\n"
    1212"Plural-Forms: nplurals=2; plural=(n != 1);\n"
    13 "X-Generator: Poedit 3.4\n"
     13"X-Generator: Poedit 3.4.2\n"
    1414"X-Poedit-Basepath: ..\n"
    1515"X-Poedit-WPHeader: woocommerce-quickpay.php\n"
     
    8282msgstr "Dette er dit betalingslink"
    8383
    84 #: classes/instances/anyday.php:36 classes/instances/apple-pay.php:37
    85 #: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:52
     84#: classes/instances/anyday.php:35 classes/instances/apple-pay.php:36
     85#: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:51
    8686#: classes/instances/ideal.php:35 classes/instances/klarna.php:36
    8787#: classes/instances/mobilepay-checkout.php:348
    88 #: classes/instances/mobilepay-subscriptions.php:76
    89 #: classes/instances/mobilepay-subscriptions.php:104
    90 #: classes/instances/mobilepay-subscriptions.php:111
    91 #: classes/instances/mobilepay-subscriptions.php:122
     88#: classes/instances/mobilepay-subscriptions.php:135
     89#: classes/instances/mobilepay-subscriptions.php:163
     90#: classes/instances/mobilepay-subscriptions.php:170
     91#: classes/instances/mobilepay-subscriptions.php:181
    9292#: classes/instances/mobilepay.php:34 classes/instances/paypal.php:37
    9393#: classes/instances/quickpay-extra.php:41 classes/instances/resurs.php:35
     
    9999#: classes/woocommerce-quickpay-settings.php:109
    100100#: classes/woocommerce-quickpay-settings.php:117
    101 #: classes/woocommerce-quickpay-settings.php:125
    102 #: classes/woocommerce-quickpay-settings.php:132
    103 #: classes/woocommerce-quickpay-settings.php:219
    104 #: classes/woocommerce-quickpay-settings.php:253
    105 #: classes/woocommerce-quickpay-settings.php:263
    106 #: classes/woocommerce-quickpay-settings.php:353
     101#: classes/woocommerce-quickpay-settings.php:126
     102#: classes/woocommerce-quickpay-settings.php:133
     103#: classes/woocommerce-quickpay-settings.php:220
     104#: classes/woocommerce-quickpay-settings.php:254
     105#: classes/woocommerce-quickpay-settings.php:264
     106#: classes/woocommerce-quickpay-settings.php:378
    107107msgid "Enable"
    108108msgstr "Aktiver"
    109109
    110 #: classes/instances/anyday.php:38 classes/instances/apple-pay.php:39
    111 #: classes/instances/google-pay.php:54
    112 #: classes/instances/mobilepay-subscriptions.php:78
     110#: classes/instances/anyday.php:37 classes/instances/apple-pay.php:38
     111#: classes/instances/google-pay.php:53
     112#: classes/instances/mobilepay-subscriptions.php:137
    113113#, php-format
    114114msgid "Enable %s payment"
    115115msgstr "Aktiver %s-betalinger"
    116116
    117 #: classes/instances/anyday.php:43 classes/instances/apple-pay.php:45
    118 #: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:60
     117#: classes/instances/anyday.php:42 classes/instances/apple-pay.php:44
     118#: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:59
    119119#: classes/instances/ideal.php:42 classes/instances/klarna.php:43
    120120#: classes/instances/mobilepay-checkout.php:355
    121 #: classes/instances/mobilepay-subscriptions.php:83
     121#: classes/instances/mobilepay-subscriptions.php:142
    122122#: classes/instances/mobilepay.php:41 classes/instances/paypal.php:44
    123123#: classes/instances/quickpay-extra.php:48 classes/instances/resurs.php:42
    124124#: classes/instances/sofort.php:43 classes/instances/swish.php:42
    125125#: classes/instances/trustly.php:42 classes/instances/viabill.php:42
    126 #: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:150
     126#: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:151
    127127msgid "Shop setup"
    128128msgstr "Shop-indstillinger"
    129129
    130 #: classes/instances/anyday.php:46 classes/instances/apple-pay.php:48
    131 #: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:63
     130#: classes/instances/anyday.php:45 classes/instances/apple-pay.php:47
     131#: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:62
    132132#: classes/instances/ideal.php:45 classes/instances/klarna.php:46
    133133#: classes/instances/mobilepay-checkout.php:358
    134 #: classes/instances/mobilepay-subscriptions.php:86
     134#: classes/instances/mobilepay-subscriptions.php:145
    135135#: classes/instances/mobilepay.php:44 classes/instances/paypal.php:47
    136136#: classes/instances/quickpay-extra.php:51 classes/instances/resurs.php:45
    137137#: classes/instances/sofort.php:46 classes/instances/swish.php:45
    138138#: classes/instances/trustly.php:45 classes/instances/viabill.php:45
    139 #: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:153
     139#: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:154
    140140msgid "Title"
    141141msgstr "Titel"
    142142
    143 #: classes/instances/anyday.php:48 classes/instances/apple-pay.php:50
    144 #: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:65
     143#: classes/instances/anyday.php:47 classes/instances/apple-pay.php:49
     144#: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:64
    145145#: classes/instances/ideal.php:47 classes/instances/klarna.php:48
    146146#: classes/instances/mobilepay-checkout.php:360
    147 #: classes/instances/mobilepay-subscriptions.php:88
     147#: classes/instances/mobilepay-subscriptions.php:147
    148148#: classes/instances/mobilepay.php:46 classes/instances/paypal.php:49
    149149#: classes/instances/quickpay-extra.php:53 classes/instances/resurs.php:47
    150150#: classes/instances/sofort.php:48 classes/instances/swish.php:47
    151151#: classes/instances/trustly.php:47 classes/instances/viabill.php:47
    152 #: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:155
     152#: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:156
    153153msgid "This controls the title which the user sees during checkout."
    154154msgstr ""
     
    156156"QuickPay i checkout-processen."
    157157
    158 #: classes/instances/anyday.php:49
     158#: classes/instances/anyday.php:48
    159159msgid "Anyday"
    160160msgstr "Anyday"
    161161
    162 #: classes/instances/anyday.php:52 classes/instances/apple-pay.php:54
    163 #: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:69
     162#: classes/instances/anyday.php:51 classes/instances/apple-pay.php:53
     163#: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:68
    164164#: classes/instances/ideal.php:51 classes/instances/klarna.php:52
    165165#: classes/instances/mobilepay-checkout.php:364
    166 #: classes/instances/mobilepay-subscriptions.php:92
     166#: classes/instances/mobilepay-subscriptions.php:151
    167167#: classes/instances/mobilepay.php:50 classes/instances/paypal.php:53
    168168#: classes/instances/quickpay-extra.php:57 classes/instances/resurs.php:51
    169169#: classes/instances/sofort.php:52 classes/instances/swish.php:51
    170170#: classes/instances/trustly.php:51 classes/instances/viabill.php:51
    171 #: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:160
     171#: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:161
    172172msgid "Customer Message"
    173173msgstr "Besked til kunde"
    174174
    175 #: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
    176 #: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:71
     175#: classes/instances/anyday.php:53 classes/instances/apple-pay.php:55
     176#: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:70
    177177#: classes/instances/ideal.php:53 classes/instances/klarna.php:54
    178178#: classes/instances/mobilepay-checkout.php:366
    179 #: classes/instances/mobilepay-subscriptions.php:94
     179#: classes/instances/mobilepay-subscriptions.php:153
    180180#: classes/instances/mobilepay.php:52 classes/instances/paypal.php:55
    181181#: classes/instances/quickpay-extra.php:59 classes/instances/resurs.php:53
    182182#: classes/instances/sofort.php:54 classes/instances/swish.php:53
    183183#: classes/instances/trustly.php:53 classes/instances/viabill.php:53
    184 #: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:162
     184#: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:163
    185185msgid "This controls the description which the user sees during checkout."
    186186msgstr ""
     
    188188"kunder under checkout-processen."
    189189
    190 #: classes/instances/anyday.php:55 classes/instances/apple-pay.php:57
    191 #: classes/instances/google-pay.php:72
    192 #: classes/instances/mobilepay-subscriptions.php:95
     190#: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
     191#: classes/instances/google-pay.php:71
     192#: classes/instances/mobilepay-subscriptions.php:154
    193193#, php-format
    194194msgid "Pay with %s"
    195195msgstr "Betal med %s"
    196196
    197 #: classes/instances/apple-pay.php:41 classes/instances/google-pay.php:55
     197#: classes/instances/apple-pay.php:40 classes/instances/google-pay.php:54
    198198#, php-format
    199199msgid "Works only in %s."
    200200msgstr "Virker kun i %s."
    201201
    202 #: classes/instances/apple-pay.php:51
     202#: classes/instances/apple-pay.php:50
    203203msgid "Apple Pay"
    204204msgstr "Apple Pay"
     
    216216msgstr "Betal med Forbrugsforeningen af 1886"
    217217
    218 #: classes/instances/google-pay.php:66
     218#: classes/instances/google-pay.php:65
    219219msgid "Google Pay"
    220220msgstr "Google Pay"
     
    232232msgstr "Betal med iDEAL"
    233233
    234 #: classes/instances/instance.php:58 woocommerce-quickpay.php:897
     234#: classes/instances/instance.php:58 woocommerce-quickpay.php:911
    235235#, php-format
    236236msgid "Allows you to receive payments via %s"
     
    300300"IKKE blive påvirket."
    301301
    302 #: classes/instances/mobilepay-subscriptions.php:60
     302#: classes/instances/mobilepay-subscriptions.php:62
    303303msgid "Payment transaction has been cancelled by merchant or customer"
    304304msgstr "Betalingstransaktionen er blevet annulleret af medarbejder eller kunde"
    305305
    306 #: classes/instances/mobilepay-subscriptions.php:102
     306#: classes/instances/mobilepay-subscriptions.php:161
    307307msgid "Activate subscriptions immediately."
    308308msgstr "Aktiver abonnementer omgående."
    309309
    310 #: classes/instances/mobilepay-subscriptions.php:106
     310#: classes/instances/mobilepay-subscriptions.php:165
    311311msgid ""
    312312"Activates the subscription after the customer authorizes an agreement. "
     
    324324"target=“_blank”>her</a>"
    325325
    326 #: classes/instances/mobilepay-subscriptions.php:109
     326#: classes/instances/mobilepay-subscriptions.php:168
    327327msgid "Pre-fill phone number"
    328328msgstr "Præ-udfyld telefonnummer"
    329329
    330 #: classes/instances/mobilepay-subscriptions.php:113
     330#: classes/instances/mobilepay-subscriptions.php:172
    331331msgid ""
    332332"When enabled the customer's phone number will be used on the MobilePay "
     
    336336"Telefonnummeret bliver præ-udfyldt i MobilePay’s formular."
    337337
    338 #: classes/instances/mobilepay-subscriptions.php:120
     338#: classes/instances/mobilepay-subscriptions.php:179
    339339msgid "Keep subscription active"
    340340msgstr "Hold abonnement aktivt"
    341341
    342 #: classes/instances/mobilepay-subscriptions.php:124
     342#: classes/instances/mobilepay-subscriptions.php:183
    343343msgid ""
    344344"When enabled the subscription will automatically be activated after "
     
    350350"bliver abonnementet sat på pause."
    351351
    352 #: classes/instances/mobilepay-subscriptions.php:128
     352#: classes/instances/mobilepay-subscriptions.php:187
    353353msgid "Agreements"
    354354msgstr "Betalingsaftaler"
    355355
    356 #: classes/instances/mobilepay-subscriptions.php:131
     356#: classes/instances/mobilepay-subscriptions.php:190
    357357msgid "Cancelled agreements status"
    358358msgstr "Annullerede aftaler - status"
    359359
    360 #: classes/instances/mobilepay-subscriptions.php:136
     360#: classes/instances/mobilepay-subscriptions.php:195
    361361msgid ""
    362362"Changes subscription status in case of cancelled payment agreement from "
     
    366366"manageren eller kundens MobilePay app"
    367367
    368 #: classes/instances/mobilepay-subscriptions.php:139
     368#: classes/instances/mobilepay-subscriptions.php:198
    369369msgid "Select status"
    370370msgstr "Vælg status"
    371371
    372 #: classes/instances/mobilepay-subscriptions.php:147
     372#: classes/instances/mobilepay-subscriptions.php:206
    373373msgid "Do nothing"
    374374msgstr "Gør ingenting"
    375375
    376 #: classes/instances/mobilepay-subscriptions.php:214
     376#: classes/instances/mobilepay-subscriptions.php:273
    377377#, php-format
    378378msgid "Payment of #%s"
    379379msgstr "Betaling af #%s"
    380380
    381 #: classes/instances/mobilepay-subscriptions.php:233
     381#: classes/instances/mobilepay-subscriptions.php:292
    382382msgid ""
    383383"'Activate subscriptions immediately.' enabled. Activating subscription due "
     
    387387"autoriseret aftale med MobilePay Subscriptions"
    388388
    389 #: classes/instances/mobilepay-subscriptions.php:282
    390 #: woocommerce-quickpay.php:661
     389#: classes/instances/mobilepay-subscriptions.php:341
     390#: woocommerce-quickpay.php:667
    391391msgid "QuickPay Transaction ID"
    392392msgstr "QuickPay Transaktions-ID"
     
    421421
    422422#: classes/instances/quickpay-extra.php:54
    423 #: classes/woocommerce-quickpay-settings.php:156
     423#: classes/woocommerce-quickpay-settings.php:157
    424424msgid "QuickPay"
    425425msgstr "QuickPay"
     
    446446
    447447#: classes/instances/quickpay-extra.php:69
    448 #: classes/woocommerce-quickpay-settings.php:181
     448#: classes/woocommerce-quickpay-settings.php:182
    449449msgid "Credit card icons"
    450450msgstr "Kreditkort-ikoner"
    451451
    452452#: classes/instances/quickpay-extra.php:71
    453 #: classes/woocommerce-quickpay-settings.php:183
     453#: classes/woocommerce-quickpay-settings.php:184
    454454msgid ""
    455455"Choose the card icons you wish to show next to the QuickPay payment option "
     
    459459
    460460#: classes/instances/quickpay-extra.php:76
    461 #: classes/woocommerce-quickpay-settings.php:188
     461#: classes/woocommerce-quickpay-settings.php:189
    462462msgid "Select icons"
    463463msgstr "Vælg ikoner"
     
    571571
    572572#: classes/modules/woocommerce-quickpay-admin-orders-meta.php:30
    573 #: woocommerce-quickpay.php:753
     573#: woocommerce-quickpay.php:759
    574574msgid "QuickPay Payment"
    575575msgstr "QuickPay betaling"
     
    664664msgstr "Betaling hævet."
    665665
    666 #: classes/woocommerce-quickpay-callbacks.php:74
     666#: classes/woocommerce-quickpay-callbacks.php:89
     667msgid "Payment cancelled."
     668msgstr "Betaling annulleret."
     669
     670#: classes/woocommerce-quickpay-callbacks.php:114
    667671#, php-format
    668672msgid "Subscription authorized. Transaction ID: %s"
     
    691695
    692696#: classes/woocommerce-quickpay-settings.php:37
    693 #: classes/woocommerce-quickpay-settings.php:377
     697#: classes/woocommerce-quickpay-settings.php:402
    694698msgid "Api User key"
    695699msgstr "API Key til din API bruger"
     
    704708
    705709#: classes/woocommerce-quickpay-settings.php:43
    706 #: classes/woocommerce-quickpay-settings.php:376
     710#: classes/woocommerce-quickpay-settings.php:401
    707711msgid "Private key"
    708712msgstr "Privat nøgle"
     
    807811
    808812#: classes/woocommerce-quickpay-settings.php:123
    809 msgid "Complete order on capture callbacks"
    810 msgstr "Afslut ordrer ved capture callbacks"
    811 
    812 #: classes/woocommerce-quickpay-settings.php:126
    813 msgid ""
    814 "When enabled, an order will be automatically completed when capture "
    815 "callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when the "
    816 "payment is captured from either the shop or the QuickPay manager. Keep "
    817 "disabled to manually complete orders. "
    818 msgstr ""
    819 "Ved aktivering afslutter systemet automatisk ordrer, når WooCommerce "
    820 "modtager callbacks vedr. trækning på ordren. Callbacks sendes af QuickPay, "
    821 "når en betaling er trukket, enten via WooCommerce eller via QuickPay "
    822 "manageren. Deaktiver hvis du ønsker at bibeholde manuel ordre-håndtering. "
    823 
    824 #: classes/woocommerce-quickpay-settings.php:130
     813msgid "Order status update on payment cancellation"
     814msgstr "Ordrestatusopdatering ved annullering af betaling"
     815
     816#: classes/woocommerce-quickpay-settings.php:127
     817msgid ""
     818"When activated, orders linked to payments will change to the chosen status "
     819"if the merchant cancels the payment."
     820msgstr ""
     821"Når aktiveret, vil ordrer knyttet til betalinger ændre sig til den valgte "
     822"status, såfremt merchant annullerer betalingen."
     823
     824#: classes/woocommerce-quickpay-settings.php:131
    825825msgid "Cancel payments on order cancellation"
    826826msgstr "Annuller betalinger ved annullering af ordrer"
    827827
    828 #: classes/woocommerce-quickpay-settings.php:133
     828#: classes/woocommerce-quickpay-settings.php:134
    829829msgid ""
    830830"Automatically cancel payments via the API when an order's status changes to "
     
    834834"annulleret."
    835835
    836 #: classes/woocommerce-quickpay-settings.php:137
     836#: classes/woocommerce-quickpay-settings.php:138
    837837msgid "Text on statement"
    838838msgstr "Text on statement"
    839839
    840 #: classes/woocommerce-quickpay-settings.php:139
     840#: classes/woocommerce-quickpay-settings.php:140
    841841msgid ""
    842842"Text that will be placed on cardholder’s bank statement (MAX 22 ASCII "
     
    848848"er ikke tilladt)."
    849849
    850 #: classes/woocommerce-quickpay-settings.php:163
     850#: classes/woocommerce-quickpay-settings.php:164
    851851msgid "Pay via QuickPay. Allows you to pay with your credit card via QuickPay."
    852852msgstr "Betal via QuickPay. Betal med kreditkort via QuickPay."
    853853
    854 #: classes/woocommerce-quickpay-settings.php:167
     854#: classes/woocommerce-quickpay-settings.php:168
    855855msgid "Order button text"
    856856msgstr "Tekst på ordreknap"
    857857
    858 #: classes/woocommerce-quickpay-settings.php:169
     858#: classes/woocommerce-quickpay-settings.php:170
    859859msgid "Text shown on the submit button when choosing payment method."
    860860msgstr "Tekst der vises på checkud-knappen, når man vælger betalingsmetode."
    861861
    862 #: classes/woocommerce-quickpay-settings.php:170
     862#: classes/woocommerce-quickpay-settings.php:171
    863863msgid "Go to payment"
    864864msgstr "Gå til betaling"
    865865
    866 #: classes/woocommerce-quickpay-settings.php:174
     866#: classes/woocommerce-quickpay-settings.php:175
    867867msgid "Email instructions"
    868868msgstr "Email-instruktioner"
    869869
    870 #: classes/woocommerce-quickpay-settings.php:176
     870#: classes/woocommerce-quickpay-settings.php:177
    871871msgid "Instructions that will be added to emails."
    872872msgstr "Eventuelle instruktioner, der bliver tilføjet ordrebekræftelsen."
    873873
    874 #: classes/woocommerce-quickpay-settings.php:194
     874#: classes/woocommerce-quickpay-settings.php:195
    875875msgid "Credit card icons maximum height"
    876876msgstr "Maximumhøjde på kreditkortikonerne"
    877877
    878 #: classes/woocommerce-quickpay-settings.php:196
     878#: classes/woocommerce-quickpay-settings.php:197
    879879msgid ""
    880880"Set the maximum pixel height of the credit card icons shown on the frontend."
     
    882882"Sæt den maximale pixelhøjde på kreditkortikonerne der vises i din shop."
    883883
    884 #: classes/woocommerce-quickpay-settings.php:202
     884#: classes/woocommerce-quickpay-settings.php:203
    885885msgid "Google Analytics"
    886886msgstr "Google Analytics"
    887887
    888 #: classes/woocommerce-quickpay-settings.php:205
     888#: classes/woocommerce-quickpay-settings.php:206
    889889msgid "Tracking ID"
    890890msgstr "Tracking ID"
    891891
    892 #: classes/woocommerce-quickpay-settings.php:207
     892#: classes/woocommerce-quickpay-settings.php:208
    893893msgid "Your Google Analytics tracking ID. I.E: UA-XXXXXXXXX-X"
    894894msgstr "Dit Google Analytics tracking ID. Eks: UA-XXXXXXXXX-X"
    895895
    896 #: classes/woocommerce-quickpay-settings.php:213
     896#: classes/woocommerce-quickpay-settings.php:214
    897897msgid "Shop Admin Setup"
    898898msgstr "Shop Admin Indstillinger"
    899899
    900 #: classes/woocommerce-quickpay-settings.php:217
     900#: classes/woocommerce-quickpay-settings.php:218
    901901msgid "Fetch Transaction Info"
    902902msgstr "Hent transaktions-info"
    903903
    904 #: classes/woocommerce-quickpay-settings.php:220
     904#: classes/woocommerce-quickpay-settings.php:221
    905905msgid "Show transaction information in the order overview."
    906906msgstr "Vis transaktions-information i ordre-oversigten."
    907907
    908 #: classes/woocommerce-quickpay-settings.php:227
     908#: classes/woocommerce-quickpay-settings.php:228
    909909msgid "Custom Variables"
    910910msgstr "Variabel Data"
    911911
    912 #: classes/woocommerce-quickpay-settings.php:230
     912#: classes/woocommerce-quickpay-settings.php:231
    913913msgid "Select Information"
    914914msgstr "Vælg information"
    915915
    916 #: classes/woocommerce-quickpay-settings.php:235
     916#: classes/woocommerce-quickpay-settings.php:236
    917917msgid ""
    918918"Selected options will store the specific data on your transaction inside "
     
    922922"QuickPay Manager."
    923923
    924 #: classes/woocommerce-quickpay-settings.php:239
     924#: classes/woocommerce-quickpay-settings.php:240
    925925msgid "Select order data"
    926926msgstr "Vælg ordredata"
    927927
    928 #: classes/woocommerce-quickpay-settings.php:251
     928#: classes/woocommerce-quickpay-settings.php:252
    929929msgid "Complete renewal orders"
    930930msgstr "Gennemfør fornyelsesordrer"
    931931
    932 #: classes/woocommerce-quickpay-settings.php:254
     932#: classes/woocommerce-quickpay-settings.php:255
    933933msgid ""
    934934"Automatically mark a renewal order as complete on successful recurring "
     
    938938"abonnementsbetaling."
    939939
    940 #: classes/woocommerce-quickpay-settings.php:261
     940#: classes/woocommerce-quickpay-settings.php:262
    941941msgid "Update card on manual renewal payment"
    942942msgstr "Opdater betalingskort ved manuel betaling af renewal ordrer"
    943943
    944 #: classes/woocommerce-quickpay-settings.php:264
     944#: classes/woocommerce-quickpay-settings.php:265
    945945msgid ""
    946946"When paying failed renewals, the payment link will authorize a new "
     
    954954"renewal ordre."
    955955
    956 #: classes/woocommerce-quickpay-settings.php:321
     956#: classes/woocommerce-quickpay-settings.php:295
     957msgid "-- Select (optional) --"
     958msgstr "-- Select (optional) --"
     959
     960#: classes/woocommerce-quickpay-settings.php:346
    957961msgid "Billing: Complete Customer Details"
    958962msgstr "Faktura: Komplet kundeinformation"
    959963
    960 #: classes/woocommerce-quickpay-settings.php:322
     964#: classes/woocommerce-quickpay-settings.php:347
    961965msgid "Browser: User Agent"
    962966msgstr "Browser: User Agent"
    963967
    964 #: classes/woocommerce-quickpay-settings.php:323
     968#: classes/woocommerce-quickpay-settings.php:348
    965969msgid "Customer: Email Address"
    966970msgstr "Customer: Email Address"
    967971
    968 #: classes/woocommerce-quickpay-settings.php:324
     972#: classes/woocommerce-quickpay-settings.php:349
    969973msgid "Customer: Phone Number"
    970974msgstr "Kunde: Telefonnummer"
    971975
    972 #: classes/woocommerce-quickpay-settings.php:325
     976#: classes/woocommerce-quickpay-settings.php:350
    973977msgid "Shipping: Complete Customer Details"
    974978msgstr "Levering: Komplet kundeinformation"
    975979
    976 #: classes/woocommerce-quickpay-settings.php:326
     980#: classes/woocommerce-quickpay-settings.php:351
    977981msgid "Shipping: Shipping Method"
    978982msgstr "Levering: Leveringsmetode"
    979983
    980 #: classes/woocommerce-quickpay-settings.php:340
     984#: classes/woocommerce-quickpay-settings.php:365
    981985msgid "Debug"
    982986msgstr "Fejlsøgning"
    983987
    984 #: classes/woocommerce-quickpay-settings.php:341
     988#: classes/woocommerce-quickpay-settings.php:366
    985989msgid "Got problems? Check out the Wiki."
    986990msgstr "Har du brug for hjælp? Tag et kig på Wiki’en."
    987991
    988 #: classes/woocommerce-quickpay-settings.php:342
     992#: classes/woocommerce-quickpay-settings.php:367
    989993msgid "View debug logs"
    990994msgstr "Se fejl-loggen"
    991995
    992 #: classes/woocommerce-quickpay-settings.php:345
     996#: classes/woocommerce-quickpay-settings.php:370
    993997msgid "Empty debug logs"
    994998msgstr "Tøm fejl-loggen"
    995999
    996 #: classes/woocommerce-quickpay-settings.php:349
     1000#: classes/woocommerce-quickpay-settings.php:374
    9971001msgid "Empty transaction cache"
    9981002msgstr "Tøm transaktions-cache"
    9991003
    10001004#. Plugin Name of the plugin/theme
    1001 #: classes/woocommerce-quickpay-settings.php:387
     1005#: classes/woocommerce-quickpay-settings.php:412
    10021006msgid "WooCommerce QuickPay"
    10031007msgstr "WooCommerce QuickPay"
    10041008
    1005 #: classes/woocommerce-quickpay-settings.php:388
     1009#: classes/woocommerce-quickpay-settings.php:413
    10061010#, php-format
    10071011msgid ""
     
    10121016"href=\"%s\">indstillings-siden.</a>."
    10131017
    1014 #: classes/woocommerce-quickpay-settings.php:391
     1018#: classes/woocommerce-quickpay-settings.php:416
    10151019#, php-format
    10161020msgid "<strong>%s</strong> is mandatory."
     
    11711175msgstr "Cachet"
    11721176
    1173 #: woocommerce-quickpay.php:31
     1177#: woocommerce-quickpay.php:32
    11741178msgid "WooCommerce QuickPay requires WooCommerce to be active."
    11751179msgstr "WooCommerce QuickPay kræver at WooCommerce er aktiv."
    11761180
    1177 #: woocommerce-quickpay.php:32
     1181#: woocommerce-quickpay.php:33
    11781182msgid "Go to the plugins page to activate WooCommerce"
    11791183msgstr "Gå til plugin-siden for at aktivere WooCommerce"
    11801184
    1181 #: woocommerce-quickpay.php:329
     1185#: woocommerce-quickpay.php:335
    11821186msgid "Settings"
    11831187msgstr "Indstillinger"
    11841188
    1185 #: woocommerce-quickpay.php:523
     1189#: woocommerce-quickpay.php:529
    11861190#, php-format
    11871191msgid "No transaction ID for order: %s"
    11881192msgstr "Intet transaktions-id for ordre nr: %s"
    11891193
    1190 #: woocommerce-quickpay.php:533
     1194#: woocommerce-quickpay.php:539
    11911195msgid "A non-captured payment cannot be refunded."
    11921196msgstr "En betaling der ikke er trukket, kan ikke refunderes."
    11931197
    1194 #: woocommerce-quickpay.php:536
     1198#: woocommerce-quickpay.php:542
    11951199msgid "Transaction state does not allow refunds."
    11961200msgstr "Ordrens transaktionsstatus tillader ikke refunderinger."
    11971201
    1198 #: woocommerce-quickpay.php:689
     1202#: woocommerce-quickpay.php:695
    11991203#, php-format
    12001204msgid "QuickPay Transaction ID updated from #%d to #%d"
    12011205msgstr "QuickPay Transaktions-ID blev opdateret fra #%d til #%d"
    12021206
    1203 #: woocommerce-quickpay.php:746
     1207#: woocommerce-quickpay.php:752
    12041208msgid ""
    12051209"<p><strong>Payment failure</strong> A problem with your payment on order "
     
    12101214"p>"
    12111215
    1212 #: woocommerce-quickpay.php:753
     1216#: woocommerce-quickpay.php:759
    12131217msgid "Cancelled during process"
    12141218msgstr "Annulleret under betalingsprocessen"
    12151219
    1216 #: woocommerce-quickpay.php:755
     1220#: woocommerce-quickpay.php:761
    12171221msgid "Payment cancelled"
    12181222msgstr "Betaling annulleret"
    12191223
    1220 #: woocommerce-quickpay.php:755
     1224#: woocommerce-quickpay.php:761
    12211225msgid ""
    12221226"Due to cancellation of your payment, the order process was not completed. "
     
    12261230"betalingsprocessen for at gennemføre din bestilling."
    12271231
    1228 #: woocommerce-quickpay.php:755
     1232#: woocommerce-quickpay.php:761
    12291233#, php-format
    12301234msgid "<p><strong>%s</strong>: %s</p>"
    12311235msgstr "<p><strong>%s</strong>: %s</p>"
    12321236
    1233 #: woocommerce-quickpay.php:807
    1234 msgid "Payment cancelled."
    1235 msgstr "Betaling annulleret."
    1236 
    1237 #: woocommerce-quickpay.php:815
     1237#: woocommerce-quickpay.php:825
    12381238#, php-format
    12391239msgid "Refunded %s %s"
    12401240msgstr "Refunderet %s %s"
    12411241
    1242 #: woocommerce-quickpay.php:862
     1242#: woocommerce-quickpay.php:872
    12431243#, php-format
    12441244msgid "Invalid callback body for order #%s."
     
    12611261msgid "http://perfect-solution.dk"
    12621262msgstr "http://perfect-solution.dk"
     1263
     1264#~ msgid "Complete order on capture callbacks"
     1265#~ msgstr "Afslut ordrer ved capture callbacks"
     1266
     1267#~ msgid ""
     1268#~ "When enabled, an order will be automatically completed when capture "
     1269#~ "callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when "
     1270#~ "the payment is captured from either the shop or the QuickPay manager. "
     1271#~ "Keep disabled to manually complete orders. "
     1272#~ msgstr ""
     1273#~ "Ved aktivering afslutter systemet automatisk ordrer, når WooCommerce "
     1274#~ "modtager callbacks vedr. trækning på ordren. Callbacks sendes af "
     1275#~ "QuickPay, når en betaling er trukket, enten via WooCommerce eller via "
     1276#~ "QuickPay manageren. Deaktiver hvis du ønsker at bibeholde manuel ordre-"
     1277#~ "håndtering. "
    12631278
    12641279#~ msgid ""
  • woocommerce-quickpay/trunk/languages/woo-quickpay.pot

    r2974637 r3045559  
    33msgstr ""
    44"Project-Id-Version: WooCommerce QuickPay\n"
    5 "POT-Creation-Date: 2023-10-04 11:48+0200\n"
     5"POT-Creation-Date: 2024-03-01 15:22+0100\n"
    66"PO-Revision-Date: 2016-06-21 13:16+0200\n"
    77"Last-Translator: \n"
     
    1111"Content-Transfer-Encoding: 8bit\n"
    1212"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
    13 "X-Generator: Poedit 3.4\n"
     13"X-Generator: Poedit 3.4.2\n"
    1414"X-Poedit-Basepath: ..\n"
    1515"X-Poedit-WPHeader: woocommerce-quickpay.php\n"
     
    8080msgstr ""
    8181
    82 #: classes/instances/anyday.php:36 classes/instances/apple-pay.php:37
    83 #: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:52
     82#: classes/instances/anyday.php:35 classes/instances/apple-pay.php:36
     83#: classes/instances/fbg1886.php:35 classes/instances/google-pay.php:51
    8484#: classes/instances/ideal.php:35 classes/instances/klarna.php:36
    8585#: classes/instances/mobilepay-checkout.php:348
    86 #: classes/instances/mobilepay-subscriptions.php:76
    87 #: classes/instances/mobilepay-subscriptions.php:104
    88 #: classes/instances/mobilepay-subscriptions.php:111
    89 #: classes/instances/mobilepay-subscriptions.php:122
     86#: classes/instances/mobilepay-subscriptions.php:135
     87#: classes/instances/mobilepay-subscriptions.php:163
     88#: classes/instances/mobilepay-subscriptions.php:170
     89#: classes/instances/mobilepay-subscriptions.php:181
    9090#: classes/instances/mobilepay.php:34 classes/instances/paypal.php:37
    9191#: classes/instances/quickpay-extra.php:41 classes/instances/resurs.php:35
     
    9797#: classes/woocommerce-quickpay-settings.php:109
    9898#: classes/woocommerce-quickpay-settings.php:117
    99 #: classes/woocommerce-quickpay-settings.php:125
    100 #: classes/woocommerce-quickpay-settings.php:132
    101 #: classes/woocommerce-quickpay-settings.php:219
    102 #: classes/woocommerce-quickpay-settings.php:253
    103 #: classes/woocommerce-quickpay-settings.php:263
    104 #: classes/woocommerce-quickpay-settings.php:353
     99#: classes/woocommerce-quickpay-settings.php:126
     100#: classes/woocommerce-quickpay-settings.php:133
     101#: classes/woocommerce-quickpay-settings.php:220
     102#: classes/woocommerce-quickpay-settings.php:254
     103#: classes/woocommerce-quickpay-settings.php:264
     104#: classes/woocommerce-quickpay-settings.php:378
    105105msgid "Enable"
    106106msgstr ""
    107107
    108 #: classes/instances/anyday.php:38 classes/instances/apple-pay.php:39
    109 #: classes/instances/google-pay.php:54
    110 #: classes/instances/mobilepay-subscriptions.php:78
     108#: classes/instances/anyday.php:37 classes/instances/apple-pay.php:38
     109#: classes/instances/google-pay.php:53
     110#: classes/instances/mobilepay-subscriptions.php:137
    111111#, php-format
    112112msgid "Enable %s payment"
    113113msgstr ""
    114114
    115 #: classes/instances/anyday.php:43 classes/instances/apple-pay.php:45
    116 #: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:60
     115#: classes/instances/anyday.php:42 classes/instances/apple-pay.php:44
     116#: classes/instances/fbg1886.php:42 classes/instances/google-pay.php:59
    117117#: classes/instances/ideal.php:42 classes/instances/klarna.php:43
    118118#: classes/instances/mobilepay-checkout.php:355
    119 #: classes/instances/mobilepay-subscriptions.php:83
     119#: classes/instances/mobilepay-subscriptions.php:142
    120120#: classes/instances/mobilepay.php:41 classes/instances/paypal.php:44
    121121#: classes/instances/quickpay-extra.php:48 classes/instances/resurs.php:42
    122122#: classes/instances/sofort.php:43 classes/instances/swish.php:42
    123123#: classes/instances/trustly.php:42 classes/instances/viabill.php:42
    124 #: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:150
     124#: classes/instances/vipps.php:42 classes/woocommerce-quickpay-settings.php:151
    125125msgid "Shop setup"
    126126msgstr ""
    127127
    128 #: classes/instances/anyday.php:46 classes/instances/apple-pay.php:48
    129 #: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:63
     128#: classes/instances/anyday.php:45 classes/instances/apple-pay.php:47
     129#: classes/instances/fbg1886.php:45 classes/instances/google-pay.php:62
    130130#: classes/instances/ideal.php:45 classes/instances/klarna.php:46
    131131#: classes/instances/mobilepay-checkout.php:358
    132 #: classes/instances/mobilepay-subscriptions.php:86
     132#: classes/instances/mobilepay-subscriptions.php:145
    133133#: classes/instances/mobilepay.php:44 classes/instances/paypal.php:47
    134134#: classes/instances/quickpay-extra.php:51 classes/instances/resurs.php:45
    135135#: classes/instances/sofort.php:46 classes/instances/swish.php:45
    136136#: classes/instances/trustly.php:45 classes/instances/viabill.php:45
    137 #: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:153
     137#: classes/instances/vipps.php:45 classes/woocommerce-quickpay-settings.php:154
    138138msgid "Title"
    139139msgstr ""
    140140
    141 #: classes/instances/anyday.php:48 classes/instances/apple-pay.php:50
    142 #: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:65
     141#: classes/instances/anyday.php:47 classes/instances/apple-pay.php:49
     142#: classes/instances/fbg1886.php:47 classes/instances/google-pay.php:64
    143143#: classes/instances/ideal.php:47 classes/instances/klarna.php:48
    144144#: classes/instances/mobilepay-checkout.php:360
    145 #: classes/instances/mobilepay-subscriptions.php:88
     145#: classes/instances/mobilepay-subscriptions.php:147
    146146#: classes/instances/mobilepay.php:46 classes/instances/paypal.php:49
    147147#: classes/instances/quickpay-extra.php:53 classes/instances/resurs.php:47
    148148#: classes/instances/sofort.php:48 classes/instances/swish.php:47
    149149#: classes/instances/trustly.php:47 classes/instances/viabill.php:47
    150 #: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:155
     150#: classes/instances/vipps.php:47 classes/woocommerce-quickpay-settings.php:156
    151151msgid "This controls the title which the user sees during checkout."
    152152msgstr ""
    153153
    154 #: classes/instances/anyday.php:49
     154#: classes/instances/anyday.php:48
    155155msgid "Anyday"
    156156msgstr ""
    157157
    158 #: classes/instances/anyday.php:52 classes/instances/apple-pay.php:54
    159 #: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:69
     158#: classes/instances/anyday.php:51 classes/instances/apple-pay.php:53
     159#: classes/instances/fbg1886.php:51 classes/instances/google-pay.php:68
    160160#: classes/instances/ideal.php:51 classes/instances/klarna.php:52
    161161#: classes/instances/mobilepay-checkout.php:364
    162 #: classes/instances/mobilepay-subscriptions.php:92
     162#: classes/instances/mobilepay-subscriptions.php:151
    163163#: classes/instances/mobilepay.php:50 classes/instances/paypal.php:53
    164164#: classes/instances/quickpay-extra.php:57 classes/instances/resurs.php:51
    165165#: classes/instances/sofort.php:52 classes/instances/swish.php:51
    166166#: classes/instances/trustly.php:51 classes/instances/viabill.php:51
    167 #: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:160
     167#: classes/instances/vipps.php:51 classes/woocommerce-quickpay-settings.php:161
    168168msgid "Customer Message"
    169169msgstr ""
    170170
    171 #: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
    172 #: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:71
     171#: classes/instances/anyday.php:53 classes/instances/apple-pay.php:55
     172#: classes/instances/fbg1886.php:53 classes/instances/google-pay.php:70
    173173#: classes/instances/ideal.php:53 classes/instances/klarna.php:54
    174174#: classes/instances/mobilepay-checkout.php:366
    175 #: classes/instances/mobilepay-subscriptions.php:94
     175#: classes/instances/mobilepay-subscriptions.php:153
    176176#: classes/instances/mobilepay.php:52 classes/instances/paypal.php:55
    177177#: classes/instances/quickpay-extra.php:59 classes/instances/resurs.php:53
    178178#: classes/instances/sofort.php:54 classes/instances/swish.php:53
    179179#: classes/instances/trustly.php:53 classes/instances/viabill.php:53
    180 #: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:162
     180#: classes/instances/vipps.php:53 classes/woocommerce-quickpay-settings.php:163
    181181msgid "This controls the description which the user sees during checkout."
    182182msgstr ""
    183183
    184 #: classes/instances/anyday.php:55 classes/instances/apple-pay.php:57
    185 #: classes/instances/google-pay.php:72
    186 #: classes/instances/mobilepay-subscriptions.php:95
     184#: classes/instances/anyday.php:54 classes/instances/apple-pay.php:56
     185#: classes/instances/google-pay.php:71
     186#: classes/instances/mobilepay-subscriptions.php:154
    187187#, php-format
    188188msgid "Pay with %s"
    189189msgstr ""
    190190
    191 #: classes/instances/apple-pay.php:41 classes/instances/google-pay.php:55
     191#: classes/instances/apple-pay.php:40 classes/instances/google-pay.php:54
    192192#, php-format
    193193msgid "Works only in %s."
    194194msgstr ""
    195195
    196 #: classes/instances/apple-pay.php:51
     196#: classes/instances/apple-pay.php:50
    197197msgid "Apple Pay"
    198198msgstr ""
     
    210210msgstr ""
    211211
    212 #: classes/instances/google-pay.php:66
     212#: classes/instances/google-pay.php:65
    213213msgid "Google Pay"
    214214msgstr ""
     
    226226msgstr ""
    227227
    228 #: classes/instances/instance.php:58 woocommerce-quickpay.php:897
     228#: classes/instances/instance.php:58 woocommerce-quickpay.php:911
    229229#, php-format
    230230msgid "Allows you to receive payments via %s"
     
    287287msgstr ""
    288288
    289 #: classes/instances/mobilepay-subscriptions.php:60
     289#: classes/instances/mobilepay-subscriptions.php:62
    290290msgid "Payment transaction has been cancelled by merchant or customer"
    291291msgstr ""
    292292
    293 #: classes/instances/mobilepay-subscriptions.php:102
     293#: classes/instances/mobilepay-subscriptions.php:161
    294294msgid "Activate subscriptions immediately."
    295295msgstr ""
    296296
    297 #: classes/instances/mobilepay-subscriptions.php:106
     297#: classes/instances/mobilepay-subscriptions.php:165
    298298msgid ""
    299299"Activates the subscription after the customer authorizes an agreement. "
     
    305305msgstr ""
    306306
    307 #: classes/instances/mobilepay-subscriptions.php:109
     307#: classes/instances/mobilepay-subscriptions.php:168
    308308msgid "Pre-fill phone number"
    309309msgstr ""
    310310
    311 #: classes/instances/mobilepay-subscriptions.php:113
     311#: classes/instances/mobilepay-subscriptions.php:172
    312312msgid ""
    313313"When enabled the customer's phone number will be used on the MobilePay "
     
    315315msgstr ""
    316316
    317 #: classes/instances/mobilepay-subscriptions.php:120
     317#: classes/instances/mobilepay-subscriptions.php:179
    318318msgid "Keep subscription active"
    319319msgstr ""
    320320
    321 #: classes/instances/mobilepay-subscriptions.php:124
     321#: classes/instances/mobilepay-subscriptions.php:183
    322322msgid ""
    323323"When enabled the subscription will automatically be activated after "
     
    326326msgstr ""
    327327
    328 #: classes/instances/mobilepay-subscriptions.php:128
     328#: classes/instances/mobilepay-subscriptions.php:187
    329329msgid "Agreements"
    330330msgstr ""
    331331
    332 #: classes/instances/mobilepay-subscriptions.php:131
     332#: classes/instances/mobilepay-subscriptions.php:190
    333333msgid "Cancelled agreements status"
    334334msgstr ""
    335335
    336 #: classes/instances/mobilepay-subscriptions.php:136
     336#: classes/instances/mobilepay-subscriptions.php:195
    337337msgid ""
    338338"Changes subscription status in case of cancelled payment agreement from "
     
    340340msgstr ""
    341341
    342 #: classes/instances/mobilepay-subscriptions.php:139
     342#: classes/instances/mobilepay-subscriptions.php:198
    343343msgid "Select status"
    344344msgstr ""
    345345
    346 #: classes/instances/mobilepay-subscriptions.php:147
     346#: classes/instances/mobilepay-subscriptions.php:206
    347347msgid "Do nothing"
    348348msgstr ""
    349349
    350 #: classes/instances/mobilepay-subscriptions.php:214
     350#: classes/instances/mobilepay-subscriptions.php:273
    351351#, php-format
    352352msgid "Payment of #%s"
    353353msgstr ""
    354354
    355 #: classes/instances/mobilepay-subscriptions.php:233
     355#: classes/instances/mobilepay-subscriptions.php:292
    356356msgid ""
    357357"'Activate subscriptions immediately.' enabled. Activating subscription due "
     
    359359msgstr ""
    360360
    361 #: classes/instances/mobilepay-subscriptions.php:282
    362 #: woocommerce-quickpay.php:661
     361#: classes/instances/mobilepay-subscriptions.php:341
     362#: woocommerce-quickpay.php:667
    363363msgid "QuickPay Transaction ID"
    364364msgstr ""
     
    393393
    394394#: classes/instances/quickpay-extra.php:54
    395 #: classes/woocommerce-quickpay-settings.php:156
     395#: classes/woocommerce-quickpay-settings.php:157
    396396msgid "QuickPay"
    397397msgstr ""
     
    415415
    416416#: classes/instances/quickpay-extra.php:69
    417 #: classes/woocommerce-quickpay-settings.php:181
     417#: classes/woocommerce-quickpay-settings.php:182
    418418msgid "Credit card icons"
    419419msgstr ""
    420420
    421421#: classes/instances/quickpay-extra.php:71
    422 #: classes/woocommerce-quickpay-settings.php:183
     422#: classes/woocommerce-quickpay-settings.php:184
    423423msgid ""
    424424"Choose the card icons you wish to show next to the QuickPay payment option "
     
    427427
    428428#: classes/instances/quickpay-extra.php:76
    429 #: classes/woocommerce-quickpay-settings.php:188
     429#: classes/woocommerce-quickpay-settings.php:189
    430430msgid "Select icons"
    431431msgstr ""
     
    539539
    540540#: classes/modules/woocommerce-quickpay-admin-orders-meta.php:30
    541 #: woocommerce-quickpay.php:753
     541#: woocommerce-quickpay.php:759
    542542msgid "QuickPay Payment"
    543543msgstr ""
     
    628628msgstr ""
    629629
    630 #: classes/woocommerce-quickpay-callbacks.php:74
     630#: classes/woocommerce-quickpay-callbacks.php:89
     631msgid "Payment cancelled."
     632msgstr ""
     633
     634#: classes/woocommerce-quickpay-callbacks.php:114
    631635#, php-format
    632636msgid "Subscription authorized. Transaction ID: %s"
     
    653657
    654658#: classes/woocommerce-quickpay-settings.php:37
    655 #: classes/woocommerce-quickpay-settings.php:377
     659#: classes/woocommerce-quickpay-settings.php:402
    656660msgid "Api User key"
    657661msgstr ""
     
    664668
    665669#: classes/woocommerce-quickpay-settings.php:43
    666 #: classes/woocommerce-quickpay-settings.php:376
     670#: classes/woocommerce-quickpay-settings.php:401
    667671msgid "Private key"
    668672msgstr ""
     
    755759
    756760#: classes/woocommerce-quickpay-settings.php:123
    757 msgid "Complete order on capture callbacks"
    758 msgstr ""
    759 
    760 #: classes/woocommerce-quickpay-settings.php:126
    761 msgid ""
    762 "When enabled, an order will be automatically completed when capture "
    763 "callbacks are sent to WooCommerce. Callbacks are sent by QuickPay when the "
    764 "payment is captured from either the shop or the QuickPay manager. Keep "
    765 "disabled to manually complete orders. "
    766 msgstr ""
    767 
    768 #: classes/woocommerce-quickpay-settings.php:130
     761msgid "Order status update on payment cancellation"
     762msgstr ""
     763
     764#: classes/woocommerce-quickpay-settings.php:127
     765msgid ""
     766"When activated, orders linked to payments will change to the chosen status "
     767"if the merchant cancels the payment."
     768msgstr ""
     769
     770#: classes/woocommerce-quickpay-settings.php:131
    769771msgid "Cancel payments on order cancellation"
    770772msgstr ""
    771773
    772 #: classes/woocommerce-quickpay-settings.php:133
     774#: classes/woocommerce-quickpay-settings.php:134
    773775msgid ""
    774776"Automatically cancel payments via the API when an order's status changes to "
     
    776778msgstr ""
    777779
    778 #: classes/woocommerce-quickpay-settings.php:137
     780#: classes/woocommerce-quickpay-settings.php:138
    779781msgid "Text on statement"
    780782msgstr ""
    781783
    782 #: classes/woocommerce-quickpay-settings.php:139
     784#: classes/woocommerce-quickpay-settings.php:140
    783785msgid ""
    784786"Text that will be placed on cardholder’s bank statement (MAX 22 ASCII "
     
    787789msgstr ""
    788790
    789 #: classes/woocommerce-quickpay-settings.php:163
     791#: classes/woocommerce-quickpay-settings.php:164
    790792msgid "Pay via QuickPay. Allows you to pay with your credit card via QuickPay."
    791793msgstr ""
    792794
    793 #: classes/woocommerce-quickpay-settings.php:167
     795#: classes/woocommerce-quickpay-settings.php:168
    794796msgid "Order button text"
    795797msgstr ""
    796798
    797 #: classes/woocommerce-quickpay-settings.php:169
     799#: classes/woocommerce-quickpay-settings.php:170
    798800msgid "Text shown on the submit button when choosing payment method."
    799801msgstr ""
    800802
    801 #: classes/woocommerce-quickpay-settings.php:170
     803#: classes/woocommerce-quickpay-settings.php:171
    802804msgid "Go to payment"
    803805msgstr ""
    804806
    805 #: classes/woocommerce-quickpay-settings.php:174
     807#: classes/woocommerce-quickpay-settings.php:175
    806808msgid "Email instructions"
    807809msgstr ""
    808810
    809 #: classes/woocommerce-quickpay-settings.php:176
     811#: classes/woocommerce-quickpay-settings.php:177
    810812msgid "Instructions that will be added to emails."
    811813msgstr ""
    812814
    813 #: classes/woocommerce-quickpay-settings.php:194
     815#: classes/woocommerce-quickpay-settings.php:195
    814816msgid "Credit card icons maximum height"
    815817msgstr ""
    816818
    817 #: classes/woocommerce-quickpay-settings.php:196
     819#: classes/woocommerce-quickpay-settings.php:197
    818820msgid ""
    819821"Set the maximum pixel height of the credit card icons shown on the frontend."
    820822msgstr ""
    821823
    822 #: classes/woocommerce-quickpay-settings.php:202
     824#: classes/woocommerce-quickpay-settings.php:203
    823825msgid "Google Analytics"
    824826msgstr ""
    825827
    826 #: classes/woocommerce-quickpay-settings.php:205
     828#: classes/woocommerce-quickpay-settings.php:206
    827829msgid "Tracking ID"
    828830msgstr ""
    829831
    830 #: classes/woocommerce-quickpay-settings.php:207
     832#: classes/woocommerce-quickpay-settings.php:208
    831833msgid "Your Google Analytics tracking ID. I.E: UA-XXXXXXXXX-X"
    832834msgstr ""
    833835
    834 #: classes/woocommerce-quickpay-settings.php:213
     836#: classes/woocommerce-quickpay-settings.php:214
    835837msgid "Shop Admin Setup"
    836838msgstr ""
    837839
    838 #: classes/woocommerce-quickpay-settings.php:217
     840#: classes/woocommerce-quickpay-settings.php:218
    839841msgid "Fetch Transaction Info"
    840842msgstr ""
    841843
    842 #: classes/woocommerce-quickpay-settings.php:220
     844#: classes/woocommerce-quickpay-settings.php:221
    843845msgid "Show transaction information in the order overview."
    844846msgstr ""
    845847
    846 #: classes/woocommerce-quickpay-settings.php:227
     848#: classes/woocommerce-quickpay-settings.php:228
    847849msgid "Custom Variables"
    848850msgstr ""
    849851
    850 #: classes/woocommerce-quickpay-settings.php:230
     852#: classes/woocommerce-quickpay-settings.php:231
    851853msgid "Select Information"
    852854msgstr ""
    853855
    854 #: classes/woocommerce-quickpay-settings.php:235
     856#: classes/woocommerce-quickpay-settings.php:236
    855857msgid ""
    856858"Selected options will store the specific data on your transaction inside "
     
    858860msgstr ""
    859861
    860 #: classes/woocommerce-quickpay-settings.php:239
     862#: classes/woocommerce-quickpay-settings.php:240
    861863msgid "Select order data"
    862864msgstr ""
    863865
    864 #: classes/woocommerce-quickpay-settings.php:251
     866#: classes/woocommerce-quickpay-settings.php:252
    865867msgid "Complete renewal orders"
    866868msgstr ""
    867869
    868 #: classes/woocommerce-quickpay-settings.php:254
     870#: classes/woocommerce-quickpay-settings.php:255
    869871msgid ""
    870872"Automatically mark a renewal order as complete on successful recurring "
     
    872874msgstr ""
    873875
    874 #: classes/woocommerce-quickpay-settings.php:261
     876#: classes/woocommerce-quickpay-settings.php:262
    875877msgid "Update card on manual renewal payment"
    876878msgstr ""
    877879
    878 #: classes/woocommerce-quickpay-settings.php:264
     880#: classes/woocommerce-quickpay-settings.php:265
    879881msgid ""
    880882"When paying failed renewals, the payment link will authorize a new "
     
    884886msgstr ""
    885887
    886 #: classes/woocommerce-quickpay-settings.php:321
     888#: classes/woocommerce-quickpay-settings.php:295
     889msgid "-- Select (optional) --"
     890msgstr ""
     891
     892#: classes/woocommerce-quickpay-settings.php:346
    887893msgid "Billing: Complete Customer Details"
    888894msgstr ""
    889895
    890 #: classes/woocommerce-quickpay-settings.php:322
     896#: classes/woocommerce-quickpay-settings.php:347
    891897msgid "Browser: User Agent"
    892898msgstr ""
    893899
    894 #: classes/woocommerce-quickpay-settings.php:323
     900#: classes/woocommerce-quickpay-settings.php:348
    895901msgid "Customer: Email Address"
    896902msgstr ""
    897903
    898 #: classes/woocommerce-quickpay-settings.php:324
     904#: classes/woocommerce-quickpay-settings.php:349
    899905msgid "Customer: Phone Number"
    900906msgstr ""
    901907
    902 #: classes/woocommerce-quickpay-settings.php:325
     908#: classes/woocommerce-quickpay-settings.php:350
    903909msgid "Shipping: Complete Customer Details"
    904910msgstr ""
    905911
    906 #: classes/woocommerce-quickpay-settings.php:326
     912#: classes/woocommerce-quickpay-settings.php:351
    907913msgid "Shipping: Shipping Method"
    908914msgstr ""
    909915
    910 #: classes/woocommerce-quickpay-settings.php:340
     916#: classes/woocommerce-quickpay-settings.php:365
    911917msgid "Debug"
    912918msgstr ""
    913919
    914 #: classes/woocommerce-quickpay-settings.php:341
     920#: classes/woocommerce-quickpay-settings.php:366
    915921msgid "Got problems? Check out the Wiki."
    916922msgstr ""
    917923
    918 #: classes/woocommerce-quickpay-settings.php:342
     924#: classes/woocommerce-quickpay-settings.php:367
    919925msgid "View debug logs"
    920926msgstr ""
    921927
    922 #: classes/woocommerce-quickpay-settings.php:345
     928#: classes/woocommerce-quickpay-settings.php:370
    923929msgid "Empty debug logs"
    924930msgstr ""
    925931
    926 #: classes/woocommerce-quickpay-settings.php:349
     932#: classes/woocommerce-quickpay-settings.php:374
    927933msgid "Empty transaction cache"
    928934msgstr ""
    929935
    930936#. Plugin Name of the plugin/theme
    931 #: classes/woocommerce-quickpay-settings.php:387
     937#: classes/woocommerce-quickpay-settings.php:412
    932938msgid "WooCommerce QuickPay"
    933939msgstr ""
    934940
    935 #: classes/woocommerce-quickpay-settings.php:388
     941#: classes/woocommerce-quickpay-settings.php:413
    936942#, php-format
    937943msgid ""
     
    940946msgstr ""
    941947
    942 #: classes/woocommerce-quickpay-settings.php:391
     948#: classes/woocommerce-quickpay-settings.php:416
    943949#, php-format
    944950msgid "<strong>%s</strong> is mandatory."
     
    10911097msgstr ""
    10921098
    1093 #: woocommerce-quickpay.php:31
     1099#: woocommerce-quickpay.php:32
    10941100msgid "WooCommerce QuickPay requires WooCommerce to be active."
    10951101msgstr ""
    10961102
    1097 #: woocommerce-quickpay.php:32
     1103#: woocommerce-quickpay.php:33
    10981104msgid "Go to the plugins page to activate WooCommerce"
    10991105msgstr ""
    11001106
    1101 #: woocommerce-quickpay.php:329
     1107#: woocommerce-quickpay.php:335
    11021108msgid "Settings"
    11031109msgstr ""
    11041110
    1105 #: woocommerce-quickpay.php:523
     1111#: woocommerce-quickpay.php:529
    11061112#, php-format
    11071113msgid "No transaction ID for order: %s"
    11081114msgstr ""
    11091115
    1110 #: woocommerce-quickpay.php:533
     1116#: woocommerce-quickpay.php:539
    11111117msgid "A non-captured payment cannot be refunded."
    11121118msgstr ""
    11131119
    1114 #: woocommerce-quickpay.php:536
     1120#: woocommerce-quickpay.php:542
    11151121msgid "Transaction state does not allow refunds."
    11161122msgstr ""
    11171123
    1118 #: woocommerce-quickpay.php:689
     1124#: woocommerce-quickpay.php:695
    11191125#, php-format
    11201126msgid "QuickPay Transaction ID updated from #%d to #%d"
    11211127msgstr ""
    11221128
    1123 #: woocommerce-quickpay.php:746
     1129#: woocommerce-quickpay.php:752
    11241130msgid ""
    11251131"<p><strong>Payment failure</strong> A problem with your payment on order "
     
    11271133msgstr ""
    11281134
    1129 #: woocommerce-quickpay.php:753
     1135#: woocommerce-quickpay.php:759
    11301136msgid "Cancelled during process"
    11311137msgstr ""
    11321138
    1133 #: woocommerce-quickpay.php:755
     1139#: woocommerce-quickpay.php:761
    11341140msgid "Payment cancelled"
    11351141msgstr ""
    11361142
    1137 #: woocommerce-quickpay.php:755
     1143#: woocommerce-quickpay.php:761
    11381144msgid ""
    11391145"Due to cancellation of your payment, the order process was not completed. "
     
    11411147msgstr ""
    11421148
    1143 #: woocommerce-quickpay.php:755
     1149#: woocommerce-quickpay.php:761
    11441150#, php-format
    11451151msgid "<p><strong>%s</strong>: %s</p>"
    11461152msgstr ""
    11471153
    1148 #: woocommerce-quickpay.php:807
    1149 msgid "Payment cancelled."
    1150 msgstr ""
    1151 
    1152 #: woocommerce-quickpay.php:815
     1154#: woocommerce-quickpay.php:825
    11531155#, php-format
    11541156msgid "Refunded %s %s"
    11551157msgstr ""
    11561158
    1157 #: woocommerce-quickpay.php:862
     1159#: woocommerce-quickpay.php:872
    11581160#, php-format
    11591161msgid "Invalid callback body for order #%s."
  • woocommerce-quickpay/trunk/woocommerce-quickpay.php

    r3029485 r3045559  
    44 * Plugin URI: http://wordpress.org/plugins/woocommerce-quickpay/
    55 * Description: Integrates your QuickPay payment gateway into your WooCommerce installation.
    6  * Version: 7.1.0
     6 * Version: 7.2.0
    77 * Author: Perfect Solution
    88 * Text Domain: woo-quickpay
     
    1111 * Wiki: http://quickpay.perfect-solution.dk/
    1212 * WC requires at least: 7.1.0
    13  * WC tested up to: 8.1
     13 * WC tested up to: 8.6
    1414 */
    1515
     
    1919}
    2020
    21 define( 'WCQP_VERSION', '7.1.0' );
     21define( 'WCQP_VERSION', '7.2.0' );
    2222define( 'WCQP_URL', plugins_url( __FILE__ ) );
    2323define( 'WCQP_PATH', plugin_dir_path( __FILE__ ) );
     
    768768         */
    769769        public function callback_handler(): void {
    770             // Get callback body
    771             $request_body = file_get_contents( "php://input" );
    772 
    773             // Decode the body into JSON
    774             $json = json_decode( $request_body, false, 512, JSON_THROW_ON_ERROR );
    775 
    776             // Instantiate payment object
    777             $payment = new WC_QuickPay_API_Payment( $json );
    778 
    779             // Fetch order number;
    780             $order_number = WC_QuickPay_Callbacks::get_order_id_from_callback( $json );
    781 
    782             // Fetch subscription post ID if present
    783             $subscription_id = WC_QuickPay_Callbacks::get_subscription_id_from_callback( $json );
    784             $subscription    = null;
    785             if ( $subscription_id !== null ) {
    786                 $subscription = woocommerce_quickpay_get_subscription( $subscription_id );
    787             }
    788 
    789             if ( $payment->is_authorized_callback( $request_body ) ) {
    790                 // Instantiate order object
    791                 $order = woocommerce_quickpay_get_order( $order_number );
    792 
    793                 // Get last transaction in operation history
    794                 $transaction = end( $json->operations );
    795 
    796                 // Is the transaction accepted and approved by QP / Acquirer?
    797                 // Did we find an order?
    798                 if ( $json->accepted && $order ) {
    799                     do_action( 'woocommerce_quickpay_accepted_callback_before_processing', $order, $json );
    800                     do_action( 'woocommerce_quickpay_accepted_callback_before_processing_status_' . $transaction->type, $order, $json );
    801 
    802                     // Perform action depending on the operation status type
    803                     try {
    804                         switch ( $transaction->type ) {
    805                             //
    806                             // Cancel callbacks are currently not supported by the QuickPay API
    807                             //
    808                             case 'cancel' :
    809                                 if ( $subscription_id !== null && $subscription ) {
    810                                     do_action( 'woocommerce_quickpay_callback_subscription_cancelled', $subscription, $order, $transaction, $json );
    811                                 }
    812                                 // Write a note to the order history
    813                                 $order->add_order_note( __( 'Payment cancelled.', 'woo-quickpay' ) );
    814                                 break;
    815 
    816                             case 'capture' :
    817                                 WC_QuickPay_Callbacks::payment_captured( $order, $json );
    818                                 break;
    819 
    820                             case 'refund' :
    821                                 $order->add_order_note( sprintf( __( 'Refunded %s %s', 'woo-quickpay' ), WC_QuickPay_Helper::price_normalize( $transaction->amount, $json->currency ), $json->currency ) );
    822                                 break;
    823 
    824                             case 'recurring':
    825                                 WC_QuickPay_Callbacks::payment_authorized( $order, $json );
    826                                 break;
    827 
    828                             case 'authorize' :
    829                                 WC_QuickPay_Callbacks::authorized( $order, $json );
    830 
    831                                 // Subscription authorization
    832                                 if ( $subscription_id !== null && isset( $subscription ) && strtolower( $json->type ) === 'subscription' ) {
    833                                     // Write log
    834                                     WC_QuickPay_Callbacks::subscription_authorized( $subscription, $order, $json );
    835                                 } // Regular payment authorization
    836                                 else {
     770            try {
     771                // Get callback body
     772                $request_body = file_get_contents( "php://input" );
     773
     774                // Decode the body into JSON
     775                $json = json_decode( $request_body, false, 512, JSON_THROW_ON_ERROR );
     776
     777                // Instantiate payment object
     778                $payment = new WC_QuickPay_API_Payment( $json );
     779
     780                // Fetch order number;
     781                $order_number = WC_QuickPay_Callbacks::get_order_id_from_callback( $json );
     782
     783                // Fetch subscription post ID if present
     784                $subscription_id = WC_QuickPay_Callbacks::get_subscription_id_from_callback( $json );
     785                $subscription    = null;
     786                if ( $subscription_id !== null ) {
     787                    $subscription = woocommerce_quickpay_get_subscription( $subscription_id );
     788                }
     789
     790                if ( $payment->is_authorized_callback( $request_body ) ) {
     791                    // Instantiate order object
     792                    $order = woocommerce_quickpay_get_order( $order_number );
     793
     794                    // Get last transaction in operation history
     795                    $transaction = end( $json->operations );
     796
     797                    // Is the transaction accepted and approved by QP / Acquirer?
     798                    // Did we find an order?
     799                    if ( $json->accepted && $order ) {
     800                        do_action( 'woocommerce_quickpay_accepted_callback_before_processing', $order, $json );
     801                        do_action( 'woocommerce_quickpay_accepted_callback_before_processing_status_' . $transaction->type, $order, $json );
     802
     803                        // Perform action depending on the operation status type
     804                        try {
     805                            switch ( $transaction->type ) {
     806                                //
     807                                // Cancel callbacks are currently not supported by the QuickPay API
     808                                //
     809                                case 'cancel' :
     810                                    if ( $subscription_id !== null && $subscription ) {
     811                                        do_action( 'woocommerce_quickpay_callback_subscription_cancelled', $subscription, $order, $transaction, $json );
     812                                    }
     813
     814                                    if ( strtolower( $json->type ) === 'payment' ) {
     815                                        WC_QuickPay_Callbacks::payment_cancelled( $order, $json, $transaction );
     816                                    }
     817
     818                                    break;
     819
     820                                case 'capture' :
     821                                    WC_QuickPay_Callbacks::payment_captured( $order, $json );
     822                                    break;
     823
     824                                case 'refund' :
     825                                    $order->add_order_note( sprintf( __( 'Refunded %s %s', 'woo-quickpay' ), WC_QuickPay_Helper::price_normalize( $transaction->amount, $json->currency ), $json->currency ) );
     826                                    break;
     827
     828                                case 'recurring':
    837829                                    WC_QuickPay_Callbacks::payment_authorized( $order, $json );
    838                                 }
    839                                 break;
     830                                    break;
     831
     832                                case 'authorize' :
     833                                    WC_QuickPay_Callbacks::authorized( $order, $json );
     834
     835                                    // Subscription authorization
     836                                    if ( $subscription_id !== null && isset( $subscription ) && strtolower( $json->type ) === 'subscription' ) {
     837                                        // Write log
     838                                        WC_QuickPay_Callbacks::subscription_authorized( $subscription, $order, $json );
     839                                    } // Regular payment authorization
     840                                    else {
     841                                        WC_QuickPay_Callbacks::payment_authorized( $order, $json );
     842                                    }
     843                                    break;
     844                            }
     845
     846                            do_action( 'woocommerce_quickpay_accepted_callback', $order, $json );
     847                            do_action( 'woocommerce_quickpay_accepted_callback_status_' . $transaction->type, $order, $json );
     848
     849                        } catch ( QuickPay_API_Exception $e ) {
     850                            $e->write_to_logs();
    840851                        }
    841 
    842                         do_action( 'woocommerce_quickpay_accepted_callback', $order, $json );
    843                         do_action( 'woocommerce_quickpay_accepted_callback_status_' . $transaction->type, $order, $json );
    844 
    845                     } catch ( QuickPay_API_Exception $e ) {
    846                         $e->write_to_logs();
    847852                    }
    848                 }
    849 
    850                 // The transaction was not accepted.
    851                 // Print debug information to logs
    852                 else {
    853                     // Write debug information
    854                     $this->log->add( [
    855                         'order'          => $order_number,
    856                         'qp_status_code' => $transaction->qp_status_code,
    857                         'qp_status_msg'  => $transaction->qp_status_msg,
    858                         'aq_status_code' => $transaction->aq_status_code,
    859                         'aq_status_msg'  => $transaction->aq_status_msg,
    860                         'request'        => $request_body,
    861                     ] );
    862 
    863                     if ( $order && ( $transaction->type === 'recurring' || 'rejected' !== $json->state ) ) {
    864                         $order->update_status( 'failed', sprintf( 'Payment failed <br />QuickPay Message: %s<br />Acquirer Message: %s', $transaction->qp_status_msg, $transaction->aq_status_msg ) );
     853
     854                    // The transaction was not accepted.
     855                    // Print debug information to logs
     856                    else {
     857                        // Write debug information
     858                        $this->log->add( [
     859                            'order'          => $order_number,
     860                            'qp_status_code' => $transaction->qp_status_code,
     861                            'qp_status_msg'  => $transaction->qp_status_msg,
     862                            'aq_status_code' => $transaction->aq_status_code,
     863                            'aq_status_msg'  => $transaction->aq_status_msg,
     864                            'request'        => $request_body,
     865                        ] );
     866
     867                        if ( $order && ( $transaction->type === 'recurring' || 'rejected' !== $json->state ) ) {
     868                            $order->update_status( 'failed', sprintf( 'Payment failed <br />QuickPay Message: %s<br />Acquirer Message: %s', $transaction->qp_status_msg, $transaction->aq_status_msg ) );
     869                        }
    865870                    }
    866                 }
    867             } else {
    868                 $this->log->add( sprintf( __( 'Invalid callback body for order #%s.', 'woo-quickpay' ), $order_number ) );
    869             }
     871                } else {
     872                    $this->log->add( sprintf( __( 'Invalid callback body for order #%s.', 'woo-quickpay' ), $order_number ) );
     873                }
     874            } catch ( JsonException $e ) {
     875                wp_send_json_error( 'Invalid request', 400 );
     876            }
     877
    870878        }
    871879
Note: See TracChangeset for help on using the changeset viewer.