status === \Mollie\Api\Types\SessionStatus::STATUS_CREATED; } public function isReadyForProcessing() { return $this->status === \Mollie\Api\Types\SessionStatus::STATUS_READY_FOR_PROCESSING; } public function isCompleted() { return $this->status === \Mollie\Api\Types\SessionStatus::STATUS_COMPLETED; } public function hasFailed() { return $this->status === \Mollie\Api\Types\SessionStatus::STATUS_FAILED; } /** * Saves the session's updatable properties. * * @return \Mollie\Api\Resources\Session * @throws \Mollie\Api\Exceptions\ApiException */ public function update() { $body = ['billingAddress' => $this->billingAddress, 'shippingAddress' => $this->shippingAddress]; $result = $this->client->sessions->update($this->id, $this->withPresetOptions($body)); return \Mollie\Api\Resources\ResourceFactory::createFromApiResult($result, new \Mollie\Api\Resources\Session($this->client)); } /** * Cancels this session. * * @return Session * @throws \Mollie\Api\Exceptions\ApiException */ public function cancel() { return $this->client->sessions->cancel($this->id, $this->getPresetOptions()); } /** * @return string|null */ public function getRedirectUrl() { if (empty($this->_links->redirect)) { return null; } return $this->_links->redirect->href; } }