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:
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::CreditCard classes as a
reference for building out your own PSP integrations.
Typically, PSP integrations use the
Spree::PaymentMethod base class to build
out to the PSP's specifications and API. When you model out payment methods
Spree::PaymentMethod as a base class, you can get Solidus admin panel
functionality with very little effort.
Note that the
Spree::PaymentMethod base class also has a similar interface to
For an example, see how the
solidus_paypal_braintree gem builds its
it sets its own preferences and overrides many of the methods originally defined
Solidus also provides a
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
You would need to extend or rewrite this class with your preferred PSP integration.
After switching payment service provider, there may be
records referencing a
type class that does not exist anymore. Trying to
retrieve these records through an
ActiveRecord query raises a
If you cannot delete these records, you can deactivate them running
This way, their
type will be set to
Spree::PaymentMethod, allowing for
records retrieval without errors. Also, their real
type value will be stored
Solidus is an open source platform supported by the community. We encourage everyone using Solidus to contribute back to the documentation and the code.