こんにちは、ウチダです。
夫婦で貯金ゼロ・借金400万円から
仮想通貨と株式へ投資をスタートし、
いまでは1500万円を運用しています。
副業は仮想通貨のマイニング企業を立ち上げ、
月5万円の不労所得を得ています。
仮想通貨のマイニングマシンに興味はあるけど、
「収益の計算ってめんどくさそう」
「ちゃんと会計処理できるの?」
と悩んでいませんか?
実はPythonを使えばマイニングの会計処理を
かなり楽にできるんです。
なぜこんなことが分かるかといえば
私が実際にPythonで収益レポートを作成しているからです。
この記事ではプログラミング言語Pythonを使って
マイニング収益や手数料を計算して、
freee会計にエクセルインポートする方法を紹介します。
この記事を読み終えると、
マイニングの会計処理がこんなに
楽になるのかと驚かれると思います。
マイニングの会計処理をもっと楽に!freee会計にインポートしよう

私は法人で仮想通貨のマイニングを行っています。
会計処理するときに、
マイニングってめんどうですよね。
4時間毎に売上が発生するので、
かなり多くのデータが出てきます。

これを手入力していたら日が暮れます。
そこで、freee会計のエクセルインポートを使います。
これは手入力していたデータをfreee会計に
移すための機能です。
(参考:Excel・販売管理ソフトからデータを取り込む(エクセルインポート) )
これを利用してマイニング収益のレポートを
一気に入力させます。
ただ、NiceHashで出力されるデータは
そのままではfreee会計に取り込めません。
freee会計にインポートするには以下の項目が必要です。
- 発生日
- 収支区分
- 勘定科目
- 金額
- 税区分
- 決済口座
そこで、Pythonのプログラムで加工して、以下のレポートを作ります。

これならfreee会計にインポートできます。
作り方を紹介します。
まずNiceHashから収益レポートをダウンロードします。
ダウンロード方法はこちら↓
ダウンロードしたCSVファイルをPythonで加工します。
Pythonのコードはこちら
#ライブラリのインポート
import pandas as pd
import glob
import math
#収益レポートを読み込む
files = glob.glob('report*.csv')
for file in files:
print(file + 'を読み込みました。')
data = pd.read_csv(file)
df = data[:-5]
#マイニング収益と手数料を抽出する
mining_df = df.loc[(df['Purpose'] == 'Hashpower mining') | (df['Purpose'] == 'Hashpower mining fee')]
#リスト化する
mining_list = mining_df.values.tolist()
#日付のデータを作成する
#重複を削除する
date = mining_df['Local date time'].drop_duplicates()
#freee会計用のデータフレームを作成する
freee_data = pd.DataFrame()
freee_data['発生日'] = date
freee_data['収支区分'] = '収入'
freee_data['勘定科目'] = '売上高'
freee_data['金額'] = 0
freee_data['税区分'] = '不課税'
freee_data['決済口座'] = ''
freee_data['収入'] = 0
freee_data['手数料'] = 0
freee_data['BTC収入'] = 0
freee_data['BTC手数料'] = 0
freee_data['BTCレート'] = 0
#データフレームに情報を入れる
for i in mining_list:
local_date = i[1] #ローカル時間(日本)
purpose = i[2] #取引目的
price = i[5] #金額
rate = i[4] #BTCレート
btc = i[3] #ビットコインの数
#収益
if purpose == 'Hashpower mining':
freee_data.loc[freee_data['発生日'] == i[1],'収入'] = math.ceil(price)
freee_data.loc[freee_data['発生日'] == i[1],'BTC収入'] = btc
freee_data.loc[freee_data['発生日'] == i[1],'BTCレート'] = rate
#手数料
if purpose == 'Hashpower mining fee':
freee_data.loc[freee_data['発生日'] == i[1],'手数料'] = math.ceil(price)
freee_data.loc[freee_data['発生日'] == i[1],'BTC手数料'] = btc
#日付のデータを加工
for j in mining_list:
local_date = j[1]
freee_data.loc[freee_data['発生日'] == j[1],'発生日'] = str(j[1]).split(' ')[0]
#利益の計算
freee_data['金額'] = freee_data['収入'] + freee_data['手数料']
freee_data['BTC金額'] = freee_data['BTC収入'] + freee_data['BTC手数料']
#データの保存
freee_data.to_excel('freee_import.xlsx', index=False)
処理結果は上図のエクセルになります。
これでfreee会計にインポートできる形式になりました。
マイニング収益の会計処理がとっても楽になると思います。
プログラミングを身につければ
作業時間を短縮できます。
同じ時間を消費するなら、
作業効率を上げて
仕事を楽に終えるのがいいですよね。
短期でプログラミングを身につけるなら
こちらがおすすめです↓

ここまで読んでくださり、ありがとうございました。^^