Cancellation of agreement in GST

An advance is received
by a supplier for a
Service contract which
got cancelled
subsequently. The
supplier has issued
receipt voucher and
paid the GST on such
advance received.
Whether he can claim
refund of tax paid on
advance or he is
required to adjust his
tax liability in his
returns?

In case GST is paid by the supplier on advances received for
an event which got cancelled subsequently and for which no
invoice has been issued in terms of section 31 (2) of the
CGST Act, he is required to issue a “refund voucher” in
terms of section 31 (3) (e) of the CGST Act read with rule
51 of the CGST Rules.
The taxpayer can apply for refund of GST paid on such
advances by filing FORM GST RFD-01 under the category
“Refund of excess payment of tax”

This is as per Circular No. 137/07/2020-GST

Now my question is it mandatory for supplier to claim refund in this case or he can adjust the advances in next month or subsequent tax period whichever is earlier. Also is there any time line to issue refund voucher in case of cancellation of agreement and subsequent issuance of refund voucher just like there is time line of issuance of credit note as per GST law? There may be a case where the service contract is for 2-3 years and advances are received monthly but just before the completion of the agreement the supply is cancelled. This gets tricky as the gstr-9 has already been filed for 2 years and the agreement got cancelled in third year . Kindly suggest the right way here