increase 1.284.1 → 1.286.0

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.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +177 -0
  3. data/README.md +1 -1
  4. data/lib/increase/client.rb +4 -0
  5. data/lib/increase/models/entity_onboarding_session.rb +135 -0
  6. data/lib/increase/models/entity_onboarding_session_create_params.rb +45 -0
  7. data/lib/increase/models/entity_onboarding_session_expire_params.rb +22 -0
  8. data/lib/increase/models/entity_onboarding_session_list_params.rb +85 -0
  9. data/lib/increase/models/entity_onboarding_session_retrieve_params.rb +22 -0
  10. data/lib/increase/models/export.rb +44 -1
  11. data/lib/increase/models/export_create_params.rb +43 -1
  12. data/lib/increase/models/export_list_params.rb +3 -0
  13. data/lib/increase/models/simulations/entity_onboarding_session_submit_params.rb +24 -0
  14. data/lib/increase/models.rb +10 -0
  15. data/lib/increase/resources/entity_onboarding_sessions.rb +116 -0
  16. data/lib/increase/resources/exports.rb +3 -1
  17. data/lib/increase/resources/simulations/entity_onboarding_sessions.rb +39 -0
  18. data/lib/increase/resources/simulations.rb +5 -0
  19. data/lib/increase/version.rb +1 -1
  20. data/lib/increase.rb +8 -0
  21. data/rbi/increase/client.rbi +3 -0
  22. data/rbi/increase/models/entity_onboarding_session.rbi +190 -0
  23. data/rbi/increase/models/entity_onboarding_session_create_params.rbi +73 -0
  24. data/rbi/increase/models/entity_onboarding_session_expire_params.rbi +46 -0
  25. data/rbi/increase/models/entity_onboarding_session_list_params.rbi +194 -0
  26. data/rbi/increase/models/entity_onboarding_session_retrieve_params.rbi +46 -0
  27. data/rbi/increase/models/export.rbi +80 -0
  28. data/rbi/increase/models/export_create_params.rbi +91 -0
  29. data/rbi/increase/models/export_list_params.rbi +7 -0
  30. data/rbi/increase/models/simulations/entity_onboarding_session_submit_params.rbi +48 -0
  31. data/rbi/increase/models.rbi +14 -0
  32. data/rbi/increase/resources/entity_onboarding_sessions.rbi +90 -0
  33. data/rbi/increase/resources/exports.rbi +5 -0
  34. data/rbi/increase/resources/simulations/entity_onboarding_sessions.rbi +31 -0
  35. data/rbi/increase/resources/simulations.rbi +5 -0
  36. data/sig/increase/client.rbs +2 -0
  37. data/sig/increase/models/entity_onboarding_session.rbs +89 -0
  38. data/sig/increase/models/entity_onboarding_session_create_params.rbs +34 -0
  39. data/sig/increase/models/entity_onboarding_session_expire_params.rbs +24 -0
  40. data/sig/increase/models/entity_onboarding_session_list_params.rbs +86 -0
  41. data/sig/increase/models/entity_onboarding_session_retrieve_params.rbs +24 -0
  42. data/sig/increase/models/export.rbs +36 -0
  43. data/sig/increase/models/export_create_params.rbs +42 -0
  44. data/sig/increase/models/export_list_params.rbs +4 -0
  45. data/sig/increase/models/simulations/entity_onboarding_session_submit_params.rbs +26 -0
  46. data/sig/increase/models.rbs +10 -0
  47. data/sig/increase/resources/entity_onboarding_sessions.rbs +32 -0
  48. data/sig/increase/resources/exports.rbs +1 -0
  49. data/sig/increase/resources/simulations/entity_onboarding_sessions.rbs +14 -0
  50. data/sig/increase/resources/simulations.rbs +2 -0
  51. metadata +26 -2
@@ -49,6 +49,13 @@ module Increase
49
49
  optional :bookkeeping_account_balance_csv,
50
50
  -> { Increase::ExportCreateParams::BookkeepingAccountBalanceCsv }
51
51
 
52
+ # @!attribute daily_account_balance_csv
53
+ # Options for the created export. Required if `category` is equal to
54
+ # `daily_account_balance_csv`.
55
+ #
56
+ # @return [Increase::Models::ExportCreateParams::DailyAccountBalanceCsv, nil]
57
+ optional :daily_account_balance_csv, -> { Increase::ExportCreateParams::DailyAccountBalanceCsv }
58
+
52
59
  # @!attribute entity_csv
53
60
  # Options for the created export. Required if `category` is equal to `entity_csv`.
54
61
  #
@@ -82,7 +89,7 @@ module Increase
82
89
  # @return [Increase::Models::ExportCreateParams::VoidedCheck, nil]
83
90
  optional :voided_check, -> { Increase::ExportCreateParams::VoidedCheck }
84
91
 
85
- # @!method initialize(category:, account_statement_bai2: nil, account_statement_ofx: nil, account_verification_letter: nil, balance_csv: nil, bookkeeping_account_balance_csv: nil, entity_csv: nil, funding_instructions: nil, transaction_csv: nil, vendor_csv: nil, voided_check: nil, request_options: {})
92
+ # @!method initialize(category:, account_statement_bai2: nil, account_statement_ofx: nil, account_verification_letter: nil, balance_csv: nil, bookkeeping_account_balance_csv: nil, daily_account_balance_csv: nil, entity_csv: nil, funding_instructions: nil, transaction_csv: nil, vendor_csv: nil, voided_check: nil, request_options: {})
86
93
  # Some parameter documentations has been truncated, see
87
94
  # {Increase::Models::ExportCreateParams} for more details.
88
95
  #
@@ -99,6 +106,8 @@ module Increase
99
106
  # @param bookkeeping_account_balance_csv [Increase::Models::ExportCreateParams::BookkeepingAccountBalanceCsv] Options for the created export. Required if `category` is equal to
100
107
  # `bookkeeping\_
101
108
  #
109
+ # @param daily_account_balance_csv [Increase::Models::ExportCreateParams::DailyAccountBalanceCsv] Options for the created export. Required if `category` is equal to `daily_accoun
110
+ #
102
111
  # @param entity_csv [Increase::Models::ExportCreateParams::EntityCsv] Options for the created export. Required if `category` is equal to `entity_csv`.
103
112
  #
104
113
  # @param funding_instructions [Increase::Models::ExportCreateParams::FundingInstructions] Options for the created export. Required if `category` is equal to `funding_inst
@@ -146,6 +155,9 @@ module Increase
146
155
  # A PDF of a voided check.
147
156
  VOIDED_CHECK = :voided_check
148
157
 
158
+ # Export a CSV of daily account balances with starting and ending balances for a given date range.
159
+ DAILY_ACCOUNT_BALANCE_CSV = :daily_account_balance_csv
160
+
149
161
  # @!method self.values
150
162
  # @return [Array<Symbol>]
151
163
  end
@@ -418,6 +430,36 @@ module Increase
418
430
  end
419
431
  end
420
432
 
433
+ class DailyAccountBalanceCsv < Increase::Internal::Type::BaseModel
434
+ # @!attribute account_id
435
+ # Filter exported Balances to the specified Account.
436
+ #
437
+ # @return [String, nil]
438
+ optional :account_id, String
439
+
440
+ # @!attribute on_or_after_date
441
+ # Filter exported Balances to those on or after this date.
442
+ #
443
+ # @return [Date, nil]
444
+ optional :on_or_after_date, Date
445
+
446
+ # @!attribute on_or_before_date
447
+ # Filter exported Balances to those on or before this date.
448
+ #
449
+ # @return [Date, nil]
450
+ optional :on_or_before_date, Date
451
+
452
+ # @!method initialize(account_id: nil, on_or_after_date: nil, on_or_before_date: nil)
453
+ # Options for the created export. Required if `category` is equal to
454
+ # `daily_account_balance_csv`.
455
+ #
456
+ # @param account_id [String] Filter exported Balances to the specified Account.
457
+ #
458
+ # @param on_or_after_date [Date] Filter exported Balances to those on or after this date.
459
+ #
460
+ # @param on_or_before_date [Date] Filter exported Balances to those on or before this date.
461
+ end
462
+
421
463
  class EntityCsv < Increase::Internal::Type::BaseModel
422
464
  # @!method initialize
423
465
  # Options for the created export. Required if `category` is equal to `entity_csv`.
@@ -123,6 +123,9 @@ module Increase
123
123
  # A PDF of a voided check.
124
124
  VOIDED_CHECK = :voided_check
125
125
 
126
+ # Export a CSV of daily account balances with starting and ending balances for a given date range.
127
+ DAILY_ACCOUNT_BALANCE_CSV = :daily_account_balance_csv
128
+
126
129
  # @!method self.values
127
130
  # @return [Array<Symbol>]
128
131
  end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Models
5
+ module Simulations
6
+ # @see Increase::Resources::Simulations::EntityOnboardingSessions#submit
7
+ class EntityOnboardingSessionSubmitParams < Increase::Internal::Type::BaseModel
8
+ extend Increase::Internal::Type::RequestParameters::Converter
9
+ include Increase::Internal::Type::RequestParameters
10
+
11
+ # @!attribute entity_onboarding_session_id
12
+ # The identifier of the Entity Onboarding Session you wish to submit.
13
+ #
14
+ # @return [String]
15
+ required :entity_onboarding_session_id, String
16
+
17
+ # @!method initialize(entity_onboarding_session_id:, request_options: {})
18
+ # @param entity_onboarding_session_id [String] The identifier of the Entity Onboarding Session you wish to submit.
19
+ #
20
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}]
21
+ end
22
+ end
23
+ end
24
+ end
@@ -269,6 +269,16 @@ module Increase
269
269
 
270
270
  EntityListParams = Increase::Models::EntityListParams
271
271
 
272
+ EntityOnboardingSession = Increase::Models::EntityOnboardingSession
273
+
274
+ EntityOnboardingSessionCreateParams = Increase::Models::EntityOnboardingSessionCreateParams
275
+
276
+ EntityOnboardingSessionExpireParams = Increase::Models::EntityOnboardingSessionExpireParams
277
+
278
+ EntityOnboardingSessionListParams = Increase::Models::EntityOnboardingSessionListParams
279
+
280
+ EntityOnboardingSessionRetrieveParams = Increase::Models::EntityOnboardingSessionRetrieveParams
281
+
272
282
  EntityRetrieveParams = Increase::Models::EntityRetrieveParams
273
283
 
274
284
  EntitySupplementalDocument = Increase::Models::EntitySupplementalDocument
@@ -0,0 +1,116 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Resources
5
+ class EntityOnboardingSessions
6
+ # Some parameter documentations has been truncated, see
7
+ # {Increase::Models::EntityOnboardingSessionCreateParams} for more details.
8
+ #
9
+ # Create an Entity Onboarding Session
10
+ #
11
+ # @overload create(program_id:, redirect_url:, entity_id: nil, request_options: {})
12
+ #
13
+ # @param program_id [String] The identifier of the Program the Entity will be onboarded to.
14
+ #
15
+ # @param redirect_url [String] The URL to redirect the customer to after they complete the onboarding form. The
16
+ #
17
+ # @param entity_id [String] The identifier of an existing Entity to associate with the onboarding session. I
18
+ #
19
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}, nil]
20
+ #
21
+ # @return [Increase::Models::EntityOnboardingSession]
22
+ #
23
+ # @see Increase::Models::EntityOnboardingSessionCreateParams
24
+ def create(params)
25
+ parsed, options = Increase::EntityOnboardingSessionCreateParams.dump_request(params)
26
+ @client.request(
27
+ method: :post,
28
+ path: "entity_onboarding_sessions",
29
+ body: parsed,
30
+ model: Increase::EntityOnboardingSession,
31
+ options: options
32
+ )
33
+ end
34
+
35
+ # Retrieve an Entity Onboarding Session
36
+ #
37
+ # @overload retrieve(entity_onboarding_session_id, request_options: {})
38
+ #
39
+ # @param entity_onboarding_session_id [String] The identifier of the Entity Onboarding Session.
40
+ #
41
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}, nil]
42
+ #
43
+ # @return [Increase::Models::EntityOnboardingSession]
44
+ #
45
+ # @see Increase::Models::EntityOnboardingSessionRetrieveParams
46
+ def retrieve(entity_onboarding_session_id, params = {})
47
+ @client.request(
48
+ method: :get,
49
+ path: ["entity_onboarding_sessions/%1$s", entity_onboarding_session_id],
50
+ model: Increase::EntityOnboardingSession,
51
+ options: params[:request_options]
52
+ )
53
+ end
54
+
55
+ # Some parameter documentations has been truncated, see
56
+ # {Increase::Models::EntityOnboardingSessionListParams} for more details.
57
+ #
58
+ # List Entity Onboarding Session
59
+ #
60
+ # @overload list(cursor: nil, idempotency_key: nil, limit: nil, status: nil, request_options: {})
61
+ #
62
+ # @param cursor [String] Return the page of entries after this one.
63
+ #
64
+ # @param idempotency_key [String] Filter records to the one with the specified `idempotency_key` you chose for tha
65
+ #
66
+ # @param limit [Integer] Limit the size of the list that is returned. The default (and maximum) is 100 ob
67
+ #
68
+ # @param status [Increase::Models::EntityOnboardingSessionListParams::Status]
69
+ #
70
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}, nil]
71
+ #
72
+ # @return [Increase::Internal::Page<Increase::Models::EntityOnboardingSession>]
73
+ #
74
+ # @see Increase::Models::EntityOnboardingSessionListParams
75
+ def list(params = {})
76
+ parsed, options = Increase::EntityOnboardingSessionListParams.dump_request(params)
77
+ query = Increase::Internal::Util.encode_query_params(parsed)
78
+ @client.request(
79
+ method: :get,
80
+ path: "entity_onboarding_sessions",
81
+ query: query,
82
+ page: Increase::Internal::Page,
83
+ model: Increase::EntityOnboardingSession,
84
+ options: options
85
+ )
86
+ end
87
+
88
+ # Expire an Entity Onboarding Session
89
+ #
90
+ # @overload expire(entity_onboarding_session_id, request_options: {})
91
+ #
92
+ # @param entity_onboarding_session_id [String] The identifier of the Entity Onboarding Session to expire.
93
+ #
94
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}, nil]
95
+ #
96
+ # @return [Increase::Models::EntityOnboardingSession]
97
+ #
98
+ # @see Increase::Models::EntityOnboardingSessionExpireParams
99
+ def expire(entity_onboarding_session_id, params = {})
100
+ @client.request(
101
+ method: :post,
102
+ path: ["entity_onboarding_sessions/%1$s/expire", entity_onboarding_session_id],
103
+ model: Increase::EntityOnboardingSession,
104
+ options: params[:request_options]
105
+ )
106
+ end
107
+
108
+ # @api private
109
+ #
110
+ # @param client [Increase::Client]
111
+ def initialize(client:)
112
+ @client = client
113
+ end
114
+ end
115
+ end
116
+ end
@@ -8,7 +8,7 @@ module Increase
8
8
  #
9
9
  # Create an Export
10
10
  #
11
- # @overload create(category:, account_statement_bai2: nil, account_statement_ofx: nil, account_verification_letter: nil, balance_csv: nil, bookkeeping_account_balance_csv: nil, entity_csv: nil, funding_instructions: nil, transaction_csv: nil, vendor_csv: nil, voided_check: nil, request_options: {})
11
+ # @overload create(category:, account_statement_bai2: nil, account_statement_ofx: nil, account_verification_letter: nil, balance_csv: nil, bookkeeping_account_balance_csv: nil, daily_account_balance_csv: nil, entity_csv: nil, funding_instructions: nil, transaction_csv: nil, vendor_csv: nil, voided_check: nil, request_options: {})
12
12
  #
13
13
  # @param category [Symbol, Increase::Models::ExportCreateParams::Category] The type of Export to create.
14
14
  #
@@ -23,6 +23,8 @@ module Increase
23
23
  # @param bookkeeping_account_balance_csv [Increase::Models::ExportCreateParams::BookkeepingAccountBalanceCsv] Options for the created export. Required if `category` is equal to
24
24
  # `bookkeeping\_
25
25
  #
26
+ # @param daily_account_balance_csv [Increase::Models::ExportCreateParams::DailyAccountBalanceCsv] Options for the created export. Required if `category` is equal to `daily_accoun
27
+ #
26
28
  # @param entity_csv [Increase::Models::ExportCreateParams::EntityCsv] Options for the created export. Required if `category` is equal to `entity_csv`.
27
29
  #
28
30
  # @param funding_instructions [Increase::Models::ExportCreateParams::FundingInstructions] Options for the created export. Required if `category` is equal to `funding_inst
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Increase
4
+ module Resources
5
+ class Simulations
6
+ class EntityOnboardingSessions
7
+ # Simulates the submission of an
8
+ # [Entity Onboarding Session](#entity-onboarding-sessions). This session must have
9
+ # a `status` of `active`. After submission, the session will transition to
10
+ # `expired` and a new Entity will be created.
11
+ #
12
+ # @overload submit(entity_onboarding_session_id, request_options: {})
13
+ #
14
+ # @param entity_onboarding_session_id [String] The identifier of the Entity Onboarding Session you wish to submit.
15
+ #
16
+ # @param request_options [Increase::RequestOptions, Hash{Symbol=>Object}, nil]
17
+ #
18
+ # @return [Increase::Models::EntityOnboardingSession]
19
+ #
20
+ # @see Increase::Models::Simulations::EntityOnboardingSessionSubmitParams
21
+ def submit(entity_onboarding_session_id, params = {})
22
+ @client.request(
23
+ method: :post,
24
+ path: ["simulations/entity_onboarding_sessions/%1$s/submit", entity_onboarding_session_id],
25
+ model: Increase::EntityOnboardingSession,
26
+ options: params[:request_options]
27
+ )
28
+ end
29
+
30
+ # @api private
31
+ #
32
+ # @param client [Increase::Client]
33
+ def initialize(client:)
34
+ @client = client
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -87,6 +87,9 @@ module Increase
87
87
  # @return [Increase::Resources::Simulations::InboundMailItems]
88
88
  attr_reader :inbound_mail_items
89
89
 
90
+ # @return [Increase::Resources::Simulations::EntityOnboardingSessions]
91
+ attr_reader :entity_onboarding_sessions
92
+
90
93
  # @return [Increase::Resources::Simulations::Programs]
91
94
  attr_reader :programs
92
95
 
@@ -137,6 +140,8 @@ module Increase
137
140
  @inbound_fednow_transfers = Increase::Resources::Simulations::InboundFednowTransfers.new(client: client)
138
141
  @check_deposits = Increase::Resources::Simulations::CheckDeposits.new(client: client)
139
142
  @inbound_mail_items = Increase::Resources::Simulations::InboundMailItems.new(client: client)
143
+ @entity_onboarding_sessions =
144
+ Increase::Resources::Simulations::EntityOnboardingSessions.new(client: client)
140
145
  @programs = Increase::Resources::Simulations::Programs.new(client: client)
141
146
  @account_statements = Increase::Resources::Simulations::AccountStatements.new(client: client)
142
147
  @exports = Increase::Resources::Simulations::Exports.new(client: client)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Increase
4
- VERSION = "1.284.1"
4
+ VERSION = "1.286.0"
5
5
  end
data/lib/increase.rb CHANGED
@@ -169,6 +169,11 @@ require_relative "increase/models/entity_archive_params"
169
169
  require_relative "increase/models/entity_beneficial_owner"
170
170
  require_relative "increase/models/entity_create_params"
171
171
  require_relative "increase/models/entity_list_params"
172
+ require_relative "increase/models/entity_onboarding_session"
173
+ require_relative "increase/models/entity_onboarding_session_create_params"
174
+ require_relative "increase/models/entity_onboarding_session_expire_params"
175
+ require_relative "increase/models/entity_onboarding_session_list_params"
176
+ require_relative "increase/models/entity_onboarding_session_retrieve_params"
172
177
  require_relative "increase/models/entity_retrieve_params"
173
178
  require_relative "increase/models/entity_supplemental_document"
174
179
  require_relative "increase/models/entity_update_params"
@@ -315,6 +320,7 @@ require_relative "increase/models/simulations/check_deposit_submit_params"
315
320
  require_relative "increase/models/simulations/check_transfer_mail_params"
316
321
  require_relative "increase/models/simulations/digital_wallet_token_request_create_params"
317
322
  require_relative "increase/models/simulations/digital_wallet_token_request_create_response"
323
+ require_relative "increase/models/simulations/entity_onboarding_session_submit_params"
318
324
  require_relative "increase/models/simulations/export_create_params"
319
325
  require_relative "increase/models/simulations/inbound_ach_transfer_create_params"
320
326
  require_relative "increase/models/simulations/inbound_check_deposit_adjustment_params"
@@ -380,6 +386,7 @@ require_relative "increase/resources/declined_transactions"
380
386
  require_relative "increase/resources/digital_card_profiles"
381
387
  require_relative "increase/resources/digital_wallet_tokens"
382
388
  require_relative "increase/resources/entities"
389
+ require_relative "increase/resources/entity_onboarding_sessions"
383
390
  require_relative "increase/resources/events"
384
391
  require_relative "increase/resources/event_subscriptions"
385
392
  require_relative "increase/resources/exports"
@@ -427,6 +434,7 @@ require_relative "increase/resources/simulations/card_tokens"
427
434
  require_relative "increase/resources/simulations/check_deposits"
428
435
  require_relative "increase/resources/simulations/check_transfers"
429
436
  require_relative "increase/resources/simulations/digital_wallet_token_requests"
437
+ require_relative "increase/resources/simulations/entity_onboarding_sessions"
430
438
  require_relative "increase/resources/simulations/exports"
431
439
  require_relative "increase/resources/simulations/inbound_ach_transfers"
432
440
  require_relative "increase/resources/simulations/inbound_check_deposits"
@@ -133,6 +133,9 @@ module Increase
133
133
  sig { returns(Increase::Resources::SupplementalDocuments) }
134
134
  attr_reader :supplemental_documents
135
135
 
136
+ sig { returns(Increase::Resources::EntityOnboardingSessions) }
137
+ attr_reader :entity_onboarding_sessions
138
+
136
139
  sig { returns(Increase::Resources::Programs) }
137
140
  attr_reader :programs
138
141
 
@@ -0,0 +1,190 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Models
5
+ class EntityOnboardingSession < Increase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Increase::EntityOnboardingSession, Increase::Internal::AnyHash)
9
+ end
10
+
11
+ # The Entity Onboarding Session's identifier.
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
16
+ # the Entity Onboarding Session was created.
17
+ sig { returns(Time) }
18
+ attr_accessor :created_at
19
+
20
+ # The identifier of the Entity associated with this session, if one has been
21
+ # created or was provided when creating the session.
22
+ sig { returns(T.nilable(String)) }
23
+ attr_accessor :entity_id
24
+
25
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
26
+ # the Entity Onboarding Session will expire.
27
+ sig { returns(Time) }
28
+ attr_accessor :expires_at
29
+
30
+ # The idempotency key you chose for this object. This value is unique across
31
+ # Increase and is used to ensure that a request is only processed once. Learn more
32
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
33
+ sig { returns(T.nilable(String)) }
34
+ attr_accessor :idempotency_key
35
+
36
+ # The identifier of the Program the Entity will be onboarded to.
37
+ sig { returns(String) }
38
+ attr_accessor :program_id
39
+
40
+ # The URL to redirect to after the onboarding session is complete. Increase will
41
+ # include the query parameters `entity_onboarding_session_id` and `entity_id` when
42
+ # redirecting.
43
+ sig { returns(String) }
44
+ attr_accessor :redirect_url
45
+
46
+ # The URL containing the onboarding form. You should share this link with your
47
+ # customer. Only present when the session is active.
48
+ sig { returns(T.nilable(String)) }
49
+ attr_accessor :session_url
50
+
51
+ # The status of the onboarding session.
52
+ sig { returns(Increase::EntityOnboardingSession::Status::TaggedSymbol) }
53
+ attr_accessor :status
54
+
55
+ # A constant representing the object's type. For this resource it will always be
56
+ # `entity_onboarding_session`.
57
+ sig { returns(Increase::EntityOnboardingSession::Type::TaggedSymbol) }
58
+ attr_accessor :type
59
+
60
+ # Entity Onboarding Sessions let your customers onboard themselves by completing
61
+ # Increase-hosted forms. Create a session and redirect your customer to the
62
+ # returned URL. When they're done, they'll be redirected back to your site. This
63
+ # API is used for [hosted onboarding](/documentation/hosted-onboarding).
64
+ sig do
65
+ params(
66
+ id: String,
67
+ created_at: Time,
68
+ entity_id: T.nilable(String),
69
+ expires_at: Time,
70
+ idempotency_key: T.nilable(String),
71
+ program_id: String,
72
+ redirect_url: String,
73
+ session_url: T.nilable(String),
74
+ status: Increase::EntityOnboardingSession::Status::OrSymbol,
75
+ type: Increase::EntityOnboardingSession::Type::OrSymbol
76
+ ).returns(T.attached_class)
77
+ end
78
+ def self.new(
79
+ # The Entity Onboarding Session's identifier.
80
+ id:,
81
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
82
+ # the Entity Onboarding Session was created.
83
+ created_at:,
84
+ # The identifier of the Entity associated with this session, if one has been
85
+ # created or was provided when creating the session.
86
+ entity_id:,
87
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
88
+ # the Entity Onboarding Session will expire.
89
+ expires_at:,
90
+ # The idempotency key you chose for this object. This value is unique across
91
+ # Increase and is used to ensure that a request is only processed once. Learn more
92
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
93
+ idempotency_key:,
94
+ # The identifier of the Program the Entity will be onboarded to.
95
+ program_id:,
96
+ # The URL to redirect to after the onboarding session is complete. Increase will
97
+ # include the query parameters `entity_onboarding_session_id` and `entity_id` when
98
+ # redirecting.
99
+ redirect_url:,
100
+ # The URL containing the onboarding form. You should share this link with your
101
+ # customer. Only present when the session is active.
102
+ session_url:,
103
+ # The status of the onboarding session.
104
+ status:,
105
+ # A constant representing the object's type. For this resource it will always be
106
+ # `entity_onboarding_session`.
107
+ type:
108
+ )
109
+ end
110
+
111
+ sig do
112
+ override.returns(
113
+ {
114
+ id: String,
115
+ created_at: Time,
116
+ entity_id: T.nilable(String),
117
+ expires_at: Time,
118
+ idempotency_key: T.nilable(String),
119
+ program_id: String,
120
+ redirect_url: String,
121
+ session_url: T.nilable(String),
122
+ status: Increase::EntityOnboardingSession::Status::TaggedSymbol,
123
+ type: Increase::EntityOnboardingSession::Type::TaggedSymbol
124
+ }
125
+ )
126
+ end
127
+ def to_hash
128
+ end
129
+
130
+ # The status of the onboarding session.
131
+ module Status
132
+ extend Increase::Internal::Type::Enum
133
+
134
+ TaggedSymbol =
135
+ T.type_alias do
136
+ T.all(Symbol, Increase::EntityOnboardingSession::Status)
137
+ end
138
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
139
+
140
+ # The Entity Onboarding Session is active.
141
+ ACTIVE =
142
+ T.let(
143
+ :active,
144
+ Increase::EntityOnboardingSession::Status::TaggedSymbol
145
+ )
146
+
147
+ # The Entity Onboarding Session has expired.
148
+ EXPIRED =
149
+ T.let(
150
+ :expired,
151
+ Increase::EntityOnboardingSession::Status::TaggedSymbol
152
+ )
153
+
154
+ sig do
155
+ override.returns(
156
+ T::Array[Increase::EntityOnboardingSession::Status::TaggedSymbol]
157
+ )
158
+ end
159
+ def self.values
160
+ end
161
+ end
162
+
163
+ # A constant representing the object's type. For this resource it will always be
164
+ # `entity_onboarding_session`.
165
+ module Type
166
+ extend Increase::Internal::Type::Enum
167
+
168
+ TaggedSymbol =
169
+ T.type_alias do
170
+ T.all(Symbol, Increase::EntityOnboardingSession::Type)
171
+ end
172
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
173
+
174
+ ENTITY_ONBOARDING_SESSION =
175
+ T.let(
176
+ :entity_onboarding_session,
177
+ Increase::EntityOnboardingSession::Type::TaggedSymbol
178
+ )
179
+
180
+ sig do
181
+ override.returns(
182
+ T::Array[Increase::EntityOnboardingSession::Type::TaggedSymbol]
183
+ )
184
+ end
185
+ def self.values
186
+ end
187
+ end
188
+ end
189
+ end
190
+ end
@@ -0,0 +1,73 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Models
5
+ class EntityOnboardingSessionCreateParams < Increase::Internal::Type::BaseModel
6
+ extend Increase::Internal::Type::RequestParameters::Converter
7
+ include Increase::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Increase::EntityOnboardingSessionCreateParams,
13
+ Increase::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # The identifier of the Program the Entity will be onboarded to.
18
+ sig { returns(String) }
19
+ attr_accessor :program_id
20
+
21
+ # The URL to redirect the customer to after they complete the onboarding form. The
22
+ # redirect will include `entity_onboarding_session_id` and `entity_id` query
23
+ # parameters.
24
+ sig { returns(String) }
25
+ attr_accessor :redirect_url
26
+
27
+ # The identifier of an existing Entity to associate with the onboarding session.
28
+ # If provided, the onboarding form will display any outstanding tasks required to
29
+ # complete the Entity's onboarding.
30
+ sig { returns(T.nilable(String)) }
31
+ attr_reader :entity_id
32
+
33
+ sig { params(entity_id: String).void }
34
+ attr_writer :entity_id
35
+
36
+ sig do
37
+ params(
38
+ program_id: String,
39
+ redirect_url: String,
40
+ entity_id: String,
41
+ request_options: Increase::RequestOptions::OrHash
42
+ ).returns(T.attached_class)
43
+ end
44
+ def self.new(
45
+ # The identifier of the Program the Entity will be onboarded to.
46
+ program_id:,
47
+ # The URL to redirect the customer to after they complete the onboarding form. The
48
+ # redirect will include `entity_onboarding_session_id` and `entity_id` query
49
+ # parameters.
50
+ redirect_url:,
51
+ # The identifier of an existing Entity to associate with the onboarding session.
52
+ # If provided, the onboarding form will display any outstanding tasks required to
53
+ # complete the Entity's onboarding.
54
+ entity_id: nil,
55
+ request_options: {}
56
+ )
57
+ end
58
+
59
+ sig do
60
+ override.returns(
61
+ {
62
+ program_id: String,
63
+ redirect_url: String,
64
+ entity_id: String,
65
+ request_options: Increase::RequestOptions
66
+ }
67
+ )
68
+ end
69
+ def to_hash
70
+ end
71
+ end
72
+ end
73
+ end