class PaysonAPI::V1::Responses::IPN
Attributes
currency[RW]
custom[RW]
fundings[RW]
guarantee_deadline_at[RW]
guarantee_status[RW]
hash[RW]
invoice_status[RW]
order_items[RW]
payment_type[RW]
purchase_id[RW]
raw[RW]
receivers[RW]
sender_email[RW]
shipping_address[RW]
status[RW]
token[RW]
tracking_id[RW]
Public Class Methods
new(raw_data)
click to toggle source
# File lib/payson_api/v1/responses/ipn.rb, line 12 def initialize(raw_data) @raw = raw_data data_hash = PaysonAPI::V1::Client.params_to_hash(raw_data) @purchase_id = data_hash['purchaseId'] @payment_type = data_hash['type'] @comment = data_hash['custom'] @tracking_id = data_hash['trackingId'] @currency = data_hash['currencyCode'] @sender_email = data_hash['senderEmail'] @status = data_hash['status'] @token = data_hash['token'] @fundings = PaysonAPI::V1::Funding.parse(data_hash) @receivers = PaysonAPI::V1::Receiver.parse(data_hash) @order_items = PaysonAPI::V1::OrderItem.parse(data_hash) @hash = data_hash['HASH'] append_payment_type_conditionals end
Public Instance Methods
append_payment_type_conditionals()
click to toggle source
# File lib/payson_api/v1/responses/ipn.rb, line 30 def append_payment_type_conditionals case @payment_type when 'GUARANTEE' @guarantee_status = data_hash['guaranteeStatus'] @guarantee_deadline_at = Time.parse(data_hash['guaranteeDeadlineTimestamp']) when 'INVOICE' @invoice_status = data_hash['invoiceStatus'] @shipping_address = PaysonAPI::V1::ShippingAddress.parse(data_hash) end end