Class: Pay::Abacatepay::Webhooks::Event
- Inherits:
-
Object
- Object
- Pay::Abacatepay::Webhooks::Event
- Defined in:
- lib/pay/abacatepay/webhooks/event.rb
Instance Attribute Summary collapse
-
#raw ⇒ Object
readonly
Returns the value of attribute raw.
Instance Method Summary collapse
- #api_version ⇒ Object
- #canceled_at ⇒ Object
- #charge_amount_cents ⇒ Object
- #charge_id ⇒ Object
- #charge_status ⇒ Object
- #checkout_amount_cents ⇒ Object
- #checkout_frequency ⇒ Object
- #checkout_id ⇒ Object
- #checkout_methods ⇒ Object
- #checkout_paid_amount_cents ⇒ Object
- #checkout_platform_fee_cents ⇒ Object
- #checkout_status ⇒ Object
- #checkout_url ⇒ Object
- #customer_email ⇒ Object
- #customer_id ⇒ Object
- #customer_name ⇒ Object
- #customer_tax_id ⇒ Object
- #data ⇒ Object
- #dev_mode? ⇒ Boolean
- #frequency ⇒ Object
- #id ⇒ Object
-
#initialize(raw) ⇒ Event
constructor
A new instance of Event.
- #interval ⇒ Object
- #paid_amount_cents ⇒ Object
- #paid_at ⇒ Object
- #platform_fee_cents ⇒ Object
- #product_id ⇒ Object
- #subscription_amount_cents ⇒ Object
- #subscription_created_at ⇒ Object
- #subscription_currency ⇒ Object
- #subscription_id ⇒ Object
- #subscription_status ⇒ Object
- #subscription_updated_at ⇒ Object
- #type ⇒ Object
Constructor Details
#initialize(raw) ⇒ Event
Returns a new instance of Event.
5 6 7 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 5 def initialize(raw) @raw = raw.is_a?(Hash) ? raw : {} end |
Instance Attribute Details
#raw ⇒ Object (readonly)
Returns the value of attribute raw.
9 10 11 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 9 def raw @raw end |
Instance Method Details
#api_version ⇒ Object
17 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 17 def api_version = @raw["apiVersion"] |
#canceled_at ⇒ Object
35 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 35 def canceled_at = parse_time(data.dig("subscription", "canceledAt")) |
#charge_amount_cents ⇒ Object
47 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 47 def charge_amount_cents = data.dig("payment", "amount") |
#charge_id ⇒ Object
45 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 45 def charge_id = data.dig("payment", "id") |
#charge_status ⇒ Object
53 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 53 def charge_status = data.dig("payment", "status") |
#checkout_amount_cents ⇒ Object
65 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 65 def checkout_amount_cents = data.dig("checkout", "amount") |
#checkout_frequency ⇒ Object
59 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 59 def checkout_frequency = data.dig("checkout", "frequency") |
#checkout_id ⇒ Object
57 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 57 def checkout_id = data.dig("checkout", "id") |
#checkout_methods ⇒ Object
71 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 71 def checkout_methods = data.dig("checkout", "methods") |
#checkout_paid_amount_cents ⇒ Object
67 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 67 def checkout_paid_amount_cents = data.dig("checkout", "paidAmount") |
#checkout_platform_fee_cents ⇒ Object
69 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 69 def checkout_platform_fee_cents = data.dig("checkout", "platformFee") |
#checkout_status ⇒ Object
61 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 61 def checkout_status = data.dig("checkout", "status") |
#checkout_url ⇒ Object
63 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 63 def checkout_url = data.dig("checkout", "url") |
#customer_email ⇒ Object
39 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 39 def customer_email = data.dig("customer", "email") |
#customer_id ⇒ Object
37 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 37 def customer_id = data.dig("customer", "id") |
#customer_name ⇒ Object
41 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 41 def customer_name = data.dig("customer", "name") |
#customer_tax_id ⇒ Object
43 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 43 def customer_tax_id = data.dig("customer", "taxId") |
#data ⇒ Object
15 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 15 def data = @raw["data"] || {} |
#dev_mode? ⇒ Boolean
19 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 19 def dev_mode? = @raw["devMode"] == true |
#frequency ⇒ Object
29 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 29 def frequency = data.dig("subscription", "frequency") |
#id ⇒ Object
11 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 11 def id = @raw["id"] |
#interval ⇒ Object
75 76 77 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 75 def interval Pay::Abacatepay::Frequency.to_interval(frequency) end |
#paid_amount_cents ⇒ Object
49 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 49 def paid_amount_cents = data.dig("payment", "paidAmount") |
#paid_at ⇒ Object
55 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 55 def paid_at = parse_time(data.dig("payment", "updatedAt")) |
#platform_fee_cents ⇒ Object
51 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 51 def platform_fee_cents = data.dig("payment", "platformFee") |
#product_id ⇒ Object
73 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 73 def product_id = data.dig("checkout", "items", 0, "id") |
#subscription_amount_cents ⇒ Object
25 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 25 def subscription_amount_cents = data.dig("subscription", "amount") |
#subscription_created_at ⇒ Object
31 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 31 def subscription_created_at = parse_time(data.dig("subscription", "createdAt")) |
#subscription_currency ⇒ Object
27 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 27 def subscription_currency = data.dig("subscription", "currency") || "BRL" |
#subscription_id ⇒ Object
21 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 21 def subscription_id = data.dig("subscription", "id") |
#subscription_status ⇒ Object
23 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 23 def subscription_status = data.dig("subscription", "status") |
#subscription_updated_at ⇒ Object
33 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 33 def subscription_updated_at = parse_time(data.dig("subscription", "updatedAt")) |
#type ⇒ Object
13 |
# File 'lib/pay/abacatepay/webhooks/event.rb', line 13 def type = @raw["event"] || @raw["type"] |