<?php
namespace Opg\Lpa\DataModel\Lpa\Payment;

use Opg\Lpa\DataModel\Lpa\Lpa;

class Calculator
{
    const STANDARD_FEE = 110;

    /**
     * Calculate LPA payment amount
     *
     * @param Lpa $lpa
     * @return NULL|Payment
     */
    static public function calculate(Lpa $lpa)
    {
        if(!($lpa->payment instanceof Payment)) return null;

        $isRepeatApplication = ($lpa->repeatCaseNumber != null);

        if(($lpa->payment->reducedFeeReceivesBenefits) && ($lpa->payment->reducedFeeAwardedDamages)) {

            $amount = self::getBenefitsFee();

        } else {

            if($lpa->payment->reducedFeeUniversalCredit) {
                $amount = null;
            }
            elseif($lpa->payment->reducedFeeLowIncome) {
                $amount = self::getLowIncomeFee( $isRepeatApplication );
            }
            else {
                $amount = self::getFullFee( $isRepeatApplication );
            }

        }

        $lpa->payment->amount = $amount;

        return $lpa->payment;
    }

    public static function getFullFee( $isRepeatApplication = false ){

        $denominator = ($isRepeatApplication) ? 2 : 1;

        return (float) self::STANDARD_FEE / $denominator;

    }

    public static function getLowIncomeFee( $isRepeatApplication = false ){

        return (float) self::getFullFee( $isRepeatApplication ) / 2;

    }

    public static function getBenefitsFee(){

        return (float)0;

    }

}

<?php
namespace Opg\Lpa\DataModel\Lpa\Payment;

use Opg\Lpa\DataModel\Lpa\Lpa;

class Calculator
{
    const STANDARD_FEE = 82;

    /**
     * Calculate LPA payment amount
     *
     * @param Lpa $lpa
     * @return NULL|Payment
     */
    public static function calculate(Lpa $lpa)
    {
        if (!$lpa->payment instanceof Payment) {
            return null;
        }

        if ($lpa->payment->reducedFeeReceivesBenefits && $lpa->payment->reducedFeeAwardedDamages) {
            $amount = self::getBenefitsFee();
        } else {
            $isRepeatApplication = ($lpa->repeatCaseNumber != null);

            if ($lpa->payment->reducedFeeUniversalCredit) {
                $amount = null;
            } elseif ($lpa->payment->reducedFeeLowIncome) {
                $amount = self::getLowIncomeFee($isRepeatApplication);
            } else {
                $amount = self::getFullFee($isRepeatApplication);
            }
        }

        $lpa->payment->amount = $amount;

        return $lpa->payment;
    }

    public static function getFullFee($isRepeatApplication = false)
    {
        $fee = self::STANDARD_FEE / ($isRepeatApplication ? 2 : 1);

        return (float) $fee;
    }

    public static function getLowIncomeFee($isRepeatApplication = false)
    {
        return (float) self::getFullFee($isRepeatApplication) / 2;
    }

    public static function getBenefitsFee()
    {
        return (float) 0;
    }
}

Adjust LPA cost from 110 GBP to 82 GBP
Adjust LPA cost from 110 GBP to 82 GBP
