listo-delivery 0.1.1

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 (77) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +152 -0
  4. data/lib/listo_delivery/client.rb +170 -0
  5. data/lib/listo_delivery/errors.rb +53 -0
  6. data/lib/listo_delivery/generated/api_version.rb +12 -0
  7. data/lib/listo_delivery/generated/client_operations.rb +82 -0
  8. data/lib/listo_delivery/generated/loader.rb +69 -0
  9. data/lib/listo_delivery/generated/models/balance.rb +48 -0
  10. data/lib/listo_delivery/generated/models/cancel_delivery_request.rb +29 -0
  11. data/lib/listo_delivery/generated/models/card_onboarding_link.rb +21 -0
  12. data/lib/listo_delivery/generated/models/card_status.rb +22 -0
  13. data/lib/listo_delivery/generated/models/connect_request.rb +28 -0
  14. data/lib/listo_delivery/generated/models/courier_ping.rb +58 -0
  15. data/lib/listo_delivery/generated/models/create_connect_request_request.rb +35 -0
  16. data/lib/listo_delivery/generated/models/create_connection_request.rb +21 -0
  17. data/lib/listo_delivery/generated/models/create_delivery_request.rb +189 -0
  18. data/lib/listo_delivery/generated/models/create_quote_request.rb +111 -0
  19. data/lib/listo_delivery/generated/models/create_store_owner_request.rb +26 -0
  20. data/lib/listo_delivery/generated/models/create_store_request.rb +104 -0
  21. data/lib/listo_delivery/generated/models/create_withdrawal_request.rb +29 -0
  22. data/lib/listo_delivery/generated/models/delivery.rb +879 -0
  23. data/lib/listo_delivery/generated/models/delivery_courier_location_event.rb +23 -0
  24. data/lib/listo_delivery/generated/models/delivery_list.rb +34 -0
  25. data/lib/listo_delivery/generated/models/delivery_message_skipped.rb +37 -0
  26. data/lib/listo_delivery/generated/models/delivery_message_skipped_event.rb +23 -0
  27. data/lib/listo_delivery/generated/models/delivery_status_changed_event.rb +23 -0
  28. data/lib/listo_delivery/generated/models/delivery_updated_event.rb +23 -0
  29. data/lib/listo_delivery/generated/models/error.rb +56 -0
  30. data/lib/listo_delivery/generated/models/error_response.rb +20 -0
  31. data/lib/listo_delivery/generated/models/event_list.rb +34 -0
  32. data/lib/listo_delivery/generated/models/ledger_entry.rb +62 -0
  33. data/lib/listo_delivery/generated/models/ledger_entry_list.rb +34 -0
  34. data/lib/listo_delivery/generated/models/manifest.rb +20 -0
  35. data/lib/listo_delivery/generated/models/manifest_item.rb +36 -0
  36. data/lib/listo_delivery/generated/models/owner_invitation.rb +27 -0
  37. data/lib/listo_delivery/generated/models/ping.rb +56 -0
  38. data/lib/listo_delivery/generated/models/quote.rb +99 -0
  39. data/lib/listo_delivery/generated/models/refund_delivery_request.rb +28 -0
  40. data/lib/listo_delivery/generated/models/request_log.rb +91 -0
  41. data/lib/listo_delivery/generated/models/request_log_detail.rb +105 -0
  42. data/lib/listo_delivery/generated/models/request_log_list.rb +34 -0
  43. data/lib/listo_delivery/generated/models/reschedule_delivery_request.rb +41 -0
  44. data/lib/listo_delivery/generated/models/same_day_terms.rb +106 -0
  45. data/lib/listo_delivery/generated/models/send_test_webhook_request.rb +22 -0
  46. data/lib/listo_delivery/generated/models/store.rb +235 -0
  47. data/lib/listo_delivery/generated/models/store_balance.rb +48 -0
  48. data/lib/listo_delivery/generated/models/store_connected_event.rb +23 -0
  49. data/lib/listo_delivery/generated/models/store_list.rb +34 -0
  50. data/lib/listo_delivery/generated/models/store_updated_event.rb +23 -0
  51. data/lib/listo_delivery/generated/models/update_store_request.rb +94 -0
  52. data/lib/listo_delivery/generated/models/webhook_delivery.rb +99 -0
  53. data/lib/listo_delivery/generated/models/webhook_delivery_list.rb +34 -0
  54. data/lib/listo_delivery/generated/models/webhook_event.rb +69 -0
  55. data/lib/listo_delivery/generated/models/webhook_event_envelope.rb +35 -0
  56. data/lib/listo_delivery/generated/models/withdrawal.rb +91 -0
  57. data/lib/listo_delivery/generated/models/withdrawal_list.rb +34 -0
  58. data/lib/listo_delivery/generated/models/withdrawal_updated_event.rb +23 -0
  59. data/lib/listo_delivery/generated/resources/balance.rb +43 -0
  60. data/lib/listo_delivery/generated/resources/card_onboarding.rb +70 -0
  61. data/lib/listo_delivery/generated/resources/connect_requests.rb +31 -0
  62. data/lib/listo_delivery/generated/resources/connections.rb +31 -0
  63. data/lib/listo_delivery/generated/resources/deliveries.rb +128 -0
  64. data/lib/listo_delivery/generated/resources/events.rb +59 -0
  65. data/lib/listo_delivery/generated/resources/ledger.rb +47 -0
  66. data/lib/listo_delivery/generated/resources/quotes.rb +31 -0
  67. data/lib/listo_delivery/generated/resources/request_logs.rb +45 -0
  68. data/lib/listo_delivery/generated/resources/stores.rb +143 -0
  69. data/lib/listo_delivery/generated/resources/webhooks.rb +46 -0
  70. data/lib/listo_delivery/generated/resources/withdrawals.rb +60 -0
  71. data/lib/listo_delivery/model.rb +69 -0
  72. data/lib/listo_delivery/util.rb +76 -0
  73. data/lib/listo_delivery/version.rb +7 -0
  74. data/lib/listo_delivery/webhooks.rb +98 -0
  75. data/lib/listo_delivery.rb +16 -0
  76. data/listo_delivery.gemspec +27 -0
  77. metadata +120 -0
@@ -0,0 +1,91 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One call your key made to this API: what was called, how it was answered and how long it took.
9
+ class RequestLog < Model
10
+ TYPES = {
11
+ "id" => nil,
12
+ "method" => nil,
13
+ "path" => nil,
14
+ "endpoint" => nil,
15
+ "status" => nil,
16
+ "error_code" => nil,
17
+ "duration_ms" => nil,
18
+ "request_id" => nil,
19
+ "api_key_prefix" => nil,
20
+ "test" => nil,
21
+ "created_at" => nil
22
+ }.freeze
23
+
24
+ # The call's id, `req_` prefixed.
25
+ # @return [String]
26
+ def id
27
+ read("id")
28
+ end
29
+
30
+ # The HTTP method of the call.
31
+ # @return [String]
32
+ def method
33
+ read("method")
34
+ end
35
+
36
+ # The path that was called, with its query string.
37
+ # @return [String, nil]
38
+ def path
39
+ read("path")
40
+ end
41
+
42
+ # Which operation the call reached, as `controller#action`.
43
+ # @return [String]
44
+ def endpoint
45
+ read("endpoint")
46
+ end
47
+
48
+ # The HTTP status Listo answered with.
49
+ # @return [Integer]
50
+ def status
51
+ read("status")
52
+ end
53
+
54
+ # The `error.code` of the answer when it was an error, otherwise null.
55
+ # @return [String, nil]
56
+ def error_code
57
+ read("error_code")
58
+ end
59
+
60
+ # How long Listo took to answer, in milliseconds.
61
+ # @return [Integer, nil]
62
+ def duration_ms
63
+ read("duration_ms")
64
+ end
65
+
66
+ # The call's request id, the value of the `X-Request-Id` response header.
67
+ # @return [String, nil]
68
+ def request_id
69
+ read("request_id")
70
+ end
71
+
72
+ # The first characters of the key that made the call, the same text the dashboard's keys page shows, never the secret.
73
+ # @return [String, nil]
74
+ def api_key_prefix
75
+ read("api_key_prefix")
76
+ end
77
+
78
+ # True when the call was made with a test key.
79
+ # @return [Boolean]
80
+ def test
81
+ read("test")
82
+ end
83
+
84
+ # When Listo received the call, ISO-8601 in UTC.
85
+ # @return [String]
86
+ def created_at
87
+ read("created_at")
88
+ end
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,105 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One call with what was sent and what came back.
9
+ class RequestLogDetail < Model
10
+ TYPES = {
11
+ "id" => nil,
12
+ "method" => nil,
13
+ "path" => nil,
14
+ "endpoint" => nil,
15
+ "status" => nil,
16
+ "error_code" => nil,
17
+ "duration_ms" => nil,
18
+ "request_id" => nil,
19
+ "api_key_prefix" => nil,
20
+ "test" => nil,
21
+ "created_at" => nil,
22
+ "request_body" => nil,
23
+ "response_body" => nil
24
+ }.freeze
25
+
26
+ # The call's id, `req_` prefixed.
27
+ # @return [String]
28
+ def id
29
+ read("id")
30
+ end
31
+
32
+ # The HTTP method of the call.
33
+ # @return [String]
34
+ def method
35
+ read("method")
36
+ end
37
+
38
+ # The path that was called, with its query string.
39
+ # @return [String, nil]
40
+ def path
41
+ read("path")
42
+ end
43
+
44
+ # Which operation the call reached, as `controller#action`.
45
+ # @return [String]
46
+ def endpoint
47
+ read("endpoint")
48
+ end
49
+
50
+ # The HTTP status Listo answered with.
51
+ # @return [Integer]
52
+ def status
53
+ read("status")
54
+ end
55
+
56
+ # The `error.code` of the answer when it was an error, otherwise null.
57
+ # @return [String, nil]
58
+ def error_code
59
+ read("error_code")
60
+ end
61
+
62
+ # How long Listo took to answer, in milliseconds.
63
+ # @return [Integer, nil]
64
+ def duration_ms
65
+ read("duration_ms")
66
+ end
67
+
68
+ # The call's request id, the value of the `X-Request-Id` response header.
69
+ # @return [String, nil]
70
+ def request_id
71
+ read("request_id")
72
+ end
73
+
74
+ # The first characters of the key that made the call, never the secret.
75
+ # @return [String, nil]
76
+ def api_key_prefix
77
+ read("api_key_prefix")
78
+ end
79
+
80
+ # True when the call was made with a test key.
81
+ # @return [Boolean]
82
+ def test
83
+ read("test")
84
+ end
85
+
86
+ # When Listo received the call, ISO-8601 in UTC.
87
+ # @return [String]
88
+ def created_at
89
+ read("created_at")
90
+ end
91
+
92
+ # What the call sent, as JSON.
93
+ # @return [Object]
94
+ def request_body
95
+ read("request_body")
96
+ end
97
+
98
+ # What Listo answered, as JSON.
99
+ # @return [Object]
100
+ def response_body
101
+ read("response_body")
102
+ end
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One page of logged calls, newest first.
9
+ class RequestLogList < Model
10
+ TYPES = {
11
+ "data" => ["array", ["model", "RequestLog"]],
12
+ "has_more" => nil,
13
+ "cursor" => nil
14
+ }.freeze
15
+
16
+ # @return [Array<Models::RequestLog>]
17
+ def data
18
+ read("data")
19
+ end
20
+
21
+ # True when a further page exists.
22
+ # @return [Boolean]
23
+ def has_more
24
+ read("has_more")
25
+ end
26
+
27
+ # Pass as `cursor` to read the next page.
28
+ # @return [String, nil]
29
+ def cursor
30
+ read("cursor")
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # What to change on an order.
9
+ class RescheduleDeliveryRequest < Model
10
+ TYPES = {
11
+ "pickup_ready_at" => nil,
12
+ "dropoff" => ["model", "RescheduleDeliveryRequest::Dropoff"]
13
+ }.freeze
14
+
15
+ # When the order will be ready: an ISO-8601 instant in UTC, or the literal `now` to dispatch it immediately.
16
+ # @return [String, nil]
17
+ def pickup_ready_at
18
+ read("pickup_ready_at")
19
+ end
20
+
21
+ # The part of the drop-off that can still change.
22
+ # @return [Models::RescheduleDeliveryRequest::Dropoff, nil]
23
+ def dropoff
24
+ read("dropoff")
25
+ end
26
+
27
+ # The part of the drop-off that can still change.
28
+ class Dropoff < Model
29
+ TYPES = {
30
+ "notes" => nil
31
+ }.freeze
32
+
33
+ # Instructions for the courier at the door, up to 280 characters.
34
+ # @return [String, nil]
35
+ def notes
36
+ read("notes")
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,106 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # What a `same_day` withdrawal would cost you and how large a one you could ask for, right now.
9
+ class SameDayTerms < Model
10
+ TYPES = {
11
+ "fee_cents" => nil,
12
+ "minimum_cents" => nil,
13
+ "ceiling_cents" => nil,
14
+ "reach_cents" => nil,
15
+ "advanceable_cents" => nil,
16
+ "cap_cents" => nil,
17
+ "cap_used_cents" => nil,
18
+ "cap_remaining_cents" => nil,
19
+ "window_open" => nil,
20
+ "due_at" => nil,
21
+ "next_window_opens_at" => nil,
22
+ "offerable" => nil,
23
+ "unavailable_reason" => nil
24
+ }.freeze
25
+
26
+ # What a same-day withdrawal costs, IVA included, charged on top of the amount.
27
+ # @return [Integer]
28
+ def fee_cents
29
+ read("fee_cents")
30
+ end
31
+
32
+ # The smallest `amount_cents` a same-day request is accepted for.
33
+ # @return [Integer]
34
+ def minimum_cents
35
+ read("minimum_cents")
36
+ end
37
+
38
+ # The largest `amount_cents` a same-day request would be accepted for at this moment.
39
+ # @return [Integer]
40
+ def ceiling_cents
41
+ read("ceiling_cents")
42
+ end
43
+
44
+ # Everything a request could draw on before the fee.
45
+ # @return [Integer]
46
+ def reach_cents
47
+ read("reach_cents")
48
+ end
49
+
50
+ # The part of `reach_cents` that is still-held cash.
51
+ # @return [Integer]
52
+ def advanceable_cents
53
+ read("advanceable_cents")
54
+ end
55
+
56
+ # The daily maximum per account.
57
+ # @return [Integer]
58
+ def cap_cents
59
+ read("cap_cents")
60
+ end
61
+
62
+ # How much of the daily maximum is already used today.
63
+ # @return [Integer]
64
+ def cap_used_cents
65
+ read("cap_used_cents")
66
+ end
67
+
68
+ # What is left of the daily maximum today.
69
+ # @return [Integer]
70
+ def cap_remaining_cents
71
+ read("cap_remaining_cents")
72
+ end
73
+
74
+ # Whether staff are sending transfers right now.
75
+ # @return [Boolean]
76
+ def window_open
77
+ read("window_open")
78
+ end
79
+
80
+ # The deadline a request made at the moment you read this would carry.
81
+ # @return [String]
82
+ def due_at
83
+ read("due_at")
84
+ end
85
+
86
+ # The next time sending resumes.
87
+ # @return [String]
88
+ def next_window_opens_at
89
+ read("next_window_opens_at")
90
+ end
91
+
92
+ # False when no same-day request would be accepted at all.
93
+ # @return [Boolean]
94
+ def offerable
95
+ read("offerable")
96
+ end
97
+
98
+ # Why `offerable` is false: `cap_reached` (today's maximum is spent) or `below_minimum` (the reach is too small to clear the floor plus the...
99
+ # One of: "cap_reached", "below_minimum", nil.
100
+ # @return [String, nil]
101
+ def unavailable_reason
102
+ read("unavailable_reason")
103
+ end
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # Which event to send a sample of.
9
+ class SendTestWebhookRequest < Model
10
+ TYPES = {
11
+ "type" => nil
12
+ }.freeze
13
+
14
+ # The published event type to send a sample of.
15
+ # One of: "delivery.status_changed", "delivery.updated", "delivery.courier_location", "withdrawal.updated", "store.updated", "store.connected", "delivery.message_skipped".
16
+ # @return [String]
17
+ def type
18
+ read("type")
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,235 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # A pickup location.
9
+ class Store < Model
10
+ TYPES = {
11
+ "id" => nil,
12
+ "external_id" => nil,
13
+ "name" => nil,
14
+ "phone" => nil,
15
+ "street" => nil,
16
+ "apt_unit" => nil,
17
+ "lat" => nil,
18
+ "lng" => nil,
19
+ "pickup_notes" => nil,
20
+ "timezone" => nil,
21
+ "default_business_fee_share" => nil,
22
+ "default_fee_split_mode" => nil,
23
+ "default_fee_split_amount_cents" => nil,
24
+ "access_tier" => nil,
25
+ "markup_cents" => nil,
26
+ "billing" => nil,
27
+ "test" => nil,
28
+ "created_at" => nil,
29
+ "plan" => ["model", "Store::Plan"]
30
+ }.freeze
31
+
32
+ # The store id, `st_` prefixed.
33
+ # @return [String]
34
+ def id
35
+ read("id")
36
+ end
37
+
38
+ # Your own reference for this location, if you sent one.
39
+ # @return [String, nil]
40
+ def external_id
41
+ read("external_id")
42
+ end
43
+
44
+ # The name you gave the store; for a restaurant that connected an account with several branches, the business and the branch, the way its own...
45
+ # @return [String]
46
+ def name
47
+ read("name")
48
+ end
49
+
50
+ # E.164, normalized on the way in.
51
+ # @return [String]
52
+ def phone
53
+ read("phone")
54
+ end
55
+
56
+ # @return [String]
57
+ def street
58
+ read("street")
59
+ end
60
+
61
+ # @return [String, nil]
62
+ def apt_unit
63
+ read("apt_unit")
64
+ end
65
+
66
+ # @return [Numeric, nil]
67
+ def lat
68
+ read("lat")
69
+ end
70
+
71
+ # @return [Numeric, nil]
72
+ def lng
73
+ read("lng")
74
+ end
75
+
76
+ # Standing instructions for the courier collecting here.
77
+ # @return [String, nil]
78
+ def pickup_notes
79
+ read("pickup_notes")
80
+ end
81
+
82
+ # The IANA zone the store keeps its hours in, normalized to one spelling per zone.
83
+ # @return [String]
84
+ def timezone
85
+ read("timezone")
86
+ end
87
+
88
+ # The share of the delivery fee this store covers by default, as a percentage.
89
+ # @return [Integer]
90
+ def default_business_fee_share
91
+ read("default_business_fee_share")
92
+ end
93
+
94
+ # Which shape this store's default split has, and therefore which of the two fields above and below is in force.
95
+ # One of: "percent", "business_amount", "customer_amount".
96
+ # @return [String]
97
+ def default_fee_split_mode
98
+ read("default_fee_split_mode")
99
+ end
100
+
101
+ # The amount the two amount modes divide the fee by, in cents.
102
+ # @return [Integer, nil]
103
+ def default_fee_split_amount_cents
104
+ read("default_fee_split_amount_cents")
105
+ end
106
+
107
+ # How much of Listo the store itself uses.
108
+ # One of: "api_only", "wallet", "full".
109
+ # @return [String]
110
+ def access_tier
111
+ read("access_tier")
112
+ end
113
+
114
+ # Your own markup on every delivery of this store, in cents.
115
+ # @return [Integer]
116
+ def markup_cents
117
+ read("markup_cents")
118
+ end
119
+
120
+ # Whose balance pays this store's deliveries, read off `access_tier` so you never have to derive it: `partner` is yours, `store` is the...
121
+ # One of: "partner", "store".
122
+ # @return [String]
123
+ def billing
124
+ read("billing")
125
+ end
126
+
127
+ # @return [Boolean]
128
+ def test
129
+ read("test")
130
+ end
131
+
132
+ # @return [String]
133
+ def created_at
134
+ read("created_at")
135
+ end
136
+
137
+ # The store's Plan Listo, or `null` when the store needs no plan: a test store, or a live store created before Plan Listo existed, which...
138
+ # @return [Models::Store::Plan, nil]
139
+ def plan
140
+ read("plan")
141
+ end
142
+
143
+ # The store's Plan Listo, or `null` when the store needs no plan: a test store, or a live store created before Plan Listo existed, which...
144
+ class Plan < Model
145
+ TYPES = {
146
+ "status" => nil,
147
+ "price_cents" => nil,
148
+ "currency" => nil,
149
+ "interval" => nil,
150
+ "current_period_ends_on" => nil,
151
+ "next_charge_on" => nil,
152
+ "canceled_at" => nil,
153
+ "ends_on" => nil,
154
+ "paid_by" => nil,
155
+ "pending_paid_by" => nil,
156
+ "pending_paid_by_on" => nil,
157
+ "courtesy" => nil
158
+ }.freeze
159
+
160
+ # `active` is paid up and renews on `next_charge_on` (null on a plan that is passing to the restaurant, see `pending_paid_by`).
161
+ # One of: "active", "past_due", "canceling", "canceled", "awaiting_payment".
162
+ # @return [String]
163
+ def status
164
+ read("status")
165
+ end
166
+
167
+ # What one month of this store's plan costs you, before IVA: your price, even while a restaurant that connected to you is still paying its...
168
+ # @return [Integer]
169
+ def price_cents
170
+ read("price_cents")
171
+ end
172
+
173
+ # @return [String]
174
+ def currency
175
+ read("currency")
176
+ end
177
+
178
+ # How long one period of this plan is, and the cycle `price_cents` is the price of.
179
+ # @return [String]
180
+ def interval
181
+ read("interval")
182
+ end
183
+
184
+ # The last day of the current period, already paid unless `status` is `past_due`.
185
+ # @return [String, nil]
186
+ def current_period_ends_on
187
+ read("current_period_ends_on")
188
+ end
189
+
190
+ # The day you are charged next: the next renewal, or, while a restaurant that connected to you still pays its own plan, your first charge.
191
+ # @return [String, nil]
192
+ def next_charge_on
193
+ read("next_charge_on")
194
+ end
195
+
196
+ # When you canceled the plan.
197
+ # @return [String, nil]
198
+ def canceled_at
199
+ read("canceled_at")
200
+ end
201
+
202
+ # The day the plan stops serving the store, which is the day after the last day paid, or the day a plan whose charge was pending was canceled.
203
+ # @return [String, nil]
204
+ def ends_on
205
+ read("ends_on")
206
+ end
207
+
208
+ # Who pays this plan: `partner`, which is you, or `store`, the restaurant itself.
209
+ # One of: "partner", "store".
210
+ # @return [String]
211
+ def paid_by
212
+ read("paid_by")
213
+ end
214
+
215
+ # Who will pay it from `pending_paid_by_on`, when that is about to change, or null.
216
+ # @return [String, nil]
217
+ def pending_paid_by
218
+ read("pending_paid_by")
219
+ end
220
+
221
+ # The date that change lands (the day the new payer's first period starts), or null.
222
+ # @return [String, nil]
223
+ def pending_paid_by_on
224
+ read("pending_paid_by_on")
225
+ end
226
+
227
+ # `courtesy` is true while Listo waives this store's plan: nothing is charged and `next_charge_on` is null.
228
+ # @return [Boolean]
229
+ def courtesy
230
+ read("courtesy")
231
+ end
232
+ end
233
+ end
234
+ end
235
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ # One store's balance, for the store's own billing.
9
+ class StoreBalance < Model
10
+ TYPES = {
11
+ "balance_cents" => nil,
12
+ "available_cents" => nil,
13
+ "currency" => nil,
14
+ "billing" => nil,
15
+ "in_review_cents" => nil
16
+ }.freeze
17
+
18
+ # @return [Integer]
19
+ def balance_cents
20
+ read("balance_cents")
21
+ end
22
+
23
+ # @return [Integer]
24
+ def available_cents
25
+ read("available_cents")
26
+ end
27
+
28
+ # One of: "MXN".
29
+ # @return [String]
30
+ def currency
31
+ read("currency")
32
+ end
33
+
34
+ # Whose balance pays this store's deliveries.
35
+ # One of: "partner", "store".
36
+ # @return [String]
37
+ def billing
38
+ read("billing")
39
+ end
40
+
41
+ # The part of `balance_cents` that is cash from an order we are still reviewing.
42
+ # @return [Integer]
43
+ def in_review_cents
44
+ read("in_review_cents")
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # GENERATED from Listo's API definition (API 1.37.0). Do not edit by hand:
4
+ # this file is rewritten whenever the SDK is regenerated.
5
+
6
+ module ListoDelivery
7
+ module Models
8
+ class StoreConnectedEvent < WebhookEvent
9
+ TYPES = {
10
+ "id" => nil,
11
+ "created_at" => nil,
12
+ "test" => nil,
13
+ "type" => nil,
14
+ "data" => ["model", "Store"]
15
+ }.freeze
16
+
17
+ # @return [Models::Store]
18
+ def data
19
+ read("data")
20
+ end
21
+ end
22
+ end
23
+ end