Hi SadafAfzal,
I just found the issue.
First of all, the Fulfillment sync back to Shopify does not happen automatically. We need to run a report with ID30109 inside BC's "Job Queue Entries". This Report post all Sales Shipments related to the Order back to Shopify.
However, when the report runs, there is no error handling so despite the results show 'successful' there were nothing posted. If you have Developer license, you can use the debug mode and run the code line by line to see what's wrong. In our case, the fulfillment errored on Shopify due to 'no stock in location' because the shipment location mapping was incorrect. After the location is fixed the fulfillment was synced properly.
Hope this helps.
Ginger