I found that some gamers don't know that they can get refund their pre-order. This website create tutorial to get refund:
https://gamingintel.com/battlefield-2042-how-to-cancel-pre-order-refund/
Steam
Log in to the Steam application.
- Click View, Settings.
- Select Account, then View Account Details.
- In View Purchase History, find Battlefield 2042.
- Here, you can select to request a refund.
Origin
- Log in to EA‘s website.
- Select Account Settings in the top right corner.
- Click on Order History.
- Find Battlefield 2042 and click Cancel Order.
- If this option does not appear, head to EA’s Contact Us page, and use the support chat to request a pre-order cancelation.
Xbox One / Xbox Series X/S
Xbox, go to your account purchase history and click "cancel" for your order. Info from GotItFromEbay
Other method:
- Head to the Xbox Support website.
- Select Billing as your issue.
- Click on Choose a Contact Method and then Chat With Xbox Support.
- Enter your details and request a refund from the representative.
PS4 / PS5
- Head to the PlayStation website and select Support.
- In the Contact Support page, select PS Store & Refunds.
- From the options, choose About PS Store Refunds.
- Then, use the Refund Assistant to Request a Refund on Battlefield 2042.