Betal med Vipps og MobilePay for WooCommerce

Beskrivelse

Offisiell utvidelse for betaling med Vipps MobilePay i WooCommerce. La de norske, danske og finske kundene dine betale med Vipps eller MobilePay for enkel, rask og velkjent betalingsopplevelse

Vipps brukes av mer enn 77 % av Norges befolkning (4,2 milloner brukere)

MobilePay brukes av mer enn 75 % av Danmarks befolkning (4,4 millioner brukere), og mer enn 36 % av Finlands befolkning (2 millioner brukere).

Vipps og MobilePay er betalingsmåter tilbudt av Vipps MobilePay.

Når du aktiverer denne utvidelsen må du velge mellom å tilby Vipps eller MobilePay som betalingsmåte for kundene dine – derfor «Vipps/MobilePay» heretter.

Dette er den offisielle utvidelsen for Vipps/MobilePay-kasse, Vipps/MobilePay ePayments (Vipps Nettbetaling), og Vipps Express Checkout (Vipps Hurtigkasse). Øk konverteringsgraden din ved å la kundene dine velge Vipps/MobilePay direkte i kassen eller tilmed bruke hurtigkassen (kun Vipps) direkte fra handlekurven eller en produktside.

Du kan også gjøre viktige administrative oppgaver som belastning og tilbakebetaling direkte fra WooCommerce. Enkelt for kundene dine og enkelt for deg.

Les informasjon fra Vipps om utvidelsen.

Vipps/MobilePay-kasse

Med Vipps/MobilePay-kassen slå på i uvidelsen kan du får en fulstendig kasse i nettbutikken din, utformet av Vipps/MobilePay. Den inneholder vanlige Vipps/MobilePay-betalinger, en mulighet for kortbetaling for de som ikke kan eller vil bruke Vipps/MobilePay, og dessuten muligheten til å få fraktadressen til kunden på en enkel måte. Les mer om Vipps-kassen her

Vipps/MobilePay nettbetaling

Når du aktiverer denne utvidelsen, vil kundene dine få muligheten til å velge Vipps som betalingsmetode på kassesiden. Det er ikke nødvendig å bruke en tredjeparts betalingsmetode. Hvis kunden din velger Vipps/MobilePay, fyller hen inn navn og addresse og blir så bedt om å føre inn telefonnummeret i Vipps-dialogen. Deretter bekrefter hen kjøpet i Vipps-appen.

Mobilepay-reservasjoner er for tiden 14 dager

Når en betaling gjennomføres med Vipps MobilePay vil beløpet bli reservert, men først overført til butikkeninnehaveren når ordrestatusen settes til «Fullført» eller pengene blir belastet manuelt. For MobilePay er denne reservasjonsperioden 14 dager, slik at du må sende og oppfylle ordren før dette, eller gjøre en avtale med kunden om å belaste beløpet før denne perioden er over. For Vipps er perioden 180 dager. For betalinger gjort med kredittkort i Vipps/Mobilepay-kassen kan perioden være så kort som 7 dager.
For detaljer, les vår FAQ for utviklere.

Hvis ordren kun inneholder virtuelle eller nedlastbare produkter, vil utvidelsen trekke beløpet automatisk og sette ordrenn til «Fullført», som en standard WooCommerce-regel.

Vipps Hurtigkasse

Når du skrur på Hurtigkasse, kan kundene dine velge mellom vanlig kassaløsning, eller å gå direkte til Vipps. Velger de Vipps taster de kun in sitt telefonnummer, og resten av kjøpet gjøres rett i Vipps-appen.

Siden Vipps vet hvem kundene er, trenger de ikke føre inn all personlig informasjon. Kunden kan bare velge fraktmetode og godta betalingen. Vipps vil sende all nødvendig informasjon tilbake til butikken. Lett, raskt og sikkert.

Hurtigkassen kan gjøres på følgende måter:

  • Fra handlekurven
  • Fra kategorisidene
  • Fra produktsiden
  • Fra delbare lenker distribuert med e-post, bannere osv.
  • Fra QR-koder distribuert digitalt eller på trykk

Innstillinger for handlekurven, kategori- og produktsidene finnes under innstillgene for WooCommerce for Vipps-betalingsmåten.

Delbare lenker og QR-koder kan genereres fra fanen Vipps på produktsiden.

Hvordan komme i gang

  • Regsitrer deg på Vipps-portaenl og velg produktet ditt.
  • After 1-2 days you will get an email with login details to Vipps Developer Portal, where you can get the API credentials
  • Last ned og installer utvidelsen
  • Konfigurer utvidelsen

Hvordan installere utvidelsen

  1. Installer utvidelsen ved hjelp av WordPress sin innebygde installasjon. Utvidelsen kan også installeres manuelt ved å laste opp utvidelsesfilene til mappen /wp-content/plugins/.
  2. Aktiver utvidelsen via ‘Utvidelser’-skjermen i WordPress.
  3. Gå til WooCommerce Instillinger-siden, velg Betalinger og skru på Vipps
  4. Gå til innstillingssiden for Vipps-utvidelsen og legg inn kontonøklene for Vipps. Kontonøklene dine er tilgjengelig i utviklerportalen for Vipps (detaljer i avsnittet nedenfor)

Hvordan få kontonøkler for Vipps fra utviklerportalen til Vipps?

  1. Logg inn på Vippsportalen på https://portal.vippsmobilepay.com/ med BankID
  2. Select the «Utvikler» («Developer») tab and choose Production Keys. Here you can find the merchant serial number (6 figures)
  3. Klikk på «Vis nøkler» under fanen API-nøkler for å se «Client ID», «Client Secret» og «Vipps Subscription Key»

Bidra på Github

This project is hosted on Github at: https://github.com/vippsas/vipps-woocommerce

Utvide integrasjonen ‘Order mangement API’

From version 1.10.0, this plugin implements the Vipps Order Management API, sending a receipt to the customers’ app, and sending the order confirmation link as the Order Confirmation link category. You can, using this api, send over an image and a link for the categories receipt (RECEIPT), ticket (TICKET), shipping (DELIVERY), booking (BOOKING) and a general category (GENERAL).

For instance, if you have a page or url for tracking shipping, you can add this to the customers’ app by extending the ‘woo_vipps_add_order_categories’ filter like so:

   add_filter('woo_vipps_add_order_categories', function ($categories, $order, $gateway) {
          $shippingpagedata = array(
            'link' => <your shipping URL here>, 
            'image' => <filename or attachment ID of your illustration for shipping here, if required>,
            'imagesize' => <for attachments, the image size to use>);
          $categories['DELIVERY'] = $shippingpagedata;
          return $categories;
      }, 10, 3);

Du kan må samme måte sende billettinformasjon (med f.eks QR-kode) for kategorien TICKET eller BOOKING og så videre.

Javascript filters and actions

From version 1.1.13 you can also modify the javascript using the new WP hooks library for javascript:
* ‘vippsBuySingleProduct’ – action which is run whenever a customer tries to buy a single product using express checkout
* ‘vippsBuySingleProductCompatMode’ – filter which should return true or false, if true, the compatibility mode action will be run instead of the standard ajax.
* ‘vippsBuySingleProductCompatModeAction’ – filter which should return a javascript function to run when buying a product and compatibility mode is on. Will normally press the «Buy» button for you.
* ‘vippsRemoveErrorMessages’ – runs when Vipps error messages are to be removed.
* ‘vippsErrorMessage’ – runs for every Vipps error message added with Javascript. Takes the message as an argument
* ‘vippsAddErrorMessage’ – runs when an error message is about to be added. Takes the message as an argument
* ‘vippsInit’ – runs when a page with a Vipps button is initialzed
* ‘vippsStatusCheckErrorHandler’ – A filter that should return function taking a statustext and an error object. It receives the default error handler, and is called when checking the order status with ajax for some reason ends up in an error.

Skjermskudd

  • Slå på Vipps-kassen som din kasse.
  • Skru på Vipps som betalingsmetode
  • Skriv inn dine Vipps-kontonøkler og konfigurer utvidelsen

Blokker

Denne utvidelsen gir 1 blokk.

  • Blocks A block that handles Vipps MobilePay shareable links for the new WooCommerce product editor.

Installasjon

  1. Installer utvidelsen ved hjelp av WordPress sin innebygde installasjon. Utvidelsen kan også installeres manuelt ved å laste opp utvidelsesfilene til mappen /wp-content/plugins/.
  2. Aktiver utvidelsen via ‘Utvidelser’-skjermen i WordPress.
  3. Gå til WooCommerce Instillinger-siden, velg Betalinger og skru på Vipps
  4. Gå til innstillingssiden for Vipps-utvidelsen og legg inn kontonøklene for Vipps. Kontonøklene dine er tilgjengelig i utviklerportalen for Vipps (detaljer i avsnittet nedenfor)

FAQ

I hvilke land kan jeg bruke Vipps/MobilePay?

Vipps er foreløpig bare tilgjengelig i Norge (77 % bruker det i 2022)
MobilePay er for tiden bare tilgjengelig i Danmark og Finland (75 % og 36 % bruker det 2022, respektivt).

Hvordan kan jeg få hjelp hvis jeg får problemer?

Hvis du har problemer med WooCommerce-installasjonen din, bruk brukerstøtteforumet her på wordpress.org. For andre problemer kan du ta kontakt med Vipps MobilePay.

Hvorfor blir ordre satt til På vent og ikke til Behnadler eller Fullført?

Dette var den gamle standardverdien før versjon 2.0. Den nye standardverdien er nå ‘Behandler’, men dette betyr også at ordre som er «Behandler’ vil ha betalingen reservert, men ikke overført til beutikkinehaveren. Du kan fortsatt velge statusen ‘På vent’ på skjermen for innstillinger.

Om du vekger På vent vil ordre med denne statusen ha betalingen resververt, men ennå ikke overført til butikkinnehaveren. Beløpet må beslates før det kan overføres til butikkinnehaveren. Du har normal bare lov til å gjlre dette på samme tid som odren sendes. Du kan eksplisitt belaste beløpet på ordreskjermen, men pengene vil uansett bli belastet automatisk når ordren blir satt til ‘Behandler’ eller ‘Fullført’.

Om du velger standard eller «Behandler» gjelder det samme for denne statusen. Ordrebeløpet vil bli resevert, men ikke belastet. Du kan belaste manuelt eller det vil automatisk bli belastet når ordren blir satt til «Fullført». Merk at du bør passe på at arbeidsflyten din er slik at ordrebeløpet blir belastet like før pakken sendes.

Det er et unntak for ordre hvor alle elementene er både virtuelle og nedlastbare. Disse anes ikke å trenge behandling og vil belates automatisk (og gå direkte til statusen ‘Fullført’). Det er mulig å tilpasse denne egenskapen til behovene dine ved å bruke filteret ‘woocommerce_order_item_needs_processing’.

Kan jeg refundere ordrebeløp eller deler av dette med Vipps/MobilePay?

Yes, you can do refunds, including partial refunds, using the standard WooCommerce mechanism (https://docs.woocommerce.com/document/woocommerce-refunds/). Additionally, if you cancel an order that was already captured, the money will be refunded for the whole order if the order is not too old. For older orders, you must use the refund mechanism explicitly. This is a safety feature.
If automatic refund through the Vipps API should fail, you will need to refund manually; in this case an error message to this effect will be displayed and the order annotated.

Hva er ‘kompatibilitetsmodus’ i innstillingene?

Some plugins add new features to products or entirely new product types to WooCommerce; which the ‘Express Checkout’ function may not be able to handle. It can be possible to fix this using hooks and filters, but if you choose this feature, express checkout will be done in a different manner which is very much more likely to work for a given plugin. The cost is that the process will be slightly less smooth.

Hvorfor blir frakten min feil vwed bruk av hurtigkassen?

It may be that the shipping method you are using some how does not work when calculated from the Vipps app, where the customer is somewhat anonymous. However, since version 1.4.0 this problem ought to be greatly reduced, so if you still have this problem, report this on the forum and we’ll try to fix it.

If you have shipping methods that add additional information on the ‘normal’ checkout page they will not be able to provide that information to Express Checkout plugin, since that page is bypassed. You may be able to add those options on a different page; but you may want to remove those options when using Express Checkout.

Formerly, there was a filter used to work around this, namely ‘woo_vipps_shipping_methods’. This still works, but if you use it, it will disable the ‘new’ shipping method calculation. You may still customize the Express Checkout shipping; the new filter is called ‘woo_vipps_shipping_rates’.

For sikkerhets skyld bør du teste fraktmetodene i Hurtigkassen før løsningen publiseres.

Jeg vil gjerne bruke sekvensielle ordrenummer på Vipps i stedet for ordre-id-er i WooCommerce gjennom utvidelsen for sekvensielle ordrenummer. Støtter denne utvïdelsen dette?

Ja, men du må sørge for at ordre-id-ene du produserer er unike for din Vipps-konto, og du må for tiden bruke et filter in filen functions.ph i temaet ditt. Vi anbefaler å bruke et prefiks for dine ordre-id-er slik at et filter som vil virke med skeskvensielle ordrenummer vil se ut som

add_filter('woo_vipps_orderid', function ($default, $prefix, $order) {
    return $prefix . $order->get_order_number();
}, 10, 3);

Brannmur-porter

Ensure outgoing traffic to port 443 is open. This is used to communicate with Vipps servers.

Tilbyr Vipps et testmiljø for Vipps for Woocommerce?

Yes, but you will need a separate account, and you will need to install a special test version of the Vipps app, available trough Testflight. For your test account, the keys will be at https://portal-test.vipps.no; you will configure these in the developer mode settings.

Kontakt Vipps fopr tilgang til test-appen. Denne appen må ionstalleres på en enhet som ikke har den vanlige Vipps-appen installert, eller blir den konflikter.

For å bruke testmodus må «Utviklermodus» slås på. Du kan så legge inn testnøkler fra portal-test.vipps.no, og slå testmodus på og av.

Om det er praktisk for din bruk anbefaler vi at du «tester i produksjoin» med et lite beløp, f.eks kr 2. Refudner bare elelr kanseller kjøpet etter behov.

Hvilke krav stilles?

  • WooCommerce 3.3.4 eller nyere er påkrevet
  • PHP 7.0 eller høyere er påkrevet.
  • Et SSL-sertifikat er påkrevet

Filters and Hooks for customization

There are several filters and hooks you can use to customize the behaviour of this plugin:
* Filter: ‘woo_vipps_is_available’: Takes a boolean availability argument and the gateway and must return true or false
* Filter: ‘woo_vipps_express_checkout_available’: Takes a boolean availability argument and the gateway and must return true or false.
* Filter: ‘woo_vipps_cart_express_checkout_button’: Receives a complete button text and the URL needed to proceed to the express checkout page.
* Filter: ‘woo_vipps_express_checkout_banner’: Receives a message with an express checkout button and an URL for the same, should return a message for the express checkout banner normally shown on the checkout page
* Filter: ‘woo_vipps_buy_now_button’: Takes HTML for the button, and optionally product id, variation id, sku and if the button is to be shown as disabled by default
* Filter: ‘woo_vipps_show_express_checkout’ – Takes a boolean, returns whether or not to show the express checkout button
* Filter: ‘woo_vipps_show_single_product_buy_now’ – Takes a boolean and a product, returns true if the product should show a ‘buy now with vipps’ button
* Filter: ‘woo_vipps_show_single_product_buy_now_in_loop’ – Like above, but especially for products shown in the loop – catalog pages, archives and so forth
* Filter: ‘woo_vipps_spinner’: takes one argument which is a ‘wait’ spinner for certain pages
* Filter ‘woo_vipps_express_checkout_shipping_rates’ which replaces the ‘woo_vipps_shipping_methods’. It takes a list of shipping methods, and order, and a cart. The format of the shipping methods is an array of ‘rate’ which is a WC_Shipping_Rate object, ‘priority’ which is an integer and the sort-order Vipps will use to display the alternatives, and ‘default’, which is a boolean: This will be the default choice
* Filter: ‘woo_vipps_default_shipping_method’ taking the default shipping method ID, a list of the shipping methods available (as a table from method id to WC_Shipping_Rate object) and the order. Return a shipping rate id, like ‘local_pickup:5’
* Filter: ‘woo_vipps_vipps_formatted_shipping_methods’. This will take an array of the methods to be sent to Vipps, formatted as required by Vipps. This is mostly for debugging.
* Filter: ‘woo_vipps_shipping_callback_packages’: Takes the ‘packages’ from the cart used to calculate shipping in the shipping details callback
* Filter ‘woo_vipps_express_checkout_final_shipping_rate’: Takes an WC_Shipping_Rate object, the order, and the shipping info from Vipps. Must return a WC_Shipping_Rate object which will be added to the order.
* Filter: ‘woo_vipps_country_to_code’: Takes a country code and a country name. Should return a two-letter ISO-3166 country code from a given country name
* Filter: ‘woo_vipps_show_capture_button’: Takes a boolean and an order and returns whether or not to show the capture button in the backend
* Filter: ‘woo_vipps_captured_statuses’: Returns a list of the statuses for which Vipps should try a capture when transitioning to them.
* Filter: ‘woo_vipps_transaction_text’: Takes a transaction text and an order object, must return a text to be passed to Vipps and displayed to the user along the lines of «Please confirm your order»
* Filter: ‘woo_vipps_special_page_template’: Takes a (complete) template path as returned by locate_template and the ID of the Vipps special page, should return a new template path (using locate_template or similar).
* Filter: ‘woo_vipps_order_failed_redirect’: Takes an empty string or an url and an order id. If URL is returned, go there on cancelled or failed orders.
* Filter: ‘woo_vipps_product_supports_express_checkout’: Takes a boolean and a product, returns true if the product can be bought with express checkout
* Filter: ‘woo_vipps_cart_supports_express_checkout’: Takes a boolean and a cart, returns true if the cart can be bought with express checkout
* Filter: ‘woo_vipps_express_checkout_supported_product_types’: Returns a list of product types (as strings) that can be bought with express checkout
* Filter: ‘woo_vipps_orderid’: Takes default Vipps orderid, the order prefix, and an order object. Must return an unique (at Vipps) order ID with 30 chars or less. Default is the prefix + orderid, e.g. ‘Woo364’.
* Action: ‘woo_vipps_shipping_details_callback_order’: Takes an order-id and the corresponding vipps order id. Run at the start of the shipping methods callback.
* Action: ‘woo_vipps_restoring_cart’: Takes an order and a saved cart contents array, ran after the order has failed or is aborted
* Action: ‘woo_vipps_cart_restored’: Runs after the cart has been restored after the order has been aborted of failed
‘ Action: ‘woo_vipps_cart_saved’: When redirecting to Vipps, the cart is saved so it can be restored in case the order isn’t completed. This action is ran after this has happened.
* Action: ‘woo_vipps_before_redirect_to_vipps’: Takes an order-id, called at the end of process_payment right before the redirect to Vipps
* Action: ‘woo_vipps_before_create_express_checkout_order’: Takes the cart to do express checkout for, run before the order is created
* Filter : ‘woo_vipps_create_express_checkout_cart_contents’: Takes a cart contents array from which an express checkout order will be created . Should return a like array.
* Action: ‘woo_vipps_express_checkout_order_created’: Takes an order ID, run right after an express checkout order has been created, but before it is processed’
* Action: ‘woo_vipps_before_process_payment’: Takes an order-id, called at the start of process_payment
* Action: ‘woo_vipps_wait_for_payment_page’: Run on the page shown on return from Vipps
* Action: ‘woo_vipps_express_checkout_page’: Run on the express checkout page, before redirect to Vipp
* Action: ‘woo_vipps_set_order_shipping_details’: Takes an order object, shipping details from Vipps and user details from Vipps. Runs after shipping details have been added to the order on return from express checkout.
* Action: ‘woo_vipps_callback’: Runs when Vipps does the callback on a successful payment, takes Vipps’ data as input. Useful for logging/debugging the callback.
* Action: ‘woo_vipps_express_checkout_get_order_status’: Takes the order status returned by Vipps – called when the Vipps callback hasn’t happened and we need the order status. Useful for logging.
* Action: ‘woo_vipps_vipps_callback’: Is ran when the Vipps callback happen, with the decoded and raw POST from Vipps. Useful for logging.
* Action: ‘woo_vipps_shipping_details_callback’: Is ran when Vipps does the shipping details callback on express checkout. Takes decoded and raw POST from Vipps, and the callback args. For debugging.
* Action: ‘woo_vipps_shipping_details_before_cart_creation’: Run after order is updated but before a cart is created to do shipping calculations. Takes an order, The order-id at Vipps and the callback arguments from Vipps
* Filter: ‘woo_vipps_transaction_text_shop_id’: This is used to identify your shop in the transaction texts sent to Vipps (and shown to the user). Default is home_url(), but there is a length limit, so this filter allows you to keep it short.

Kortkoder

  • [woo_vipps_express_checkout_button] will print the express checkout button if valid
    • [woo_vipps_express_checkout_banner] will print the express checkout banner normally shown on the checkout page for non-logged-in users
    • [woo_vipps_buy_now sku= id= variant=] prints a «buy now» button given a SKU or an (product or variant) id. Just the SKU is sufficient.

Vurderinger

25. oktober, 2024
Må bare skryte litt over nivået på support for denne plug-in’en. Jeg hadde merkelige feil som viste seg å skyldes oppdateringer fra WooCommerce, og fikk laget en egen versjon av Vipps plugin i løpet av en time som løste problemene.
23. april, 2024
Hadde en utfordring med å knytte Vipps som betalingsløsning, og supporten her hjalp med kommunikasjon og feilsøking. Til slutt fungerer det som det skal igjen. Takk for god support og mer enn hva som var forventet, det settes stor pris på, spesielt når utviklerteamet hos Vipps kommer med forslag uten substans. Takk igjen!
18. august, 2020
Utvidelsen fungerer bra og har funksjonaliteten som trenges. Imponert over kvalitet på support!
11. juni, 2020 1 svar
OPPDATERT: Egen plugin for faste betalinger er lansert. Fungerer greit, men mangler støtte for Subscriptions, noe som er standard på de fleste andre betalingsgatewayene.
Les alle 12 vurderinger

Bidragsytere og utviklere

“Betal med Vipps og MobilePay for WooCommerce” er programvare med åpen kildekode. Følgende personer har bidratt til denne utvidelsen.

Bidragsytere

“Betal med Vipps og MobilePay for WooCommerce” har blitt oversatt til 3 språk. Takk til oversetterne for deres bidrag.

Oversett “Betal med Vipps og MobilePay for WooCommerce” til ditt språk.

Interessert i utvikling?

Bla gjennom koden, sjekk ut SVN-repositoriet, eller abonner på utviklingsloggen med RSS.

Endringslogg

2024-10-28 version 3.0.3

Fix issue with orders with zero-value fees
Fix issue with not being able to turn off Klarna in Checkout
Change settings-setup to require country to be selected first

2024-10-14 version 3.0.2

Fix support of Klarna Payments as an external payment method

2024-10-07 version 3.0.1

The Gutenberg Checkout block has changed it’s treatment of the return value of Process Payment, which is now required to be an array (earlier documentation specified a NULL) even in case of errors. This caused problems with Vipps/Mobilpay to get turned into fatal errors; fixed in this version.

2024-09-16 version 3.0.0

In this version, we are introducing an all-new settings screen reached from the Vipps Mobilpay menu. The old settings page will redirect to this. It should look and feel familiar, but we’re going to use this page to hopefully improve the configuraton experience as the features improve and the settings grow more complicated.
We also support the new block-based product editor from this version on.

To be able to do this, we are increasing the required version of WordPress to version 6.2. If you are unable to upgrade wordpress to this version, you can still download versions from the 2.1.x branch on wordpress.org – but we’ll only add essential and security fixes to this branch.

2024-09-10 version 2.1.10

Fix CSS on QR-code page

2024-09-09 version 2.1.9

Handle coupons for Vipps Checkout

2024-08-26 version 2.1.8

Change API to use taxRate instead of taxPercent to allow for VAT change in Finland 1. sep 2024.

2024-08-16 version 2.1.7

Allow Klarna as external payment method in Checkout
Fix issue with session handling that would break shipping in Checkout in Woo 9.2

2024-08-15 version 2.1.6

Stop refunding cancelled orders when they are older than 30 days as a safety measure. This can be changed by the ‘woo_vipps_cancel_refund_days_threshold’ filter.

2024-07-29 version 2.1.5

Fix error handling when receiving callbacks to unknown orders
Fix trying to use Woos logger when woo hasn’t been loaded yet

2024-06-18 version 2.1.4

Fix untranslateable string and a sprintf format string with a bug in it (Thanks Knut Sparhell for reporting)

2024-06-10 version 2.1.3

Fix annoying regression where VippsCheckout would trigger the «Unknown order» branch on the thank you page

2024-06-07 version 2.1.1, 2.1.2

Fix issue where session was not active when computing checkout fields
Fix previous fix for older php versions
Bump required php version to 7.0

2024-06-05 version 2.1.0

Removed support for Instabox in Vipps Checkout Shipping
Added support for external payment methods in some markets
Changed gateway registering to use class name instead of instantiated objects to prevent unintended breakage

2024-05-21 version 2.0.11

Fixed some utranslatable strings and changed MobilePay reservation time notices to 14 days

2024-04-22 version 2.0.10

Added nocache-headers for nginx
Fixed an issue that could delay order confirmations in rare situations
Added a failsafe for certain situations that could destroy sessions in shipping computation

2024-03-25 version 2.0.9

Fixed some places where NOK were hard-coded in as currency.

2024-03-18 version 2.0.8

Create a limit of 10 attempts to capture an order; do not call API after this. The order will be uncapturable. It is possible to reset this by pressing «Get complete transaction details» in the Vipps metabox for the order.
Fix in the logic for deleting webhooks

2024-03-11 version 2.0.7

Minor updates and language

2024-02-19 version 2.0.6

Made sure the filters for the_title on the checkout page works even with too few arguments
Added notice and warning for MobilePay that capture must be done within 14 days

2024-01-25 version 2.0.5

Add workaround for Orderline issue with Checkout
Use translate.wp.org for translations

2024-01-25 version 2.0.3, 2.0.4

Fix default payment status
More protection against issues where settings are wrong and the plugin tries to instantiate webhooks

2024-01-24 version 2.0.1, 2.0.2

Fix bug in uninstall hook and activation hook when settings are wrong in the database

2024-01-23 version 2.0.0

Support MobilePay as a payment method in Finland
Use the Epayment api for all transactions other than Vipps Express Checkout

2024-01-17 version 1.14.21 and 1.14.23

Disable support for order attribution by default – it can be added in the «Advanced» settings. Some sites got crashes due to memory use.

2024-01-16 version 1.14.21 and 1.14.22

Minor fix for 8.5.1 and express checkout

2024-01-15 version 1.14.20

Support Order Attribution in Vipps Checkout and Express Checkout

2023-12-14 version 1.14.19

Support for Mailchimp for WooCommerce, fixed regressions

2023-12-14 version 1.14.18

Debugging information added for situations where an order may be spuriously cancelled
Fix regression error in activate/deactivate actions

2023-12-13 version 1.14.17

Fix for issues with stored admin notices in newer woos, small css fix

2023-11-27 version 1.14.16

Minor fixes, refactoring Checkout support for further features

2023-10-16 version 1.14.15

Stop zeroing out addressline 2 in checkout
Fix polling when sessions are very long-lived in woo

2023-10-06 version 1.14.14

Fix sanitizion of output in Buy-Now button code; thanks to Darius Sveikauskas for reporting

2023-09-18 version 1.14.13

Check that images uploaded to receipts are either jpeg or png

2023-08-22 version 1.14.12

Fix edge cases where orders were wrongly cancelled in Vipps Checkout

2023-08-22 version 1.14.11

More filters/hooks:
do_action(‘woo_vipps_before_thankyou’, $orderid, $order);
Runs before the thankyou page is reached, and can be used to finalize orders created using Checkout or Express Checkout, plus
apply_filters(‘woo_vipps_express_checkout_new_username’, », $email, $userdata, $order);
Which can be used to customize the username for new users created using express checkout or Vipps Checkout.
Supports MailerLite – WooCommerce integration (woo-mailerlite) in Vipps Checkout
Fix crashing bug interaction with the Add-on WooCommerce – MailPoet plugin

2023-07-31 version 1.14.10

Handle the new Thankyou-page behavious in Vipps Checkout too, by adding a new option to register/log in users
Prepare to handle other Checkout flows

2023-07-19 version 1.14.9

Support Free shipping for Porterbuddy in Vipps Checkout
Fix issue with Woo 5.8.x and above where Express Checkout required email confirmation before the thankyou page was shown.

2023-06-22 version 1.14.8

Fix back button on express checkout

2023-06-12 version 1.14.7

Add protection against caches ignoring nocache-headers and rename the «limited session» parameter to something sane.

2023-05-31 version 1.14.6

Ensured admin notices do not crash newer versions of WooCommerce when Vipps is triggered with no current screen

2023.04.25 version 1.14.5

Changed descriptions on Bring shipping methods for Vipps Checkout
Fixed typo which made the «Confirm terms and conditions» screen always appear if started from the Cart

2023.03.16 version 1.14.4

Apparently some setup got called woocommerce_init_shipping more than once, which crashed on the new Checkout shipping methods.

2023.03.16 version 1.14.3

Bugfix for some shipping methods in Vipps Checkout

2023.03.13 version 1.14.2

Ensures that orders that don’t need shipping do not ask for addresses from customers unless you explicitly want to.
Small bugfixes too.

2023.03.06 version 1.14.1

Set require_userInfo to false per default for Elemenor and other users of pre_handle_404
Bugfixes

2023.02.14 version 1.14.0

Support Vipps Checkout version 3 with extended support for shipping methods in Vipps Checkout, allowing for the selection of pickup points and more.
Remove default title on Vipps Checkout page
Added filter to support for extra consent checkbox in Vipps Checkout

2023.02.06 version 1.13.5

Add failsafe for rare bug affecting some external payment method purchases with Klarna Checkout

2023.01.25 version 1.13.4

Remove lookup of orderid based on Vipps-orderid from database to improve speed and remove issues with transients etc.

2023.01.02 version 1.13.3

Workaround for WooCommerce Smart Coupons bug
Let Vipps Checkout handle the WooCommerce endpoints for thankyou etc, for better Elementor compatibility
Support for Pixel Your Site-like mechanisms for Vipps Checkout

2022.12.21 version 1.13.2

Fix for a php8 issue with unset options for the badge feature

2022.12.13 version 1.13.1

Changes required for newer version of epayment-api
Changes in localization for blocks

2022.12.12 version 1.13.0

Added support for HPOS (https://woocommerce.com/document/high-performance-order-storage/)
Added protection from Vipps being ran while WooCommerce is deactivated

2022.11.28 version 1.12.1

Added support for ecommerce-tracking in GAv4 and AdWords for Monster Insights, plus extra support for Express Checkout for Pixel Your Site.

2022.11.21 version 1.12.0

Added support for Vipps On-Site Messaging badges

2022.11.09 version 1.11.7

Fix issue with duplicate order ID’s, but for real this time

2022.11.07 version 1.11.6

Fix issue with duplicate order ID’s

2022.10.24 version 1.11.5

Reorganization of banner code

2022.10.10 version 1.11.4

New option for turning off receipts, better support for tax-free shipping

2022.10.05 version 1.11.3

  • Fix admin javascript bug that kept dismissible banners non-dismissed

2022.09.29 version 1.11.2

  • Fix string concatenation bug crashing php8.x

2022.09.27 version 1.11.1

  • Fix default-setting of new settings; the old method broke on php8.0

2022.09.26 version 1.11.0

  • Improved settings-screen with a tabbed view and organization
  • Filters for shipping options to add pickup-point, brand, description etc for shipping options not supported by standard Woo
  • Adding option for dropping contact and address fields for Vipps Checkout

2022.09.19 version 1.10.3

  • Fix _created_via so it will just say ‘checkout’ to be consistent with other payment gateways
  • Fix transaction text so it does not refer to confirming the transaction; this is better because it is also displayed on order history page

2022.08.26 version 1.10.2

  • Fix typo in version numbers and type of VAT percentage for order management API

2022.08.17 version 1.10.1

  • Small change in Order Management API following changes to shipping handling

2022.07.04 version 1.10.0

  • Added support for the Order Management Api, which stores the receipt and other order information in the customers’ app. See the ‘woo_vipps_add_order_categories’ filter for extending the information passedd.

2022.06.28 version 1.9.3

  • Added compatibility for Dibs/Nets Easy Payment gateway, which made certain untenable assumptionts
  • Fix coupon handling in express checkout – thanks to @kimbertelsen for debugging

2022.06.20 version 1.9.2

  • Make extra double sure we dont get session cookies in callbacks

2022.06.13 version 1.9.1

  • Improve compatibility with shipping modules
  • Fix breakage in Vipps support for the All Products block
  • Change SVG buttons to current elements

2022.05.30 version 1.9.0

  • Support for Vipps QR-api

2022.05.25 version 1.8.22

  • Ensure the Snap Pixel for WooCommerce plugin does not break express checkout by outputting pixels when it shouldn’t. Thanks to @optiflow at wp.org for detailed error reporting.
  • Testing for WP 6.0.0

2022.04.07 version 1.8.21

  • Protect «process_payment» from being called repeatedly when this is not allowed
  • From Johnny Oskarsson:
    • Improve compatibility with headless themes
    • New filters for the data sent in initiate_payment and initiate_checkout, which allows for more control over the return URL which is especially important for headless themes.

2022.04.06 version 1.8.20

  • Ensure alternative browsers work on mobile on Checkout so that «unknown order» does not happen on order return
  • Ensure Vipps transaction references are at least 8 chars long

2022.03.24 version 1.8.19

  • Fix race condition in code that checks order status when callback hasn’t happened

2022.03.22 version 1.8.18

  • Fix name errors in express checkout

2022.03.21 version 1.8.17

  • Handle error case when shipping address is received empty in callbacks

2022.03.14 version 1.8.16

  • Ensure Express Checkout and Checkout session handling still works for logged-in users in newer versions of Woo

2022.03.07 version 1.8.14

  • Change payment method title to Credit Card if this was used on the Vipps Checkout page

2022.03.01 version 1.8.13

  • Typo that accidentally destroyed the Woocommerce endpoints page fixed (thanks to @stivenson2005 at wp.org)

2022.02.28 version 1.8.12

  • Support for Vipps Checkout alternative checkout page

2022.02.09 version 1.7.25

  • Fix in the loading of a file that caused crashes when woocomerce was not active

2022.01.18 version 1.7.24

  • Minor bugfixes

2021.12.20 version 1.7.23

  • Minor bugfixes

2021.12.13 version 1.7.22

  • Support variations where one of the dimensions is ‘any’

2021.11.29 version 1.7.21

  • Accept two-letter country names now being sent by Vipps
  • Ensure Express Checkout orders are handled correctly by WooCommerces’ cancel-unpaid-orders thing
  • When checking Vipps orders stuck in ‘pending’, also cancel them if they don’t exist etc
  • Update the «partial orders» used for Express Checkout so they will work more like normal orders.
  • Change how redirects to Vipps work to avoid having the back-button work badly on Safari

2021.11.22 version 1.7.20

  • Adds a dismissible banner for Vipps Recurring Payments if it has never been installed and WooCommerce Subscriptions is installed.

2021.11.17 version 1.7.19

  • Make sure failed orders get set to ‘pending’ when restarting payment with Vipps

2021.11.15 version 1.7.18

Add support for Woocommerce Subscriptions manual renewals using a filter and a developer setting.
Fix issue where customer was assumed to exist even when doing cron jobs for rescuing dead orders
Add support for testing the callback handler remotely

2021.10.19 version 1.7.17

Fix CSS issue caused by previous version

2021.10.18 version 1.7.16

Support a more explicit, multi-step address selection flow in Express checkout, toggleable in the settings
Small CSS fixes for certain themes

2021.10.05 version 1.7.15

Fix various php8-related bugs

2021.10.04 version 1.7.14

Add extra supports for plugins like Yith WooCommerce Name Your Price and move compatibility hacks into a separate file
Support non-standard pretty permalinks by stopping redirect_canonical after a special page has been requested.

2021.09.13 version 1.7.13

Ensure refunds of 0 NOK are not handled by Vipps

2021.08.23 version 1.7.12

The cron job that checks the status of abandoned orders have since 1.7.10 restored these orders’ session to check the status as correctly as possible.
It seems this may ruin the session of other active users however, and we can’t have that, so now the status is checked without restoring the session.

2021.08.09 version 1.7.11

Updating for latest versions of WP and Woo

2021.06.22 version 1.7.10

Added a fail safe for situations where the Vipps callback fails and the customer does not return to the store

2021.06.14 version 1.7.9

Tiny change in «No shipping required» setup

2021.05.18 version 1.7.8

Fix error-handling when creating new customers in express checkout

2021.05.18 version 1.7.7

Fix integration with Klarna Checkout so Vipps can be disabled as external payment method when appropriate

2021.04.19 version 1.7.6

Version bump for new version of WooCommerce and Blocks

2021.03.29 version 1.7.5

Increase priority of handling special pages to avoid 404-handlers in themes and plugins to handle them first

2021.03.24 version 1.7.4

Fix the undismissable banner issue by ensuring browsers won’t have cached the admin javascript

2021.03.22 version 1.7.3

Remainder that the Login with Vipps plugin exists

2021.03.15 version 1.7.2

Fixes javascript problem on express checkout screen that could be caused by plugin interactions

2021.03.01 version 1.7.1

Compatibility with Woo 5.0.0 and WP 5.7.0

2021.01.25 version 1.7.0

Stop using the deprecated payment status interface. This is a quite large rewrite that should be invisible to uses.

2021.01.18 version 1.6.9

Bugfixes for user creation in express checkout

2021.01.05 version 1.6.8

Bugfix for Gutenberg blocks

2020.12.22 version 1.6.7

Bugfix for user login in express checkout

2020.12.18 version 1.6.6

Bugfix for Woo gutenberg blocks (other than all products)

2020.12.14 version 1.6.5

Login and user creation synchronized better with Login with Vipps
Tested on newest versions

2020.11.25 version 1.6.4

More sanitation added

2020.11.24 version 1.6.3

Updated WP/Woo versions

2020.11.16 version 1.6.2

Bugs fixed: undefined variable removed (thanks to kimmenbert @ github for reporting)
Correct version of the plugin reported to the Vipps-api
Ensure all products are in stock when using Express Checkout (thanks to lykkelig @ wp.org for reporting)

2020.11.02 version 1.6.1

Bugs fixed: WPML support reenabled thanks to a bug report by @kodeks, user creation improved thanks to @henmor

2020.10.19 version 1.6.0

Integrate with Login with Vipps and provide again the «create users when using express checkout» checkbox. If you choose too, this will then create (and log in) users when using express checkout.
Only users without privileges will be logged in like that. If you install Login with Vipps, this will be set as the default choice.

2020.10.05 version 1.5.2

Fixed deletion of cancelled orders; thanks to @alarsen2 for reporting

2020.09.28 version 1.5.1

Fixed issue with payment_complete not being called. Thanks to espen @ nhg for reporting and debugging

2020.09.14 version 1.5.0

Added support for WooCommerce Gutenberg Blocks: the Checkout block, the All Products blocks and other product blocks.

2020.07.29 version 1.4.11

Added the WOOCOMMERCE_CHECKOUT constant to create_partial_order, because some plugins act differently on checkout and on normal page views.
Improved compatibility with KCO external payments

2020.07.01 version 1.4.10

Added yet another call to calculate_totals on the cart after the woocommerce_cart_loaded_from_session action

2020.07.01 version 1.4.9

Fixed a bug in the session-restore code for Express Checkout that could affect pricing of shipping
Added a do-action call to ‘woocommerce_cart_loaded_from_session’ in callbacks to allow dynamic pricing plugins to run their code

2020.06.29 version 1.4.8

  • Fixed a bug in express checkout shipping calculations where cart totals could be wrong
  • Changed license from AGPLv3 (http://www.gnu.org/licenses/agpl-3.0.html) to MIT (https://choosealicense.com/licenses/mit/)
  • Added filter to remove Vipps as option in Klarna Checkout, and added a check for unsupported carts.
  • Added filter ‘woo_vipps_payment_return_url’ to allow plugins to add extra arguments to return URL
  • Changed display logic of WooCommerce status messages on Express Checkout screen to allow themes that rewrite these to not show error messages when they don’t apply

2020.05.25 version 1.4.7

  • Support themes that use their own templating-mechanism by allowing the use of a real page ID to handle the Vipps special pages
  • Improve the race-condition avoidance code, and make it possible to implement real locking for systems that support it (open the developer settings to enable)
  • If Klarna Checkout uses Vipps as external payment gateway, ensure that Klarna Checkout is still the default payment method afterwards
  • Change order prefix to contain the sitename of the store if possible to aid with support

2020.04.27 version 1.4.6

  • More robustness and checks in callbacks

2020.04.27 version 1.4.5

  • Changed all uses of «WC_Cart» to use the main WC-cart
  • Changed the shipping callback to use the real cart from the Session; with no «temporary» cart created from the order
  • Changed cart saving and restoring for single product express checkout to use PHP serialization
  • Experimentally support the ‘bundle’ product type of WooCommerce Product Bundles

2020.04.06 version 1.4.4

  • Changed freight calculation to ensure plugins that override the WC_Cart’s class will continue working.
  • Changed handling of signal file cleanup and deletion of cancelled express checkout orders to wp-cron to avoid problems on sites with heavy load

2020.03.23 version 1.4.3

  • Added support for Klarna Checkout based on the code provided by Krokedil at https://github.com/krokedil/klarna-checkout-vipps-external-payment-method
  • Added support for static shipping: Much quicker express checkout if your shipping method don’t depend on the customers address (or if your customers are logged in.) This precalculates the shipping options before sending the user to Vipps, but be aware: All the options must be static (like fixed price and so forth).

2020.03.03 version 1.4.2

  • Tiny change to avoid logging non-errors if no shipping method has been chosen at all

2020.02.25 version 1.4.1

  • Bugfix: The template chooser mechanism caused WP_DEBUG to print out error messages if the option wasn’t set.

2020.02.24 version 1.4.0

  • Properly round prices with wc_format_decimal (Thanks to Shattique @ netthandlesgruppen for reporting)
  • Ensure ‘spinner’ on page forwarding to Vipps is centered
  • New option in settings: Override the page template used for the Vipps special pages (choose ‘full width’ and so forth here.)
  • New shipping handling of shipping callbacks in Express Checkout makes shipping methods using meta data work – that is, all shipping methods that have added meta data for for instance integration with transport companies and so forth.t
  • DEPRECATION: The filter ‘woo_vipps_shipping_methods’ is deprecated as of version 1.4.0. If you use it, it will continue to work as before, but it will disable the new Express Checkout Shipping mechanism, and thus will not support metadata in the shipping methods; which certain shipping methods need – in particular those with integration with other services. A notice will be printed on the admin screen, and an option will be shown in the settings that will allow you to silence this warning (and then everything will work as before) or to disable this filter if you prefer to use the new method.
  • New filter ‘woo_vipps_express_checkout_shipping_rates’ which replaces the filter above, taking the same arguments (a list of shipping methods, and order, and a cart). The format of the shipping methods is however different: They will consist of an array of ‘rate’ which is a WC_Shipping_Rate object, ‘priority’ which is an integer and the sort-order Vipps will use to display the alternatives, and ‘default’, which is a boolean: This will be the default choice
  • New filter ‘woo_vipps_default_shipping_method’ taking the default shipping method ID, a list of the shipping methods available (as a table from method id to WC_Shipping_Rate object) and the order. Return a shipping rate id, like ‘local_pickup:5’.
  • New filter ‘woo_vipps_vipps_formatted_shipping_methods’. This will take an array of the methods to be sent to Vipps, formatted as required by Vipps. This is mostly for debugging.
  • DEPRECATION: the filter ‘woo_vipps_express_checkout_shipping_rate’ will only be applied if you use the old method of doing shipping for express checkout; thus you will have to have overridden the ‘woo_vipps_shipping_methods’ filter too. This is replaced by the filter ‘woo_vipps_express_checkout_final_shipping_rate’, which takes an WC_Shipping_Rate object, the order and the shipping info from Vipps and must return a WC_Shipping_Rate object.
  • Replace use of file_get_contents with the WP http api methods, thus there is no longer any requirement for having allow_url_fopen true

2020.02.07 version 1.3.7

  • Improved error-handling in validate-express-checkout; thanks to lykkelig @wp.org

2020.02.03 version 1.3.6

  • Added protection for repeat orders from customers who don’t get enough feedback that their order is complete
  • Added terms-and-conditions checkbox to the interstitial screen on Vipps Express Checkout
  • Added filters and hooks to facilitate validation of an express checkout order
  • Fixed fee calculations for carts in express checkout (thanks to Shattique @ netthandelsgruppen for reporting & fixing)

2020.01.22 version 1.3.5

  • Tested up to version 3.9.0 of WooCommerce and 5.3.2 of WP

2018.06

Initial version – changelog truncated