kody-clientsdk-ruby 1.7.3
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/Gemfile +4 -0
- data/LICENSE +21 -0
- data/README.md +211 -0
- data/Rakefile +24 -0
- data/kody-clientsdk-ruby.gemspec +38 -0
- data/lib/ecom_pb.rb +79 -0
- data/lib/ecom_services_pb.rb +43 -0
- data/lib/error_pb.rb +21 -0
- data/lib/inventory_pb.rb +33 -0
- data/lib/inventory_services_pb.rb +33 -0
- data/lib/kody/configuration.rb +17 -0
- data/lib/kody/version.rb +3 -0
- data/lib/kody.rb +36 -0
- data/lib/logging_pb.rb +27 -0
- data/lib/logging_services_pb.rb +31 -0
- data/lib/order_pb.rb +39 -0
- data/lib/order_services_pb.rb +37 -0
- data/lib/pay_at_table_pb.rb +31 -0
- data/lib/pay_at_table_services_pb.rb +32 -0
- data/lib/pay_pb.rb +46 -0
- data/lib/pay_services_pb.rb +35 -0
- data/lib/poc_pb.rb +22 -0
- data/lib/poc_services_pb.rb +28 -0
- data/lib/preauth_pb.rb +48 -0
- data/lib/preauth_services_pb.rb +40 -0
- data/samples/ecom/get_payments.rb +68 -0
- metadata +168 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: fd4fda4d9b020cc24002c79e807c090db30152389dfcd5e204ff248f266ef9d1
|
4
|
+
data.tar.gz: '09d92a74219a3251362cb12e337c4d1ef9acaaba0efc805ce5165875f43287b4'
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d9052ac0db55e26d10192ac6bc9d2485cc3497091be832e9c3b5da0593b83149982a258dba28837265f7b82ccd20b4540ad4329d8b6c779ff2ff45f0f8ee0b4f
|
7
|
+
data.tar.gz: a13ba303ce72dae67b9b762664dab8a47528093c4631fc5698fc6faa72b7b6a0db54138e06d4baae7a63d49c3a655e2cbaa4cd983f1f181985e7ab836e464ebe
|
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2025 KodyPay
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,211 @@
|
|
1
|
+
# Kody API - Ruby SDK
|
2
|
+
|
3
|
+
This guide provides an overview of using the Kody API and its reference documentation for Ruby.
|
4
|
+
|
5
|
+
- [Installation](#installation)
|
6
|
+
- [Authentication](#authentication)
|
7
|
+
- [Quick Start](#quick-start)
|
8
|
+
- [Sample code](#sample-code)
|
9
|
+
|
10
|
+
## Installation
|
11
|
+
|
12
|
+
Add this line to your application's Gemfile:
|
13
|
+
|
14
|
+
```ruby
|
15
|
+
gem 'kody-clientsdk-ruby'
|
16
|
+
```
|
17
|
+
|
18
|
+
And then execute:
|
19
|
+
|
20
|
+
```bash
|
21
|
+
bundle install
|
22
|
+
```
|
23
|
+
|
24
|
+
Or install it yourself as:
|
25
|
+
|
26
|
+
```bash
|
27
|
+
gem install kody-clientsdk-ruby
|
28
|
+
```
|
29
|
+
|
30
|
+
### Requirements
|
31
|
+
- Ruby 2.6.10 or higher
|
32
|
+
- gRPC support
|
33
|
+
|
34
|
+
## Authentication
|
35
|
+
|
36
|
+
The client library uses a combination of a `Store ID` and an `API key`.
|
37
|
+
These will be shared with you during the technical integration onboarding or by your Kody contact.
|
38
|
+
|
39
|
+
During development, you will have access to a **test Store** and **test API key**, and when the integration is ready for live access, the production credentials will be shared securely with you and associated with a live store that was onboarded on Kody.
|
40
|
+
|
41
|
+
The test and live API calls are always compatible, only changing credentials and the service hostname is required to enable the integration in production.
|
42
|
+
|
43
|
+
### Host names
|
44
|
+
|
45
|
+
- Development and test: `grpc-staging.kodypay.com`
|
46
|
+
- Live: `grpc.kodypay.com`
|
47
|
+
|
48
|
+
## Quick Start
|
49
|
+
|
50
|
+
```ruby
|
51
|
+
require 'kody'
|
52
|
+
|
53
|
+
# Configure the Kody client
|
54
|
+
Kody.configure do |config|
|
55
|
+
config.api_key = 'your-api-key'
|
56
|
+
config.store_id = 'your-store-id'
|
57
|
+
config.staging! # Use staging environment for testing
|
58
|
+
end
|
59
|
+
|
60
|
+
# Create a client instance
|
61
|
+
client = Kody::Client.new
|
62
|
+
|
63
|
+
# Initiate a payment
|
64
|
+
begin
|
65
|
+
response = client.ecom.initiate_payment(
|
66
|
+
payment_reference: Kody::EcomClient.generate_payment_reference,
|
67
|
+
amount_minor_units: 2000, # £20.00 in pence
|
68
|
+
currency: 'GBP',
|
69
|
+
order_id: Kody::EcomClient.generate_order_id,
|
70
|
+
return_url: 'https://your-website.com/payment-return'
|
71
|
+
)
|
72
|
+
|
73
|
+
puts "Payment initiated successfully!"
|
74
|
+
puts "Payment ID: #{response.response.payment_id}"
|
75
|
+
puts "Payment URL: #{response.response.payment_url}"
|
76
|
+
|
77
|
+
rescue Kody::Error => e
|
78
|
+
puts "Error: #{e.message}"
|
79
|
+
rescue GRPC::BadStatus => e
|
80
|
+
puts "gRPC Error: #{e.message}"
|
81
|
+
end
|
82
|
+
```
|
83
|
+
|
84
|
+
## Configuration Options
|
85
|
+
|
86
|
+
### Environment Configuration
|
87
|
+
|
88
|
+
```ruby
|
89
|
+
# Production environment (default)
|
90
|
+
Kody.configure do |config|
|
91
|
+
config.api_key = 'your-production-api-key'
|
92
|
+
config.store_id = 'your-production-store-id'
|
93
|
+
# config.host defaults to 'grpc.kodypay.com'
|
94
|
+
end
|
95
|
+
|
96
|
+
# Staging environment
|
97
|
+
Kody.configure do |config|
|
98
|
+
config.api_key = 'your-test-api-key'
|
99
|
+
config.store_id = 'your-test-store-id'
|
100
|
+
config.staging! # Sets host to 'grpc-staging.kodypay.com'
|
101
|
+
end
|
102
|
+
|
103
|
+
# Local development
|
104
|
+
Kody.configure do |config|
|
105
|
+
config.api_key = 'your-api-key'
|
106
|
+
config.store_id = 'your-store-id'
|
107
|
+
config.development! # Sets host to 'localhost:8080' with TLS disabled
|
108
|
+
end
|
109
|
+
```
|
110
|
+
|
111
|
+
### Environment Variables
|
112
|
+
|
113
|
+
You can also configure using environment variables:
|
114
|
+
|
115
|
+
```bash
|
116
|
+
export KODY_API_KEY="your-api-key"
|
117
|
+
export KODY_STORE_ID="your-store-id"
|
118
|
+
```
|
119
|
+
|
120
|
+
```ruby
|
121
|
+
Kody.configure do |config|
|
122
|
+
config.api_key = ENV['KODY_API_KEY']
|
123
|
+
config.store_id = ENV['KODY_STORE_ID']
|
124
|
+
config.staging! # or production/development
|
125
|
+
end
|
126
|
+
```
|
127
|
+
|
128
|
+
## Available Methods
|
129
|
+
|
130
|
+
### E-commerce Payments
|
131
|
+
|
132
|
+
#### Initiate Payment
|
133
|
+
|
134
|
+
```ruby
|
135
|
+
response = client.ecom.initiate_payment(
|
136
|
+
payment_reference: 'unique-payment-ref',
|
137
|
+
amount_minor_units: 2000, # Amount in minor units (e.g., pence for GBP)
|
138
|
+
currency: 'GBP',
|
139
|
+
order_id: 'order-123',
|
140
|
+
return_url: 'https://your-site.com/payment-return',
|
141
|
+
# Optional parameters:
|
142
|
+
order_metadata: '{"item": "Product Name"}',
|
143
|
+
expiry: {
|
144
|
+
show_timer: true,
|
145
|
+
expiring_seconds: 1800 # 30 minutes
|
146
|
+
},
|
147
|
+
locale: 'en_GB',
|
148
|
+
show_order_summary: true,
|
149
|
+
show_merchant_name: true
|
150
|
+
)
|
151
|
+
```
|
152
|
+
|
153
|
+
#### Get Payments
|
154
|
+
|
155
|
+
```ruby
|
156
|
+
response = client.ecom.get_payments(
|
157
|
+
page: 1,
|
158
|
+
page_size: 10,
|
159
|
+
# Optional filter:
|
160
|
+
filter: {
|
161
|
+
order_id: 'specific-order-id' # Optional: filter by order ID
|
162
|
+
}
|
163
|
+
)
|
164
|
+
|
165
|
+
puts "Total payments: #{response.response.total}"
|
166
|
+
response.response.payments.each do |payment|
|
167
|
+
puts "Payment ID: #{payment.payment_id}"
|
168
|
+
puts "Status: #{payment.status}"
|
169
|
+
puts "Amount: #{payment.sale_data.amount_minor_units}" if payment.has_sale_data?
|
170
|
+
end
|
171
|
+
```
|
172
|
+
|
173
|
+
**Note:** Currently, `initiate_payment` and `get_payments` methods are implemented. Additional methods (payment details, refunds, etc.) will be added in future versions.
|
174
|
+
|
175
|
+
## Helper Methods
|
176
|
+
|
177
|
+
The SDK provides convenient helper methods:
|
178
|
+
|
179
|
+
```ruby
|
180
|
+
# Generate unique payment reference
|
181
|
+
payment_ref = Kody::EcomClient.generate_payment_reference
|
182
|
+
# Returns: "pay_a1b2c3d4e5f6g7h8"
|
183
|
+
|
184
|
+
# Generate unique order ID
|
185
|
+
order_id = Kody::EcomClient.generate_order_id
|
186
|
+
# Returns: "order_a1b2c3d4e5f6g7h8"
|
187
|
+
```
|
188
|
+
|
189
|
+
## Sample code
|
190
|
+
|
191
|
+
Complete examples can be found in the `samples/` directory:
|
192
|
+
|
193
|
+
- [Initiate Payment](samples/ecom/initiate_payment.rb)
|
194
|
+
- [Get Payments](samples/ecom/get_payments.rb)
|
195
|
+
|
196
|
+
## Documentation
|
197
|
+
|
198
|
+
For complete API documentation, examples, and integration guides, please visit:
|
199
|
+
📚 https://api-docs.kody.com
|
200
|
+
|
201
|
+
## Development Status
|
202
|
+
|
203
|
+
This is a minimal initial version of the Ruby SDK focusing on the core payment initiation functionality. The SDK follows the same patterns as other Kody client SDKs and will be extended with additional features in future releases.
|
204
|
+
|
205
|
+
## Contributing
|
206
|
+
|
207
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/KodyPay/kody-clientsdk-ruby.
|
208
|
+
|
209
|
+
## License
|
210
|
+
|
211
|
+
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
data/Rakefile
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
2
|
+
require "rspec/core/rake_task"
|
3
|
+
|
4
|
+
RSpec::Core::RakeTask.new(:spec)
|
5
|
+
|
6
|
+
desc "Generate protobuf and gRPC files (requires proto files from build process)"
|
7
|
+
task :generate_protos do
|
8
|
+
proto_dir = "proto"
|
9
|
+
lib_dir = "lib"
|
10
|
+
|
11
|
+
unless Dir.exist?(proto_dir)
|
12
|
+
puts "Proto directory not found. This task should be run during CI/CD build process."
|
13
|
+
puts "For local development, use the GitHub Actions workflow to generate the Ruby gem."
|
14
|
+
exit 1
|
15
|
+
end
|
16
|
+
|
17
|
+
# Generate Ruby files from proto
|
18
|
+
sh "grpc_tools_ruby_protoc -I #{proto_dir} --ruby_out=#{lib_dir} --grpc_out=#{lib_dir} #{proto_dir}/com/kodypay/grpc/ecom/v1/ecom.proto"
|
19
|
+
|
20
|
+
# Clean up
|
21
|
+
rm_rf proto_dir
|
22
|
+
end
|
23
|
+
|
24
|
+
task default: :spec
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require_relative 'lib/kody/version'
|
2
|
+
|
3
|
+
Gem::Specification.new do |spec|
|
4
|
+
spec.name = "kody-clientsdk-ruby"
|
5
|
+
spec.version = Kody::VERSION
|
6
|
+
spec.authors = ["Kody Tech Team"]
|
7
|
+
spec.email = ["tech@kody.com"]
|
8
|
+
spec.summary = "Ruby gRPC client for Kody payment services"
|
9
|
+
spec.description = "A Ruby client library for integrating with Kody payment APIs using gRPC"
|
10
|
+
spec.homepage = "https://github.com/KodyPay/kody-clientsdk-ruby"
|
11
|
+
spec.license = "MIT"
|
12
|
+
spec.required_ruby_version = ">= 2.6.10"
|
13
|
+
|
14
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
15
|
+
spec.metadata["source_code_uri"] = spec.homepage
|
16
|
+
spec.metadata["changelog_uri"] = "#{spec.homepage}/blob/main/CHANGELOG.md"
|
17
|
+
|
18
|
+
# Specify which files should be added to the gem when it is released.
|
19
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
20
|
+
`git ls-files -z`.split("\x0").reject do |f|
|
21
|
+
(f == __FILE__) || f.match(%r{\A(?:(?:test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
spec.bindir = "exe"
|
26
|
+
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
27
|
+
spec.require_paths = ["lib"]
|
28
|
+
|
29
|
+
# Dependencies
|
30
|
+
spec.add_dependency "grpc", ">= 1.74.0", "< 2.0"
|
31
|
+
spec.add_dependency "google-protobuf", ">= 4.31.0", "< 5.0"
|
32
|
+
|
33
|
+
# Development dependencies
|
34
|
+
spec.add_development_dependency "bundler", "~> 2.0"
|
35
|
+
spec.add_development_dependency "rake", "~> 13.0"
|
36
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
37
|
+
spec.add_development_dependency "grpc-tools", "~> 1.74.0"
|
38
|
+
end
|
data/lib/ecom_pb.rb
ADDED
@@ -0,0 +1,79 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: com/kodypay/grpc/ecom/v1/ecom.proto
|
4
|
+
|
5
|
+
require 'google/protobuf'
|
6
|
+
|
7
|
+
require 'google/protobuf/timestamp_pb'
|
8
|
+
|
9
|
+
|
10
|
+
descriptor_data = "\n#com/kodypay/grpc/ecom/v1/ecom.proto\x12\x18\x63om.kodypay.grpc.ecom.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe2\n\n\x18PaymentInitiationRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x19\n\x11payment_reference\x18\x02 \x01(\t\x12\x1a\n\x12\x61mount_minor_units\x18\x03 \x01(\x04\x12\x10\n\x08\x63urrency\x18\x04 \x01(\t\x12\x10\n\x08order_id\x18\x05 \x01(\t\x12\x1b\n\x0eorder_metadata\x18\x06 \x01(\tH\x00\x88\x01\x01\x12\x12\n\nreturn_url\x18\x07 \x01(\t\x12\x1c\n\x0fpayer_statement\x18\x08 \x01(\tH\x01\x88\x01\x01\x12 \n\x13payer_email_address\x18\t \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x10payer_ip_address\x18\n \x01(\tH\x03\x88\x01\x01\x12\x19\n\x0cpayer_locale\x18\x0b \x01(\tH\x04\x88\x01\x01\x12\x1e\n\rtokenise_card\x18\x0c \x01(\x08\x42\x02\x18\x01H\x05\x88\x01\x01\x12V\n\x06\x65xpiry\x18\r \x01(\x0b\x32\x41.com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.ExpirySettingsH\x06\x88\x01\x01\x12_\n\x0f\x63\x61pture_options\x18\x0e \x01(\x0b\x32\x41.com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.CaptureOptionsH\x07\x88\x01\x01\x12$\n\x17is_pay_by_bank_accepted\x18\x0f \x01(\x08H\x08\x88\x01\x01\x1a>\n\x0e\x45xpirySettings\x12\x12\n\nshow_timer\x18\x01 \x01(\x08\x12\x18\n\x10\x65xpiring_seconds\x18\x02 \x01(\x04\x1a\xbc\x04\n\x0e\x43\x61ptureOptions\x12k\n\x10\x63\x61pture_settings\x18\x01 \x01(\x0b\x32Q.com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.CaptureOptions.CaptureSettings\x12p\n\x10release_settings\x18\x02 \x01(\x0b\x32Q.com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.CaptureOptions.ReleaseSettingsH\x00\x88\x01\x01\x1a\x99\x01\n\x0f\x43\x61ptureSettings\x12\x17\n\x0f\x64\x65layed_capture\x18\x01 \x01(\x08\x12\'\n\x1a\x61uto_capture_interval_mins\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12%\n\x1d\x61uto_capture_store_close_time\x18\x03 \x01(\x08\x42\x1d\n\x1b_auto_capture_interval_mins\x1a\x99\x01\n\x0fReleaseSettings\x12\x17\n\x0f\x64\x65layed_release\x18\x01 \x01(\x08\x12\'\n\x1a\x61uto_release_interval_mins\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12%\n\x1d\x61uto_release_store_close_time\x18\x03 \x01(\x08\x42\x1d\n\x1b_auto_release_interval_minsB\x13\n\x11_release_settingsB\x11\n\x0f_order_metadataB\x12\n\x10_payer_statementB\x16\n\x14_payer_email_addressB\x13\n\x11_payer_ip_addressB\x0f\n\r_payer_localeB\x10\n\x0e_tokenise_cardB\t\n\x07_expiryB\x12\n\x10_capture_optionsB\x1a\n\x18_is_pay_by_bank_accepted\"\xa2\x03\n\x19PaymentInitiationResponse\x12P\n\x08response\x18\x01 \x01(\x0b\x32<.com.kodypay.grpc.ecom.v1.PaymentInitiationResponse.ResponseH\x00\x12J\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x39.com.kodypay.grpc.ecom.v1.PaymentInitiationResponse.ErrorH\x00\x1a\x33\n\x08Response\x12\x12\n\npayment_id\x18\x01 \x01(\t\x12\x13\n\x0bpayment_url\x18\x02 \x01(\t\x1a\xa7\x01\n\x05\x45rror\x12L\n\x04type\x18\x01 \x01(\x0e\x32>.com.kodypay.grpc.ecom.v1.PaymentInitiationResponse.Error.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\"?\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x15\n\x11\x44UPLICATE_ATTEMPT\x10\x01\x12\x13\n\x0fINVALID_REQUEST\x10\x02\x42\x08\n\x06result\"r\n\x15PaymentDetailsRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x14\n\npayment_id\x18\x02 \x01(\tH\x00\x12\x1b\n\x11payment_reference\x18\x03 \x01(\tH\x00\x42\x14\n\x12payment_identifier\"\xe2\x0f\n\x16PaymentDetailsResponse\x12S\n\x08response\x18\x01 \x01(\x0b\x32?.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentDetailsH\x00\x12G\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x36.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.ErrorH\x00\x1a\xb3\x01\n\x05\x45rror\x12I\n\x04type\x18\x01 \x01(\x0e\x32;.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.Error.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\"N\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\r\n\tNOT_FOUND\x10\x01\x12\x13\n\x0fINVALID_REQUEST\x10\x02\x12\x15\n\x11\x44UPLICATE_ATTEMPT\x10\x03\x1a\xa9\x05\n\x0ePaymentDetails\x12\x12\n\npayment_id\x18\x01 \x01(\t\x12\x1d\n\x11payment_reference\x18\x02 \x01(\tB\x02\x18\x01\x12\x14\n\x08order_id\x18\x03 \x01(\tB\x02\x18\x01\x12\x1f\n\x0eorder_metadata\x18\x04 \x01(\tB\x02\x18\x01H\x00\x88\x01\x01\x12\x37\n\x06status\x18\x05 \x01(\x0e\x32\'.com.kodypay.grpc.ecom.v1.PaymentStatus\x12\"\n\x11payment_data_json\x18\x06 \x01(\tB\x02\x18\x01H\x01\x88\x01\x01\x12\x30\n\x0c\x64\x61te_created\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x36\n\tdate_paid\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x02\x18\x01H\x02\x88\x01\x01\x12\x1e\n\rpsp_reference\x18\t \x01(\tB\x02\x18\x01H\x03\x88\x01\x01\x12\x1f\n\x0epayment_method\x18\n \x01(\tB\x02\x18\x01H\x04\x88\x01\x01\x12W\n\x0cpayment_data\x18\x0b \x01(\x0b\x32<.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentDataH\x05\x88\x01\x01\x12Q\n\tsale_data\x18\x0c \x01(\x0b\x32\x39.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.SaleDataH\x06\x88\x01\x01\x42\x11\n\x0f_order_metadataB\x14\n\x12_payment_data_jsonB\x0c\n\n_date_paidB\x10\n\x0e_psp_referenceB\x11\n\x0f_payment_methodB\x0f\n\r_payment_dataB\x0c\n\n_sale_data\x1a\xa5\x06\n\x0bPaymentData\x12\x15\n\rpsp_reference\x18\x01 \x01(\t\x12@\n\x0epayment_method\x18\x02 \x01(\x0e\x32(.com.kodypay.grpc.ecom.v1.PaymentMethods\x12\x1e\n\x16payment_method_variant\x18\x03 \x01(\t\x12\x63\n\x0b\x61uth_status\x18\x04 \x01(\x0e\x32N.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentData.PaymentAuthStatus\x12\x34\n\x10\x61uth_status_date\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12`\n\x0cpayment_card\x18\x06 \x01(\x0b\x32H.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentData.PaymentCardH\x00\x12\x64\n\x0epayment_wallet\x18\x07 \x01(\x0b\x32J.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentData.PaymentWalletH\x00\x1aW\n\x0bPaymentCard\x12\x1a\n\x12\x63\x61rd_last_4_digits\x18\x01 \x01(\t\x12\x11\n\tauth_code\x18\x02 \x01(\t\x12\x19\n\rpayment_token\x18\x03 \x01(\tB\x02\x18\x01\x1a`\n\rPaymentWallet\x12\x1f\n\x12\x63\x61rd_last_4_digits\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x0fpayment_link_id\x18\x02 \x01(\tB\x15\n\x13_card_last_4_digits\"e\n\x11PaymentAuthStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0e\n\nAUTHORISED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x12\x0c\n\x08\x43\x41PTURED\x10\x03\x12\x0c\n\x08RELEASED\x10\x04\x12\x0b\n\x07\x45XPIRED\x10\x05\x42\x18\n\x16payment_method_details\x1a\x95\x01\n\x08SaleData\x12\x1a\n\x12\x61mount_minor_units\x18\x01 \x01(\x04\x12\x10\n\x08\x63urrency\x18\x02 \x01(\t\x12\x10\n\x08order_id\x18\x03 \x01(\t\x12\x19\n\x11payment_reference\x18\x04 \x01(\t\x12\x1b\n\x0eorder_metadata\x18\x05 \x01(\tH\x00\x88\x01\x01\x42\x11\n\x0f_order_metadataB\x08\n\x06result\"\xe2\x02\n\x12GetPaymentsRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12L\n\x0bpage_cursor\x18\x02 \x01(\x0b\x32\x37.com.kodypay.grpc.ecom.v1.GetPaymentsRequest.PageCursor\x12\x43\n\x06\x66ilter\x18\x03 \x01(\x0b\x32\x33.com.kodypay.grpc.ecom.v1.GetPaymentsRequest.Filter\x1ax\n\x06\x46ilter\x12\x15\n\x08order_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x0e\x63reated_before\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x42\x0b\n\t_order_idB\x11\n\x0f_created_before\x1a-\n\nPageCursor\x12\x0c\n\x04page\x18\x01 \x01(\x03\x12\x11\n\tpage_size\x18\x02 \x01(\x03\"\xfe\x07\n\x13GetPaymentsResponse\x12J\n\x08response\x18\x01 \x01(\x0b\x32\x36.com.kodypay.grpc.ecom.v1.GetPaymentsResponse.ResponseH\x00\x12\x44\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x33.com.kodypay.grpc.ecom.v1.GetPaymentsResponse.ErrorH\x00\x1a\xad\x05\n\x08Response\x12p\n\x13\x64\x65precated_payments\x18\x01 \x03(\x0b\x32O.com.kodypay.grpc.ecom.v1.GetPaymentsResponse.Response.DeprecatedPaymentDetailsB\x02\x18\x01\x12\r\n\x05total\x18\x02 \x01(\x03\x12Q\n\x08payments\x18\x03 \x03(\x0b\x32?.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentDetails\x1a\xcc\x03\n\x18\x44\x65precatedPaymentDetails\x12\x12\n\npayment_id\x18\x01 \x01(\t\x12\x19\n\x11payment_reference\x18\x02 \x01(\t\x12\x10\n\x08order_id\x18\x03 \x01(\t\x12\x1b\n\x0eorder_metadata\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06status\x18\x05 \x01(\x0e\x32\'.com.kodypay.grpc.ecom.v1.PaymentStatus\x12\x1e\n\x11payment_data_json\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x30\n\x0c\x64\x61te_created\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\tdate_paid\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02\x88\x01\x01\x12\x1a\n\rpsp_reference\x18\t \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0epayment_method\x18\n \x01(\tH\x04\x88\x01\x01\x42\x11\n\x0f_order_metadataB\x14\n\x12_payment_data_jsonB\x0c\n\n_date_paidB\x10\n\x0e_psp_referenceB\x11\n\x0f_payment_method\x1a\x9a\x01\n\x05\x45rror\x12\x46\n\x04type\x18\x01 \x01(\x0e\x32\x38.com.kodypay.grpc.ecom.v1.GetPaymentsResponse.Error.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\"8\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\r\n\tNOT_FOUND\x10\x01\x12\x14\n\x10INVALID_ARGUMENT\x10\x02\x42\x08\n\x06result\"f\n\rRefundRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x14\n\npayment_id\x18\x02 \x01(\tH\x00\x12\x17\n\rpsp_reference\x18\x04 \x01(\tH\x00\x12\x0e\n\x06\x61mount\x18\x03 \x01(\tB\x04\n\x02id\"\x97\x03\n\x0eRefundResponse\x12\x45\n\x06status\x18\x01 \x01(\x0e\x32\x35.com.kodypay.grpc.ecom.v1.RefundResponse.RefundStatus\x12\x1b\n\x0e\x66\x61ilure_reason\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x12\n\npayment_id\x18\x03 \x01(\t\x12\x30\n\x0c\x64\x61te_created\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x19\n\x11total_paid_amount\x18\x05 \x01(\t\x12\x1d\n\x15total_amount_refunded\x18\x06 \x01(\t\x12\x18\n\x10remaining_amount\x18\x07 \x01(\t\x12\x1e\n\x16total_amount_requested\x18\x08 \x01(\t\x12\x1c\n\x14paymentTransactionId\x18\t \x01(\t\"6\n\x0cRefundStatus\x12\x0b\n\x07PENDING\x10\x00\x12\r\n\tREQUESTED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x42\x11\n\x0f_failure_reason\"\xe3\x03\n\x12\x43reateTokenRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x18\n\x10idempotency_uuid\x18\x02 \x01(\t\x12\x1c\n\x0ftoken_reference\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x0fpayer_reference\x18\x04 \x01(\t\x12\x15\n\x08metadata\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x12\n\nreturn_url\x18\x06 \x01(\t\x12\x1c\n\x0fpayer_statement\x18\x07 \x01(\tH\x02\x88\x01\x01\x12 \n\x13payer_email_address\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x12payer_phone_number\x18\t \x01(\tH\x04\x88\x01\x01\x12[\n\x1arecurring_processing_model\x18\n \x01(\x0e\x32\x32.com.kodypay.grpc.ecom.v1.RecurringProcessingModelH\x05\x88\x01\x01\x42\x12\n\x10_token_referenceB\x0b\n\t_metadataB\x12\n\x10_payer_statementB\x16\n\x14_payer_email_addressB\x15\n\x13_payer_phone_numberB\x1d\n\x1b_recurring_processing_model\"\x8d\x03\n\x13\x43reateTokenResponse\x12J\n\x08response\x18\x01 \x01(\x0b\x32\x36.com.kodypay.grpc.ecom.v1.CreateTokenResponse.ResponseH\x00\x12\x44\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x33.com.kodypay.grpc.ecom.v1.CreateTokenResponse.ErrorH\x00\x1a\x36\n\x08Response\x12\x10\n\x08token_id\x18\x01 \x01(\t\x12\x18\n\x10\x63reate_token_url\x18\x02 \x01(\t\x1a\xa1\x01\n\x05\x45rror\x12\x46\n\x04type\x18\x01 \x01(\x0e\x32\x38.com.kodypay.grpc.ecom.v1.CreateTokenResponse.Error.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\"?\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x15\n\x11\x44UPLICATE_ATTEMPT\x10\x01\x12\x13\n\x0fINVALID_REQUEST\x10\x02\x42\x08\n\x06result\"j\n\x13GetCardTokenRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x12\n\x08token_id\x18\x02 \x01(\tH\x00\x12\x19\n\x0ftoken_reference\x18\x03 \x01(\tH\x00\x42\x12\n\x10token_identifier\"\x9d\x07\n\x14GetCardTokenResponse\x12K\n\x08response\x18\x01 \x01(\x0b\x32\x37.com.kodypay.grpc.ecom.v1.GetCardTokenResponse.ResponseH\x00\x12\x45\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x34.com.kodypay.grpc.ecom.v1.GetCardTokenResponse.ErrorH\x00\x1a\xec\x03\n\x08Response\x12\x10\n\x08token_id\x18\x01 \x01(\t\x12\x1c\n\x0ftoken_reference\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x15\n\rpayment_token\x18\x03 \x01(\t\x12\x17\n\x0fpayer_reference\x18\x04 \x01(\t\x12V\n\x1arecurring_processing_model\x18\x05 \x01(\x0e\x32\x32.com.kodypay.grpc.ecom.v1.RecurringProcessingModel\x12N\n\x06status\x18\x06 \x01(\x0e\x32>.com.kodypay.grpc.ecom.v1.GetCardTokenResponse.CardTokenStatus\x12.\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12@\n\x0epayment_method\x18\x08 \x01(\x0e\x32(.com.kodypay.grpc.ecom.v1.PaymentMethods\x12\x1e\n\x16payment_method_variant\x18\t \x01(\t\x12\x16\n\x0e\x66unding_source\x18\n \x01(\t\x12\x1a\n\x12\x63\x61rd_last_4_digits\x18\x0b \x01(\tB\x12\n\x10_token_reference\x1a\x9f\x01\n\x05\x45rror\x12G\n\x04type\x18\x01 \x01(\x0e\x32\x39.com.kodypay.grpc.ecom.v1.GetCardTokenResponse.Error.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\"<\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x12\n\x0ePENDING_CREATE\x10\x01\x12\x13\n\x0fINVALID_REQUEST\x10\x02\"V\n\x0f\x43\x61rdTokenStatus\x12\x0b\n\x07PENDING\x10\x00\x12\n\n\x06\x46\x41ILED\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0b\n\x07\x44\x45LETED\x10\x03\x12\x12\n\x0ePENDING_DELETE\x10\x04\x42\x08\n\x06result\"m\n\x16\x44\x65leteCardTokenRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x12\n\x08token_id\x18\x02 \x01(\tH\x00\x12\x19\n\x0ftoken_reference\x18\x03 \x01(\tH\x00\x42\x12\n\x10token_identifier\"\xf5\x02\n\x17\x44\x65leteCardTokenResponse\x12N\n\x08response\x18\x01 \x01(\x0b\x32:.com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse.ResponseH\x00\x12H\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x37.com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse.ErrorH\x00\x1a\n\n\x08Response\x1a\xa9\x01\n\x05\x45rror\x12J\n\x04type\x18\x01 \x01(\x0e\x32<.com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse.Error.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\"C\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\r\n\tNOT_FOUND\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x12\x13\n\x0fINVALID_REQUEST\x10\x03\x42\x08\n\x06result\"A\n\x14GetCardTokensRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x17\n\x0fpayer_reference\x18\x02 \x01(\t\"\x9b\x03\n\x15GetCardTokensResponse\x12L\n\x08response\x18\x01 \x01(\x0b\x32\x38.com.kodypay.grpc.ecom.v1.GetCardTokensResponse.ResponseH\x00\x12\x46\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x35.com.kodypay.grpc.ecom.v1.GetCardTokensResponse.ErrorH\x00\x1aS\n\x08Response\x12G\n\x06tokens\x18\x01 \x03(\x0b\x32\x37.com.kodypay.grpc.ecom.v1.GetCardTokenResponse.Response\x1a\x8c\x01\n\x05\x45rror\x12H\n\x04type\x18\x01 \x01(\x0e\x32:.com.kodypay.grpc.ecom.v1.GetCardTokensResponse.Error.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\"(\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x13\n\x0fINVALID_REQUEST\x10\x01\x42\x08\n\x06result\"\xa0\x03\n\x17PayWithCardTokenRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x18\n\x10idempotency_uuid\x18\x02 \x01(\t\x12\x15\n\rpayment_token\x18\x03 \x01(\t\x12\x1a\n\x12\x61mount_minor_units\x18\x04 \x01(\x04\x12\x10\n\x08\x63urrency\x18\x05 \x01(\t\x12\x19\n\x11payment_reference\x18\x06 \x01(\t\x12\x15\n\x08order_id\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0eorder_metadata\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0fpayer_statement\x18\t \x01(\tH\x02\x88\x01\x01\x12_\n\x0f\x63\x61pture_options\x18\n \x01(\x0b\x32\x41.com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.CaptureOptionsH\x03\x88\x01\x01\x42\x0b\n\t_order_idB\x11\n\x0f_order_metadataB\x12\n\x10_payer_statementB\x12\n\x10_capture_options*\xa2\x01\n\x0ePaymentMethods\x12\x08\n\x04VISA\x10\x00\x12\x0e\n\nMASTERCARD\x10\x01\x12\x08\n\x04\x41MEX\x10\x02\x12\x0f\n\x0b\x42\x41N_CONTACT\x10\x03\x12\x13\n\x0f\x43HINA_UNION_PAY\x10\x04\x12\x0b\n\x07MAESTRO\x10\x05\x12\n\n\x06\x44INERS\x10\x06\x12\x0c\n\x08\x44ISCOVER\x10\x07\x12\x07\n\x03JCB\x10\x08\x12\n\n\x06\x41LIPAY\x10\t\x12\n\n\x06WECHAT\x10\n*Q\n\rPaymentStatus\x12\x0b\n\x07PENDING\x10\x00\x12\x0b\n\x07SUCCESS\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x12\r\n\tCANCELLED\x10\x03\x12\x0b\n\x07\x45XPIRED\x10\x04*s\n\x18RecurringProcessingModel\x12\x15\n\x11MODEL_UNSPECIFIED\x10\x00\x12\x10\n\x0c\x43\x41RD_ON_FILE\x10\x01\x12\x10\n\x0cSUBSCRIPTION\x10\x02\x12\x1c\n\x18UNSCHEDULED_CARD_ON_FILE\x10\x03\x32\x92\x0b\n\x17KodyEcomPaymentsService\x12z\n\x0fInitiatePayment\x12\x32.com.kodypay.grpc.ecom.v1.PaymentInitiationRequest\x1a\x33.com.kodypay.grpc.ecom.v1.PaymentInitiationResponse\x12\x7f\n\x15InitiatePaymentStream\x12\x32.com.kodypay.grpc.ecom.v1.PaymentInitiationRequest\x1a\x30.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse0\x01\x12s\n\x0ePaymentDetails\x12/.com.kodypay.grpc.ecom.v1.PaymentDetailsRequest\x1a\x30.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse\x12{\n\x14PaymentDetailsStream\x12/.com.kodypay.grpc.ecom.v1.PaymentDetailsRequest\x1a\x30.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse0\x01\x12j\n\x0bGetPayments\x12,.com.kodypay.grpc.ecom.v1.GetPaymentsRequest\x1a-.com.kodypay.grpc.ecom.v1.GetPaymentsResponse\x12]\n\x06Refund\x12\'.com.kodypay.grpc.ecom.v1.RefundRequest\x1a(.com.kodypay.grpc.ecom.v1.RefundResponse0\x01\x12n\n\x0f\x43reateCardToken\x12,.com.kodypay.grpc.ecom.v1.CreateTokenRequest\x1a-.com.kodypay.grpc.ecom.v1.CreateTokenResponse\x12m\n\x0cGetCardToken\x12-.com.kodypay.grpc.ecom.v1.GetCardTokenRequest\x1a..com.kodypay.grpc.ecom.v1.GetCardTokenResponse\x12v\n\x0f\x44\x65leteCardToken\x12\x30.com.kodypay.grpc.ecom.v1.DeleteCardTokenRequest\x1a\x31.com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse\x12p\n\rGetCardTokens\x12..com.kodypay.grpc.ecom.v1.GetCardTokensRequest\x1a/.com.kodypay.grpc.ecom.v1.GetCardTokensResponse\x12w\n\x10PayWithCardToken\x12\x31.com.kodypay.grpc.ecom.v1.PayWithCardTokenRequest\x1a\x30.com.kodypay.grpc.ecom.v1.PaymentDetailsResponse\x12{\n\x16GetTokenPaymentDetails\x12/.com.kodypay.grpc.ecom.v1.PaymentDetailsRequest\x1a\x30.com.kodypay.grpc.ecom.v1.PaymentDetailsResponseB3\n\x18\x63om.kodypay.grpc.ecom.v1B\x15KodyEcomPaymentsProtoP\x01\x62\x06proto3"
|
11
|
+
|
12
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
13
|
+
pool.add_serialized_file(descriptor_data)
|
14
|
+
|
15
|
+
module Com
|
16
|
+
module Kodypay
|
17
|
+
module Grpc
|
18
|
+
module Ecom
|
19
|
+
module V1
|
20
|
+
PaymentInitiationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationRequest").msgclass
|
21
|
+
PaymentInitiationRequest::ExpirySettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.ExpirySettings").msgclass
|
22
|
+
PaymentInitiationRequest::CaptureOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.CaptureOptions").msgclass
|
23
|
+
PaymentInitiationRequest::CaptureOptions::CaptureSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.CaptureOptions.CaptureSettings").msgclass
|
24
|
+
PaymentInitiationRequest::CaptureOptions::ReleaseSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationRequest.CaptureOptions.ReleaseSettings").msgclass
|
25
|
+
PaymentInitiationResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationResponse").msgclass
|
26
|
+
PaymentInitiationResponse::Response = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationResponse.Response").msgclass
|
27
|
+
PaymentInitiationResponse::Error = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationResponse.Error").msgclass
|
28
|
+
PaymentInitiationResponse::Error::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentInitiationResponse.Error.Type").enummodule
|
29
|
+
PaymentDetailsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsRequest").msgclass
|
30
|
+
PaymentDetailsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse").msgclass
|
31
|
+
PaymentDetailsResponse::Error = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.Error").msgclass
|
32
|
+
PaymentDetailsResponse::Error::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.Error.Type").enummodule
|
33
|
+
PaymentDetailsResponse::PaymentDetails = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentDetails").msgclass
|
34
|
+
PaymentDetailsResponse::PaymentData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentData").msgclass
|
35
|
+
PaymentDetailsResponse::PaymentData::PaymentCard = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentData.PaymentCard").msgclass
|
36
|
+
PaymentDetailsResponse::PaymentData::PaymentWallet = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentData.PaymentWallet").msgclass
|
37
|
+
PaymentDetailsResponse::PaymentData::PaymentAuthStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.PaymentData.PaymentAuthStatus").enummodule
|
38
|
+
PaymentDetailsResponse::SaleData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentDetailsResponse.SaleData").msgclass
|
39
|
+
GetPaymentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsRequest").msgclass
|
40
|
+
GetPaymentsRequest::Filter = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsRequest.Filter").msgclass
|
41
|
+
GetPaymentsRequest::PageCursor = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsRequest.PageCursor").msgclass
|
42
|
+
GetPaymentsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsResponse").msgclass
|
43
|
+
GetPaymentsResponse::Response = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsResponse.Response").msgclass
|
44
|
+
GetPaymentsResponse::Response::DeprecatedPaymentDetails = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsResponse.Response.DeprecatedPaymentDetails").msgclass
|
45
|
+
GetPaymentsResponse::Error = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsResponse.Error").msgclass
|
46
|
+
GetPaymentsResponse::Error::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetPaymentsResponse.Error.Type").enummodule
|
47
|
+
RefundRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.RefundRequest").msgclass
|
48
|
+
RefundResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.RefundResponse").msgclass
|
49
|
+
RefundResponse::RefundStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.RefundResponse.RefundStatus").enummodule
|
50
|
+
CreateTokenRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.CreateTokenRequest").msgclass
|
51
|
+
CreateTokenResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.CreateTokenResponse").msgclass
|
52
|
+
CreateTokenResponse::Response = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.CreateTokenResponse.Response").msgclass
|
53
|
+
CreateTokenResponse::Error = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.CreateTokenResponse.Error").msgclass
|
54
|
+
CreateTokenResponse::Error::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.CreateTokenResponse.Error.Type").enummodule
|
55
|
+
GetCardTokenRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokenRequest").msgclass
|
56
|
+
GetCardTokenResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokenResponse").msgclass
|
57
|
+
GetCardTokenResponse::Response = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokenResponse.Response").msgclass
|
58
|
+
GetCardTokenResponse::Error = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokenResponse.Error").msgclass
|
59
|
+
GetCardTokenResponse::Error::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokenResponse.Error.Type").enummodule
|
60
|
+
GetCardTokenResponse::CardTokenStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokenResponse.CardTokenStatus").enummodule
|
61
|
+
DeleteCardTokenRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.DeleteCardTokenRequest").msgclass
|
62
|
+
DeleteCardTokenResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse").msgclass
|
63
|
+
DeleteCardTokenResponse::Response = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse.Response").msgclass
|
64
|
+
DeleteCardTokenResponse::Error = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse.Error").msgclass
|
65
|
+
DeleteCardTokenResponse::Error::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.DeleteCardTokenResponse.Error.Type").enummodule
|
66
|
+
GetCardTokensRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokensRequest").msgclass
|
67
|
+
GetCardTokensResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokensResponse").msgclass
|
68
|
+
GetCardTokensResponse::Response = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokensResponse.Response").msgclass
|
69
|
+
GetCardTokensResponse::Error = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokensResponse.Error").msgclass
|
70
|
+
GetCardTokensResponse::Error::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.GetCardTokensResponse.Error.Type").enummodule
|
71
|
+
PayWithCardTokenRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PayWithCardTokenRequest").msgclass
|
72
|
+
PaymentMethods = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentMethods").enummodule
|
73
|
+
PaymentStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.PaymentStatus").enummodule
|
74
|
+
RecurringProcessingModel = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ecom.v1.RecurringProcessingModel").enummodule
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# Source: com/kodypay/grpc/ecom/v1/ecom.proto for package 'com.kodypay.grpc.ecom.v1'
|
3
|
+
|
4
|
+
require 'grpc'
|
5
|
+
require_relative "ecom_pb"
|
6
|
+
|
7
|
+
module Com
|
8
|
+
module Kodypay
|
9
|
+
module Grpc
|
10
|
+
module Ecom
|
11
|
+
module V1
|
12
|
+
module KodyEcomPaymentsService
|
13
|
+
# All service requests require X-API-Key header with 'API Key' value
|
14
|
+
class Service
|
15
|
+
|
16
|
+
include ::GRPC::GenericService
|
17
|
+
|
18
|
+
self.marshal_class_method = :encode
|
19
|
+
self.unmarshal_class_method = :decode
|
20
|
+
self.service_name = 'com.kodypay.grpc.ecom.v1.KodyEcomPaymentsService'
|
21
|
+
|
22
|
+
# Initiates a payment and returns a URL for the user to complete payment
|
23
|
+
rpc :InitiatePayment, ::Com::Kodypay::Grpc::Ecom::V1::PaymentInitiationRequest, ::Com::Kodypay::Grpc::Ecom::V1::PaymentInitiationResponse
|
24
|
+
rpc :InitiatePaymentStream, ::Com::Kodypay::Grpc::Ecom::V1::PaymentInitiationRequest, stream(::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsResponse)
|
25
|
+
rpc :PaymentDetails, ::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsRequest, ::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsResponse
|
26
|
+
rpc :PaymentDetailsStream, ::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsRequest, stream(::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsResponse)
|
27
|
+
rpc :GetPayments, ::Com::Kodypay::Grpc::Ecom::V1::GetPaymentsRequest, ::Com::Kodypay::Grpc::Ecom::V1::GetPaymentsResponse
|
28
|
+
rpc :Refund, ::Com::Kodypay::Grpc::Ecom::V1::RefundRequest, stream(::Com::Kodypay::Grpc::Ecom::V1::RefundResponse)
|
29
|
+
rpc :CreateCardToken, ::Com::Kodypay::Grpc::Ecom::V1::CreateTokenRequest, ::Com::Kodypay::Grpc::Ecom::V1::CreateTokenResponse
|
30
|
+
rpc :GetCardToken, ::Com::Kodypay::Grpc::Ecom::V1::GetCardTokenRequest, ::Com::Kodypay::Grpc::Ecom::V1::GetCardTokenResponse
|
31
|
+
rpc :DeleteCardToken, ::Com::Kodypay::Grpc::Ecom::V1::DeleteCardTokenRequest, ::Com::Kodypay::Grpc::Ecom::V1::DeleteCardTokenResponse
|
32
|
+
rpc :GetCardTokens, ::Com::Kodypay::Grpc::Ecom::V1::GetCardTokensRequest, ::Com::Kodypay::Grpc::Ecom::V1::GetCardTokensResponse
|
33
|
+
rpc :PayWithCardToken, ::Com::Kodypay::Grpc::Ecom::V1::PayWithCardTokenRequest, ::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsResponse
|
34
|
+
rpc :GetTokenPaymentDetails, ::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsRequest, ::Com::Kodypay::Grpc::Ecom::V1::PaymentDetailsResponse
|
35
|
+
end
|
36
|
+
|
37
|
+
Stub = Service.rpc_stub_class
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
data/lib/error_pb.rb
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: com/kodypay/grpc/errors/error.proto
|
4
|
+
|
5
|
+
require 'google/protobuf'
|
6
|
+
|
7
|
+
|
8
|
+
descriptor_data = "\n#com/kodypay/grpc/errors/error.proto\x12\x17\x63om.kodypay.grpc.errors*\x97\x08\n\x07KpError\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x1d\n\x18INVALID_ARGUMENT_GENERIC\x10\xb8\x17\x12\x1e\n\x19INVALID_ARGUMENT_STORE_ID\x10\xb9\x17\x12\x1c\n\x17INVALID_ARGUMENT_AMOUNT\x10\xba\x17\x12#\n\x1eINVALID_ARGUMENT_CURRENCY_CODE\x10\xbb\x17\x12\"\n\x1dINVALID_ARGUMENT_PAYMENT_MODE\x10\xbc\x17\x12!\n\x1cINVALID_ARGUMENT_DESCRIPTION\x10\xbd\x17\x12$\n\x1fINVALID_ARGUMENT_INTERNAL_NOTES\x10\xbe\x17\x12\x1e\n\x19\x44\x45\x41\x44LINE_EXCEEDED_GENERIC\x10\xa0\x1f\x12\x16\n\x11NOT_FOUND_GENERIC\x10\x88\'\x12\x1c\n\x17NOT_FOUND_STORE_DETAILS\x10\x89\'\x12\x16\n\x11NOT_FOUND_PAYMENT\x10\x8a\'\x12\x1b\n\x16\x41LREADY_EXISTS_GENERIC\x10\xf0.\x12\x1b\n\x16\x41LREADY_EXISTS_PAYMENT\x10\xf1.\x12\x1e\n\x19PERMISSION_DENIED_GENERIC\x10\xd8\x36\x12*\n%PERMISSION_DENIED_UNAUTHORIZED_ACCESS\x10\xd9\x36\x12\x1f\n\x1aRESOURCE_EXHAUSTED_GENERIC\x10\xc0>\x12\"\n\x1dRESOURCE_EXHAUSTED_RATE_LIMIT\x10\xc1>\x12 \n\x1b\x46\x41ILED_PRECONDITION_GENERIC\x10\xa8\x46\x12\'\n\"FAILED_PRECONDITION_PAYMENT_LOCKED\x10\xa9\x46\x12\x14\n\x0f\x41\x42ORTED_GENERIC\x10\x90N\x12\x19\n\x14OUT_OF_RANGE_GENERIC\x10\xf8U\x12\x1a\n\x15UNIMPLEMENTED_GENERIC\x10\xe0]\x12\x15\n\x10INTERNAL_GENERIC\x10\xc8\x65\x12\x1d\n\x18INTERNAL_SERVICE_TIMEOUT\x10\xc9\x65\x12-\n(INTERNAL_PENDING_PAYMENT_CREATION_FAILED\x10\xca\x65\x12\x1c\n\x17INTERNAL_PAYMENT_FAILED\x10\xcb\x65\x12*\n%INTERNAL_PAYMENT_STATUS_UPDATE_FAILED\x10\xcc\x65\x12\x16\n\x11INTERNAL_DATABASE\x10\xcd\x65\x12\x18\n\x13UNAVAILABLE_GENERIC\x10\xb0m\x12\x16\n\x11\x44\x41TA_LOSS_GENERIC\x10\x98u\x12\x1c\n\x17UNAUTHENTICATED_GENERIC\x10\x80}\x12$\n\x1fUNAUTHENTICATED_SESSION_EXPIRED\x10\x81}b\x06proto3"
|
9
|
+
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
11
|
+
pool.add_serialized_file(descriptor_data)
|
12
|
+
|
13
|
+
module Com
|
14
|
+
module Kodypay
|
15
|
+
module Grpc
|
16
|
+
module Errors
|
17
|
+
KpError = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.errors.KpError").enummodule
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
data/lib/inventory_pb.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: com/kodypay/grpc/ordering/v1/inventory.proto
|
4
|
+
|
5
|
+
require 'google/protobuf'
|
6
|
+
|
7
|
+
|
8
|
+
descriptor_data = "\n,com/kodypay/grpc/ordering/v1/inventory.proto\x12\x1c\x63om.kodypay.grpc.ordering.v1\"(\n\x14GetCategoriesRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\"S\n\x15GetCategoriesResponse\x12:\n\ncategories\x18\x01 \x03(\x0b\x32&.com.kodypay.grpc.ordering.v1.Category\"p\n\x08\x43\x61tegory\x12\x13\n\x0b\x63\x61tegory_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x41\n\x05items\x18\x03 \x03(\x0b\x32\x32.com.kodypay.grpc.ordering.v1.InventoryItemOrCombo\"\x91\x01\n\x14InventoryItemOrCombo\x12;\n\x04item\x18\x01 \x01(\x0b\x32+.com.kodypay.grpc.ordering.v1.InventoryItemH\x00\x12\x34\n\x05\x63ombo\x18\x02 \x01(\x0b\x32#.com.kodypay.grpc.ordering.v1.ComboH\x00\x42\x06\n\x04type\"\xc7\x01\n\rInventoryItem\x12\x18\n\x10merchant_item_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x13\n\x0bgross_price\x18\x04 \x01(\t\x12\x16\n\x0eintegration_id\x18\x05 \x01(\t\x12\x0c\n\x04tags\x18\x06 \x03(\t\x12>\n\x0c\x61\x64\x64on_groups\x18\x07 \x03(\x0b\x32(.com.kodypay.grpc.ordering.v1.AddOnGroup\"\xce\x01\n\nAddOnGroup\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x41\n\x05rules\x18\x02 \x01(\x0b\x32\x32.com.kodypay.grpc.ordering.v1.AddOnGroup.AddOnRule\x12\x36\n\x05items\x18\x03 \x03(\x0b\x32\'.com.kodypay.grpc.ordering.v1.AddOnItem\x12\x10\n\x08group_id\x18\x04 \x01(\t\x1a%\n\tAddOnRule\x12\x0b\n\x03min\x18\x01 \x01(\x05\x12\x0b\n\x03max\x18\x02 \x01(\x05\"\xc7\x01\n\tAddOnItem\x12\x18\n\x10merchant_item_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x13\n\x0bgross_price\x18\x04 \x01(\t\x12\x16\n\x0eintegration_id\x18\x05 \x01(\t\x12\x0c\n\x04tags\x18\x06 \x03(\t\x12\x10\n\x08group_id\x18\x07 \x01(\t\x12\x10\n\x03max\x18\x08 \x01(\x05H\x00\x88\x01\x01\x12\x16\n\x0eparent_item_id\x18\t \x01(\tB\x06\n\x04_max\"\x8d\x01\n\x05\x43ombo\x12\x10\n\x08\x63ombo_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x13\n\x0bgross_price\x18\x04 \x01(\t\x12:\n\ncategories\x18\x05 \x03(\x0b\x32&.com.kodypay.grpc.ordering.v1.Category\"Q\n\x13GetInventoryRequest\x12\x10\n\x08store_id\x18\x01 \x01(\t\x12\x18\n\x0b\x63\x61tegory_id\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_category_id\"Y\n\x14GetInventoryResponse\x12\x41\n\x05items\x18\x01 \x03(\x0b\x32\x32.com.kodypay.grpc.ordering.v1.InventoryItemOrCombo2\x83\x02\n\x10InventoryService\x12u\n\x0cGetInventory\x12\x31.com.kodypay.grpc.ordering.v1.GetInventoryRequest\x1a\x32.com.kodypay.grpc.ordering.v1.GetInventoryResponse\x12x\n\rGetCategories\x12\x32.com.kodypay.grpc.ordering.v1.GetCategoriesRequest\x1a\x33.com.kodypay.grpc.ordering.v1.GetCategoriesResponseB0\n\x1c\x63om.kodypay.grpc.ordering.v1B\x0eInventoryProtoP\x01\x62\x06proto3"
|
9
|
+
|
10
|
+
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
11
|
+
pool.add_serialized_file(descriptor_data)
|
12
|
+
|
13
|
+
module Com
|
14
|
+
module Kodypay
|
15
|
+
module Grpc
|
16
|
+
module Ordering
|
17
|
+
module V1
|
18
|
+
GetCategoriesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.GetCategoriesRequest").msgclass
|
19
|
+
GetCategoriesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.GetCategoriesResponse").msgclass
|
20
|
+
Category = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.Category").msgclass
|
21
|
+
InventoryItemOrCombo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.InventoryItemOrCombo").msgclass
|
22
|
+
InventoryItem = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.InventoryItem").msgclass
|
23
|
+
AddOnGroup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.AddOnGroup").msgclass
|
24
|
+
AddOnGroup::AddOnRule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.AddOnGroup.AddOnRule").msgclass
|
25
|
+
AddOnItem = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.AddOnItem").msgclass
|
26
|
+
Combo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.Combo").msgclass
|
27
|
+
GetInventoryRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.GetInventoryRequest").msgclass
|
28
|
+
GetInventoryResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("com.kodypay.grpc.ordering.v1.GetInventoryResponse").msgclass
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# Source: com/kodypay/grpc/ordering/v1/inventory.proto for package 'com.kodypay.grpc.ordering.v1'
|
3
|
+
|
4
|
+
require 'grpc'
|
5
|
+
require_relative "inventory_pb"
|
6
|
+
|
7
|
+
module Com
|
8
|
+
module Kodypay
|
9
|
+
module Grpc
|
10
|
+
module Ordering
|
11
|
+
module V1
|
12
|
+
module InventoryService
|
13
|
+
class Service
|
14
|
+
|
15
|
+
include ::GRPC::GenericService
|
16
|
+
|
17
|
+
self.marshal_class_method = :encode
|
18
|
+
self.unmarshal_class_method = :decode
|
19
|
+
self.service_name = 'com.kodypay.grpc.ordering.v1.InventoryService'
|
20
|
+
|
21
|
+
# Retrieve full inventory or items filtered by category
|
22
|
+
rpc :GetInventory, ::Com::Kodypay::Grpc::Ordering::V1::GetInventoryRequest, ::Com::Kodypay::Grpc::Ordering::V1::GetInventoryResponse
|
23
|
+
# Retrieve all categories for a store
|
24
|
+
rpc :GetCategories, ::Com::Kodypay::Grpc::Ordering::V1::GetCategoriesRequest, ::Com::Kodypay::Grpc::Ordering::V1::GetCategoriesResponse
|
25
|
+
end
|
26
|
+
|
27
|
+
Stub = Service.rpc_stub_class
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Kody
|
2
|
+
class Configuration
|
3
|
+
# Common KodyPay gRPC endpoints
|
4
|
+
PRODUCTION_ENDPOINT = 'grpc.kodypay.com:443'
|
5
|
+
STAGING_ENDPOINT = 'grpc-staging-ap.kodypay.com:443'
|
6
|
+
|
7
|
+
attr_accessor :api_key, :store_id, :endpoint
|
8
|
+
|
9
|
+
def initialize
|
10
|
+
@endpoint = PRODUCTION_ENDPOINT
|
11
|
+
end
|
12
|
+
|
13
|
+
def staging!
|
14
|
+
@endpoint = STAGING_ENDPOINT
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/kody/version.rb
ADDED
data/lib/kody.rb
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
require_relative 'kody/version'
|
2
|
+
require_relative 'kody/configuration'
|
3
|
+
|
4
|
+
# Load gRPC protobuf definitions and services (generated during build)
|
5
|
+
begin
|
6
|
+
require 'grpc'
|
7
|
+
|
8
|
+
# Automatically load all generated protobuf files
|
9
|
+
lib_dir = File.dirname(__FILE__)
|
10
|
+
|
11
|
+
# Load all _pb.rb files (protobuf messages)
|
12
|
+
Dir.glob(File.join(lib_dir, '*_pb.rb')).each do |file|
|
13
|
+
require file
|
14
|
+
end
|
15
|
+
|
16
|
+
# Load all _services_pb.rb files (gRPC services)
|
17
|
+
Dir.glob(File.join(lib_dir, '*_services_pb.rb')).each do |file|
|
18
|
+
require file
|
19
|
+
end
|
20
|
+
|
21
|
+
rescue LoadError => e
|
22
|
+
raise LoadError, "KodyPay gRPC files not found. This gem must be installed from RubyGems to include generated protobuf files. Error: #{e.message}"
|
23
|
+
end
|
24
|
+
|
25
|
+
module Kody
|
26
|
+
class << self
|
27
|
+
attr_accessor :configuration
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.configure
|
31
|
+
self.configuration ||= Configuration.new
|
32
|
+
yield(configuration)
|
33
|
+
end
|
34
|
+
|
35
|
+
class Error < StandardError; end
|
36
|
+
end
|