The project I'm working on needs to be powered solely by external power source (e.g. USB power bank and/or batteries) since it will be situated in remote areas. For this occasion, I've bought 3.7V 450mAh Li-ion battery and 3 x AAA battery holder, both with 2-pin JST connector as required by the MKR1000.
The polarity of JST connector on Li-ion battery & battery holder is correct but it doesn't make any difference. Arduino will only work on USB power and appears dead when switched to external power source.
What am I doing wrong? Nevertheless, the inside of the GND pin on the MKR1000 JST pin
If its rusted or corroded that can cause a huge problem. Make sure your connections are clean, if they are test your battery voltage with a voltmeter. If your battery is charged connect the battery to your board and try and test for voltage across where the connecter is exposed a little bit but be carful not to short your battery.
The supported battery for your board is Li-Po single cell, 3.7V, 700mAh minimum. See "Tech Specs" at https://store.arduino.cc/arduino-mkr1000-wifi
You need to meet the 700mAh minimum current requirement.