Prinzipiell sind die Indys nicht verkehrt, wie das Beispiel von mjustin zeigt
Es gibt auch Alternativen, mit der Forumssuche wirst Du einige weitere Beispiele zu den
Indy und Alternativen (SecureBlackBox, SecureBridge etc.) finden können. SSL benötigt bei
Indy halt zwei externe openSSL DLLs. Wininet kenne ich nicht, die Bordmittel von XE2 habe ich nicht mehr auf dem Schirm.
Generell sollte gelten: POSTs mit Benutzernamen und Kennwort nicht über HTTP, sondern über HTTPS (also SSL).
Zu den Anmeldedaten wird auf dem Client irgendwas gespeichert sein bzw. jedes Mal abgefragt werden: ein Token (OAuth, JWT), von dem der Shop bestimmt, wann es abläuft; Benutzername und Kennwort zum Anfordern eines Cookies oder Tokens; oder (ggf. aufwändiger) Client Zertifikate, etc.
Zugangsdaten auf dem Client immer verschlüsselt speichern, Kennwörter eigentlich als Hash, aber da Du das Kennwort wahrscheinlich im Klartext an den Webshop senden musst, wohl mit (AES-) Verschlüsselung auf dem Client speichern.