Solidus is not built to process payments by itself, and it does not include any integrations for popular payment service providers (PSPs). You must install a Solidus extension or create your own integration.
The Solidus extensions listed below give you access to some popular payment service providers:
solidus_braintree
(Braintree v.zero)solidus_paypal_braintree
solidus_adyen
solidus_affirm
solidus_klarna_payments
solidus_paybright
solidus_culqi
solidus_payu_latam
In order for you to successfully process payments, your payment methods need to
send information to a payment service provider. You can use the
Spree::PaymentMethod
and Spree::PaymentMethod::CreditCard
classes if you
need to build out your own integrations with a PSP.
Typically, PSP integrations use the Spree::PaymentMethod
base class to build
out to the PSP's specifications and API.
Note that the Spree::PaymentMethod
base class also has a similar interface to
the [active_merchant
][active-merchant] gem.
For an example, see how the solidus_paypal_braintree
gem builds its
SolidusPaypalBraintree::Gateway
class class:
it sets its own preferences and overrides many of the methods originally defined
in Spree::PaymentMethod
.
Solidus also provides a Spree::PaymentMethod::CreditCard
class. While it is not a functional credit card-based payment method, it is a
good candidate as a base class for building your own credit card-based payment
methods.
You would need to extend or rewrite this class with your preferred PSP integration.