Query Require for Opening and Closing
First of all, your Rec_Amount columns should be changed from varchar to something numerical like float.
Secondly, i think you wrote the wrong range in this sentence so i don't understand what you mean here.

if Date is giving from 12-06-2020 to 12-06-2020 ,then opening will be 09-03-2020 balance 10500

I believe this query gives the desired output:
SELECT q.Customer_ID, q.E_Date, q.Payable, q.Received, q.Balance
FROM
(SELECT Customer_ID, E_Date, Payable, Received, SUM(CAST(ISNULL(Payable, 0) AS float)-CAST(ISNULL(Received, 0) AS float)) OVER(PARTITION BY Customer_ID ORDER BY E_Date) AS Balance
FROM
(SELECT s.Customer_ID, s.E_Date, s.Rec_Amount, s.Inv_type
FROM #tbl_Shop_InvM s 
UNION ALL 
SELECT r.Customer_ID, r.Rec_Date, r.Rec_Amount, r.Inv_type
FROM #tbl_Receivable r) AS a 
PIVOT
(MAX(Rec_Amount)
FOR Inv_type IN ([Payable],[Received])) AS p) AS q

/*Set date range */
--WHERE q.E_Date BETWEEN '2020-03-07' AND '2020-03-11'

Output: