Я занимался многими API обработки кредитных карт, и если это не API для решения шлюза, у них обычно нет методов, которые могли бы многое сделать для запроса информации. Вы можете увидеть некоторые возможности (опять же, в API шлюза, но не в API-интерфейсе более низкого уровня) для загрузки деталей исходной транзакции, но не более того.
Это имеет смысл с точки зрения поддержки транзакций большого объема. Однажды я посетил FDMS и немного поговорил с ними об их архитектуре. Чтобы поддерживать возможности обработки> 1k TPS, они даже не могут ждать записи базы данных при авторизации. Этот код авторизации, который вы возвращаете, назначается из предопределенного пула. Данные о транзакции переносятся на другой процесс для сохранения большой задней системы для последующего расчета. Вот почему многие из не-шлюзов имеют правила о ожидании x минут, прежде чем пытаться урегулировать; данные не находятся в системе расчетов немного после авторизации. Это также причина, по которой срок действия кода авторизации истекает через некоторое время - они повторно используют его. (Кто-то получил яркую идею о том, что они будут взимать дополнительную плату за истечение срока действия кода auth ..... вероятно, из-за увеличения загрузки данных, которые они должны хранить в системе расчетов, ожидая, когда эти вещи перейдут в тайм-аут.)
Проверка кредитного баланса также не является частью обычного процесса обработки кредитных карт. В основном вы пытаетесь разрешить и получить один из трех результатов: жесткий спад, мягкое снижение или авторизация. Проверка баланса действительно не нужна и, вероятно, откроет некоторые проблемы конфиденциальности или безопасности, если они будут доступны.
Кассовые карты (например, предварительно загруженные визы) используют различные административные интерфейсы управления и управления. Подарочные карты работают одинаково, и вы можете использовать этот административный API для получения балансов. Это особый случай, потому что это технически не кредитные карты.
Я не очень много разбираюсь в сетях расчетов на заднем конце, которые банки-эмитенты и банки-эквайеры используют для передачи данных во время расчетов. Чтобы получить такую информацию, вам придется иметь доступ к этой сети. Возможно, вы захотите проверить, что оператор «любой денежный терминал даст вам баланс» немного. Было бы разумно, что вы могли бы получить свой баланс от банкомата банка-эмитента, но попытайтесь сделать это на одной из тех машин сторонних производителей, которые вы найдете на заправочных станциях, которые не принадлежат вашему банку-эмитенту, чтобы убедиться, что он работает. Если вы используете настоящую кредитную карту (а не дебетовую карту - это совсем другая сеть), я не знаю, что она покажет вам ваш баланс.
+1. Тот факт, что этот вопрос даже был задан, пугает меня до полусмерти. Сети банкоматов высококвалифицированы по очень хорошим/очевидным причинам. – nickhar