Module: Veryfi

Defined in:
lib/veryfi.rb,
lib/veryfi/error.rb,
lib/veryfi/api/w2.rb,
lib/veryfi/api/w8.rb,
lib/veryfi/api/w9.rb,
lib/veryfi/client.rb,
lib/veryfi/api/tag.rb,
lib/veryfi/request.rb,
lib/veryfi/version.rb,
lib/veryfi/resource.rb,
lib/veryfi/api/check.rb,
lib/veryfi/signature.rb,
lib/veryfi/api/classify.rb,
lib/veryfi/api/document.rb,
lib/veryfi/api/tax_line.rb,
lib/veryfi/api/w2_split.rb,
lib/veryfi/api/line_item.rb,
lib/veryfi/api/pdf_split.rb,
lib/veryfi/configuration.rb,
lib/veryfi/api/any_document.rb,
lib/veryfi/api/document_tag.rb,
lib/veryfi/api/file_payload.rb,
lib/veryfi/api/business_card.rb,
lib/veryfi/api/bank_statement.rb,
lib/veryfi/api/tag_operations.rb,
lib/veryfi/api/bank_statement_split.rb

Defined Under Namespace

Modules: Api Classes: Client, Configuration, Error, Request, Resource, Signature

Constant Summary collapse

VERSION =
"4.0.0"

Class Method Summary collapse

Class Method Details

.clientVeryfi::Client

Process-wide memoized Client built from configuration. Resets if you re-configure the SDK after first use.

Returns:



67
68
69
70
71
# File 'lib/veryfi.rb', line 67

def client
  @_client = nil if @_last_configuration_hash && @_last_configuration_hash != configuration.to_h
  @_last_configuration_hash = configuration.to_h
  @_client ||= Veryfi::Client.new(**configuration.to_h.compact)
end

.configurationVeryfi::Configuration

Returns the global configuration object.

Returns:



59
60
61
# File 'lib/veryfi.rb', line 59

def configuration
  @_configuration ||= Veryfi::Configuration.new
end

.configure {|config| ... } ⇒ Veryfi::Configuration

Process-wide configuration, used by client as defaults when constructing the shared client. You can still call Veryfi::Client.new(...) directly to bypass this entirely.

Examples:

Veryfi.configure do |c|
  c.client_id     = ENV.fetch("VERYFI_CLIENT_ID")
  c.client_secret = ENV.fetch("VERYFI_CLIENT_SECRET")
  c.username      = ENV.fetch("VERYFI_USERNAME")
  c.api_key       = ENV.fetch("VERYFI_API_KEY")
end

Veryfi.client.document.process(file_path: "./receipt.jpg")

Yield Parameters:

Returns:



53
54
55
56
# File 'lib/veryfi.rb', line 53

def configure
  yield(configuration) if block_given?
  configuration
end

.reset!void

This method returns an undefined value.

Drop the memoized client and configuration. Mostly useful in tests.



75
76
77
78
79
# File 'lib/veryfi.rb', line 75

def reset!
  @_configuration = nil
  @_client = nil
  @_last_configuration_hash = nil
end