App\Ninja\PaymentDrivers\BasePaymentDriver::createPaymentMethod PHP Method

createPaymentMethod() public method

public createPaymentMethod ( $customer )
    public function createPaymentMethod($customer)
    {
        $paymentMethod = PaymentMethod::createNew($this->invitation);
        $paymentMethod->contact_id = $this->contact()->id;
        $paymentMethod->ip = Request::ip();
        $paymentMethod->account_gateway_token_id = $customer->id;
        $paymentMethod->setRelation('account_gateway_token', $customer);
        $paymentMethod = $this->creatingPaymentMethod($paymentMethod);
        if ($paymentMethod) {
            // archive the old payment method
            $oldPaymentMethod = PaymentMethod::clientId($this->client()->id)->wherePaymentTypeId($paymentMethod->payment_type_id)->first();
            if ($oldPaymentMethod) {
                $oldPaymentMethod->delete();
            }
            $paymentMethod->save();
        }
        return $paymentMethod;
    }