Question

I want to delete the coupon code programmatically. My code is:

$cart = $this->quoteRepository->getActive($cartId);

  if(isset($response_json['errorMessage']) || $json_response['status']['statusCode'] == 0){
    $cart->setCouponCode('');
    $cart->collectTotals()->save();
    $this->logger->debug("test");
  }

I see the "test" in my debug. But the Coupon code not removed. Can someone help me?

Thank you in advance!

Was it helpful?

Solution

You can do it like below.

if(isset($response_json['errorMessage']) || $json_response['status']['statusCode'] == 0){
    $cart->setCouponCode('');
    $this->quoteRepository->save($cart->collectTotals());
    $this->logger->debug("test");
}

OTHER TIPS

I suggest another way. Go to your xml file and put this code at before body tag close

<referenceBlock name="block_name" remove="true"/>
Licensed under: CC-BY-SA with attribution
Not affiliated with magento.stackexchange
scroll top