![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/job-board.corals.io/vendor/stripe/stripe-php/lib/ |
<?php namespace Stripe; /** * Class ExternalAccount * * @property string $id * @property string $object * * @package Stripe */ abstract class ExternalAccount extends ApiResource { /** * @return string The instance URL for this resource. It needs to be special * cased because it doesn't fit into the standard resource pattern. */ public function instanceUrl() { $id = $this['id']; if (!$id) { $class = get_class($this); $msg = "Could not determine which URL to request: $class instance " . "has invalid ID: $id"; throw new Error\InvalidRequest($msg, null); } if ($this['customer']) { $parent = $this['customer']; $base = Customer::classUrl(); $path = 'sources'; } elseif ($this['account']) { $parent = $this['account']; $base = Account::classUrl(); $path = 'external_accounts'; } elseif ($this['recipient']) { $parent = $this['recipient']; $base = Recipient::classUrl(); $path = 'cards'; } else { return null; } $parent = Util\Util::utf8($parent); $id = Util\Util::utf8($id); $parentExtn = urlencode($parent); $extn = urlencode($id); return "$base/$parentExtn/$path/$extn"; } /** * @param array|null $params * @param array|string|null $opts * * @return ExternalAccount The deleted external account. */ public function delete($params = null, $opts = null) { return $this->_delete($params, $opts); } /** * @param array|string|null $opts * * @return ExternalAccount The saved external account. */ public function save($opts = null) { return $this->_save($opts); } /** * @param array|null $params * @param array|string|null $opts * * @return ExternalAccount The verified (or not) external account. */ public function verify($params = null, $opts = null) { if ($this['customer']) { $url = $this->instanceUrl() . '/verify'; list($response, $options) = $this->_request('post', $url, $params, $opts); $this->refreshFrom($response, $options); return $this; } else { $message = 'Only customer external accounts can be verified in this manner.'; throw new Error\Api($message); } } }