(1) An action for breach of any contract for sale must be commenced within four years after the cause of action has accrued. By the original agreement the parties may reduce the period of limitation to not less than one year but may not extend it.
(2) A cause of action accrues when the breach occurs, regardless of the aggrieved party's lack of knowledge of the breach. A breach of warranty occurs when tender of delivery is made, except that where a warranty explicitly extends to future performance of the goods and discovery of the breach must await the time of such performance the cause of action accrues when the breach is or should have been discovered.
(3) Where an action commenced within the time limited by subsection (1) is so terminated as to leave available a remedy by another action for the same breach such other action may be commenced after the expiration of the time limited and within six months after the termination of the first action unless the termination resulted from voluntary discontinuance or from dismissal for failure or neglect to prosecute.
(4) This section does not alter the law on tolling of the statute of limitations, nor does it apply to causes of action which have accrued before this chapter becomes effective.
The limitations in this section do not apply to actions for the breach of any contract for sale of a grain storage structure or other goods that are incorporated into an improvement to real property, except equipment and machinery. These actions are subject only to the statute of limitations set forth in section 541.051.
This section does not apply to claims against sellers of goods for damages to property caused by the goods where the property that is damaged is not the goods and the sale is not a sale between parties who are each merchants in goods of the kind.