public function logOrder()
    {
        if ($this->orderSent) {
            throw new ShopCertification\Exception('You already sent one order. Please check your implementation.');
        }

        if (!$this->email) {
            throw new ShopCertification\MissingInformationException("Customer email address isn't set and is mandatory.");
        }

        $postData['apiKey'] = $this->apiKey;
        $postData['email'] = $this->email;

        if ($this->orderId) {
            $postData['orderId'] = $this->orderId;
        }

        if ($this->productItemIds) {
            $postData['productItemIds'] = $this->productItemIds;
        }

        $result = $this->requester->request(IRequester::ACTION_LOG_ORDER, [], $postData);

        $this->orderSent = true;

        return $result;
    }