Skip to Content Skip to Search
Methods
C
G
M
O
P
S
T

Instance Public methods

currency()

# File app/serializers/v2/memberships/order_serializer.rb, line 60
def currency
  object.currency
end

grand_total()

# File app/serializers/v2/memberships/order_serializer.rb, line 44
def grand_total
  ::Service::Money.new(grand_total_cents, ms_object.plan.currency).amount_value
end

grand_total_cents()

# File app/serializers/v2/memberships/order_serializer.rb, line 48
def grand_total_cents
  object.total.to_i
end

ms_object()

# File app/serializers/v2/memberships/order_serializer.rb, line 68
def ms_object
  object.ms_order
end

order()

# File app/serializers/v2/memberships/order_serializer.rb, line 11
def order
  {
    id: object.id,
    grand_total: grand_total,
    grand_total_cents: grand_total_cents,
    sub_total: sub_total,
    sub_total_cents: sub_total_cents,
    currency:
  }
end

payment_intent_client_secret()

# File app/serializers/v2/memberships/order_serializer.rb, line 31
def payment_intent_client_secret
  case stripe_object.object
  when "subscription"
    stripe_object.latest_invoice.payment_intent.client_secret
  when "payment_intent"
    stripe_object.client_secret
  end
end

setup_intent_client_secret()

# File app/serializers/v2/memberships/order_serializer.rb, line 40
def setup_intent_client_secret
  stripe_object.pending_setup_intent&.client_secret
end

stripe_object()

# File app/serializers/v2/memberships/order_serializer.rb, line 72
def stripe_object
  object.stripe_order
end

stripe_order_requires_action?()

# File app/serializers/v2/memberships/order_serializer.rb, line 76
def stripe_order_requires_action?
  object.status == :payment_action_required
end

stripe_order_requires_payment_action?()

# File app/serializers/v2/memberships/order_serializer.rb, line 80
def stripe_order_requires_payment_action?
  return unless stripe_order_requires_action?

  return true if stripe_object.object == "payment_intent"

  stripe_object.status == "incomplete"
end

stripe_order_requires_setup?()

# File app/serializers/v2/memberships/order_serializer.rb, line 88
def stripe_order_requires_setup?
  stripe_object.object == "subscription" &&
    stripe_order_requires_action? &&
    stripe_object.pending_setup_intent.present?
end

sub_total()

# File app/serializers/v2/memberships/order_serializer.rb, line 52
def sub_total
  ::Service::Money.new(sub_total_cents, ms_object.plan.currency).amount_value
end

sub_total_cents()

# File app/serializers/v2/memberships/order_serializer.rb, line 56
def sub_total_cents
  object.sub_total.to_i
end

subscription_action_type()

# File app/serializers/v2/memberships/order_serializer.rb, line 94
def subscription_action_type
  if stripe_object.pending_setup_intent
    "confirmSetup"
  else
    "confirmPayment"
  end
end

success?()

# File app/serializers/v2/memberships/order_serializer.rb, line 64
def success?
  object.success? && !stripe_order_requires_action?
end

type()

# File app/serializers/v2/memberships/order_serializer.rb, line 22
def type
  case stripe_object.object
  when "subscription"
    subscription_action_type
  when "payment_intent"
    "confirmPayment"
  end
end