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.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/README.md +152 -0
- data/lib/listo_delivery/client.rb +170 -0
- data/lib/listo_delivery/errors.rb +53 -0
- data/lib/listo_delivery/generated/api_version.rb +12 -0
- data/lib/listo_delivery/generated/client_operations.rb +82 -0
- data/lib/listo_delivery/generated/loader.rb +69 -0
- data/lib/listo_delivery/generated/models/balance.rb +48 -0
- data/lib/listo_delivery/generated/models/cancel_delivery_request.rb +29 -0
- data/lib/listo_delivery/generated/models/card_onboarding_link.rb +21 -0
- data/lib/listo_delivery/generated/models/card_status.rb +22 -0
- data/lib/listo_delivery/generated/models/connect_request.rb +28 -0
- data/lib/listo_delivery/generated/models/courier_ping.rb +58 -0
- data/lib/listo_delivery/generated/models/create_connect_request_request.rb +35 -0
- data/lib/listo_delivery/generated/models/create_connection_request.rb +21 -0
- data/lib/listo_delivery/generated/models/create_delivery_request.rb +189 -0
- data/lib/listo_delivery/generated/models/create_quote_request.rb +111 -0
- data/lib/listo_delivery/generated/models/create_store_owner_request.rb +26 -0
- data/lib/listo_delivery/generated/models/create_store_request.rb +104 -0
- data/lib/listo_delivery/generated/models/create_withdrawal_request.rb +29 -0
- data/lib/listo_delivery/generated/models/delivery.rb +879 -0
- data/lib/listo_delivery/generated/models/delivery_courier_location_event.rb +23 -0
- data/lib/listo_delivery/generated/models/delivery_list.rb +34 -0
- data/lib/listo_delivery/generated/models/delivery_message_skipped.rb +37 -0
- data/lib/listo_delivery/generated/models/delivery_message_skipped_event.rb +23 -0
- data/lib/listo_delivery/generated/models/delivery_status_changed_event.rb +23 -0
- data/lib/listo_delivery/generated/models/delivery_updated_event.rb +23 -0
- data/lib/listo_delivery/generated/models/error.rb +56 -0
- data/lib/listo_delivery/generated/models/error_response.rb +20 -0
- data/lib/listo_delivery/generated/models/event_list.rb +34 -0
- data/lib/listo_delivery/generated/models/ledger_entry.rb +62 -0
- data/lib/listo_delivery/generated/models/ledger_entry_list.rb +34 -0
- data/lib/listo_delivery/generated/models/manifest.rb +20 -0
- data/lib/listo_delivery/generated/models/manifest_item.rb +36 -0
- data/lib/listo_delivery/generated/models/owner_invitation.rb +27 -0
- data/lib/listo_delivery/generated/models/ping.rb +56 -0
- data/lib/listo_delivery/generated/models/quote.rb +99 -0
- data/lib/listo_delivery/generated/models/refund_delivery_request.rb +28 -0
- data/lib/listo_delivery/generated/models/request_log.rb +91 -0
- data/lib/listo_delivery/generated/models/request_log_detail.rb +105 -0
- data/lib/listo_delivery/generated/models/request_log_list.rb +34 -0
- data/lib/listo_delivery/generated/models/reschedule_delivery_request.rb +41 -0
- data/lib/listo_delivery/generated/models/same_day_terms.rb +106 -0
- data/lib/listo_delivery/generated/models/send_test_webhook_request.rb +22 -0
- data/lib/listo_delivery/generated/models/store.rb +235 -0
- data/lib/listo_delivery/generated/models/store_balance.rb +48 -0
- data/lib/listo_delivery/generated/models/store_connected_event.rb +23 -0
- data/lib/listo_delivery/generated/models/store_list.rb +34 -0
- data/lib/listo_delivery/generated/models/store_updated_event.rb +23 -0
- data/lib/listo_delivery/generated/models/update_store_request.rb +94 -0
- data/lib/listo_delivery/generated/models/webhook_delivery.rb +99 -0
- data/lib/listo_delivery/generated/models/webhook_delivery_list.rb +34 -0
- data/lib/listo_delivery/generated/models/webhook_event.rb +69 -0
- data/lib/listo_delivery/generated/models/webhook_event_envelope.rb +35 -0
- data/lib/listo_delivery/generated/models/withdrawal.rb +91 -0
- data/lib/listo_delivery/generated/models/withdrawal_list.rb +34 -0
- data/lib/listo_delivery/generated/models/withdrawal_updated_event.rb +23 -0
- data/lib/listo_delivery/generated/resources/balance.rb +43 -0
- data/lib/listo_delivery/generated/resources/card_onboarding.rb +70 -0
- data/lib/listo_delivery/generated/resources/connect_requests.rb +31 -0
- data/lib/listo_delivery/generated/resources/connections.rb +31 -0
- data/lib/listo_delivery/generated/resources/deliveries.rb +128 -0
- data/lib/listo_delivery/generated/resources/events.rb +59 -0
- data/lib/listo_delivery/generated/resources/ledger.rb +47 -0
- data/lib/listo_delivery/generated/resources/quotes.rb +31 -0
- data/lib/listo_delivery/generated/resources/request_logs.rb +45 -0
- data/lib/listo_delivery/generated/resources/stores.rb +143 -0
- data/lib/listo_delivery/generated/resources/webhooks.rb +46 -0
- data/lib/listo_delivery/generated/resources/withdrawals.rb +60 -0
- data/lib/listo_delivery/model.rb +69 -0
- data/lib/listo_delivery/util.rb +76 -0
- data/lib/listo_delivery/version.rb +7 -0
- data/lib/listo_delivery/webhooks.rb +98 -0
- data/lib/listo_delivery.rb +16 -0
- data/listo_delivery.gemspec +27 -0
- 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
|