Module: Sanwo::Providers

Defined in:
lib/sanwo/providers.rb

Constant Summary collapse

PAYSTACK =
"paystack"
FLUTTERWAVE =
"flutterwave"
RAZORPAY =
"razorpay"
MONNIFY =
"monnify"
INTERSWITCH =
"interswitch"
CUSTOM =
"custom"
VALID_PROVIDERS =
[
  PAYSTACK,
  FLUTTERWAVE,
  RAZORPAY,
  MONNIFY,
  INTERSWITCH,
  CUSTOM,
].freeze

Class Method Summary collapse

Class Method Details

.resolve(provider) ⇒ String

Resolve and validate a provider string.

Parameters:

  • provider (String)

    the provider identifier

Returns:

  • (String)

    the downcased, validated provider ID

Raises:

  • (ArgumentError)

    if the provider is not recognized



26
27
28
29
30
31
32
33
# File 'lib/sanwo/providers.rb', line 26

def self.resolve(provider)
  key = provider.to_s.downcase.strip
  unless VALID_PROVIDERS.include?(key)
    raise ArgumentError, "Unknown provider #{provider.inspect}. Valid providers: #{VALID_PROVIDERS.join(', ')}"
  end

  key
end