David Kimura PRO said almost 4 years ago on Payment Gateway Basics with Stripe :
Ah, okay, I thought that Stripe created the source, but it looks like they're just verifying that the source would be valid.

source = Stripe::Source.create(token: params[:stripeToken])
customer.default_source = source
customer.save