Create and add ItemList with at least one item to your transaction. Here is an example:
$payer = new Payer();
$payer->setPaymentMethod("paypal");
$amount = new Amount();
$amount->setCurrency($paymentCurrency);
$amount->setTotal($paymentAmount);
$item = new Item();
$item->setQuantity(1);
$item->setName($paymentDescription);
$item->setPrice($paymentAmount);
$item->setCurrency($paymentCurrency);
$itemList = new ItemList();
$itemList->setItems(array($item));
$transaction = new Transaction();
$transaction->setAmount($amount);
$transaction->setItemList($itemList);
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl($returnUrl);
$redirectUrls->setCancelUrl($cancelUrl);
$payment = new Payment();
$payment->setIntent("sale");
$payment->setPayer($payer);
$payment->setRedirectUrls($redirectUrls);
$payment->setTransactions(array($transaction));