PaymentSources

Type
Class
Namespace
craft\commerce\services
Inherits
craft\commerce\services\PaymentSources » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
Implements
yii\base\Configurable (opens new window)
Since
2.0

Payment Sources service.

View source (opens new window)

# Public Properties

# allGatewayPaymentSourcesByCustomerId

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

View source (opens new window)

# allGatewayPaymentSourcesByUserId

Default value
null
Access
Read-only

View source (opens new window)

# allPaymentSourcesByCustomerId

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

View source (opens new window)

# allPaymentSourcesByGatewayId

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

View source (opens new window)

# allPaymentSourcesByUserId

Default value
null
Access
Read-only

View source (opens new window)

# Public Methods

Method Description
__call() (opens new window) Calls the named method which is not a class method.
__clone() (opens new window) This method is called after the object is created by cloning an existing one.
__construct() (opens new window) Constructor.
__get() (opens new window) Returns the value of a component property.
__isset() (opens new window) Checks if a property is set, i.e. defined and not null.
__set() (opens new window) Sets the value of a component property.
__unset() (opens new window) Sets a component property to be null.
attachBehavior() (opens new window) Attaches a behavior to this component.
attachBehaviors() (opens new window) Attaches a list of behaviors to the component.
behaviors() (opens new window) Returns a list of behaviors that this component should behave as.
canGetProperty() (opens new window) Returns a value indicating whether a property can be read.
canSetProperty() (opens new window) Returns a value indicating whether a property can be set.
className() (opens new window) 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() (opens new window) Detaches a behavior from the component.
detachBehaviors() (opens new window) Detaches all behaviors from the component.
ensureBehaviors() (opens new window) Makes sure that the behaviors declared in behaviors() (opens new window) are attached to this component.
getAllGatewayPaymentSourcesByCustomerId() Returns a customer's payment sources on a gateway, per the customer/user's ID.
getAllGatewayPaymentSourcesByUserId()
getAllPaymentSourcesByCustomerId() Returns a customer's payment sources, per the customer's ID.
getAllPaymentSourcesByGatewayId() Returns all payment sources for a gateway.
getAllPaymentSourcesByUserId()
getBehavior() (opens new window) Returns the named behavior object.
getBehaviors() (opens new window) 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.
getPaymentSourceByTokenAndGatewayId() Returns a payment source by its gateways token
hasEventHandlers() (opens new window) Returns a value indicating whether there is any handler attached to the named event.
hasMethod() (opens new window) Returns a value indicating whether a method is defined.
hasProperty() (opens new window) Returns a value indicating whether a property is defined for this component.
init() (opens new window) Initializes the object.
off() (opens new window) Detaches an existing event handler from this component.
on() (opens new window) Attaches an event handler to an event.
savePaymentSource() Saves a payment source.
trigger() (opens new window) Triggers an event.

# createPaymentSource()

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

View source (opens new window)

Arguments

Returns

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

Throws

# deletePaymentSourceById()

Delete a payment source by its ID.

View source (opens new window)

Arguments

Throws

# getAllGatewayPaymentSourcesByCustomerId()

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

View source (opens new window)

Arguments

Returns

craft\commerce\models\PaymentSource[]

# getAllGatewayPaymentSourcesByUserId()

DEPRECATED

Deprecated in 4.0.0. Use getAllPaymentSourcesByCustomerId() instead.

View source (opens new window)

Arguments

# getAllPaymentSourcesByCustomerId()

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

View source (opens new window)

Arguments

Returns

craft\commerce\models\PaymentSource[]

# getAllPaymentSourcesByGatewayId()

Returns all payment sources for a gateway.

View source (opens new window)

Arguments

Returns

craft\commerce\models\PaymentSource[]

# getAllPaymentSourcesByUserId()

DEPRECATED

Deprecated in 4.0.0. Use getAllPaymentSourcesByCustomerId() instead.

View source (opens new window)

Arguments

  • $userId

# getPaymentSourceById()

Returns a payment source by its ID.

View source (opens new window)

Arguments

# getPaymentSourceByIdAndUserId()

Returns a payment source by its ID and user ID.

View source (opens new window)

Arguments

# getPaymentSourceByTokenAndGatewayId()

Returns a payment source by its gateways token

View source (opens new window)

Arguments

Returns

craft\commerce\models\PaymentSource, null (opens new window)

# savePaymentSource()

Saves a payment source.

View source (opens new window)

Arguments

Returns

boolean (opens new window) – 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
        // ...
    }
);