Доступ собственный банковский счет с помощью самозаписанного приложения

Я использовал Деньги MS за несколько лет теперь и из-за моего "интереса кодирования", было бы замечательно знать, где начать изучать основы для программирования такого приложения. Лучше сказать: не о том, как разработать и записать приложение, о "банковских реквизитах". (Просто отображение количества определенного банковского счета в течение начала было бы приятной целью на меня.).

Я хотел бы сделать это в C++ или Java, так как я привык к этим языкам.

Это будет "слишком большим" для проекта хобби? Я не знаю много обо всех проблемах безопасности, интерфейсах/технике сервера банка, и т.д.

В первом месте после "нет" мне нужен надежный источник для изучения.

7
задан Bill the Lizard 13 January 2013 в 15:16
поделиться

6 ответов

Большинство приложений, с которыми я работал, читаются в файле, экспортированном с веб-сайта банка, что относительно просто.

Если вы хотите пойти по этому пути, вам нужно написать код для:

  • Войдите на сайт банка, чтобы загрузить файл через HTTPS.
  • Либо получите спецификации для формата файла, либо перепроектируйте it
  • Примените любые бизнес-правила, которые вы выберете, к полученным данным
9
ответ дан 6 December 2019 в 19:32
поделиться

Я думаю, что это вполне разумный проект для хобби; начните с простой бухгалтерской книги, а затем вы сможете добавлять функции.

Несколько вещей, которые я бы сделал, чтобы начать такой проект:

  • Определитесь с начальным набором функций. Хорошим началом может быть только одна из бухгалтерских книг/счетов - по сути, балансирование чековой книжки. Сделайте его достаточно общим, чтобы можно было иметь несколько.
  • Разработайте модель данных. Какие поля будут у вашей бухгалтерской книги? Какие ограничения на значения каждого из них?
  • Выберите технологии. На каком языке вы хотите программировать? Как вы будете сохранять данные? Какой графический интерфейс вы хотите - толстый клиент, как MS money, или веб-приложение?

Отсюда, если необходимо, напишите несколько заметок по дизайну и начинайте кодить!

1
ответ дан 6 December 2019 в 19:32
поделиться

Вы можете изучить OFX4J , реализацию Спецификация Open Financial Exchange , упомянутая здесь и в комментарии @nicerobot.

1
ответ дан 6 December 2019 в 19:32
поделиться

Вы ищете что-то mint.com -искреннее? Насколько я понимаю их политику безопасности, они это делают следующим образом: вы даете им учетные данные своей онлайн-учетной записи, которые они немедленно передают в банк, и получаете обратно вход в учетную запись «только для чтения». Затем они выбрасывают предоставленные вами учетные данные и используют учетные данные «только для чтения» для обновления ваших показателей каждые 24 часа. Я не знаю, как они это делают и есть ли у них особые отношения с банками, но это возможно.

1
ответ дан 6 December 2019 в 19:32
поделиться

Первое, что следует помнить при попытке программного взаимодействия с банковским веб-сайтом без явного письменного разрешения банка, СОВЕРШЕННО ВЕРОЯТНО будет нарушением соглашения об использовании веб-сайта и может привести к еще большим неприятностям. чем это стоит.

Во-вторых, вы НЕ хотите начинать «изучать» программирование, пытаясь заняться чем-то настолько масштабным и деликатным. Не то чтобы с конечной целью что-то не так, но это путь в тысячу лиг, и вам нужно сделать свой первый шаг.

Я бы посоветовал начать с простой среды программирования, такой как python или perl. Причина, вам не нужно беспокоиться о компоновке, библиотеках, генерации кода и т. Д. Привыкайте к основам того, чего вы хотите достичь функционально, их повторная реализация на C ++ или Java будет следующим шагом.

Для начала сосредоточимся на изучении клиент-серверного программирования.

Напишите клиент, напишите сервер, узнайте все о сокетах, узнайте все о программировании TCP,

затем узнайте о безопасных уровнях сокетов (SSL) и безопасности транспортного уровня (TLS).

Как только вы это сделаете, попробуйте переключиться на C ++ или Java и посмотрите, сможете ли вы повторить эффект.

Есть ТОННЫ обучающих программ по этим темам.

Когда вы привыкнете к этому, узнайте, какие инструменты и библиотеки уже доступны для выполнения наиболее распространенных задач. Например, libcurl отлично подходит для создания клиентов с общими протоколами интернет-приложений (HTTP, HTTPS, FTP и т. Д.).

Посмотрите, сможете ли вы создать интерактивную программу, в которую можно «войти», используя свой веб-браузер, который выводит данные в XML и форматирует их с помощью каскадных таблиц стилей.

Это должно привести вас в мир javascript, где есть мощные инструменты, такие как jquery. Если вы правильно их смешаете и сопоставите, вы обнаружите, что разработка может быть ОЧЕНЬ увлекательной и довольно быстрой.

: -)

Счастливого пути.

1
ответ дан 6 December 2019 в 19:32
поделиться

Я не думаю, что многие (если есть) банки предоставляют api.

Сетевые бюджетные приложения в Швеции, похоже, полагаются либо на экспорт транзакций в каком-либо формате Excel, либо просто вы " отметили все транзакции в банковской системе, ctrl-c, затем ctrl-v в текстовом поле " , который затем анализирует.

0
ответ дан 6 December 2019 в 19:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: