Below examples are copy/paste from my functional network. I have Samba shares on a Synology NAS and a Samba share on a system running Manjaro.
Create a file with your credentials as e.g.
/etc/samba/credentials/smb.cred
username=
password=
Mount unit in /etc/systemd/system/a-nas-xshard.mount
Do not use dashes (-) in your mountpoint path as dashes is used by systemd to denote path separator (/).
[Unit]
Description=X-Shard share on NAS
[Mount]
What=//192.168.1.32/X-Shard
Where=/a/nas/xshard
Type=cifs
Options=_netdev,iocharset=utf8,rw,file_mode=0777,dir_mode=0777,credentials=/etc/samba/credentials/smb.cred,vers=2
TimeoutSec=30
[Install]
WantedBy=multi-user.target
sudo systemctl start a-nas-xshard.mount
The mount point is created (root read/write) if it does not exist. You need to set the permissions for the mountpoint to allow write for other users than root. Permissions to read write to a share is set on the client not the server (unless you are running a complicated active directory setup) - samba only case about access/no access - in case of access read-write or read-only.
sudo chmod ugo+rw /a/nas/xshard
Verify the content of the mountpoint.
ls /a/nas/xshard
If you are sure the NAS is always available and the computer never leaves the network - you can enable the mount unit to be executed at start.
If hovwer - your nas is not available on boot e.g. a laptop which may be away from home - you should not enable the mount unit.
Instead you create a unit to activate your mount unit when you access the mountpoint.
This unit type is called an automount unit.
Automount unit /etc/systemd/system/a-nas-xshard.automount
[Unit]
Description=X-Shard share on NAS
[Automount]
Where=/a/nas/xshard
TimeoutIdleSec=20
[Install]
WantedBy=multi-user.target
Then ensure the mount unit is disabled (automount will fail if mount is enabled) - and enable/start the automount unit.
sudo systemctl disable --now a-nas-xshard.mount
sudo systemctl enable --now a-nas-xshard.automount