There seems to be no status field in your request. Since Canada and the US have a state field, you need to go through it. API request:
{ "intent": "authorize", "payer": { "payment_method": "paypal" }, "transactions": [ { "amount": { "total": "2386.81", "currency": "GBP", "details": { "subtotal": "1854.81", "shipping": "532.00", "tax": "0.00" } }, "item_list": { "shipping_address": { "recipient_name": "Johnny", "type": "business", "line1": "245", "line2": "5th Avenue ", "city": "Columbia", "country_code": "US", "state": "MO", "postal_code": "65201", "phone": "001 212 12345678" } }, "description": "907 items" } ], "redirect_urls": { "return_url": "http://localhost:3000/payment/paypal-approved", "cancel_url": "http://localhost:3000/payment/paypal-cancelled" } }
API response:
{ "id": "PAY-4NK43903V190842KVLY5JA", "create_time": "2015-05-16T18:38:28Z", "update_time": "2015-05-16T18:38:28Z", "state": "created", "intent": "authorize", "payer": { "payment_method": "paypal", "payer_info": { "shipping_address": {} } }, "transactions": [ { "amount": { "total": "2386.81", "currency": "GBP", "details": { "subtotal": "1854.81", "shipping": "532.00" } }, "description": "907 items", "item_list": { "shipping_address": { "recipient_name": "Johnny", "line1": "245", "line2": "5th Avenue ", "city": "Columbia", "state": "MO", "phone": "001 212 12345678", "postal_code": "65201", "country_code": "US" } }, "related_resources": [] } ], "links": [ { "href": "https://api.sandbox.paypal.com/v1/payments/payment/PAY-4NK43903V1908425XKVLY5JA", "rel": "self", "method": "GET" }, { "href": "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-9XM291481W9678205", "rel": "approval_url", "method": "REDIRECT" }, { "href": "https://api.sandbox.paypal.com/v1/payments/payment/PAY-4NK43903V1908425XKVLY5JA/execute", "rel": "execute", "method": "POST" } ] }