Class: ActiveMerchant::Billing::QbmsGateway
- Defined in:
- lib/active_merchant/billing/gateways/qbms.rb
Constant Summary collapse
- API_VERSION =
'4.0'
- TYPES =
{ authorize: 'CustomerCreditCardAuth', capture: 'CustomerCreditCardCapture', purchase: 'CustomerCreditCardCharge', refund: 'CustomerCreditCardTxnVoidOrRefund', void: 'CustomerCreditCardTxnVoid', query: 'MerchantAccountQuery' }
Constants inherited from Gateway
Gateway::CREDIT_DEPRECATION_MESSAGE, Gateway::RECURRING_DEPRECATION_MESSAGE, Gateway::STANDARD_ERROR_CODE
Instance Attribute Summary
Attributes inherited from Gateway
Instance Method Summary collapse
-
#authorize(money, creditcard, options = {}) ⇒ Object
Performs an authorization, which reserves the funds on the customer’s credit card, but does not charge the card.
-
#capture(money, authorization, options = {}) ⇒ Object
Captures the funds from an authorized transaction.
-
#credit(money, identification, options = {}) ⇒ Object
Credit an account.
-
#initialize(options = {}) ⇒ QbmsGateway
constructor
Creates a new QbmsGateway.
-
#purchase(money, creditcard, options = {}) ⇒ Object
Perform a purchase, which is essentially an authorization and capture in a single operation.
-
#query ⇒ Object
Query the merchant account status.
- #refund(money, identification, options = {}) ⇒ Object
- #scrub(transcript) ⇒ Object
- #supports_scrubbing? ⇒ Boolean
-
#void(authorization, options = {}) ⇒ Object
Void a previous transaction.
Methods inherited from Gateway
#add_field_to_post_if_present, #add_fields_to_post_if_present, #card_brand, card_brand, #generate_unique_id, inherited, #supported_countries, supported_countries, supported_countries=, supports?, #supports_network_tokenization?, #test?
Methods included from CreditCardFormatting
Methods included from PostsData
included, #raw_ssl_request, #ssl_get, #ssl_post, #ssl_request
Constructor Details
#initialize(options = {}) ⇒ QbmsGateway
Creates a new QbmsGateway
The gateway requires that a valid app id, app login, and ticket be passed in the options
hash.
Options
-
:login
– The App Login (REQUIRED) -
:ticket
– The Connection Ticket. (REQUIRED) -
:pem
– The PEM-encoded SSL client key and certificate. (REQUIRED) -
:test
–true
orfalse
. If true, perform transactions against the test server. Otherwise, perform transactions against the production server.
39 40 41 42 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 39 def initialize( = {}) requires!(, :login, :ticket) super end |
Instance Method Details
#authorize(money, creditcard, options = {}) ⇒ Object
Performs an authorization, which reserves the funds on the customer’s credit card, but does not charge the card.
Parameters
-
money
– The amount to be authorized as an Integer value in cents. -
creditcard
– The CreditCard details for the transaction. -
options
– A hash of optional parameters.
53 54 55 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 53 def (money, creditcard, = {}) commit(:authorize, money, .merge(credit_card: creditcard)) end |
#capture(money, authorization, options = {}) ⇒ Object
Captures the funds from an authorized transaction.
Parameters
-
money
– The amount to be captured as an Integer value in cents. -
authorization
– The authorization returned from the previous authorize request.
76 77 78 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 76 def capture(money, , = {}) commit(:capture, money, .merge(transaction_id: )) end |
#credit(money, identification, options = {}) ⇒ Object
Credit an account.
This transaction is also referred to as a Refund and indicates to the gateway that money should flow from the merchant to the customer.
Parameters
-
money
– The amount to be credited to the customer as an Integer value in cents. -
identification
– The ID of the original transaction against which the credit is being issued. -
options
– A hash of parameters.
102 103 104 105 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 102 def credit(money, identification, = {}) ActiveMerchant.deprecated CREDIT_DEPRECATION_MESSAGE refund(money, identification, {}) end |
#purchase(money, creditcard, options = {}) ⇒ Object
Perform a purchase, which is essentially an authorization and capture in a single operation.
Parameters
-
money
– The amount to be purchased as an Integer value in cents. -
creditcard
– The CreditCard details for the transaction. -
options
– A hash of optional parameters.
65 66 67 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 65 def purchase(money, creditcard, = {}) commit(:purchase, money, .merge(credit_card: creditcard)) end |
#query ⇒ Object
Query the merchant account status
112 113 114 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 112 def query commit(:query, nil, {}) end |
#refund(money, identification, options = {}) ⇒ Object
107 108 109 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 107 def refund(money, identification, = {}) commit(:refund, money, .merge(transaction_id: identification)) end |
#scrub(transcript) ⇒ Object
120 121 122 123 124 125 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 120 def scrub(transcript) transcript. gsub(%r((<ConnectionTicket>)[^<]*(</ConnectionTicket>))i, '\1[FILTERED]\2'). gsub(%r((<CreditCardNumber>)[^<]*(</CreditCardNumber>))i, '\1[FILTERED]\2'). gsub(%r((<CardSecurityCode>)[^<]*(</CardSecurityCode>))i, '\1[FILTERED]\2') end |
#supports_scrubbing? ⇒ Boolean
116 117 118 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 116 def supports_scrubbing? true end |
#void(authorization, options = {}) ⇒ Object
Void a previous transaction
Parameters
-
authorization
- The authorization returned from the previous authorize request.
86 87 88 |
# File 'lib/active_merchant/billing/gateways/qbms.rb', line 86 def void(, = {}) commit(:void, nil, .merge(transaction_id: )) end |