Class: Braintree::Transaction

Inherits:
Object
  • Object
show all
Includes:
BaseModule, Util::IdEquality
Defined in:
lib/braintree/transaction.rb,
lib/braintree/transaction/installment.rb,
lib/braintree/transaction/paypal_details.rb,
lib/braintree/transaction/status_details.rb,
lib/braintree/transaction/address_details.rb,
lib/braintree/transaction/package_details.rb,
lib/braintree/transaction/payment_receipt.rb,
lib/braintree/transaction/customer_details.rb,
lib/braintree/transaction/apple_pay_details.rb,
lib/braintree/transaction/google_pay_details.rb,
lib/braintree/transaction/credit_card_details.rb,
lib/braintree/transaction/paypal_here_details.rb,
lib/braintree/transaction/disbursement_details.rb,
lib/braintree/transaction/subscription_details.rb,
lib/braintree/transaction/local_payment_details.rb,
lib/braintree/transaction/venmo_account_details.rb,
lib/braintree/transaction/installment/adjustment.rb,
lib/braintree/transaction/us_bank_account_details.rb,
lib/braintree/transaction/samsung_pay_card_details.rb,
lib/braintree/transaction/meta_checkout_card_details.rb,
lib/braintree/transaction/visa_checkout_card_details.rb,
lib/braintree/transaction/meta_checkout_token_details.rb,
lib/braintree/transaction/payment_receipt/merchant_address.rb,
lib/braintree/transaction/payment_receipt/card_present_data.rb,
lib/braintree/transaction/sepa_direct_debit_account_details.rb

Direct Known Subclasses

TestTransaction

Defined Under Namespace

Modules: AdditionalCharge, CreatedUsing, EscrowStatus, ExternalVault, GatewayRejectionReason, IndustryType, Source, Status, Type Classes: AddressDetails, ApplePayDetails, CreditCardDetails, CustomerDetails, DisbursementDetails, GooglePayDetails, Installment, LocalPaymentDetails, MetaCheckoutCardDetails, MetaCheckoutTokenDetails, PackageDetails, PayPalDetails, PayPalHereDetails, PaymentReceipt, SamsungPayCardDetails, SepaDirectDebitAccountDetails, StatusDetails, SubscriptionDetails, UsBankAccountDetails, VenmoAccountDetails, VisaCheckoutCardDetails

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Util::IdEquality

#==

Methods included from BaseModule

included

Methods included from BaseModule::Methods

#copy_instance_variables_from_object, #return_object_or_raise, #set_instance_variables_from_hash, #singleton_class

Constructor Details

#initialize(gateway, attributes) ⇒ Transaction

Returns a new instance of Transaction.



312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
# File 'lib/braintree/transaction.rb', line 312

def initialize(gateway, attributes)
  @gateway = gateway
  set_instance_variables_from_hash(attributes)

  @amount = Util.to_big_decimal(amount)
  @apple_pay_details = ApplePayDetails.new(@apple_pay)
  @billing_details = AddressDetails.new(@billing)
  @credit_card_details = CreditCardDetails.new(@credit_card)
  @network_token_details = CreditCardDetails.new(@network_token)
  @custom_fields = attributes[:custom_fields].is_a?(Hash) ? attributes[:custom_fields] : {}
  @customer_details = CustomerDetails.new(@customer)
  @descriptor = Descriptor.new(@descriptor)
  @disbursement_details = DisbursementDetails.new(@disbursement_details)
  @google_pay_details = GooglePayDetails.new(@google_pay_card)
  @local_payment_details = LocalPaymentDetails.new(@local_payment)
  @meta_checkout_card_details = MetaCheckoutCardDetails.new(attributes[:meta_checkout_card])
  @meta_checkout_token_details = MetaCheckoutTokenDetails.new(attributes[:meta_checkout_token])
  @payment_instrument_type = attributes[:payment_instrument_type]
  @payment_receipt = PaymentReceipt.new(attributes[:payment_receipt]) if attributes[:payment_receipt]
  @paypal_details = PayPalDetails.new(@paypal)
  @paypal_here_details = PayPalHereDetails.new(@paypal_here)
  @samsung_pay_card_details = SamsungPayCardDetails.new(attributes[:samsung_pay_card])
  @sca_exemption_requested = attributes[:sca_exemption_requested]
  @sepa_direct_debit_account_details = SepaDirectDebitAccountDetails.new(@sepa_debit_account_detail)
  @service_fee_amount = Util.to_big_decimal(service_fee_amount)
  @packages = attributes[:shipments] ? attributes[:shipments].map { |pd| PackageDetails.new(pd) } : []
  @shipping_details = AddressDetails.new(@shipping)
  @status_history = attributes[:status_history] ? attributes[:status_history].map { |s| StatusDetails.new(s) } : []
  @subscription_details = SubscriptionDetails.new(@subscription)
  @tax_amount = Util.to_big_decimal(tax_amount)
  @venmo_account_details = VenmoAccountDetails.new(@venmo_account)
  @visa_checkout_card_details = VisaCheckoutCardDetails.new(attributes[:visa_checkout_card])

  @facilitated_details = FacilitatedDetails.new(attributes[:facilitated_details]) if attributes[:facilitated_details]
  @facilitator_details = FacilitatorDetails.new(attributes[:facilitator_details]) if attributes[:facilitator_details]
  @risk_data = RiskData.new(attributes[:risk_data]) if attributes[:risk_data]
  @three_d_secure_info = ThreeDSecureInfo.new(attributes[:three_d_secure_info]) if attributes[:three_d_secure_info]
  @us_bank_account_details = UsBankAccountDetails.new(attributes[:us_bank_account]) if attributes[:us_bank_account]

  add_ons.map! { |attrs| AddOn._new(attrs) } if add_ons
  authorization_adjustments.map! { |attrs| AuthorizationAdjustment._new(attrs) } if authorization_adjustments
  discounts.map! { |attrs| Discount._new(attrs) } if discounts
  disputes.map! { |attrs| Dispute._new(attrs) } if disputes
  installments.map! { |attrs| Installment.new(attrs) } if installments
  refunded_installments.map! { |attrs| Installment.new(attrs) } if refunded_installments
end

Instance Attribute Details

#ach_return_codeObject (readonly)

Returns the value of attribute ach_return_code.



94
95
96
# File 'lib/braintree/transaction.rb', line 94

def ach_return_code
  @ach_return_code
end

#ach_return_responsesObject (readonly)

Returns the value of attribute ach_return_responses.



95
96
97
# File 'lib/braintree/transaction.rb', line 95

def ach_return_responses
  @ach_return_responses
end

#acquirer_reference_numberObject (readonly)

Returns the value of attribute acquirer_reference_number.



96
97
98
# File 'lib/braintree/transaction.rb', line 96

def acquirer_reference_number
  @acquirer_reference_number
end

#add_onsObject (readonly)

Returns the value of attribute add_ons.



97
98
99
# File 'lib/braintree/transaction.rb', line 97

def add_ons
  @add_ons
end

#additional_processor_responseObject (readonly)

The raw response from the processor.



98
99
100
# File 'lib/braintree/transaction.rb', line 98

def additional_processor_response
  @additional_processor_response
end

#amountObject (readonly)

Returns the value of attribute amount.



99
100
101
# File 'lib/braintree/transaction.rb', line 99

def amount
  @amount
end

#apple_pay_detailsObject (readonly)

Returns the value of attribute apple_pay_details.



100
101
102
# File 'lib/braintree/transaction.rb', line 100

def apple_pay_details
  @apple_pay_details
end

#authorization_adjustmentsObject (readonly)

Returns the value of attribute authorization_adjustments.



101
102
103
# File 'lib/braintree/transaction.rb', line 101

def authorization_adjustments
  @authorization_adjustments
end

#authorization_expires_atObject (readonly)

Returns the value of attribute authorization_expires_at.



102
103
104
# File 'lib/braintree/transaction.rb', line 102

def authorization_expires_at
  @authorization_expires_at
end

#authorized_transaction_idObject (readonly)

Returns the value of attribute authorized_transaction_id.



103
104
105
# File 'lib/braintree/transaction.rb', line 103

def authorized_transaction_id
  @authorized_transaction_id
end

#avs_error_response_codeObject (readonly)

Returns the value of attribute avs_error_response_code.



104
105
106
# File 'lib/braintree/transaction.rb', line 104

def avs_error_response_code
  @avs_error_response_code
end

#avs_postal_code_response_codeObject (readonly)

Returns the value of attribute avs_postal_code_response_code.



105
106
107
# File 'lib/braintree/transaction.rb', line 105

def avs_postal_code_response_code
  @avs_postal_code_response_code
end

#avs_street_address_response_codeObject (readonly)

Returns the value of attribute avs_street_address_response_code.



106
107
108
# File 'lib/braintree/transaction.rb', line 106

def avs_street_address_response_code
  @avs_street_address_response_code
end

#billing_detailsObject (readonly)

Returns the value of attribute billing_details.



107
108
109
# File 'lib/braintree/transaction.rb', line 107

def billing_details
  @billing_details
end

#channelObject (readonly)

Returns the value of attribute channel.



108
109
110
# File 'lib/braintree/transaction.rb', line 108

def channel
  @channel
end

#created_atObject (readonly)

Returns the value of attribute created_at.



109
110
111
# File 'lib/braintree/transaction.rb', line 109

def created_at
  @created_at
end

#credit_card_detailsObject (readonly)

Returns the value of attribute credit_card_details.



110
111
112
# File 'lib/braintree/transaction.rb', line 110

def credit_card_details
  @credit_card_details
end

#currency_iso_codeObject (readonly)

Returns the value of attribute currency_iso_code.



111
112
113
# File 'lib/braintree/transaction.rb', line 111

def currency_iso_code
  @currency_iso_code
end

#custom_fieldsObject (readonly)

Returns the value of attribute custom_fields.



112
113
114
# File 'lib/braintree/transaction.rb', line 112

def custom_fields
  @custom_fields
end

#customer_detailsObject (readonly)

Returns the value of attribute customer_details.



113
114
115
# File 'lib/braintree/transaction.rb', line 113

def customer_details
  @customer_details
end

#cvv_response_codeObject (readonly)

Returns the value of attribute cvv_response_code.



114
115
116
# File 'lib/braintree/transaction.rb', line 114

def cvv_response_code
  @cvv_response_code
end

#debit_networkObject (readonly)

Returns the value of attribute debit_network.



115
116
117
# File 'lib/braintree/transaction.rb', line 115

def debit_network
  @debit_network
end

#descriptorObject (readonly)

Returns the value of attribute descriptor.



116
117
118
# File 'lib/braintree/transaction.rb', line 116

def descriptor
  @descriptor
end

#disbursement_detailsObject (readonly)

Returns the value of attribute disbursement_details.



117
118
119
# File 'lib/braintree/transaction.rb', line 117

def disbursement_details
  @disbursement_details
end

#discount_amountObject (readonly)

Returns the value of attribute discount_amount.



118
119
120
# File 'lib/braintree/transaction.rb', line 118

def discount_amount
  @discount_amount
end

#discountsObject (readonly)

Returns the value of attribute discounts.



119
120
121
# File 'lib/braintree/transaction.rb', line 119

def discounts
  @discounts
end

#disputesObject (readonly)

Returns the value of attribute disputes.



120
121
122
# File 'lib/braintree/transaction.rb', line 120

def disputes
  @disputes
end

#escrow_statusObject (readonly)

Returns the value of attribute escrow_status.



121
122
123
# File 'lib/braintree/transaction.rb', line 121

def escrow_status
  @escrow_status
end

#facilitated_detailsObject (readonly)

Returns the value of attribute facilitated_details.



122
123
124
# File 'lib/braintree/transaction.rb', line 122

def facilitated_details
  @facilitated_details
end

#facilitator_detailsObject (readonly)

Returns the value of attribute facilitator_details.



123
124
125
# File 'lib/braintree/transaction.rb', line 123

def facilitator_details
  @facilitator_details
end

#gateway_rejection_reasonObject (readonly)

Returns the value of attribute gateway_rejection_reason.



124
125
126
# File 'lib/braintree/transaction.rb', line 124

def gateway_rejection_reason
  @gateway_rejection_reason
end

#google_pay_detailsObject (readonly)

Returns the value of attribute google_pay_details.



125
126
127
# File 'lib/braintree/transaction.rb', line 125

def google_pay_details
  @google_pay_details
end

#graphql_idObject (readonly)

Returns the value of attribute graphql_id.



126
127
128
# File 'lib/braintree/transaction.rb', line 126

def graphql_id
  @graphql_id
end

#idObject (readonly)

Returns the value of attribute id.



127
128
129
# File 'lib/braintree/transaction.rb', line 127

def id
  @id
end

#installment_countObject (readonly)

Returns the value of attribute installment_count.



128
129
130
# File 'lib/braintree/transaction.rb', line 128

def installment_count
  @installment_count
end

#installmentsObject (readonly)

Returns the value of attribute installments.



129
130
131
# File 'lib/braintree/transaction.rb', line 129

def installments
  @installments
end

#local_payment_detailsObject (readonly)

Returns the value of attribute local_payment_details.



130
131
132
# File 'lib/braintree/transaction.rb', line 130

def local_payment_details
  @local_payment_details
end

#merchant_account_idObject (readonly)

Returns the value of attribute merchant_account_id.



131
132
133
# File 'lib/braintree/transaction.rb', line 131

def 
  @merchant_account_id
end

#merchant_advice_codeObject (readonly)

Returns the value of attribute merchant_advice_code.



132
133
134
# File 'lib/braintree/transaction.rb', line 132

def merchant_advice_code
  @merchant_advice_code
end

#merchant_advice_code_textObject (readonly)

Returns the value of attribute merchant_advice_code_text.



133
134
135
# File 'lib/braintree/transaction.rb', line 133

def merchant_advice_code_text
  @merchant_advice_code_text
end

#meta_checkout_card_detailsObject (readonly)

Returns the value of attribute meta_checkout_card_details.



134
135
136
# File 'lib/braintree/transaction.rb', line 134

def meta_checkout_card_details
  @meta_checkout_card_details
end

#meta_checkout_token_detailsObject (readonly)

Returns the value of attribute meta_checkout_token_details.



135
136
137
# File 'lib/braintree/transaction.rb', line 135

def meta_checkout_token_details
  @meta_checkout_token_details
end

#network_response_codeObject (readonly)

Response code from the card network



136
137
138
# File 'lib/braintree/transaction.rb', line 136

def network_response_code
  @network_response_code
end

#network_response_textObject (readonly)

Response text from the card network



137
138
139
# File 'lib/braintree/transaction.rb', line 137

def network_response_text
  @network_response_text
end

#network_token_detailsObject (readonly)

Returns the value of attribute network_token_details.



138
139
140
# File 'lib/braintree/transaction.rb', line 138

def network_token_details
  @network_token_details
end

#network_transaction_idObject (readonly)

Returns the value of attribute network_transaction_id.



139
140
141
# File 'lib/braintree/transaction.rb', line 139

def network_transaction_id
  @network_transaction_id
end

#order_idObject (readonly)

Returns the value of attribute order_id.



140
141
142
# File 'lib/braintree/transaction.rb', line 140

def order_id
  @order_id
end

#packagesObject (readonly)

Returns the value of attribute packages.



141
142
143
# File 'lib/braintree/transaction.rb', line 141

def packages
  @packages
end

#partial_settlement_transaction_idsObject (readonly)

Returns the value of attribute partial_settlement_transaction_ids.



142
143
144
# File 'lib/braintree/transaction.rb', line 142

def partial_settlement_transaction_ids
  @partial_settlement_transaction_ids
end

#payment_instrument_typeObject (readonly)

Returns the value of attribute payment_instrument_type.



143
144
145
# File 'lib/braintree/transaction.rb', line 143

def payment_instrument_type
  @payment_instrument_type
end

#payment_receiptObject (readonly)

Returns the value of attribute payment_receipt.



144
145
146
# File 'lib/braintree/transaction.rb', line 144

def payment_receipt
  @payment_receipt
end

#paypal_detailsObject (readonly)

Returns the value of attribute paypal_details.



145
146
147
# File 'lib/braintree/transaction.rb', line 145

def paypal_details
  @paypal_details
end

#paypal_here_detailsObject (readonly)

Returns the value of attribute paypal_here_details.



146
147
148
# File 'lib/braintree/transaction.rb', line 146

def paypal_here_details
  @paypal_here_details
end

#plan_idObject (readonly)

Returns the value of attribute plan_id.



147
148
149
# File 'lib/braintree/transaction.rb', line 147

def plan_id
  @plan_id
end

#processor_authorization_codeObject (readonly)

Returns the value of attribute processor_authorization_code.



148
149
150
# File 'lib/braintree/transaction.rb', line 148

def processor_authorization_code
  @processor_authorization_code
end

#processor_response_codeObject (readonly)

Returns the value of attribute processor_response_code.



149
150
151
# File 'lib/braintree/transaction.rb', line 149

def processor_response_code
  @processor_response_code
end

#processor_response_textObject (readonly)

Returns the value of attribute processor_response_text.



150
151
152
# File 'lib/braintree/transaction.rb', line 150

def processor_response_text
  @processor_response_text
end

#processor_response_typeObject (readonly)

Returns the value of attribute processor_response_type.



151
152
153
# File 'lib/braintree/transaction.rb', line 151

def processor_response_type
  @processor_response_type
end

#processor_settlement_response_codeObject (readonly)

Returns the value of attribute processor_settlement_response_code.



152
153
154
# File 'lib/braintree/transaction.rb', line 152

def processor_settlement_response_code
  @processor_settlement_response_code
end

#processor_settlement_response_textObject (readonly)

Returns the value of attribute processor_settlement_response_text.



153
154
155
# File 'lib/braintree/transaction.rb', line 153

def processor_settlement_response_text
  @processor_settlement_response_text
end

#product_skuObject (readonly)

Returns the value of attribute product_sku.



154
155
156
# File 'lib/braintree/transaction.rb', line 154

def product_sku
  @product_sku
end

#purchase_order_numberObject (readonly)

Returns the value of attribute purchase_order_number.



155
156
157
# File 'lib/braintree/transaction.rb', line 155

def purchase_order_number
  @purchase_order_number
end

#recurringObject (readonly)

Returns the value of attribute recurring.



156
157
158
# File 'lib/braintree/transaction.rb', line 156

def recurring
  @recurring
end

#refund_idsObject (readonly)

Returns the value of attribute refund_ids.



157
158
159
# File 'lib/braintree/transaction.rb', line 157

def refund_ids
  @refund_ids
end

#refunded_installmentsObject (readonly)

Returns the value of attribute refunded_installments.



158
159
160
# File 'lib/braintree/transaction.rb', line 158

def refunded_installments
  @refunded_installments
end

#refunded_transaction_idObject (readonly)

Returns the value of attribute refunded_transaction_id.



159
160
161
# File 'lib/braintree/transaction.rb', line 159

def refunded_transaction_id
  @refunded_transaction_id
end

#retriedObject (readonly)

Returns the value of attribute retried.



160
161
162
# File 'lib/braintree/transaction.rb', line 160

def retried
  @retried
end

#retried_transaction_idObject (readonly)

the primary/parent transaction id of any retried transaction



161
162
163
# File 'lib/braintree/transaction.rb', line 161

def retried_transaction_id
  @retried_transaction_id
end

#retrieval_reference_numberObject (readonly)

Returns the value of attribute retrieval_reference_number.



162
163
164
# File 'lib/braintree/transaction.rb', line 162

def retrieval_reference_number
  @retrieval_reference_number
end

#retry_idsObject (readonly)

all retried transactions ids for a primary transaction



163
164
165
# File 'lib/braintree/transaction.rb', line 163

def retry_ids
  @retry_ids
end

#risk_dataObject (readonly)

Returns the value of attribute risk_data.



164
165
166
# File 'lib/braintree/transaction.rb', line 164

def risk_data
  @risk_data
end

#samsung_pay_card_detailsObject (readonly)

Returns the value of attribute samsung_pay_card_details.



165
166
167
# File 'lib/braintree/transaction.rb', line 165

def samsung_pay_card_details
  @samsung_pay_card_details
end

#sca_exemption_requestedObject (readonly)

Returns the value of attribute sca_exemption_requested.



166
167
168
# File 'lib/braintree/transaction.rb', line 166

def sca_exemption_requested
  @sca_exemption_requested
end

#sepa_direct_debit_account_detailsObject (readonly)

Returns the value of attribute sepa_direct_debit_account_details.



167
168
169
# File 'lib/braintree/transaction.rb', line 167

def 
  @sepa_direct_debit_account_details
end

#sepa_direct_debit_return_codeObject (readonly)

Returns the value of attribute sepa_direct_debit_return_code.



168
169
170
# File 'lib/braintree/transaction.rb', line 168

def sepa_direct_debit_return_code
  @sepa_direct_debit_return_code
end

#service_fee_amountObject (readonly)

Returns the value of attribute service_fee_amount.



169
170
171
# File 'lib/braintree/transaction.rb', line 169

def service_fee_amount
  @service_fee_amount
end

#settlement_batch_idObject (readonly)

Returns the value of attribute settlement_batch_id.



170
171
172
# File 'lib/braintree/transaction.rb', line 170

def settlement_batch_id
  @settlement_batch_id
end

#shipping_amountObject (readonly)

Returns the value of attribute shipping_amount.



171
172
173
# File 'lib/braintree/transaction.rb', line 171

def shipping_amount
  @shipping_amount
end

#shipping_detailsObject (readonly)

Returns the value of attribute shipping_details.



172
173
174
# File 'lib/braintree/transaction.rb', line 172

def shipping_details
  @shipping_details
end

#ships_from_postal_codeObject (readonly)

Returns the value of attribute ships_from_postal_code.



173
174
175
# File 'lib/braintree/transaction.rb', line 173

def ships_from_postal_code
  @ships_from_postal_code
end

#statusObject (readonly)

See Transaction::Status



174
175
176
# File 'lib/braintree/transaction.rb', line 174

def status
  @status
end

#status_historyObject (readonly)

Returns the value of attribute status_history.



175
176
177
# File 'lib/braintree/transaction.rb', line 175

def status_history
  @status_history
end

#subscription_detailsObject (readonly)

Returns the value of attribute subscription_details.



176
177
178
# File 'lib/braintree/transaction.rb', line 176

def subscription_details
  @subscription_details
end

#subscription_idObject (readonly)

Returns the value of attribute subscription_id.



177
178
179
# File 'lib/braintree/transaction.rb', line 177

def subscription_id
  @subscription_id
end

#tax_amountObject (readonly)

Returns the value of attribute tax_amount.



178
179
180
# File 'lib/braintree/transaction.rb', line 178

def tax_amount
  @tax_amount
end

#tax_exemptObject (readonly)

Returns the value of attribute tax_exempt.



179
180
181
# File 'lib/braintree/transaction.rb', line 179

def tax_exempt
  @tax_exempt
end

#three_d_secure_infoObject (readonly)

Returns the value of attribute three_d_secure_info.



180
181
182
# File 'lib/braintree/transaction.rb', line 180

def three_d_secure_info
  @three_d_secure_info
end

#typeObject (readonly)

Returns the value of attribute type.



181
182
183
# File 'lib/braintree/transaction.rb', line 181

def type
  @type
end

#updated_atObject (readonly)

Returns the value of attribute updated_at.



182
183
184
# File 'lib/braintree/transaction.rb', line 182

def updated_at
  @updated_at
end

#us_bank_account_detailsObject (readonly)

Returns the value of attribute us_bank_account_details.



183
184
185
# File 'lib/braintree/transaction.rb', line 183

def 
  @us_bank_account_details
end

#venmo_account_detailsObject (readonly)

Returns the value of attribute venmo_account_details.



184
185
186
# File 'lib/braintree/transaction.rb', line 184

def 
  @venmo_account_details
end

#visa_checkout_card_detailsObject (readonly)

Returns the value of attribute visa_checkout_card_details.



185
186
187
# File 'lib/braintree/transaction.rb', line 185

def visa_checkout_card_details
  @visa_checkout_card_details
end

#voice_referral_numberObject (readonly)

Returns the value of attribute voice_referral_number.



186
187
188
# File 'lib/braintree/transaction.rb', line 186

def voice_referral_number
  @voice_referral_number
end

Class Method Details

._attributesObject



435
436
437
# File 'lib/braintree/transaction.rb', line 435

def self._attributes
  [:amount, :created_at, :credit_card_details, :customer_details, :id, :status, :subscription_details, :type, :updated_at, :processed_with_network_token?]
end

._new(*args) ⇒ Object



430
431
432
# File 'lib/braintree/transaction.rb', line 430

def _new(*args)
  self.new(*args)
end

.adjust_authorization(*args) ⇒ Object



188
189
190
# File 'lib/braintree/transaction.rb', line 188

def self.adjust_authorization(*args)
  Configuration.gateway.transaction.adjust_authorization(*args)
end

.adjust_authorization!(*args) ⇒ Object



192
193
194
# File 'lib/braintree/transaction.rb', line 192

def self.adjust_authorization!(*args)
  Configuration.gateway.transaction.adjust_authorization!(*args)
end

.cancel_release(*args) ⇒ Object



204
205
206
# File 'lib/braintree/transaction.rb', line 204

def self.cancel_release(*args)
  Configuration.gateway.transaction.cancel_release(*args)
end

.cancel_release!(*args) ⇒ Object



208
209
210
# File 'lib/braintree/transaction.rb', line 208

def self.cancel_release!(*args)
  Configuration.gateway.transaction.cancel_release!(*args)
end

.clone_transaction(*args) ⇒ Object



212
213
214
# File 'lib/braintree/transaction.rb', line 212

def self.clone_transaction(*args)
  Configuration.gateway.transaction.clone_transaction(*args)
end

.clone_transaction!(*args) ⇒ Object



216
217
218
# File 'lib/braintree/transaction.rb', line 216

def self.clone_transaction!(*args)
  Configuration.gateway.transaction.clone_transaction!(*args)
end

.create(*args) ⇒ Object



196
197
198
# File 'lib/braintree/transaction.rb', line 196

def self.create(*args)
  Configuration.gateway.transaction.create(*args)
end

.create!(*args) ⇒ Object



200
201
202
# File 'lib/braintree/transaction.rb', line 200

def self.create!(*args)
  return_object_or_raise(:transaction) { create(*args) }
end

.credit(*args) ⇒ Object



220
221
222
# File 'lib/braintree/transaction.rb', line 220

def self.credit(*args)
  Configuration.gateway.transaction.credit(*args)
end

.credit!(*args) ⇒ Object



224
225
226
# File 'lib/braintree/transaction.rb', line 224

def self.credit!(*args)
  Configuration.gateway.transaction.credit!(*args)
end

.find(*args) ⇒ Object



228
229
230
# File 'lib/braintree/transaction.rb', line 228

def self.find(*args)
  Configuration.gateway.transaction.find(*args)
end

.hold_in_escrow(*args) ⇒ Object



236
237
238
# File 'lib/braintree/transaction.rb', line 236

def self.hold_in_escrow(*args)
  Configuration.gateway.transaction.hold_in_escrow(*args)
end

.hold_in_escrow!(*args) ⇒ Object



240
241
242
# File 'lib/braintree/transaction.rb', line 240

def self.hold_in_escrow!(*args)
  Configuration.gateway.transaction.hold_in_escrow!(*args)
end

.line_items(*args) ⇒ Object



232
233
234
# File 'lib/braintree/transaction.rb', line 232

def self.line_items(*args)
  Configuration.gateway.transaction_line_item.find_all(*args)
end

.package_tracking(*args) ⇒ Object



288
289
290
# File 'lib/braintree/transaction.rb', line 288

def self.package_tracking(*args)
  Configuration.gateway.transaction.package_tracking(*args)
end

.package_tracking!(*args) ⇒ Object



292
293
294
# File 'lib/braintree/transaction.rb', line 292

def self.package_tracking!(*args)
  Configuration.gateway.transaction.package_tracking!(*args)
end

.refund(*args) ⇒ Object



244
245
246
# File 'lib/braintree/transaction.rb', line 244

def self.refund(*args)
  Configuration.gateway.transaction.refund(*args)
end

.refund!(*args) ⇒ Object



248
249
250
# File 'lib/braintree/transaction.rb', line 248

def self.refund!(*args)
  Configuration.gateway.transaction.refund!(*args)
end

.release_from_escrow(*args) ⇒ Object



264
265
266
# File 'lib/braintree/transaction.rb', line 264

def self.release_from_escrow(*args)
  Configuration.gateway.transaction.release_from_escrow(*args)
end

.release_from_escrow!(*args) ⇒ Object



268
269
270
# File 'lib/braintree/transaction.rb', line 268

def self.release_from_escrow!(*args)
  Configuration.gateway.transaction.release_from_escrow!(*args)
end

.sale(*args) ⇒ Object



252
253
254
# File 'lib/braintree/transaction.rb', line 252

def self.sale(*args)
  Configuration.gateway.transaction.sale(*args)
end

.sale!(*args) ⇒ Object



256
257
258
# File 'lib/braintree/transaction.rb', line 256

def self.sale!(*args)
  Configuration.gateway.transaction.sale!(*args)
end

.search(&block) ⇒ Object



260
261
262
# File 'lib/braintree/transaction.rb', line 260

def self.search(&block)
  Configuration.gateway.transaction.search(&block)
end

.submit_for_partial_settlement(*args) ⇒ Object



296
297
298
# File 'lib/braintree/transaction.rb', line 296

def self.submit_for_partial_settlement(*args)
  Configuration.gateway.transaction.submit_for_partial_settlement(*args)
end

.submit_for_partial_settlement!(*args) ⇒ Object



300
301
302
# File 'lib/braintree/transaction.rb', line 300

def self.submit_for_partial_settlement!(*args)
  Configuration.gateway.transaction.submit_for_partial_settlement!(*args)
end

.submit_for_settlement(*args) ⇒ Object



272
273
274
# File 'lib/braintree/transaction.rb', line 272

def self.submit_for_settlement(*args)
  Configuration.gateway.transaction.submit_for_settlement(*args)
end

.submit_for_settlement!(*args) ⇒ Object



276
277
278
# File 'lib/braintree/transaction.rb', line 276

def self.submit_for_settlement!(*args)
  Configuration.gateway.transaction.submit_for_settlement!(*args)
end

.update_details(*args) ⇒ Object



280
281
282
# File 'lib/braintree/transaction.rb', line 280

def self.update_details(*args)
  Configuration.gateway.transaction.update_details(*args)
end

.update_details!(*args) ⇒ Object



284
285
286
# File 'lib/braintree/transaction.rb', line 284

def self.update_details!(*args)
  return_object_or_raise(:transaction) { update_details(*args) }
end

.void(*args) ⇒ Object



304
305
306
# File 'lib/braintree/transaction.rb', line 304

def self.void(*args)
  Configuration.gateway.transaction.void(*args)
end

.void!(*args) ⇒ Object



308
309
310
# File 'lib/braintree/transaction.rb', line 308

def self.void!(*args)
  Configuration.gateway.transaction.void!(*args)
end

Instance Method Details

#disbursed?Boolean

Returns:

  • (Boolean)


380
381
382
# File 'lib/braintree/transaction.rb', line 380

def disbursed?
  @disbursement_details.valid?
end

#inspectObject



359
360
361
362
363
364
365
366
367
368
369
370
# File 'lib/braintree/transaction.rb', line 359

def inspect
  first = [:id, :type, :amount, :status]
  order = first + (self.class._attributes - first)
  nice_attributes = order.map do |attr|
    if attr == :amount
      Util.inspect_amount(self.amount)
    else
      "#{attr}: #{send(attr).inspect}"
    end
  end
  "#<#{self.class} #{nice_attributes.join(', ')}>"
end

#line_itemsObject



372
373
374
# File 'lib/braintree/transaction.rb', line 372

def line_items
  @gateway.transaction_line_item.find_all(id)
end

#processed_with_network_token?Boolean

Returns:

  • (Boolean)


424
425
426
# File 'lib/braintree/transaction.rb', line 424

def processed_with_network_token?
  @processed_with_network_token
end

#refunded?Boolean

Returns:

  • (Boolean)


376
377
378
# File 'lib/braintree/transaction.rb', line 376

def refunded?
  !@refund_id.nil?
end

#vault_billing_addressObject

If this transaction was stored in the vault, or created from vault records, vault_billing_address will return the associated Braintree::Address. Because the vault billing address can be updated after the transaction was created, the attributes on vault_billing_address may not match the attributes on billing_details. NEXT_MAJOR_VERSION these methods are not documented in the developer docs, remove



389
390
391
392
# File 'lib/braintree/transaction.rb', line 389

def vault_billing_address
  return nil if billing_details.id.nil?
  @gateway.address.find(customer_details.id, billing_details.id)
end

#vault_credit_cardObject

If this transaction was stored in the vault, or created from vault records, vault_credit_card will return the associated Braintree::CreditCard. Because the vault credit card can be updated after the transaction was created, the attributes on vault_credit_card may not match the attributes on credit_card_details. NEXT_MAJOR_VERSION these methods are not documented in the developer docs, remove



399
400
401
402
# File 'lib/braintree/transaction.rb', line 399

def vault_credit_card
  return nil if credit_card_details.token.nil?
  @gateway.credit_card.find(credit_card_details.token)
end

#vault_customerObject

If this transaction was stored in the vault, or created from vault records, vault_customer will return the associated Braintree::Customer. Because the vault customer can be updated after the transaction was created, the attributes on vault_customer may not match the attributes on customer_details. NEXT_MAJOR_VERSION these methods are not documented in the developer docs, remove



409
410
411
412
# File 'lib/braintree/transaction.rb', line 409

def vault_customer
  return nil if customer_details.id.nil?
  @gateway.customer.find(customer_details.id)
end

#vault_shipping_addressObject

If this transaction was stored in the vault, or created from vault records, vault_shipping_address will return the associated Braintree::Address. Because the vault shipping address can be updated after the transaction was created, the attributes on vault_shipping_address may not match the attributes on shipping_details. NEXT_MAJOR_VERSION these methods are not documented in the developer docs, remove



419
420
421
422
# File 'lib/braintree/transaction.rb', line 419

def vault_shipping_address
  return nil if shipping_details.id.nil?
  @gateway.address.find(customer_details.id, shipping_details.id)
end