Sha256: 2af0e22fd5a6fa610f01c24bd6c9366b58efdddc5c9c406fa3ecf72980065992

Contents?: true

Size: 612 Bytes

Versions: 1

Compression:

Stored size: 612 Bytes

Contents

require 'bodega/optional'

module Bodega
  module PaymentMethod
    class Base
      extend Bodega::Optional

      attr_accessor :options, :order

      def checkout_url(success_url, cancel_url, params = {})
        raise "Implement #{self.class.name}#checkout_url"
      end

      def complete!(options = {})
        raise "Implement #{self.class.name}#complete!"
      end

      def initialize(order)
        self.order = order
      end

      # Does the payment method provide shipping details? If not, they'll
      # be editable at checkout.
      def shipping?
        true
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bodega-0.4.12 lib/bodega/payment_method/base.rb