def check_coinbase_valid(api_key, api_secret): try: client = Client(api_key, api_secret) account_id = client.get_primary_account()['id'] client.create_address(account_id)['address'] #получение кошелька для оплаты return True except: return False
def create_address(sid, pid): api_key = 'bMX4e4Jwtpae3kH6' api_secret = 'Q005dyJjhNU6oYQh9Ut0zbCDwWKzjYhY' client = Client(api_key, api_secret) name = "%s#%s" % (sid, pid) addr = client.create_address(account_id, name=name) return addr
def create_address(sid, pid): api_key = 'bMX4e4Jwtpae3kH6' api_secret = 'Q005dyJjhNU6oYQh9Ut0zbCDwWKzjYhY' client = Client(api_key, api_secret) account_id = '71c2f280-db2c-583e-89c2-d314915f19d0' name = "%s#%s" % (sid, pid) addr = client.create_address(account_id, name=name) return addr
def creat_bill_btc(chat_id, callback_id, message_id, sum, name_good, amount): #if dop.amount_of_goods(name_good) <= int(amount): bot.answer_callback_query(callback_query_id=callback_id, show_alert=True, text='Выберите меньшее число товаров к покупке') #el if dop.get_coinbasedata() == None: bot.answer_callback_query( callback_query_id=callback_id, show_alert=True, text='Принять деньги на btc кошелёк в данный момент невозможно!') else: api_key, api_secret = dop.get_coinbasedata() client = Client(api_key, api_secret) account_id = client.get_primary_account()['id'] sum = int(sum) + 10 #прибавляется комиссия в btc btc_price = round( float((client.get_buy_price(currency_pair='BTC-RUB')["amount"]))) print(btc_price) sum = float(str(sum / btc_price)[:10]) #сколько сатох нужно юзеру оплатить address_for_tranz = client.create_address(account_id)[ 'address'] #получение кошелька для оплты with open( 'https://drive.google.com/open?id=1F7UFARDfsTKih-tdJnXH6KlzikWfO9tz' + str(chat_id) + '.txt', 'w', encoding='utf-8') as f: f.write(str(amount) + '\n') f.write(str(sum) + '\n') f.write(address_for_tranz) key = telebot.types.InlineKeyboardMarkup() key.add( telebot.types.InlineKeyboardButton( text='Проверить оплату', callback_data='Проверить оплату btc')) key.add( telebot.types.InlineKeyboardButton( text='Вернуться в начало', callback_data='Вернуться в начало')) try: bot.edit_message_text( chat_id=chat_id, message_id=message_id, text='Чтобы купить ' + name_good + ' количеством ' + str(amount) + '\nПереведите `' + str(sum) + '` btc на адрес `' + str(address_for_tranz) + '`', parse_mode='Markdown', reply_markup=key) except: pass he_client.append(chat_id)
def test_create_address(self): client = Client(api_key, api_secret) address = client.create_address('foo') self.assertIsInstance(address, Address) self.assertEqual(address, mock_item)
def generate_bitcoin_address(): client = Client(API_KEY, API_SECRET) accounts = client.get_accounts() r = client.create_address(accounts["data"][0]["id"]) return r["address"]