### Home Classes Methods

### In Files

- lib/active_merchant/billing/gateways/sage.rb

### Parent

ActiveMerchant::Billing::Gateway

### Methods

- ::new
- #authorize
- #capture
- #credit
- #purchase
- #void

### Class/Module Index

Quicksearch

- ActiveMerchant
- ActiveMerchant::Billing
- ActiveMerchant::Billing::AVSResult
- ActiveMerchant::Billing::BarclaysEpdqGateway
- ActiveMerchant::Billing::BarclaysEpdqGateway::Document
- ActiveMerchant::Billing::BarclaysEpdqGateway::Parser
- ActiveMerchant::Billing::Base
- ActiveMerchant::Billing::BeanstreamGateway
- ActiveMerchant::Billing::BeanstreamInteracGateway
- ActiveMerchant::Billing::BeanstreamInteracResponse
- ActiveMerchant::Billing::BluePayGateway
- ActiveMerchant::Billing::BogusGateway
- ActiveMerchant::Billing::BraintreeBlueGateway
- ActiveMerchant::Billing::BraintreeGateway
- ActiveMerchant::Billing::BraintreeOrangeGateway
- ActiveMerchant::Billing::CVVResult
- ActiveMerchant::Billing::CardSaveGateway
- ActiveMerchant::Billing::CardStreamGateway
- ActiveMerchant::Billing::Check
- ActiveMerchant::Billing::CreditCard
- ActiveMerchant::Billing::CreditCardFormatting
- ActiveMerchant::Billing::CreditCardMethods
- ActiveMerchant::Billing::CreditCardMethods::ClassMethods
- ActiveMerchant::Billing::CyberSourceGateway
- ActiveMerchant::Billing::DataCashGateway
- ActiveMerchant::Billing::EfsnetGateway
- ActiveMerchant::Billing::ElavonGateway
- ActiveMerchant::Billing::EpayGateway
- ActiveMerchant::Billing::EwayGateway
- ActiveMerchant::Billing::EwayManagedGateway
- ActiveMerchant::Billing::EwayManagedGateway::EwayResponse
- ActiveMerchant::Billing::ExactGateway
- ActiveMerchant::Billing::FederatedCanadaGateway
- ActiveMerchant::Billing::FirstPayGateway
- ActiveMerchant::Billing::FirstPayGateway::FirstPayPostData
- ActiveMerchant::Billing::GarantiGateway
- ActiveMerchant::Billing::Gateway
- ActiveMerchant::Billing::IdealBaseGateway
- ActiveMerchant::Billing::IdealRabobankGateway
- ActiveMerchant::Billing::IdealResponse
- ActiveMerchant::Billing::InspireGateway
- ActiveMerchant::Billing::InstapayGateway
- ActiveMerchant::Billing::Integrations
- ActiveMerchant::Billing::Integrations::ActionViewHelper
- ActiveMerchant::Billing::Integrations::Bogus
- ActiveMerchant::Billing::Integrations::Bogus::Helper
- ActiveMerchant::Billing::Integrations::Bogus::Notification
- ActiveMerchant::Billing::Integrations::Bogus::Return
- ActiveMerchant::Billing::Integrations::Chronopay
- ActiveMerchant::Billing::Integrations::Chronopay::Helper
- ActiveMerchant::Billing::Integrations::Chronopay::Return
- ActiveMerchant::Billing::Integrations::DirecPay
- ActiveMerchant::Billing::Integrations::DirecPay::Helper
- ActiveMerchant::Billing::Integrations::DirecPay::Notification
- ActiveMerchant::Billing::Integrations::DirecPay::Return
- ActiveMerchant::Billing::Integrations::DirecPay::Status
- ActiveMerchant::Billing::Integrations::Directebanking
- ActiveMerchant::Billing::Integrations::Directebanking::Helper
- ActiveMerchant::Billing::Integrations::Directebanking::Notification
- ActiveMerchant::Billing::Integrations::Directebanking::Return
- ActiveMerchant::Billing::Integrations::Dwolla
- ActiveMerchant::Billing::Integrations::Dwolla::Helper
- ActiveMerchant::Billing::Integrations::Dwolla::Notification
- ActiveMerchant::Billing::Integrations::Dwolla::Return
- ActiveMerchant::Billing::Integrations::EPaymentPlans
- ActiveMerchant::Billing::Integrations::EPaymentPlans::Helper
- ActiveMerchant::Billing::Integrations::EPaymentPlans::Notification
- ActiveMerchant::Billing::Integrations::Gestpay
- ActiveMerchant::Billing::Integrations::Gestpay::Common
- ActiveMerchant::Billing::Integrations::Gestpay::Helper
- ActiveMerchant::Billing::Integrations::Gestpay::Notification
- ActiveMerchant::Billing::Integrations::Gestpay::Return
- ActiveMerchant::Billing::Integrations::HiTrust
- ActiveMerchant::Billing::Integrations::HiTrust::Notification
- ActiveMerchant::Billing::Integrations::HiTrust::Return
- ActiveMerchant::Billing::Integrations::Moneybookers
- ActiveMerchant::Billing::Integrations::Moneybookers::Helper
- ActiveMerchant::Billing::Integrations::Nochex
- ActiveMerchant::Billing::Integrations::Nochex::Helper
- ActiveMerchant::Billing::Integrations::Nochex::Notification
- ActiveMerchant::Billing::Integrations::Nochex::Return
- ActiveMerchant::Billing::Integrations::Notification
- ActiveMerchant::Billing::Integrations::PayflowLink
- ActiveMerchant::Billing::Integrations::PayflowLink::Helper
- ActiveMerchant::Billing::Integrations::PayflowLink::Notification
- ActiveMerchant::Billing::Integrations::Paypal
- ActiveMerchant::Billing::Integrations::Paypal::Helper
- ActiveMerchant::Billing::Integrations::Paypal::Notification
- ActiveMerchant::Billing::Integrations::Paypal::Return
- ActiveMerchant::Billing::Integrations::Quickpay
- ActiveMerchant::Billing::Integrations::Quickpay::Helper
- ActiveMerchant::Billing::Integrations::Quickpay::Notification
- ActiveMerchant::Billing::Integrations::Return
- ActiveMerchant::Billing::Integrations::SagePayForm
- ActiveMerchant::Billing::Integrations::SagePayForm::Encryption
- ActiveMerchant::Billing::Integrations::SagePayForm::Helper
- ActiveMerchant::Billing::Integrations::SagePayForm::Notification
- ActiveMerchant::Billing::Integrations::SagePayForm::Notification::CryptError
- ActiveMerchant::Billing::Integrations::SagePayForm::Notification::InvalidCryptData
- ActiveMerchant::Billing::Integrations::SagePayForm::Notification::MissingCryptData
- ActiveMerchant::Billing::Integrations::SagePayForm::Notification::MissingCryptKey
- ActiveMerchant::Billing::Integrations::SagePayForm::Return
- ActiveMerchant::Billing::Integrations::TwoCheckout
- ActiveMerchant::Billing::Integrations::TwoCheckout::Helper
- ActiveMerchant::Billing::Integrations::TwoCheckout::Notification
- ActiveMerchant::Billing::Integrations::TwoCheckout::Return
- ActiveMerchant::Billing::Integrations::Valitor
- ActiveMerchant::Billing::Integrations::Valitor::Helper
- ActiveMerchant::Billing::Integrations::Valitor::Notification
- ActiveMerchant::Billing::Integrations::Valitor::ResponseFields
- ActiveMerchant::Billing::Integrations::Valitor::Return
- ActiveMerchant::Billing::Integrations::WorldPay
- ActiveMerchant::Billing::Integrations::WorldPay::Helper
- ActiveMerchant::Billing::Integrations::WorldPay::Notification
- ActiveMerchant::Billing::IridiumGateway
- ActiveMerchant::Billing::JetpayGateway
- ActiveMerchant::Billing::LinkpointGateway
- ActiveMerchant::Billing::MerchantESolutionsGateway
- ActiveMerchant::Billing::MerchantWareGateway
- ActiveMerchant::Billing::ModernPaymentsGateway
- ActiveMerchant::Billing::MonerisGateway
- ActiveMerchant::Billing::NetRegistryGateway
- ActiveMerchant::Billing::NetaxeptGateway
- ActiveMerchant::Billing::NetaxeptGateway::Response
- ActiveMerchant::Billing::NetbillingGateway
- ActiveMerchant::Billing::NmiGateway
- ActiveMerchant::Billing::OptimalPaymentGateway
- ActiveMerchant::Billing::OrbitalSoftDescriptors
- ActiveMerchant::Billing::PayJunctionGateway
- ActiveMerchant::Billing::PaySecureGateway
- ActiveMerchant::Billing::PayboxDirectGateway
- ActiveMerchant::Billing::PayflowCommonAPI
- ActiveMerchant::Billing::PayflowExpressResponse
- ActiveMerchant::Billing::PayflowExpressUkGateway
- ActiveMerchant::Billing::PayflowGateway
- ActiveMerchant::Billing::PayflowResponse
- ActiveMerchant::Billing::PayflowUkGateway
- ActiveMerchant::Billing::PaymentExpressGateway
- ActiveMerchant::Billing::PaymentExpressResponse
- ActiveMerchant::Billing::PaypalCaGateway
- ActiveMerchant::Billing::PaypalCommonAPI
- ActiveMerchant::Billing::PaypalExpressCommon
- ActiveMerchant::Billing::PaypalExpressGateway
- ActiveMerchant::Billing::PaypalExpressResponse
- ActiveMerchant::Billing::PaypalGateway
- ActiveMerchant::Billing::PlugnpayGateway
- ActiveMerchant::Billing::PlugnpayGateway::PlugnpayPostData
- ActiveMerchant::Billing::PsigateGateway
- ActiveMerchant::Billing::QbmsGateway
- ActiveMerchant::Billing::QuantumGateway
- ActiveMerchant::Billing::QuickpayGateway
- ActiveMerchant::Billing::RealexGateway
- ActiveMerchant::Billing::Response
- ActiveMerchant::Billing::SageGateway
- ActiveMerchant::Billing::SagePayGateway
- ActiveMerchant::Billing::SallieMaeGateway
- ActiveMerchant::Billing::SamuraiGateway
- ActiveMerchant::Billing::SecureNetGateway
- ActiveMerchant::Billing::SecurePayAuGateway
- ActiveMerchant::Billing::SecurePayGateway
- ActiveMerchant::Billing::SecurePayTechGateway
- ActiveMerchant::Billing::SecurePayTechGateway::SecurePayTechPostData
- ActiveMerchant::Billing::SkipJackGateway
- ActiveMerchant::Billing::StripeGateway
- ActiveMerchant::Billing::TransFirstGateway
- ActiveMerchant::Billing::TransaxGateway
- ActiveMerchant::Billing::TrustCommerceGateway
- ActiveMerchant::Billing::UsaEpayAdvancedGateway
- ActiveMerchant::Billing::UsaEpayGateway
- ActiveMerchant::Billing::UsaEpayTransactionGateway
- ActiveMerchant::Billing::VerifiGateway
- ActiveMerchant::Billing::VerifiGateway::VerifiPostData
- ActiveMerchant::Billing::ViaklixGateway
- ActiveMerchant::Billing::WirecardGateway
- ActiveMerchant::Billing::WorldpayGateway
- ActiveMerchant::Billing::WorldpayGateway::MultiResponse
- BraintreeCommon
- OutboundHosts

No matching classes.

# ActiveMerchant::Billing::SageGateway

### Public Class Methods

new(options = {}) click to toggle source

Creates a new SageGateway

The gateway requires that a valid login and password be passed in the `options` hash.

#### Options

- `:login` - The Sage Payment Solutions Merchant ID Number.

- `:password` - The Sage Payment Solutions Merchant Key Number.

    # File lib/active_merchant/billing/gateways/sage.rb, line 19
    def initialize(options = {})
      requires!(options, :login, :password)
      @options = options
      super
    end

### Public Instance Methods

authorize(money, credit_card, options = {}) click to toggle source

Performs an authorization transaction

#### Parameters

- `money` - The amount to be authorized as an integer value in cents.

- `credit_card` - The CreditCard object to be used as the funding source for the transaction.

- `options` - A hash of optional parameters.

  - `:order_id` - A unique reference for this order. (maximum of 20 characters).

  - `:email` - The customer's email address

  - `:customer` - The Customer Number for Purchase Card Level II Transactions

  - `:billing_address` - The customer's billing address as a hash of address information.

    - `:address1` - The billing address street

    - `:city` - The billing address city

    - `:state` - The billing address state

    - `:country` - The 2 digit ISO billing address country code

    - `:zip` - The billing address zip code

    - `:phone` - The billing address phone number

    - `:fax` - The billing address fax number

  - `:shipping_address` - The customer's shipping address as a hash of address information.

    - `:name` - The name at the shipping address

    - `:address1` - The shipping address street

    - `:city` - The shipping address city

    - `:state` - The shipping address state code

    - `:country` - The 2 digit ISO shipping address country code

    - `:zip` - The shipping address zip code

  - `:tax` - The tax amount for the transaction as an Integer value in cents. Maps to Sage `T_tax`.

  - `:shipping` - The shipping amount for the transaction as an Integer value in cents. Maps to Sage `T_shipping`.

    # File lib/active_merchant/billing/gateways/sage.rb, line 51
    def authorize(money, credit_card, options = {})
      bankcard.authorize(money, credit_card, options)
    end

capture(money, reference, options = {}) click to toggle source

Captures authorized funds.

#### Parameters

- `money` - The amount to be authorized as an integer value in cents. Sage doesn't support changing the capture amount, so the full amount of the initial transaction will be captured.

- `reference` - The authorization reference string returned by the original transaction's Response#authorization.

    # File lib/active_merchant/billing/gateways/sage.rb, line 104
    def capture(money, reference, options = {})
      bankcard.capture(money, reference, options)
    end

credit(money, source, options = {}) click to toggle source

Performs a credit transaction. (Sage `Credit` transaction).

#### Parameters

- `money` - The amount to be authorized as an integer value in cents.

- `source` - The CreditCard or Check object to be used as the target for the credit.

    # File lib/active_merchant/billing/gateways/sage.rb, line 127
    def credit(money, source, options = {})
      if card_brand(source) == "check"
        virtual_check.credit(money, source, options)
      else
        bankcard.credit(money, source, options)
      end
    end

purchase(money, source, options = {}) click to toggle source

Performs a purchase, which is essentially an authorization and capture in a single operation.

#### Parameters

- `money` - The amount to be authorized as an integer value in cents.

- `source` - The CreditCard or Check object to be used as the funding source for the transaction.

- `options` - A hash of optional parameters.

  - `:order_id` - A unique reference for this order. (maximum of 20 characters).

  - `:email` - The customer's email address

  - `:customer` - The Customer Number for Purchase Card Level II Transactions

  - `:billing_address` - The customer's billing address as a hash of address information.

    - `:address1` - The billing address street

    - `:city` - The billing address city

    - `:state` - The billing address state

    - `:country` - The 2 digit ISO billing address country code

    - `:zip` - The billing address zip code

    - `:phone` - The billing address phone number

    - `:fax` - The billing address fax number

  - `:shipping_address` - The customer's shipping address as a hash of address information.

    - `:name` - The name at the shipping address

    - `:address1` - The shipping address street

    - `:city` - The shipping address city

    - `:state` - The shipping address state code

    - `:country` - The 2 digit ISO shipping address country code

    - `:zip` - The shipping address zip code

  - `:tax` - The tax amount for the transaction as an integer value in cents. Maps to Sage `T_tax`.

  - `:shipping` - The shipping amount for the transaction as an integer value in cents. Maps to Sage `T_shipping`.

#### Additional options in the `options` hash for when using a Check as the funding source

- `:originator_id` - 10 digit originator. If not provided, Sage will use the default Originator ID for the specific customer type.

- `:addenda` - Transaction addenda.

- `:ssn` - The customer's Social Security Number.

- `:drivers_license_state` - The customer's drivers license state code.

- `:drivers_license_number` - The customer's drivers license number.

- `:date_of_birth` - The customer's date of birth as a Time or Date object or a string in the format `mm/dd/yyyy`.

    # File lib/active_merchant/billing/gateways/sage.rb, line 90
    def purchase(money, source, options = {})
      if card_brand(source) == "check"
        virtual_check.purchase(money, source, options)
      else
        bankcard.purchase(money, source, options)
      end
    end

void(reference, options = {}) click to toggle source

Voids a prior transaction. Works for both CreditCard and Check transactions.

#### Parameters

- `reference` - The authorization reference string returned by the original transaction's Response#authorization.

    # File lib/active_merchant/billing/gateways/sage.rb, line 113
    def void(reference, options = {})
      if reference.split(";").last == "virtual_check"
        virtual_check.void(reference, options)
      else
        bankcard.void(reference, options)
      end
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.