Class: Straddle::Models::ChargeEventV1WebhookEvent::Data

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/straddle/models/charge_event_v1_webhook_event.rb,
sig/straddle/models/charge_event_v1_webhook_event.rbs

Overview

See Also:

  • Straddle::Models::ChargeEventV1WebhookEvent#data

Defined Under Namespace

Modules: ConsentType, PaymentRail, Status Classes: Config, CustomerDetails, PaykeyDetails, StatusDetails, StatusHistory

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:, customer_id:, label:, balance: nil) ⇒ Object

Parameters:

  • id (String) —

    Unique identifier for the paykey.

  • customer_id (String) —

    Unique identifier for the customer associated with the paykey.

  • label (String) —

    Display label combining the bank name and masked account number.

  • balance (Integer, nil) (defaults to: nil) —

    Available balance in cents when a balance check was performed. Null otherwise.



# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 203

Instance Attribute Details

#amount ⇒ Integer

Amount in cents.

Parameters:

  • value (Integer)

Returns:

  • (Integer)


50
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 50

required :amount, Integer

#config ⇒ Straddle::Models::ChargeEventV1WebhookEvent::Data::Config

Parameters:

  • value (Straddle::ChargeEventV1WebhookEvent::Data::Config)

Returns:



55
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 55

required :config, -> { Straddle::ChargeEventV1WebhookEvent::Data::Config }

Parameters:

  • value (Straddle::Models::ChargeEventV1WebhookEvent::Data::consent_type)

Returns:



60
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 60

required :consent_type, enum: -> { Straddle::ChargeEventV1WebhookEvent::Data::ConsentType }

#created_at ⇒ Time?

Timestamp when this charge was created.

Parameters:

  • value (Time, nil)

Returns:

  • (Time, nil)


138
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 138

optional :created_at, Time, nil?: true

#currency ⇒ String

Currency code. Only USD is supported.

Parameters:

  • value (String)

Returns:

  • (String)


66
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 66

required :currency, String

#customer_details ⇒ Straddle::Models::ChargeEventV1WebhookEvent::Data::CustomerDetails?



143
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 143

optional :customer_details, -> { Straddle::ChargeEventV1WebhookEvent::Data::CustomerDetails }

#description ⇒ String?

A human-readable description of the charge.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


72
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 72

required :description, String, nil?: true

#device ⇒ Straddle::Models::MaskedPaymentDevice



77
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 77

required :device, -> { Straddle::MaskedPaymentDevice }

#documents ⇒ Array<Straddle::Models::PaymentAuthorizationProof>?

Authorization documents for this charge, ordered by upload time.

Parameters:

Returns:



149
150
151
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 149

optional :documents,
-> { Straddle::Internal::Type::ArrayOf[Straddle::PaymentAuthorizationProof] },
nil?: true

#effective_at ⇒ Time?

Timestamp when funds were settled. Null until settlement is confirmed.

Parameters:

  • value (Time, nil)

Returns:

  • (Time, nil)


157
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 157

optional :effective_at, Time, nil?: true

#external_id ⇒ String?

Your unique identifier for this charge, used to correlate with your internal records.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


164
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 164

optional :external_id, String, nil?: true

#funding_ids ⇒ Array<String>

IDs of the funding events that included this charge.

Parameters:

  • value (::Array[String])

Returns:

  • (Array<String>)


83
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 83

required :funding_ids, Straddle::Internal::Type::ArrayOf[String]

#has_refund ⇒ Boolean

Whether an associated payout has refunded this charge.

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


89
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 89

required :has_refund, Straddle::Internal::Type::Boolean

#has_resubmit ⇒ Boolean

Whether this charge has been resubmitted.

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


95
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 95

required :has_resubmit, Straddle::Internal::Type::Boolean

#id ⇒ String

Unique identifier for this charge.

Parameters:

  • value (String)

Returns:

  • (String)


44
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 44

required :id, String

#is_resubmit ⇒ Boolean

Whether this charge resubmits an original charge.

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


101
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 101

required :is_resubmit, Straddle::Internal::Type::Boolean

#metadata ⇒ Hash{Symbol=>String, nil}?

Key-value metadata stored with this charge.

Parameters:

  • value (::Hash[Symbol, String?], nil)

Returns:

  • (Hash{Symbol=>String, nil}, nil)


170
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 170

optional :metadata, Straddle::Internal::Type::HashOf[String, nil?: true], nil?: true

#paykey ⇒ String

The masked paykey token used for this charge.

Parameters:

  • value (String)

Returns:

  • (String)


107
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 107

required :paykey, String

#paykey_details ⇒ Straddle::Models::ChargeEventV1WebhookEvent::Data::PaykeyDetails?



175
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 175

optional :paykey_details, -> { Straddle::ChargeEventV1WebhookEvent::Data::PaykeyDetails }

#payment_date ⇒ Date

Date when Straddle submits the charge for processing.

Parameters:

  • value (Date)

Returns:

  • (Date)


113
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 113

required :payment_date, Date

#payment_rail ⇒ Symbol, ...



180
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 180

optional :payment_rail, enum: -> { Straddle::ChargeEventV1WebhookEvent::Data::PaymentRail }

#processed_at ⇒ Time?

Timestamp when this charge was submitted to the payment network. Null until processed.

Parameters:

  • value (Time, nil)

Returns:

  • (Time, nil)


187
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 187

optional :processed_at, Time, nil?: true

Related payments and their relationship to this charge.

Parameters:

Returns:



193
194
195
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 193

optional :related_payments,
-> { Straddle::Internal::Type::ArrayOf[Straddle::RelatedPayment] },
nil?: true

#status ⇒ Symbol, Straddle::Models::ChargeEventV1WebhookEvent::Data::Status

Parameters:

  • value (Straddle::Models::ChargeEventV1WebhookEvent::Data::status)

Returns:



118
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 118

required :status, enum: -> { Straddle::ChargeEventV1WebhookEvent::Data::Status }

#status_details ⇒ Straddle::Models::ChargeEventV1WebhookEvent::Data::StatusDetails

Parameters:

  • value (Straddle::ChargeEventV1WebhookEvent::Data::StatusDetails)

Returns:



123
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 123

required :status_details, -> { Straddle::ChargeEventV1WebhookEvent::Data::StatusDetails }

#status_history ⇒ Array<Straddle::Models::ChargeEventV1WebhookEvent::Data::StatusHistory>

Complete ordered history of all status changes for this charge.

Parameters:

  • value (::Array[Straddle::ChargeEventV1WebhookEvent::Data::StatusHistory])

Returns:



129
130
131
132
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 129

required :status_history,
-> do
  Straddle::Internal::Type::ArrayOf[Straddle::ChargeEventV1WebhookEvent::Data::StatusHistory]
end

#updated_at ⇒ Time?

Timestamp when this charge was last updated.

Parameters:

  • value (Time, nil)

Returns:

  • (Time, nil)


201
# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 201

optional :updated_at, Time, nil?: true

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/straddle/models/charge_event_v1_webhook_event.rb', line 279

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


162
# File 'sig/straddle/models/charge_event_v1_webhook_event.rbs', line 162

def to_hash: -> {