Class: Pago::V2026_04::Models::CardPaymentMetadata

Inherits:
Model
  • Object
show all
Defined in:
lib/pago/v2026_04/models.rb,
sig/pago/v2026_04/generated.rbs

Overview

Additional metadata for a card payment method.

Constant Summary collapse

JSON_KEYS =

Returns:

  • (Hash[Symbol, String])
{
  brand: "brand",
  last4: "last4"
}.freeze
REQUIRED_KEYS =

Returns:

  • (Array[String])
["brand", "last4"].freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Model

#==, #[], #field_set?, #hash, #inspect, json_keys, required_json_keys, #to_json, #to_json_hash, wrap_raw

Constructor Details

#initialize(brand:, last4:) ⇒ CardPaymentMetadata

Returns a new instance of CardPaymentMetadata.

Parameters:

  • brand: (String)
  • last4: (String)


9047
9048
9049
9050
9051
9052
9053
9054
# File 'lib/pago/v2026_04/models.rb', line 9047

def initialize(
  brand:,
  last4:
)
  super()
  assign(:brand, brand)
  assign(:last4, last4)
end

Instance Attribute Details

#brandString (readonly)

The brand of the card used for the payment.

Returns:

  • (String)


9041
9042
9043
# File 'lib/pago/v2026_04/models.rb', line 9041

def brand
  @brand
end

#last4String (readonly)

The last 4 digits of the card number.

Returns:

  • (String)


9045
9046
9047
# File 'lib/pago/v2026_04/models.rb', line 9045

def last4
  @last4
end

Class Method Details

.from_json(data) ⇒ CardPaymentMetadata?

Parameters:

  • data (Hash, String, nil)

Returns:



9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
# File 'lib/pago/v2026_04/models.rb', line 9058

def self.from_json(data)
  data = ::JSON.parse(data) if data.is_a?(String)
  data = ::Pago::Serde.object(data)
  return nil if data.nil?

  wrap_raw(
    new(
      brand: (data.key?("brand") ? data["brand"] : ::Pago::UNSET),
      last4: (data.key?("last4") ? data["last4"] : ::Pago::UNSET)
    ),
    data
  )
end