Trading agreement required error

The EOrder:Trading agreement required error is returned when accounts that are registered in Germany attempt to place orders via the REST API. The trading agreement is an additional regulatory requirement for accounts with addresses in Germany.

The trading agreement error can easily be resolved by including an additional parameter named trading_agreement with a value of agree when calling the AddOrder endpoint.

The following is an example of how this might be accomplished using Python:

data = {}
data['nonce'] = int(time.time()*1000)
data['pair'] = 'xbtusd'
data['type'] = 'buy'
data['ordertype'] = 'limit'
data['price'] = '2000'
data['volume'] = '0.002'
data['leverage'] = '5'
data['trading_agreement'] = 'agree'

and the following is an example using PHP:

$res = $kraken->QueryPrivate('AddOrder', array( 'pair' => 'xbtusd', 'type' => 'sell', 'ordertype' => 'limit', 'price' => '12000', 'volume' => '1.123',
'trading_agreement' => 'agree' ));

Some additional information regarding the trading agreement is available via the Settings -> API tab of account management.