Местный bitcoind будет гораздо лучшей идеей. Зачем вводить внешнюю точку отказа вы не имеете никакого контроля над?
Если вы можете дать более подробную информацию на сайте (язык?), Что помогло бы.
Из того, что я вижу, ваш искать для JSON-RPC API, снабженного bitcoind (версия демона из Satoshi клиента).
Обратите внимание, это потребует возможность выполнить программу в производственной среде (иначе, а не виртуальный хостинг плана) и иметь достаточно места для хранения всего blockchain, а также достаточно мощный центральный процессор, чтобы проверить blockchain своевременно (это это не так важно). Также обрати внимание, что любой Bitcoins, хранящийся на сайте, является уязвимым для писак! Лучше всего, чтобы отправить их в холодильниках, если они не обязаны быть на месте (даже тогда, задержка withdrawl гораздо лучше, чем не withdrawl). Пожалуйста, не хранить большое количество пользователей монет в горячем бумажнике, я не могу подчеркнуть это достаточно! Это то же самое для blockchain.info метода API, где пароль / закрытый ключ хранится на интернет-машине.
В любом случае, RPC API называет ваш искать:
Создание нового бумажника
RPC: 'getnewaddress' 'пользователь-01234'
Возвращает: '1YourUsersDepositAddress'
Получение адреса учетной записи:
RPC: 'getaddressesbyaccount' 'пользователь-01234'
Возвращает: [
'1YourUsersDepositAddress11111',
'1YourUsersDepositAddress22222'
]
Проверка баланса кошелька
RPC: 'getbalance' 'пользователь-01234'
Возвращает: 0.00000000
Попадая операции (для отображения неподтверждаемой сделок)
RPC: 'listtransactions' 'пользователь-01234' <предел> <смещение>
Возвращает: {
"Счет" : "пользователь-01234",
"адрес" : "1YourUsersDepositAddress",
"категория" : "Получать",
"количество" : 0.01234567,
"подтверждения" : 13172,
"blockhash" : "000000000000002217950f22b11d8c3f6c957b29a764173c7a7562036f2aa17b",
"blockindex" : 93,
"blocktime" : 1378290684,
"TXID" : "87fd5e9e ...",
"время" : 1378289833,
"timereceived" : 1378289833
}
Отправить BTC со счета / кошелька (обратите внимание, что это не будет идти над балансом пользователей)
RPC: 'sendfrom' 'пользователь-01234' 1WithdrawlAddress 0,01234567
Возвращает: '87fd5e9e ... txid_goes_here'
Отправить BTC от сервера бумажника (будет брать с любого счета, хотя остатки на счетах не изменятся):
RPC: 'sendtoaddress' 1WithdrawlAddress 0,01234567
Возвращает: '87fd5e9e ... txid_goes_here'
Изменить: Чтобы уточнить, я поросенок поддержку от внутренней системы счета bitcoind в. Это позволяет использовать несколько адресов, которые будут привязаны к учетной записи. Если вы когда-либо хотите, чтобы предоставить пользователям новый адрес (или они просят его), выполнив вызов getnewaddress даст вам еще один адрес, и оба могут быть использованы. Обратите внимание, что счета баланс не всегда представляет фактическое количество Bitcoins в адресе, привязанный к счету (в связи с возможностью перемещения монеты вне цепи на другой счет).
Если вам нужна дополнительная помощь, не стесняйтесь спрашивать!