Class: Pago::V2026_04::Models::SubscriptionCustomer

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

Constant Summary collapse

JSON_KEYS =

Returns:

  • (Hash[Symbol, String])
{
  id: "id",
  created_at: "created_at",
  modified_at: "modified_at",
  metadata: "metadata",
  external_id: "external_id",
  email: "email",
  email_verified: "email_verified",
  type: "type",
  name: "name",
  billing_name: "billing_name",
  billing_address: "billing_address",
  tax_id: "tax_id",
  locale: "locale",
  organization_id: "organization_id",
  default_payment_method_id: "default_payment_method_id",
  deleted_at: "deleted_at",
  avatar_url: "avatar_url"
}.freeze
REQUIRED_KEYS =

Returns:

  • (Array[String])
["id", "created_at", "modified_at", "metadata", "email_verified", "type", "name", "billing_name", "billing_address", "tax_id", "organization_id", "deleted_at", "avatar_url"].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(id:, created_at:, modified_at:, metadata:, external_id: ::Pago::UNSET, email: ::Pago::UNSET, email_verified:, type:, name:, billing_name:, billing_address:, tax_id:, locale: ::Pago::UNSET, organization_id:, default_payment_method_id: ::Pago::UNSET, deleted_at:, avatar_url:) ⇒ SubscriptionCustomer

Returns a new instance of SubscriptionCustomer.

Parameters:

  • id: (String)
  • created_at: (String)
  • modified_at: (String, nil)
  • metadata: (Hash[String, untyped])
  • external_id: (String, nil) (defaults to: ::Pago::UNSET)
  • email: (String, nil) (defaults to: ::Pago::UNSET)
  • email_verified: (Boolean)
  • type: (String)
  • name: (String, nil)
  • billing_name: (String, nil)
  • billing_address: (Models::Address, nil)
  • tax_id: (Array[untyped], nil)
  • locale: (String, nil) (defaults to: ::Pago::UNSET)
  • organization_id: (String)
  • default_payment_method_id: (String, nil) (defaults to: ::Pago::UNSET)
  • deleted_at: (String, nil)
  • avatar_url: (String, nil)


40475
40476
40477
40478
40479
40480
40481
40482
40483
40484
40485
40486
40487
40488
40489
40490
40491
40492
40493
40494
40495
40496
40497
40498
40499
40500
40501
40502
40503
40504
40505
40506
40507
40508
40509
40510
40511
40512
# File 'lib/pago/v2026_04/models.rb', line 40475

def initialize(
  id:,
  created_at:,
  modified_at:,
  metadata:,
  external_id: ::Pago::UNSET,
  email: ::Pago::UNSET,
  email_verified:,
  type:,
  name:,
  billing_name:,
  billing_address:,
  tax_id:,
  locale: ::Pago::UNSET,
  organization_id:,
  default_payment_method_id: ::Pago::UNSET,
  deleted_at:,
  avatar_url:
)
  super()
  assign(:id, id)
  assign(:created_at, created_at)
  assign(:modified_at, modified_at)
  assign(:metadata, )
  assign(:external_id, external_id)
  assign(:email, email)
  assign(:email_verified, email_verified)
  assign(:type, type)
  assign(:name, name)
  assign(:billing_name, billing_name)
  assign(:billing_address, billing_address)
  assign(:tax_id, tax_id)
  assign(:locale, locale)
  assign(:organization_id, organization_id)
  assign(:default_payment_method_id, default_payment_method_id)
  assign(:deleted_at, deleted_at)
  assign(:avatar_url, avatar_url)
end

Instance Attribute Details

#avatar_urlString? (readonly)

Returns:

  • (String, nil)


40473
40474
40475
# File 'lib/pago/v2026_04/models.rb', line 40473

def avatar_url
  @avatar_url
end

#billing_addressModels::Address? (readonly)

Returns:



40452
40453
40454
# File 'lib/pago/v2026_04/models.rb', line 40452

def billing_address
  @billing_address
end

#billing_nameString? (readonly)

The name that should appear on the customer's invoices. Falls back to the customer name when not explicitly set.

Returns:

  • (String, nil)


40449
40450
40451
# File 'lib/pago/v2026_04/models.rb', line 40449

def billing_name
  @billing_name
end

#created_atString (readonly)

Creation timestamp of the object.

Returns:

  • (String)


40419
40420
40421
# File 'lib/pago/v2026_04/models.rb', line 40419

def created_at
  @created_at
end

#default_payment_method_idString? (readonly)

The ID of the customer's default payment method, if any. Use the payment methods endpoint to retrieve its details.

Returns:

  • (String, nil)


40466
40467
40468
# File 'lib/pago/v2026_04/models.rb', line 40466

def default_payment_method_id
  @default_payment_method_id
end

#deleted_atString? (readonly)

Timestamp for when the customer was soft deleted.

Returns:

  • (String, nil)


40470
40471
40472
# File 'lib/pago/v2026_04/models.rb', line 40470

def deleted_at
  @deleted_at
end

#emailString? (readonly)

The email address of the customer. This must be unique within the organization.

Returns:

  • (String, nil)


40434
40435
40436
# File 'lib/pago/v2026_04/models.rb', line 40434

def email
  @email
end

#email_verifiedBoolean (readonly)

Whether the customer email address is verified. The address is automatically verified when the customer accesses the customer portal using their email address.

Returns:

  • (Boolean)


40438
40439
40440
# File 'lib/pago/v2026_04/models.rb', line 40438

def email_verified
  @email_verified
end

#external_idString? (readonly)

The ID of the customer in your system. This must be unique within the organization. Once set, it can't be updated.

Returns:

  • (String, nil)


40430
40431
40432
# File 'lib/pago/v2026_04/models.rb', line 40430

def external_id
  @external_id
end

#idString (readonly)

The ID of the customer.

Returns:

  • (String)


40415
40416
40417
# File 'lib/pago/v2026_04/models.rb', line 40415

def id
  @id
end

#localeString? (readonly)

Returns:

  • (String, nil)


40458
40459
40460
# File 'lib/pago/v2026_04/models.rb', line 40458

def locale
  @locale
end

#metadataHash{String => String, Integer, Float, Boolean} (readonly)

Returns:

  • (Hash{String => String, Integer, Float, Boolean})


40426
40427
40428
# File 'lib/pago/v2026_04/models.rb', line 40426

def 
  @metadata
end

#modified_atString? (readonly)

Last modification timestamp of the object.

Returns:

  • (String, nil)


40423
40424
40425
# File 'lib/pago/v2026_04/models.rb', line 40423

def modified_at
  @modified_at
end

#nameString? (readonly)

The name of the customer.

Returns:

  • (String, nil)


40445
40446
40447
# File 'lib/pago/v2026_04/models.rb', line 40445

def name
  @name
end

#organization_idString (readonly)

The ID of the organization owning the customer.

Returns:

  • (String)


40462
40463
40464
# File 'lib/pago/v2026_04/models.rb', line 40462

def organization_id
  @organization_id
end

#tax_idArray<Object>? (readonly)

Returns:

  • (Array<Object>, nil)


40455
40456
40457
# File 'lib/pago/v2026_04/models.rb', line 40455

def tax_id
  @tax_id
end

#typeString (readonly)

Returns:

  • (String)


40441
40442
40443
# File 'lib/pago/v2026_04/models.rb', line 40441

def type
  @type
end

Class Method Details

.from_json(data) ⇒ SubscriptionCustomer?

Parameters:

  • data (Hash, String, nil)

Returns:



40516
40517
40518
40519
40520
40521
40522
40523
40524
40525
40526
40527
40528
40529
40530
40531
40532
40533
40534
40535
40536
40537
40538
40539
40540
40541
40542
40543
# File 'lib/pago/v2026_04/models.rb', line 40516

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(
      id: (data.key?("id") ? data["id"] : ::Pago::UNSET),
      created_at: (data.key?("created_at") ? data["created_at"] : ::Pago::UNSET),
      modified_at: (data.key?("modified_at") ? data["modified_at"] : ::Pago::UNSET),
      metadata: (data.key?("metadata") ? data["metadata"] : ::Pago::UNSET),
      external_id: (data.key?("external_id") ? data["external_id"] : ::Pago::UNSET),
      email: (data.key?("email") ? data["email"] : ::Pago::UNSET),
      email_verified: (data.key?("email_verified") ? data["email_verified"] : ::Pago::UNSET),
      type: (data.key?("type") ? data["type"] : ::Pago::UNSET),
      name: (data.key?("name") ? data["name"] : ::Pago::UNSET),
      billing_name: (data.key?("billing_name") ? data["billing_name"] : ::Pago::UNSET),
      billing_address: (data.key?("billing_address") ? Models::Address.from_json(data["billing_address"]) : ::Pago::UNSET),
      tax_id: (data.key?("tax_id") ? data["tax_id"] : ::Pago::UNSET),
      locale: (data.key?("locale") ? data["locale"] : ::Pago::UNSET),
      organization_id: (data.key?("organization_id") ? data["organization_id"] : ::Pago::UNSET),
      default_payment_method_id: (data.key?("default_payment_method_id") ? data["default_payment_method_id"] : ::Pago::UNSET),
      deleted_at: (data.key?("deleted_at") ? data["deleted_at"] : ::Pago::UNSET),
      avatar_url: (data.key?("avatar_url") ? data["avatar_url"] : ::Pago::UNSET)
    ),
    data
  )
end