Class: Veryfi::Api::W9
- Inherits:
-
Object
- Object
- Veryfi::Api::W9
- Includes:
- FilePayload, TagOperations
- Defined in:
- lib/veryfi/api/w9.rb
Overview
W-9 endpoints (/partner/w9s/).
Constant Summary collapse
- ENDPOINT =
"/partner/w9s/"
Instance Attribute Summary collapse
-
#request ⇒ Object
readonly
Returns the value of attribute request.
Instance Method Summary collapse
-
#all(params = {}) ⇒ Veryfi::Resource
List previously processed W-9 documents.
-
#delete(id) ⇒ Veryfi::Resource
Delete a W-9.
-
#get(id, params = {}) ⇒ Veryfi::Resource
Fetch a single W-9 by id.
-
#initialize(request) ⇒ W9
constructor
A new instance of W9.
-
#process(raw_params) ⇒ Veryfi::Resource
Upload a W-9 file and extract its fields.
-
#process_url(raw_params) ⇒ Veryfi::Resource
URL variant of #process.
-
#update(id, params) ⇒ Veryfi::Resource
Update writable fields on a processed W-9.
Methods included from TagOperations
#add_tag, #add_tags, #delete_tag, #delete_tags, #tags
Constructor Details
#initialize(request) ⇒ W9
Returns a new instance of W9.
16 17 18 |
# File 'lib/veryfi/api/w9.rb', line 16 def initialize(request) @request = request end |
Instance Attribute Details
#request ⇒ Object (readonly)
Returns the value of attribute request.
14 15 16 |
# File 'lib/veryfi/api/w9.rb', line 14 def request @request end |
Instance Method Details
#all(params = {}) ⇒ Veryfi::Resource
List previously processed W-9 documents.
30 31 32 |
# File 'lib/veryfi/api/w9.rb', line 30 def all(params = {}) request.get(ENDPOINT, params) end |
#delete(id) ⇒ Veryfi::Resource
Delete a W-9.
87 88 89 |
# File 'lib/veryfi/api/w9.rb', line 87 def delete(id) request.delete("#{ENDPOINT}#{id}/") end |
#get(id, params = {}) ⇒ Veryfi::Resource
Fetch a single W-9 by id.
41 42 43 |
# File 'lib/veryfi/api/w9.rb', line 41 def get(id, params = {}) request.get("#{ENDPOINT}#{id}/", params) end |
#process(raw_params) ⇒ Veryfi::Resource
Upload a W-9 file and extract its fields.
51 52 53 54 55 56 57 58 59 |
# File 'lib/veryfi/api/w9.rb', line 51 def process(raw_params) params = raw_params.transform_keys(&:to_sym) file_path = params.delete(:file_path) file_name = params.delete(:file_name) payload = file_payload(file_path, file_name).merge(params) request.post(ENDPOINT, payload) end |
#process_url(raw_params) ⇒ Veryfi::Resource
URL variant of #process.
67 68 69 70 71 72 |
# File 'lib/veryfi/api/w9.rb', line 67 def process_url(raw_params) params = raw_params.transform_keys(&:to_sym) params[:file_name] ||= File.basename(params[:file_url]) if params[:file_url] request.post(ENDPOINT, params) end |
#update(id, params) ⇒ Veryfi::Resource
Update writable fields on a processed W-9.
79 80 81 |
# File 'lib/veryfi/api/w9.rb', line 79 def update(id, params) request.put("#{ENDPOINT}#{id}/", params) end |