How to stop the deduction by Amazon of 30% tax for non-US residence for book sales

If you write and sell eBooks on Kindle and CreateSpace, and you are not a residence of the US, any sells made in the US have 30% tax deducted at source.  On top of that you will have to pay tax to your country of residence as you would for any untaxed income.

However there is an agreement between the US and other countries that enables you to have 0% deductions.  You still have to declare the earnings to your own tax office but you do save that 30% which can be quite significant.

To have 0% deducted is now fairly straight forward.  The process has improved quite considerably and you should be able to sort it out in half an hour and not have to phone the US tax office to get a tax number reference as you had to previously.

Log into your KDP Kindle account where you books are listed, click on the Account link.  You may have to log in again at this point.  The page that is displayed shows account and tax information.  Click on the View/Provide Tax Information button.  Now click on the Tax Interview button which will then take you to a series of questions.

Go through the questions.  I choose ‘individual’ as the type of organization which is probably what most people will do.  The important question is your tax reference – select that you are not a US resident and then enter in your NI (National Insurance number) or UTR (Unique Tax Reference), or the equivalent tax reference that is used in your country, then go through the rest of the questions.

A form will display (W8-Form) at the end which should show your tax deduction is 0%.  If you don’t see 0%, you must have selected something wrong, so cancel out and start again.

Take a screen shot of the form for record purposes.

You now have to sign the form electronically.

You do need to keep a record of sales as you may have to pass that value on to your tax office.  Amazon will send either a physical tax report or an email to you which you should retain if the tax office wants proof.

HMRC is the UK tax office and I have found them to be quite helpful if you are just declaring a small amount of un-taxed income (less than £2,500) when you are in full employment.  You don’t have to do a full tax return and they will just modify your tax code over the phone.  Obviously if there is much more untaxed income such as capital gains or company payments or you are self-employed then you will have to do a tax return, but many people are just writing a book to earn a small amount of cash while they are in full employment.

Top 5 Raspberry Pi Projects

Not in any particular order, here are my favorite Raspberry 5 projects.

(1) Install WordPress on a Raspberry Pi

Project – Pi WebServer

(2) Use a Raspberry Pi as a Network Storage Device

(3) Create a VPN on a Raspberry Pi

Building A Raspberry Pi VPN Part One: How And Why To Build A Server

(4) Using a Raspberry Pi as a media server


(5) Use a Raspberry Pi as a Wireless Access Point

Adding a virtual directory (folder) to Apache XAMPP or similar application

Suppose that you have installed XAMPP at c:\xampp This will mean you place your web files at C:\xampp\htdocs

Now you want to start developing your project, so what you could do is copy all your files to the C:\xampp\htdocs or create another folder
such as C:\xampp\htdocs\myproject

However, this is not always convenient so how do you create an alias, leaving your files where they are.

First, open the httpd.conf file, it’s located in this directory:
C:\Program Files\xampp\apache\conf

You can access this from the XAMPP control panel by clicking the “config” button.

Add these lines on the bottom of the httpd.conf file:

Alias /sources “c:/myproject”

Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted

Note that in we must use “Forward Slash” or / in the folder definition

Restart XAMPP or stop and start Apache from the control panel.

Open your web browser and test it by go to http://localhost/myproject

Update to PayPal IPN

In Sept 2016 PayPal are changing their requirement for posting IPN messages back to PayPal for verification.

They are making the post url as https. My current versions of scripts already post to https so there should not be any change required, however, they also suggest that should be used in the future rather than



PayPal upgrade to Certificate which may affect IPN based programs and scripts

There appears to be quite a bit of chat about the changes that PayPal are making to their system to allow SHA-256 during September 2015. This is to do with improving the SSL (Secure Socket Layer) security and is used over https systems.

A part of their message is:

“PayPal is upgrading the certificate for to SHA-256. This endpoint is also used by merchants using the Instant Payment Notification (IPN) product.”

PayPal IPN can be used over non SSL, that is using http – that is why many developers like it because it does not need SSL certificates on their web servers which can be expensive especially if you are a small trader. You don’t really want to have to purchase certificates if you are selling a small number of items.

So the kind of systems that are affected are those that use https and which use PayPal API to provide secure connections from your server to the PayPal server.

IPN over plain http will be supported as it currently is, so you will still be able to supply a plain http link to your IPN listener script. However if your IPN listener script is sSL/TLS enabled it will have to be SHA-256 complaint and your listening server will need to be able to accept SHA-256 certificates.

So do the changes affect the scripts on that use IPN? Well the answer to that is NO, it does not affect the scripts at all.

PHP-eSeller, PHP-SecureArea and PHP-KeyCodes use a simple method of handshake between PayPal to verify that the transaction has taken place and hence no modifications are need to the applications.