PaymentSources

Type
Class
Namespace
craft\commerce\services
Inherits
craft\commerce\services\PaymentSources » yii\base\Component » yii\base\BaseObject
Implements
yii\base\Configurable
Since
2.0

Payment Sources service.

View source

# Public Properties

# allGatewayPaymentSourcesByUserId

Type
craft\commerce\models\PaymentSource[]
Access
Read-only

View source

# allPaymentSourcesByUserId

Type
craft\commerce\models\PaymentSource[]
Access
Read-only

View source

# Public Methods

Method Description
__call() Calls the named method which is not a class method.
__clone() This method is called after the object is created by cloning an existing one.
__construct() Constructor.
__get() Returns the value of a component property.
__isset() Checks if a property is set, i.e. defined and not null.
__set() Sets the value of a component property.
__unset() Sets a component property to be null.
attachBehavior() Attaches a behavior to this component.
attachBehaviors() Attaches a list of behaviors to the component.
behaviors() Returns a list of behaviors that this component should behave as.
canGetProperty() Returns a value indicating whether a property can be read.
canSetProperty() Returns a value indicating whether a property can be set.
className() Returns the fully qualified name of this class.
createPaymentSource() Creates a payment source for a user in the gateway based on a payment form.
deletePaymentSourceById() Delete a payment source by its ID.
detachBehavior() Detaches a behavior from the component.
detachBehaviors() Detaches all behaviors from the component.
ensureBehaviors() Makes sure that the behaviors declared in behaviors() are attached to this component.
getAllGatewayPaymentSourcesByUserId() Returns a user's payment sources on a gateway, per the user's ID.
getAllPaymentSourcesByUserId() Returns a user's payment sources, per the user's ID.
getBehavior() Returns the named behavior object.
getBehaviors() Returns all behaviors attached to this component.
getPaymentSourceById() Returns a payment source by its ID.
getPaymentSourceByIdAndUserId() Returns a payment source by its ID and user ID.
hasEventHandlers() Returns a value indicating whether there is any handler attached to the named event.
hasMethod() Returns a value indicating whether a method is defined.
hasProperty() Returns a value indicating whether a property is defined for this component.
init() Initializes the object.
off() Detaches an existing event handler from this component.
on() Attaches an event handler to an event.
savePaymentSource() Saves a payment source.
trigger() Triggers an event.

# createPaymentSource()

Creates a payment source for a user in the gateway based on a payment form.

View source

Arguments

Returns

craft\commerce\models\PaymentSource – The saved payment source.

Throws

# deletePaymentSourceById()

Delete a payment source by its ID.

View source

Arguments

Returns

boolean

Throws

  • Throwable
    in case something went wrong when deleting.

# getAllGatewayPaymentSourcesByUserId()

Returns a user's payment sources on a gateway, per the user's ID.

View source

Arguments

Returns

craft\commerce\models\PaymentSource[]

# getAllPaymentSourcesByUserId()

Returns a user's payment sources, per the user's ID.

View source

Arguments

Returns

craft\commerce\models\PaymentSource[]

# getPaymentSourceById()

Returns a payment source by its ID.

View source

Arguments

Returns

craft\commerce\models\PaymentSource, null

# getPaymentSourceByIdAndUserId()

Returns a payment source by its ID and user ID.

View source

Arguments

  • $sourceId (integer) – The source ID
  • $userId (integer) – The source's user ID

Returns

craft\commerce\models\PaymentSource, null

# savePaymentSource()

Saves a payment source.

View source

Arguments

Returns

boolean – Whether the payment source was saved successfully

Throws

# Events

# EVENT_AFTER_SAVE_PAYMENT_SOURCE

Type
craft\commerce\events\PaymentSourceEvent

The event that is triggered after a payment source is added.

use craft\commerce\events\PaymentSourceEvent;
use craft\commerce\services\PaymentSources;
use craft\commerce\models\PaymentSource;
use yii\base\Event;

Event::on(
    PaymentSources::class,
    PaymentSources::EVENT_AFTER_SAVE_PAYMENT_SOURCE,
    function(PaymentSourceEvent $event) {
        // @var PaymentSource $source
        $source = $event->paymentSource;

        // Settle any outstanding balance
        // ...
    }
);

# EVENT_BEFORE_SAVE_PAYMENT_SOURCE

Type
craft\commerce\events\PaymentSourceEvent

The event that is triggered before a payment source is added.

use craft\commerce\events\PaymentSourceEvent;
use craft\commerce\services\PaymentSources;
use craft\commerce\models\PaymentSource;
use yii\base\Event;

Event::on(
    PaymentSources::class,
    PaymentSources::EVENT_BEFORE_SAVE_PAYMENT_SOURCE,
    function(PaymentSourceEvent $event) {
        // @var PaymentSource $source
        $source = $event->paymentSource;

        // ...
    }
);

# EVENT_DELETE_PAYMENT_SOURCE

Type
craft\commerce\events\PaymentSourceEvent

The event that is triggered when a payment source is deleted.

use craft\commerce\events\PaymentSourceEvent;
use craft\commerce\services\PaymentSources;
use craft\commerce\models\PaymentSource;
use yii\base\Event;

Event::on(
    PaymentSources::class,
    PaymentSources::EVENT_DELETE_PAYMENT_SOURCE,
    function(PaymentSourceEvent $event) {
        // @var PaymentSource $source
        $source = $event->paymentSource;

        // Warn a user they don’t have any valid payment sources saved
        // ...
    }
);