• Priser som dette er litt un?dvendige ? vise og bruke:

    Butikkens innstilling er satt til at man legger inn priser eksl. mva, visninger inkl. mva. I ‘Bring Fraktguiden for WooCommerce’ er nettopris valgt (avtalepris).

    Kunne nok gjort seg med en innstilling for avrunding i utvidelsens innstillinger, hvor nok n?rmeste heltal ville v?rt det mest popul?re, men kan sikkert v?re greit ? ogs? ha valg for n?rmeste 25/50 ?re.

    *Og nei, ? sl? av desimaler globalt i butikkene er ikke et alternativ, siden en hel del betalingsutvidelser krever desimaler(?), og faktisk ogs? i enkelte tilfeller bruker desimaler for frakt uansett(?).

Viewing 2 replies - 1 through 2 (of 2 total)
  • Plugin Author Eivin Landa

    (@forsvunnet)

    Hei Rune,

    Vi anbefaler ? sl? av desimaler globalt da dette gir mest p?litelig resultat. Jeg kl?r meg litt i hodet over hvorfor betalingsutvidelser krever desimaler da prisene i woocommerce fremdeles inneholder desimaler, det er kun visningen av priser i front-end som blir avrundet.

    Alternativt er det mulig ? lage et filter p? fraktmetodene som avrunder prisene.

    F.eks. (kode generert fra chatgpt):

    <?php
    add_filter('woocommerce_package_rates', function ($rates, $package) {
    foreach ($rates as $rate) {
    $price = $rate->cost;

    if (!wc_tax_enabled()) {
    // No taxes enabled, simply round the price
    $rate->cost = round($price);
    continue;
    }


    $tax_display_mode = get_option('woocommerce_tax_display_cart');
    $taxes = array_sum($rate->taxes);

    if ($tax_display_mode === 'incl') {
    // Prices are displayed including tax
    $price_incl_tax = $price + $taxes;
    $rounded_price_incl_tax = round($price_incl_tax);
    $rate->cost = round($rounded_price_incl_tax / (1 + ($taxes / $price_incl_tax)), 2);

    // Update taxes proportionally
    $rate->taxes = array_map(function ($tax) use ($taxes, $rounded_price_incl_tax, $price_incl_tax) {
    return (($tax / $taxes) * ($rounded_price_incl_tax - ($rounded_price_incl_tax / (1 + ($taxes / $price_incl_tax)))));
    }, $rate->taxes);
    continue;
    }
    // Prices are displayed excluding tax
    $rate->cost = round($price);
    // Recalculate taxes after rounding
    $rate->taxes = WC_Tax::calc_shipping_tax($rate->cost, $rate->taxes);
    }

    return $rates;
    }, 10, 2);
    Thread Starter Rune Rasmussen

    (@syntaxerrorno)

    Det med mest p?litelig er nok litt relativt, og i forhold til betalingsutvidelser s? handler det vel om momsberegning og m?ten som Woo h?ndterer dette p? i sine kalkulasjoner (og visninger), at man tar den enkle utveien istedenfor ? tilpasse seg Woos logikk i egen kalkulering av dette (hva som vises i butikk m? samsvare p? betaling og ogs? stemme ved riktig momskalkulasjon). Man kan vel stort sett se p? de fleste Checkout-betalingsutvidelsene m.m. at de krever desimaler.

    Uansett, hvorfor det er slik osv. er ikke s? viktig, det nytter heller ikke ? diskutere s? mye med dem, man m? bare tilpasse seg dem s? lenge det er slik. Og det skulle jo v?re en relativt enkel ting ? gj?re i ‘Bring Fraktguiden for WooCommerce’, legge til et valg for dette, som ogs? gj?res hos dere ?konkurrent? mener jeg.

    Takk for forslag om filterl?sning, men enklere for alle deres brukere om det er et valg i utvidelsen deres, mer positivt for dere.

Viewing 2 replies - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.