Skip to content

Kraken
a read-only key we prove ourselves

Give a read-only key, and your Kraken history joins the ledger: fills, fees and transfers, priced when they happened. Kraken publishes no key permissions, so we test the key with requests that cannot execute.

What lands in the book

The movements
not just the balance

Kraken
Kraken · USD
$18,240.00
Spot fills this month
24
Trading fees
−$41.20
Synced every hour
Two legs per fill
What left and what arrived, so a sale has the price it happened at rather than a guess.
Fees as their own line
In the currency Kraken charged them in.
Deposits and withdrawals
Arrive as transfers, and pair with the wallets you also connected.
Next to the bank
In the same book as every other account, so the total includes it.

What goes by itself

Read every hour
and never a single order

  • Kraken fills since the last hourTwo legs each, at the price they filled
  • A withdrawal to your own walletMatched by hash, one internal move
  • Trading feesTheir own rows, in the coin charged
  • An order or a withdrawalNever: the key cannot do either
Two tax years from day one
The first sync reaches back to 1 January of the previous calendar year, then keeps up hourly.
Your own coins are not a sale
A withdrawal to your own wallet is matched to its arrival by transaction hash and booked as one move, with no gain.
Unmatched is left out
A transfer with no matching arrival is left out of the disposals rather than counted as a sale.
Nothing leaves
The key reads. It cannot place an order on Kraken or withdraw from it, and Orla pays nothing from it.

The key you give us

Kraken will not say
so we ask in a way that costs nothing

Kraken key
Order, validate only, volume zero
Refused on permission
Withdrawal to an address that cannot exist
Refused on permission
Any other answer
Key refused
Cannot trade or withdraw
No permissions endpoint
Kraken exposes nothing that reports the rights on an API key, and not knowing is not a reason to accept.
Two requests that cannot execute
An order in Kraken's own validate mode for a volume of zero, and a withdrawal enquiry to an address that cannot exist on your account.
Only the refusal counts
If Kraken refuses on permission, the key is accepted. If it complains about the request itself, the permission was let through and the key is rejected.
Anything else is refused
A timeout, a renamed method, an unknown error: none of it is evidence. Once accepted, the secret is encrypted and never shown again.

Other exchanges

Binance →
Spot fills as two legs, fees on their own line, transfers joined to the wallet.
Bybit →
The same rows, with the key's permissions read before it is saved.
OKX →
Key, secret and passphrase, with the permission list read before any is saved.
Coinbase →
Fills, fees and transfers as transactions, rather than a balance that answers nothing when January comes.
Hyperliquid →
No key at all: equity, deposits and daily results from a public address.

On autopilot

What goes by itself
and what still waits for you

Goes by itself

  • A bill or a payout inside its budget in the mandate
  • From Airwallex, PayPal or the account inside Orla
  • An agent's card or API spend inside its cap

Waits for you

  • A new payee, and bank details that changed
  • Anything past a budget or a limit
  • Every payment from Mercury, Slash, a Safe or a wallet you sign

The brakes above both

  • $2,000 a payment and $10,000 a day until you change them
  • Loosening a limit waits 24 to 72 hours
  • One pause stops every payment at once

Every brake on Safety

Questions

The questions people ask before they connect it

Can Orla trade or withdraw on my Kraken account?

No, and Kraken is the interesting case: it publishes no endpoint that reports the rights on a key. So we ask the venue itself with two requests that cannot execute, an order in Kraken's validate mode for a volume of zero and a withdrawal enquiry naming an address that cannot exist on your account. If Kraken refuses on permission the key is read only; if it complains about the request instead, the permission had already been let through and the key is rejected. Anything else, including a timeout, is refused.

Does it import my history or just the balance?

Both, and the history is the point. Fills, deposits and withdrawals become transactions in the ledger, so the capital gains engine can work a cost basis out by lot. The first sync reaches back to 1 January of the previous calendar year, which covers the current tax year and the one before it as well.

Will moving coins to my own wallet look like a sale?

No. The withdrawal is matched to the arrival on the other side, by transaction hash where the venue gives one and by coin, amount and date where it does not, and the pair becomes one internal move. An unmatched withdrawal is left out of disposals rather than counted as a sale of any kind.

Connect Kraken
and see the year add up

Exchanges connect on every plan, the free one included, and reading them costs nothing.