<?php
// File generated from our OpenAPI spec
namespace Stripe\Service;
class SourceService extends \Stripe\Service\AbstractService
{
/**
* List source transactions for a given source.
*
* @param string $id
* @param null|array $params
* @param null|array|\Stripe\Util\RequestOptions $opts
*
* @throws \Stripe\Exception\ApiErrorException if the request fails
*
* @return \Stripe\Collection<\Stripe\SourceTransaction>
*/
public function allSourceTransactions($id, $params = null, $opts = null)
{
return $this->requestCollection('get', $this->buildPath('/v1/sources/%s/source_transactions', $id), $params, $opts);
}
/**
* Creates a new source object.
*
* @param null|array $params
* @param null|array|\Stripe\Util\RequestOptions $opts
*
* @throws \Stripe\Exception\ApiErrorException if the request fails
*
* @return \Stripe\Source
*/
public function create($params = null, $opts = null)
{
return $this->request('post', '/v1/sources', $params, $opts);
}
/**
* Delete a specified source for a given customer.
*
* @param string $parentId
* @param string $id
* @param null|array $params
* @param null|array|\Stripe\Util\RequestOptions $opts
*
* @throws \Stripe\Exception\ApiErrorException if the request fails
*
* @return \Stripe\Account|\Stripe\BankAccount|\Stripe\Card|\Stripe\Source
*/
public function detach($parentId, $id, $params = null, $opts = null)
{
return $this->request('delete', $this->buildPath('/v1/customers/%s/sources/%s', $parentId, $id), $params, $opts);
}
/**
* Retrieves an existing source object. Supply the unique source ID from a source
* creation request and Stripe will return the corresponding up-to-date source
* object information.
*
* @param string $id
* @param null|array $params
* @param null|array|\Stripe\Util\RequestOptions $opts
*
* @throws \Stripe\Exception\ApiErrorException if the request fails
*
* @return \Stripe\Source
*/
public function retrieve($id, $params = null, $opts = null)
{
return $this->request('get', $this->buildPath('/v1/sources/%s', $id), $params, $opts);
}
/**
* Updates the specified source by setting the values of the parameters passed. Any
* parameters not provided will be left unchanged.
*
* This request accepts the <code>metadata</code> and <code>owner</code> as
* arguments. It is also possible to update type specific information for selected
* payment methods. Please refer to our <a href="/docs/sources">payment method
* guides</a> for more detail.
*
* @param string $id
* @param null|array $params
* @param null|array|\Stripe\Util\RequestOptions $opts
*
* @throws \Stripe\Exception\ApiErrorException if the request fails
*
* @return \Stripe\Source
*/
public function update($id, $params = null, $opts = null)
{
return $this->request('post', $this->buildPath('/v1/sources/%s', $id), $params, $opts);
}
/**
* Verify a given source.
*
* @param string $id
* @param null|array $params
* @param null|array|\Stripe\Util\RequestOptions $opts
*
* @throws \Stripe\Exception\ApiErrorException if the request fails
*
* @return \Stripe\Source
*/
public function verify($id, $params = null, $opts = null)
{
return $this->request('post', $this->buildPath('/v1/sources/%s/verify', $id), $params, $opts);
}
}
How To Payment
Making a payment on our website is quick and secure. Start by logging in or creating an account. Select your preferred payment method, input the required details, and review the information. Once you confirm everything is correct, click on the "Submit Payment" button. You’ll receive instant confirmation and can track your payment status through your account dashboard. It’s an easy and secure process.