moov_ruby 0.0.0.pre.dev.29 → 0.0.0.pre.dev.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/moov/card_issuing.rb +538 -0
- data/lib/moov/files.rb +186 -0
- data/lib/moov/issuing_transactions.rb +123 -0
- data/lib/moov/models/components/applicationscope.rb +1 -0
- data/lib/moov/models/components/authorizationsimulationasyncresponse.rb +32 -0
- data/lib/moov/models/components/authorizationsimulationasyncresponse.rbi +13 -0
- data/lib/moov/models/components/authtokenrequest.rb +6 -2
- data/lib/moov/models/components/authtokenrequest.rbi +2 -0
- data/lib/moov/models/components/bankaccount.rb +7 -2
- data/lib/moov/models/components/bankaccount.rbi +2 -0
- data/lib/moov/models/components/bankaccountpayload.rb +7 -2
- data/lib/moov/models/components/bankaccountpayload.rbi +2 -0
- data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +6 -2
- data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rbi +2 -0
- data/lib/moov/models/components/createauthorizationsimulation.rb +40 -0
- data/lib/moov/models/components/createauthorizationsimulation.rbi +17 -0
- data/lib/moov/models/components/createclearingsimulation.rb +32 -0
- data/lib/moov/models/components/createclearingsimulation.rbi +13 -0
- data/lib/moov/models/components/createdtransfer.rb +2 -1
- data/lib/moov/models/components/createinvoice.rb +6 -2
- data/lib/moov/models/components/createinvoice.rbi +2 -0
- data/lib/moov/models/components/disbursementpaymentmethodtype.rb +1 -0
- data/lib/moov/models/components/incurredfee.rb +6 -2
- data/lib/moov/models/components/incurredfee.rbi +2 -0
- data/lib/moov/models/components/issuedcardactivity.rb +78 -0
- data/lib/moov/models/components/issuedcardactivity.rbi +33 -0
- data/lib/moov/models/components/issuedcardauthorization.rb +7 -2
- data/lib/moov/models/components/issuedcardauthorization.rbi +2 -0
- data/lib/moov/models/components/issuedcardauthorizationevent.rb +7 -2
- data/lib/moov/models/components/issuedcardauthorizationevent.rbi +2 -0
- data/lib/moov/models/components/issuingdeclinereason.rb +35 -0
- data/lib/moov/models/components/issuingdeclinereason.rbi +11 -0
- data/lib/moov/models/components/issuingmerchantdatavalidationerror.rb +56 -0
- data/lib/moov/models/components/issuingmerchantdatavalidationerror.rbi +25 -0
- data/lib/moov/models/components/oauth2clienttype.rb +23 -0
- data/lib/moov/models/components/oauth2clienttype.rbi +11 -0
- data/lib/moov/models/components/paymentmethodsbankaccount.rb +7 -2
- data/lib/moov/models/components/paymentmethodsbankaccount.rbi +2 -0
- data/lib/moov/models/components/product.rb +6 -2
- data/lib/moov/models/components/product.rbi +2 -0
- data/lib/moov/models/components/productrequest.rb +6 -2
- data/lib/moov/models/components/productrequest.rbi +2 -0
- data/lib/moov/models/components/riskverificationoutcome.rb +23 -0
- data/lib/moov/models/components/riskverificationoutcome.rbi +11 -0
- data/lib/moov/models/components/transfer.rb +2 -1
- data/lib/moov/models/components/transferauthorization.rb +9 -2
- data/lib/moov/models/components/transferauthorization.rbi +2 -0
- data/lib/moov/models/components/transferevent.rb +48 -0
- data/lib/moov/models/components/transferevent.rbi +21 -0
- data/lib/moov/models/components/transfereventachdetails.rb +40 -0
- data/lib/moov/models/components/transfereventachdetails.rbi +17 -0
- data/lib/moov/models/components/transfereventauthorizationdetails.rb +40 -0
- data/lib/moov/models/components/transfereventauthorizationdetails.rbi +17 -0
- data/lib/moov/models/components/transfereventauthorizationstatus.rb +22 -0
- data/lib/moov/models/components/transfereventauthorizationstatus.rbi +11 -0
- data/lib/moov/models/components/transfereventcancellationdetails.rb +36 -0
- data/lib/moov/models/components/transfereventcancellationdetails.rbi +15 -0
- data/lib/moov/models/components/transfereventcapturedetails.rb +40 -0
- data/lib/moov/models/components/transfereventcapturedetails.rbi +17 -0
- data/lib/moov/models/components/transfereventcardpaymentdetails.rb +36 -0
- data/lib/moov/models/components/transfereventcardpaymentdetails.rbi +15 -0
- data/lib/moov/models/components/transfereventdetails.rb +88 -0
- data/lib/moov/models/components/transfereventdetails.rbi +41 -0
- data/lib/moov/models/components/transfereventdisputedetails.rb +46 -0
- data/lib/moov/models/components/transfereventdisputedetails.rbi +19 -0
- data/lib/moov/models/components/transfereventinstantbankcreditdetails.rb +36 -0
- data/lib/moov/models/components/transfereventinstantbankcreditdetails.rbi +15 -0
- data/lib/moov/models/components/transfereventpullfromcarddetails.rb +36 -0
- data/lib/moov/models/components/transfereventpullfromcarddetails.rbi +15 -0
- data/lib/moov/models/components/transfereventpushtocarddetails.rb +36 -0
- data/lib/moov/models/components/transfereventpushtocarddetails.rbi +15 -0
- data/lib/moov/models/components/transfereventrefunddetails.rb +44 -0
- data/lib/moov/models/components/transfereventrefunddetails.rbi +19 -0
- data/lib/moov/models/components/transfereventtransferdetails.rb +32 -0
- data/lib/moov/models/components/transfereventtransferdetails.rbi +13 -0
- data/lib/moov/models/components/transfereventtype.rb +34 -0
- data/lib/moov/models/components/transfereventtype.rbi +11 -0
- data/lib/moov/models/components/transfereventwallettransactiondetails.rb +48 -0
- data/lib/moov/models/components/transfereventwallettransactiondetails.rbi +21 -0
- data/lib/moov/models/components/transfereventwirecreditdetails.rb +36 -0
- data/lib/moov/models/components/transfereventwirecreditdetails.rbi +15 -0
- data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +7 -2
- data/lib/moov/models/components/transferpaymentmethodsbankaccount.rbi +2 -0
- data/lib/moov/models/components/webhookdatatransferstatus.rb +1 -0
- data/lib/moov/models/components.rb +25 -0
- data/lib/moov/models/errors/authorizationsimulationvalidationerror.rb +44 -0
- data/lib/moov/models/errors/authorizationsimulationvalidationerror.rbi +19 -0
- data/lib/moov/models/errors/clearingsimulationvalidationerror.rb +36 -0
- data/lib/moov/models/errors/clearingsimulationvalidationerror.rbi +15 -0
- data/lib/moov/models/errors/createinvoiceerror.rb +6 -2
- data/lib/moov/models/errors/createinvoiceerror.rbi +2 -0
- data/lib/moov/models/errors/transfer_error.rb +2 -1
- data/lib/moov/models/errors.rb +2 -0
- data/lib/moov/models/operations/createauthorizationsimulation_request.rb +36 -0
- data/lib/moov/models/operations/createauthorizationsimulation_request.rbi +15 -0
- data/lib/moov/models/operations/createauthorizationsimulation_response.rb +52 -0
- data/lib/moov/models/operations/createauthorizationsimulation_response.rbi +23 -0
- data/lib/moov/models/operations/createclearingsimulation_request.rb +40 -0
- data/lib/moov/models/operations/createclearingsimulation_request.rbi +17 -0
- data/lib/moov/models/operations/createclearingsimulation_response.rb +52 -0
- data/lib/moov/models/operations/createclearingsimulation_response.rbi +23 -0
- data/lib/moov/models/operations/createreversalsimulation_request.rb +36 -0
- data/lib/moov/models/operations/createreversalsimulation_request.rbi +15 -0
- data/lib/moov/models/operations/createreversalsimulation_response.rb +52 -0
- data/lib/moov/models/operations/createreversalsimulation_response.rbi +23 -0
- data/lib/moov/models/operations/downloadfile_request.rb +36 -0
- data/lib/moov/models/operations/downloadfile_request.rbi +15 -0
- data/lib/moov/models/operations/downloadfile_response.rb +64 -0
- data/lib/moov/models/operations/downloadfile_response.rbi +29 -0
- data/lib/moov/models/operations/listissuedcardactivity_request.rb +60 -0
- data/lib/moov/models/operations/listissuedcardactivity_request.rbi +27 -0
- data/lib/moov/models/operations/listissuedcardactivity_response.rb +48 -0
- data/lib/moov/models/operations/listissuedcardactivity_response.rbi +21 -0
- data/lib/moov/models/operations/listtransferevents_request.rb +36 -0
- data/lib/moov/models/operations/listtransferevents_request.rbi +15 -0
- data/lib/moov/models/operations/listtransferevents_response.rb +48 -0
- data/lib/moov/models/operations/listtransferevents_response.rbi +21 -0
- data/lib/moov/models/operations/listtransfers_request.rb +6 -2
- data/lib/moov/models/operations/listtransfers_request.rbi +2 -0
- data/lib/moov/models/operations.rb +12 -0
- data/lib/moov/sdkconfiguration.rb +3 -3
- data/lib/moov/transfers.rb +125 -0
- metadata +80 -2
|
@@ -16,6 +16,8 @@ module Moov
|
|
|
16
16
|
field :customer_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerAccountID'), required: true } }
|
|
17
17
|
# A collection of line items for an invoice.
|
|
18
18
|
field :line_items, Models::Components::CreateInvoiceLineItems, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems'), required: true } }
|
|
19
|
+
# Email address to use for invoice checkout OTP verification instead of the customer account email.
|
|
20
|
+
field :customer_email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerEmail') } }
|
|
19
21
|
|
|
20
22
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
21
23
|
|
|
@@ -25,10 +27,11 @@ module Moov
|
|
|
25
27
|
|
|
26
28
|
field :amount_details, Crystalline::Nilable.new(Models::Components::AmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
27
29
|
|
|
28
|
-
sig { params(customer_account_id: ::String, line_items: Models::Components::CreateInvoiceLineItems, description: T.nilable(::String), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), amount_details: T.nilable(Models::Components::AmountDetails)).void }
|
|
29
|
-
def initialize(customer_account_id:, line_items:, description: nil, invoice_date: nil, due_date: nil, amount_details: nil)
|
|
30
|
+
sig { params(customer_account_id: ::String, line_items: Models::Components::CreateInvoiceLineItems, customer_email: T.nilable(::String), description: T.nilable(::String), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), amount_details: T.nilable(Models::Components::AmountDetails)).void }
|
|
31
|
+
def initialize(customer_account_id:, line_items:, customer_email: nil, description: nil, invoice_date: nil, due_date: nil, amount_details: nil)
|
|
30
32
|
@customer_account_id = customer_account_id
|
|
31
33
|
@line_items = line_items
|
|
34
|
+
@customer_email = customer_email
|
|
32
35
|
@description = description
|
|
33
36
|
@invoice_date = invoice_date
|
|
34
37
|
@due_date = due_date
|
|
@@ -40,6 +43,7 @@ module Moov
|
|
|
40
43
|
return false unless other.is_a? self.class
|
|
41
44
|
return false unless @customer_account_id == other.customer_account_id
|
|
42
45
|
return false unless @line_items == other.line_items
|
|
46
|
+
return false unless @customer_email == other.customer_email
|
|
43
47
|
return false unless @description == other.description
|
|
44
48
|
return false unless @invoice_date == other.invoice_date
|
|
45
49
|
return false unless @due_date == other.due_date
|
|
@@ -12,6 +12,8 @@ class Moov::Models::Components::CreateInvoice
|
|
|
12
12
|
def customer_account_id=(str_); end
|
|
13
13
|
def line_items(); end
|
|
14
14
|
def line_items=(str_); end
|
|
15
|
+
def customer_email(); end
|
|
16
|
+
def customer_email=(str_); end
|
|
15
17
|
def description(); end
|
|
16
18
|
def description=(str_); end
|
|
17
19
|
def invoice_date(); end
|
|
@@ -28,13 +28,15 @@ module Moov
|
|
|
28
28
|
field :generated_by, Crystalline::Nilable.new(Models::Components::GeneratedBy), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('generatedBy') } }
|
|
29
29
|
# Describes the source of the fee, such as a Moov-set processing fee, a network pass-through fee, or an interchange or discount fee.
|
|
30
30
|
field :fee_group, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feeGroup') } }
|
|
31
|
+
# The program assigned by the card network that determines the interchange rate for the fee. Present only for interchange or discount fees.
|
|
32
|
+
field :fee_program, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feeProgram') } }
|
|
31
33
|
# Unique identifier for this residual payment calculation.
|
|
32
34
|
field :residual_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('residualID') } }
|
|
33
35
|
# Indicates which party to the money movement bore this fee.
|
|
34
36
|
field :fee_paid_by, Crystalline::Nilable.new(Models::Components::FeePaidBy), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feePaidBy'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::FeePaidBy, true) } }
|
|
35
37
|
|
|
36
|
-
sig { params(fee_id: T.nilable(::String), account_id: T.nilable(::String), wallet_id: T.nilable(::String), created_on: T.nilable(::DateTime), fee_name: T.nilable(::String), amount: T.nilable(Models::Components::AmountDecimal), generated_by: T.nilable(Models::Components::GeneratedBy), fee_group: T.nilable(::String), residual_id: T.nilable(::String), fee_paid_by: T.nilable(Models::Components::FeePaidBy)).void }
|
|
37
|
-
def initialize(fee_id: nil, account_id: nil, wallet_id: nil, created_on: nil, fee_name: nil, amount: nil, generated_by: nil, fee_group: nil, residual_id: nil, fee_paid_by: nil)
|
|
38
|
+
sig { params(fee_id: T.nilable(::String), account_id: T.nilable(::String), wallet_id: T.nilable(::String), created_on: T.nilable(::DateTime), fee_name: T.nilable(::String), amount: T.nilable(Models::Components::AmountDecimal), generated_by: T.nilable(Models::Components::GeneratedBy), fee_group: T.nilable(::String), fee_program: T.nilable(::String), residual_id: T.nilable(::String), fee_paid_by: T.nilable(Models::Components::FeePaidBy)).void }
|
|
39
|
+
def initialize(fee_id: nil, account_id: nil, wallet_id: nil, created_on: nil, fee_name: nil, amount: nil, generated_by: nil, fee_group: nil, fee_program: nil, residual_id: nil, fee_paid_by: nil)
|
|
38
40
|
@fee_id = fee_id
|
|
39
41
|
@account_id = account_id
|
|
40
42
|
@wallet_id = wallet_id
|
|
@@ -43,6 +45,7 @@ module Moov
|
|
|
43
45
|
@amount = amount
|
|
44
46
|
@generated_by = generated_by
|
|
45
47
|
@fee_group = fee_group
|
|
48
|
+
@fee_program = fee_program
|
|
46
49
|
@residual_id = residual_id
|
|
47
50
|
@fee_paid_by = fee_paid_by
|
|
48
51
|
end
|
|
@@ -58,6 +61,7 @@ module Moov
|
|
|
58
61
|
return false unless @amount == other.amount
|
|
59
62
|
return false unless @generated_by == other.generated_by
|
|
60
63
|
return false unless @fee_group == other.fee_group
|
|
64
|
+
return false unless @fee_program == other.fee_program
|
|
61
65
|
return false unless @residual_id == other.residual_id
|
|
62
66
|
return false unless @fee_paid_by == other.fee_paid_by
|
|
63
67
|
true
|
|
@@ -24,6 +24,8 @@ class Moov::Models::Components::IncurredFee
|
|
|
24
24
|
def generated_by=(str_); end
|
|
25
25
|
def fee_group(); end
|
|
26
26
|
def fee_group=(str_); end
|
|
27
|
+
def fee_program(); end
|
|
28
|
+
def fee_program=(str_); end
|
|
27
29
|
def residual_id(); end
|
|
28
30
|
def residual_id=(str_); end
|
|
29
31
|
def fee_paid_by(); end
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# An issued card activity record. Each record represents the use of an issued card.
|
|
11
|
+
#
|
|
12
|
+
# Exactly one of `authorizationID` or `cardTransactionID` is present:
|
|
13
|
+
# - Activity that has an authorization request includes `authorizationID`. `cardTransactionID` is omitted.
|
|
14
|
+
# - Activity that does not have a corresponding authorization request includes `cardTransactionID` and omits `authorizationID` and
|
|
15
|
+
# `authorizedAmount`.
|
|
16
|
+
class IssuedCardActivity
|
|
17
|
+
extend T::Sig
|
|
18
|
+
include Crystalline::MetadataFields
|
|
19
|
+
|
|
20
|
+
# Status of a card issuing authorization.
|
|
21
|
+
field :status, Models::Components::IssuingAuthorizationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingAuthorizationStatus, false) } }
|
|
22
|
+
|
|
23
|
+
field :issued_card_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuedCardID'), required: true } }
|
|
24
|
+
|
|
25
|
+
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
26
|
+
|
|
27
|
+
field :merchant_data, Models::Components::IssuingMerchantData, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantData'), required: true } }
|
|
28
|
+
# Identifier for the authorization. Present for all activity except cleared card transactions without a corresponding authorization.
|
|
29
|
+
field :authorization_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizationID') } }
|
|
30
|
+
# Identifier for the settlement card transaction. Present for cleared card transactions without a corresponding authorization.
|
|
31
|
+
field :card_transaction_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardTransactionID') } }
|
|
32
|
+
# Last four digits of the card number.
|
|
33
|
+
field :last_four_card_number, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber') } }
|
|
34
|
+
# Identifier for the account of the card's authorized user.
|
|
35
|
+
field :authorized_user_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUserAccountID') } }
|
|
36
|
+
# Amount authorized on the card. Omitted for cleared card transactions without a corresponding authorization.
|
|
37
|
+
field :authorized_amount, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedAmount') } }
|
|
38
|
+
# Amount cleared or settled for the activity.
|
|
39
|
+
field :cleared_amount, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('clearedAmount') } }
|
|
40
|
+
# The reason an authorization or authorization event was declined. Only present if the
|
|
41
|
+
# authorization or event has been declined.
|
|
42
|
+
field :decline_reason, Crystalline::Nilable.new(Models::Components::IssuingDeclineReason), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('declineReason'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingDeclineReason, true) } }
|
|
43
|
+
|
|
44
|
+
sig { params(status: Models::Components::IssuingAuthorizationStatus, issued_card_id: ::String, created_on: ::DateTime, merchant_data: Models::Components::IssuingMerchantData, authorization_id: T.nilable(::String), card_transaction_id: T.nilable(::String), last_four_card_number: T.nilable(::String), authorized_user_account_id: T.nilable(::String), authorized_amount: T.nilable(::String), cleared_amount: T.nilable(::String), decline_reason: T.nilable(Models::Components::IssuingDeclineReason)).void }
|
|
45
|
+
def initialize(status:, issued_card_id:, created_on:, merchant_data:, authorization_id: nil, card_transaction_id: nil, last_four_card_number: nil, authorized_user_account_id: nil, authorized_amount: nil, cleared_amount: nil, decline_reason: nil)
|
|
46
|
+
@status = status
|
|
47
|
+
@issued_card_id = issued_card_id
|
|
48
|
+
@created_on = created_on
|
|
49
|
+
@merchant_data = merchant_data
|
|
50
|
+
@authorization_id = authorization_id
|
|
51
|
+
@card_transaction_id = card_transaction_id
|
|
52
|
+
@last_four_card_number = last_four_card_number
|
|
53
|
+
@authorized_user_account_id = authorized_user_account_id
|
|
54
|
+
@authorized_amount = authorized_amount
|
|
55
|
+
@cleared_amount = cleared_amount
|
|
56
|
+
@decline_reason = decline_reason
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
60
|
+
def ==(other)
|
|
61
|
+
return false unless other.is_a? self.class
|
|
62
|
+
return false unless @status == other.status
|
|
63
|
+
return false unless @issued_card_id == other.issued_card_id
|
|
64
|
+
return false unless @created_on == other.created_on
|
|
65
|
+
return false unless @merchant_data == other.merchant_data
|
|
66
|
+
return false unless @authorization_id == other.authorization_id
|
|
67
|
+
return false unless @card_transaction_id == other.card_transaction_id
|
|
68
|
+
return false unless @last_four_card_number == other.last_four_card_number
|
|
69
|
+
return false unless @authorized_user_account_id == other.authorized_user_account_id
|
|
70
|
+
return false unless @authorized_amount == other.authorized_amount
|
|
71
|
+
return false unless @cleared_amount == other.cleared_amount
|
|
72
|
+
return false unless @decline_reason == other.decline_reason
|
|
73
|
+
true
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::IssuedCardActivity
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::IssuedCardActivity
|
|
11
|
+
def status(); end
|
|
12
|
+
def status=(str_); end
|
|
13
|
+
def issued_card_id(); end
|
|
14
|
+
def issued_card_id=(str_); end
|
|
15
|
+
def created_on(); end
|
|
16
|
+
def created_on=(str_); end
|
|
17
|
+
def merchant_data(); end
|
|
18
|
+
def merchant_data=(str_); end
|
|
19
|
+
def authorization_id(); end
|
|
20
|
+
def authorization_id=(str_); end
|
|
21
|
+
def card_transaction_id(); end
|
|
22
|
+
def card_transaction_id=(str_); end
|
|
23
|
+
def last_four_card_number(); end
|
|
24
|
+
def last_four_card_number=(str_); end
|
|
25
|
+
def authorized_user_account_id(); end
|
|
26
|
+
def authorized_user_account_id=(str_); end
|
|
27
|
+
def authorized_amount(); end
|
|
28
|
+
def authorized_amount=(str_); end
|
|
29
|
+
def cleared_amount(); end
|
|
30
|
+
def cleared_amount=(str_); end
|
|
31
|
+
def decline_reason(); end
|
|
32
|
+
def decline_reason=(str_); end
|
|
33
|
+
end
|
|
@@ -32,9 +32,12 @@ module Moov
|
|
|
32
32
|
field :last_four_card_number, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber') } }
|
|
33
33
|
# List of card transaction IDs associated with this authorization.
|
|
34
34
|
field :card_transactions, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardTransactions') } }
|
|
35
|
+
# The reason an authorization or authorization event was declined. Only present if the
|
|
36
|
+
# authorization or event has been declined.
|
|
37
|
+
field :decline_reason, Crystalline::Nilable.new(Models::Components::IssuingDeclineReason), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('declineReason'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingDeclineReason, true) } }
|
|
35
38
|
|
|
36
|
-
sig { params(authorization_id: ::String, issued_card_id: ::String, funding_wallet_id: ::String, network: Models::Components::CardIssuingNetwork, authorized_amount: ::String, status: Models::Components::IssuingAuthorizationStatus, merchant_data: Models::Components::IssuingMerchantData, created_on: ::DateTime, last_four_card_number: T.nilable(::String), card_transactions: T.nilable(T::Array[::String])).void }
|
|
37
|
-
def initialize(authorization_id:, issued_card_id:, funding_wallet_id:, network:, authorized_amount:, status:, merchant_data:, created_on:, last_four_card_number: nil, card_transactions: nil)
|
|
39
|
+
sig { params(authorization_id: ::String, issued_card_id: ::String, funding_wallet_id: ::String, network: Models::Components::CardIssuingNetwork, authorized_amount: ::String, status: Models::Components::IssuingAuthorizationStatus, merchant_data: Models::Components::IssuingMerchantData, created_on: ::DateTime, last_four_card_number: T.nilable(::String), card_transactions: T.nilable(T::Array[::String]), decline_reason: T.nilable(Models::Components::IssuingDeclineReason)).void }
|
|
40
|
+
def initialize(authorization_id:, issued_card_id:, funding_wallet_id:, network:, authorized_amount:, status:, merchant_data:, created_on:, last_four_card_number: nil, card_transactions: nil, decline_reason: nil)
|
|
38
41
|
@authorization_id = authorization_id
|
|
39
42
|
@issued_card_id = issued_card_id
|
|
40
43
|
@funding_wallet_id = funding_wallet_id
|
|
@@ -45,6 +48,7 @@ module Moov
|
|
|
45
48
|
@created_on = created_on
|
|
46
49
|
@last_four_card_number = last_four_card_number
|
|
47
50
|
@card_transactions = card_transactions
|
|
51
|
+
@decline_reason = decline_reason
|
|
48
52
|
end
|
|
49
53
|
|
|
50
54
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -60,6 +64,7 @@ module Moov
|
|
|
60
64
|
return false unless @created_on == other.created_on
|
|
61
65
|
return false unless @last_four_card_number == other.last_four_card_number
|
|
62
66
|
return false unless @card_transactions == other.card_transactions
|
|
67
|
+
return false unless @decline_reason == other.decline_reason
|
|
63
68
|
true
|
|
64
69
|
end
|
|
65
70
|
end
|
|
@@ -22,14 +22,18 @@ module Moov
|
|
|
22
22
|
field :result, Models::Components::IssuedCardAuthorizationEventResult, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('result'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuedCardAuthorizationEventResult, false) } }
|
|
23
23
|
|
|
24
24
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
25
|
+
# The reason an authorization or authorization event was declined. Only present if the
|
|
26
|
+
# authorization or event has been declined.
|
|
27
|
+
field :decline_reason, Crystalline::Nilable.new(Models::Components::IssuingDeclineReason), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('declineReason'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingDeclineReason, true) } }
|
|
25
28
|
|
|
26
|
-
sig { params(event_id: ::String, event_type: Models::Components::IssuedCardEventType, amount: ::String, result: Models::Components::IssuedCardAuthorizationEventResult, created_on: ::DateTime).void }
|
|
27
|
-
def initialize(event_id:, event_type:, amount:, result:, created_on:)
|
|
29
|
+
sig { params(event_id: ::String, event_type: Models::Components::IssuedCardEventType, amount: ::String, result: Models::Components::IssuedCardAuthorizationEventResult, created_on: ::DateTime, decline_reason: T.nilable(Models::Components::IssuingDeclineReason)).void }
|
|
30
|
+
def initialize(event_id:, event_type:, amount:, result:, created_on:, decline_reason: nil)
|
|
28
31
|
@event_id = event_id
|
|
29
32
|
@event_type = event_type
|
|
30
33
|
@amount = amount
|
|
31
34
|
@result = result
|
|
32
35
|
@created_on = created_on
|
|
36
|
+
@decline_reason = decline_reason
|
|
33
37
|
end
|
|
34
38
|
|
|
35
39
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -40,6 +44,7 @@ module Moov
|
|
|
40
44
|
return false unless @amount == other.amount
|
|
41
45
|
return false unless @result == other.result
|
|
42
46
|
return false unless @created_on == other.created_on
|
|
47
|
+
return false unless @decline_reason == other.decline_reason
|
|
43
48
|
true
|
|
44
49
|
end
|
|
45
50
|
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# IssuingDeclineReason - The reason an authorization or authorization event was declined. Only present if the
|
|
11
|
+
# authorization or event has been declined.
|
|
12
|
+
class IssuingDeclineReason
|
|
13
|
+
include ::Crystalline::Enum
|
|
14
|
+
enums do
|
|
15
|
+
INSUFFICIENT_FUNDS = new('insufficient-funds')
|
|
16
|
+
CARD_NOT_ACTIVE = new('card-not-active')
|
|
17
|
+
CARD_EXPIRATION = new('card-expiration')
|
|
18
|
+
SPEND_CUTOFF_REACHED = new('spend-cutoff-reached')
|
|
19
|
+
OUTSIDE_ALLOWED_SCHEDULE = new('outside-allowed-schedule')
|
|
20
|
+
SPEND_LIMIT_EXCEEDED = new('spend-limit-exceeded')
|
|
21
|
+
MERCHANT_CATEGORY_NOT_SUPPORTED = new('merchant-category-not-supported')
|
|
22
|
+
MERCHANT_CATEGORY_RESTRICTED = new('merchant-category-restricted')
|
|
23
|
+
MERCHANT_RESTRICTED = new('merchant-restricted')
|
|
24
|
+
MERCHANT_COUNTRY_NOT_SUPPORTED = new('merchant-country-not-supported')
|
|
25
|
+
UNSUPPORTED_TRANSACTION = new('unsupported-transaction')
|
|
26
|
+
NETWORK_STAND_IN = new('network-stand-in')
|
|
27
|
+
DECLINED_BY_ISSUER = new('declined-by-issuer')
|
|
28
|
+
INVALID_REQUEST = new('invalid-request')
|
|
29
|
+
SYSTEM_ERROR = new('system-error')
|
|
30
|
+
end
|
|
31
|
+
open!
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
|
|
11
|
+
class IssuingMerchantDataValidationError
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :network_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('networkID') } }
|
|
17
|
+
|
|
18
|
+
field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name') } }
|
|
19
|
+
|
|
20
|
+
field :city, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('city') } }
|
|
21
|
+
|
|
22
|
+
field :country, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('country') } }
|
|
23
|
+
|
|
24
|
+
field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('postalCode') } }
|
|
25
|
+
|
|
26
|
+
field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state') } }
|
|
27
|
+
|
|
28
|
+
field :mcc, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mcc') } }
|
|
29
|
+
|
|
30
|
+
sig { params(network_id: T.nilable(::String), name: T.nilable(::String), city: T.nilable(::String), country: T.nilable(::String), postal_code: T.nilable(::String), state: T.nilable(::String), mcc: T.nilable(::String)).void }
|
|
31
|
+
def initialize(network_id: nil, name: nil, city: nil, country: nil, postal_code: nil, state: nil, mcc: nil)
|
|
32
|
+
@network_id = network_id
|
|
33
|
+
@name = name
|
|
34
|
+
@city = city
|
|
35
|
+
@country = country
|
|
36
|
+
@postal_code = postal_code
|
|
37
|
+
@state = state
|
|
38
|
+
@mcc = mcc
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
42
|
+
def ==(other)
|
|
43
|
+
return false unless other.is_a? self.class
|
|
44
|
+
return false unless @network_id == other.network_id
|
|
45
|
+
return false unless @name == other.name
|
|
46
|
+
return false unless @city == other.city
|
|
47
|
+
return false unless @country == other.country
|
|
48
|
+
return false unless @postal_code == other.postal_code
|
|
49
|
+
return false unless @state == other.state
|
|
50
|
+
return false unless @mcc == other.mcc
|
|
51
|
+
true
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::IssuingMerchantDataValidationError
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::IssuingMerchantDataValidationError
|
|
11
|
+
def network_id(); end
|
|
12
|
+
def network_id=(str_); end
|
|
13
|
+
def name(); end
|
|
14
|
+
def name=(str_); end
|
|
15
|
+
def city(); end
|
|
16
|
+
def city=(str_); end
|
|
17
|
+
def country(); end
|
|
18
|
+
def country=(str_); end
|
|
19
|
+
def postal_code(); end
|
|
20
|
+
def postal_code=(str_); end
|
|
21
|
+
def state(); end
|
|
22
|
+
def state=(str_); end
|
|
23
|
+
def mcc(); end
|
|
24
|
+
def mcc=(str_); end
|
|
25
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# OAuth2ClientType - The type of client requesting an OAuth2 token. Short codes are accepted as aliases for the corresponding client types.
|
|
11
|
+
class OAuth2ClientType < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
WEB = new('web')
|
|
14
|
+
DEVICE = new('device')
|
|
15
|
+
SERVICE = new('service')
|
|
16
|
+
W = new('w')
|
|
17
|
+
D = new('d')
|
|
18
|
+
S = new('s')
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -34,9 +34,12 @@ module Moov
|
|
|
34
34
|
field :last_four_account_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourAccountNumber'), required: true } }
|
|
35
35
|
|
|
36
36
|
field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
37
|
+
# The outcome of a requested risk-verification attempt. `notAttempted` when
|
|
38
|
+
# `requestRiskVerification` was not set, or the calling account was not allowlisted.
|
|
39
|
+
field :risk_verification_outcome, Crystalline::Nilable.new(Models::Components::RiskVerificationOutcome), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('riskVerificationOutcome'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::RiskVerificationOutcome, true) } }
|
|
37
40
|
|
|
38
|
-
sig { params(bank_account_id: ::String, fingerprint: ::String, status: Models::Components::BankAccountStatus, holder_name: ::String, holder_type: Models::Components::BankAccountHolderType, bank_name: ::String, bank_account_type: Models::Components::BankAccountType, routing_number: ::String, last_four_account_number: ::String, updated_on: ::DateTime).void }
|
|
39
|
-
def initialize(bank_account_id:, fingerprint:, status:, holder_name:, holder_type:, bank_name:, bank_account_type:, routing_number:, last_four_account_number:, updated_on:)
|
|
41
|
+
sig { params(bank_account_id: ::String, fingerprint: ::String, status: Models::Components::BankAccountStatus, holder_name: ::String, holder_type: Models::Components::BankAccountHolderType, bank_name: ::String, bank_account_type: Models::Components::BankAccountType, routing_number: ::String, last_four_account_number: ::String, updated_on: ::DateTime, risk_verification_outcome: T.nilable(Models::Components::RiskVerificationOutcome)).void }
|
|
42
|
+
def initialize(bank_account_id:, fingerprint:, status:, holder_name:, holder_type:, bank_name:, bank_account_type:, routing_number:, last_four_account_number:, updated_on:, risk_verification_outcome: nil)
|
|
40
43
|
@bank_account_id = bank_account_id
|
|
41
44
|
@fingerprint = fingerprint
|
|
42
45
|
@status = status
|
|
@@ -47,6 +50,7 @@ module Moov
|
|
|
47
50
|
@routing_number = routing_number
|
|
48
51
|
@last_four_account_number = last_four_account_number
|
|
49
52
|
@updated_on = updated_on
|
|
53
|
+
@risk_verification_outcome = risk_verification_outcome
|
|
50
54
|
end
|
|
51
55
|
|
|
52
56
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -62,6 +66,7 @@ module Moov
|
|
|
62
66
|
return false unless @routing_number == other.routing_number
|
|
63
67
|
return false unless @last_four_account_number == other.last_four_account_number
|
|
64
68
|
return false unless @updated_on == other.updated_on
|
|
69
|
+
return false unless @risk_verification_outcome == other.risk_verification_outcome
|
|
65
70
|
true
|
|
66
71
|
end
|
|
67
72
|
end
|
|
@@ -18,6 +18,8 @@ module Moov
|
|
|
18
18
|
field :title, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('title'), required: true } }
|
|
19
19
|
# A product's starting price, before applying modifiers.
|
|
20
20
|
field :base_price, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('basePrice'), required: true } }
|
|
21
|
+
# Whether applicable tax rules may be applied to this product. The value can be used to determine how to populate the tax amount on a transfer (Moov does not compute or assess tax). true means a tax amount can be included; false means it should not. Omitted values default to true on creation and preserve the existing setting on update. This setting does not determine jurisdiction-specific taxability.
|
|
22
|
+
field :is_taxable, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('isTaxable'), required: true } }
|
|
21
23
|
# The date and time when the product was added.
|
|
22
24
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
23
25
|
# The date and time when the product was last updated.
|
|
@@ -37,11 +39,12 @@ module Moov
|
|
|
37
39
|
# The date and time when the product was disabled.
|
|
38
40
|
field :disabled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disabledOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
39
41
|
|
|
40
|
-
sig { params(product_id: ::String, title: ::String, base_price: Models::Components::AmountDecimal, created_on: ::DateTime, updated_on: ::DateTime, description: T.nilable(::String), option_groups: T.nilable(T::Array[Models::Components::ProductOptionGroup]), images: T.nilable(T::Array[Models::Components::ProductImageMetadata]), category: T.nilable(Models::Components::ProductCategory), disabled_on: T.nilable(::DateTime)).void }
|
|
41
|
-
def initialize(product_id:, title:, base_price:, created_on:, updated_on:, description: nil, option_groups: nil, images: nil, category: nil, disabled_on: nil)
|
|
42
|
+
sig { params(product_id: ::String, title: ::String, base_price: Models::Components::AmountDecimal, is_taxable: T::Boolean, created_on: ::DateTime, updated_on: ::DateTime, description: T.nilable(::String), option_groups: T.nilable(T::Array[Models::Components::ProductOptionGroup]), images: T.nilable(T::Array[Models::Components::ProductImageMetadata]), category: T.nilable(Models::Components::ProductCategory), disabled_on: T.nilable(::DateTime)).void }
|
|
43
|
+
def initialize(product_id:, title:, base_price:, is_taxable:, created_on:, updated_on:, description: nil, option_groups: nil, images: nil, category: nil, disabled_on: nil)
|
|
42
44
|
@product_id = product_id
|
|
43
45
|
@title = title
|
|
44
46
|
@base_price = base_price
|
|
47
|
+
@is_taxable = is_taxable
|
|
45
48
|
@created_on = created_on
|
|
46
49
|
@updated_on = updated_on
|
|
47
50
|
@description = description
|
|
@@ -57,6 +60,7 @@ module Moov
|
|
|
57
60
|
return false unless @product_id == other.product_id
|
|
58
61
|
return false unless @title == other.title
|
|
59
62
|
return false unless @base_price == other.base_price
|
|
63
|
+
return false unless @is_taxable == other.is_taxable
|
|
60
64
|
return false unless @created_on == other.created_on
|
|
61
65
|
return false unless @updated_on == other.updated_on
|
|
62
66
|
return false unless @description == other.description
|
|
@@ -22,6 +22,8 @@ module Moov
|
|
|
22
22
|
# - Supports Markdown for formatting
|
|
23
23
|
# - HTML is not permitted and will be rejected
|
|
24
24
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
25
|
+
# Whether applicable tax rules may be applied to this product. The value can be used to determine how to populate the tax amount on a transfer (Moov does not compute or assess tax). true means a tax amount can be included; false means it should not. Omitted values default to true on creation and preserve the existing setting on update. This setting does not determine jurisdiction-specific taxability.
|
|
26
|
+
field :is_taxable, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('isTaxable') } }
|
|
25
27
|
# Assign previously uploaded images to a product or option.
|
|
26
28
|
field :images, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::AssignProductImage)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('images') } }
|
|
27
29
|
# Optional configuration options for a product, such as size or color.
|
|
@@ -29,11 +31,12 @@ module Moov
|
|
|
29
31
|
# The ID of a product taxonomy category to associate with the product.
|
|
30
32
|
field :category_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('categoryID') } }
|
|
31
33
|
|
|
32
|
-
sig { params(title: ::String, base_price: Models::Components::AmountDecimal, description: T.nilable(::String), images: T.nilable(T::Array[Models::Components::AssignProductImage]), option_groups: T.nilable(T::Array[Models::Components::CreateProductOptionGroup]), category_id: T.nilable(::String)).void }
|
|
33
|
-
def initialize(title:, base_price:, description: nil, images: nil, option_groups: nil, category_id: nil)
|
|
34
|
+
sig { params(title: ::String, base_price: Models::Components::AmountDecimal, description: T.nilable(::String), is_taxable: T.nilable(T::Boolean), images: T.nilable(T::Array[Models::Components::AssignProductImage]), option_groups: T.nilable(T::Array[Models::Components::CreateProductOptionGroup]), category_id: T.nilable(::String)).void }
|
|
35
|
+
def initialize(title:, base_price:, description: nil, is_taxable: nil, images: nil, option_groups: nil, category_id: nil)
|
|
34
36
|
@title = title
|
|
35
37
|
@base_price = base_price
|
|
36
38
|
@description = description
|
|
39
|
+
@is_taxable = is_taxable
|
|
37
40
|
@images = images
|
|
38
41
|
@option_groups = option_groups
|
|
39
42
|
@category_id = category_id
|
|
@@ -45,6 +48,7 @@ module Moov
|
|
|
45
48
|
return false unless @title == other.title
|
|
46
49
|
return false unless @base_price == other.base_price
|
|
47
50
|
return false unless @description == other.description
|
|
51
|
+
return false unless @is_taxable == other.is_taxable
|
|
48
52
|
return false unless @images == other.images
|
|
49
53
|
return false unless @option_groups == other.option_groups
|
|
50
54
|
return false unless @category_id == other.category_id
|
|
@@ -14,6 +14,8 @@ class Moov::Models::Components::ProductRequest
|
|
|
14
14
|
def base_price=(str_); end
|
|
15
15
|
def description(); end
|
|
16
16
|
def description=(str_); end
|
|
17
|
+
def is_taxable(); end
|
|
18
|
+
def is_taxable=(str_); end
|
|
17
19
|
def images(); end
|
|
18
20
|
def images=(str_); end
|
|
19
21
|
def option_groups(); end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# RiskVerificationOutcome - The outcome of a bank account risk-verification attempt.
|
|
11
|
+
class RiskVerificationOutcome
|
|
12
|
+
include ::Crystalline::Enum
|
|
13
|
+
enums do
|
|
14
|
+
NOT_ATTEMPTED = new('notAttempted')
|
|
15
|
+
SUCCESS = new('success')
|
|
16
|
+
INCONCLUSIVE = new('inconclusive')
|
|
17
|
+
DECLINE = new('decline')
|
|
18
|
+
end
|
|
19
|
+
open!
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -70,7 +70,8 @@ module Moov
|
|
|
70
70
|
field :line_items, Crystalline::Nilable.new(Models::Components::TransferLineItems), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
|
|
71
71
|
# ID of the invoice that the transfer is associated with.
|
|
72
72
|
field :invoice_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceID') } }
|
|
73
|
-
|
|
73
|
+
# The tip, tax, and surcharge portion of the transfer amount.
|
|
74
|
+
# For an auth-capture `card-payment` transfer, this is the aggregate of all captures' `amountDetails`.
|
|
74
75
|
field :amount_details, Crystalline::Nilable.new(Models::Components::TransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
75
76
|
# Authorization amounts.
|
|
76
77
|
# This field is present only for an auth-capture `card-payment` transfer.
|