How to interpret Ledger history fields
Below is an explanation of fields you'll see on the ledgers export csv file.
Transaction ID. Matches the Ledger ID seen on Kraken.com > History > Ledger.
Reference ID. Makes use of 2 encoding format types, legacy format e.g "TE5J3E-VLAUT-UAG5Y8" and a new mixed case, FT-prefix format e.g "FTQqzsk-V6Za8qrWnhzTx67rYHz8Tg". 
All refIDs make use of the legacy refID format, with the exception of Deposits and Withdrawal ledger types made post August 15, 14:21:54 UTC. Which use the new mixed case FT-prefix format type.
Includes both date & time (in UTC time zone). If you want to separate date and time, you'll need to use the split tool in your spreadsheet application.
"trade" = non-margin exchange of one currency for another.
"rollover" = charge for a margin trade.
"deposit" = deposit of funds to your Kraken account (including KFEE credits), including transfers from your Kraken Futures wallet or from a credit/debit card purchase (card purchases show a 'deposit' for the full amount charged to the card, then a 'spend' for the amount spent on the asset after the transaction fee is deducted, and 'receive' for the credit of the asset bought).
"withdrawal" = withdrawal of funds outside of your Kraken account, including transfers to your Kraken Futures wallet.
"transfer" = credit of supported airdrops and forks (e.g. BCH and XLM), and funds transferred to/from Kraken's OTC desk; does not include transfers to/from your Kraken Futures wallet.
"adjustment" = conversion of one currency to another outside of trading (e.g. ICN-to-ETH conversion after ICN delisting).
"spend" = shown for transactions made via the Buy Crypto button or new Kraken app, this indicates the amount of the asset being debited from the account
"receive" = shown for transactions made via the Buy Crypto button or new Kraken app, this indicates the amount of the asset being credited to the account.
"settled" = settling of a margin position on spot.
"staking" = updates to staked balances, including initial staked balances and changes due to the crediting of staking rewards
"sale" = this shows only as a filter option when viewing your Ledger history while signed in to your account, it is not shown in history exports. "Sale" is a filter that brings up all "Spend" and "Receive" entries from orders placed via the new Kraken app or Buy Crypto button.
"invite bonus" = credit of rewards from our Kraken app referral program.
The Subtype column is for transfers from your spot account to Kraken Futures, and vice versa. Any Futures transfers will show under subtype as "spottofutures" if it is a transfer from spot to futures, or "spotfromfutures" if it is a transfer from futures to spot.
aclassAsset Class. Value is always "currency". Not a useful field.
assetThe asset of focus in the ledger entry.
amountAmount debited (-) or credited (+) to that asset's balance.
feeFee paid to Kraken (if any) in the asset.
New asset balance after debiting/crediting transaction amount and debiting fee.
balance = old_balance +/- amount - fee
Note: Each ledger entry focuses on a change to a particular asset's balance.
So if the asset is XXBT (i.e. Bitcoin), the Amount, Fee, and Balance fields will also be denominated in Bitcoin.
Two different assets will never be mixed in a single Ledger entry.