class Yoti::AmlProfile
Manages the AML check Profile
object
Public Class Methods
new(given_names, family_name, aml_address, ssn = nil)
click to toggle source
@param [String] given_names @param [String] family_name @param [AmlAddress] aml_address @param [String] ssn
# File lib/yoti/http/payloads/aml_profile.rb, line 10 def initialize(given_names, family_name, aml_address, ssn = nil) @given_names = given_names @family_name = family_name @ssn = ssn @address = aml_address raise AmlError, 'The AML request requires given names, family name and an ISO 3166 3-letter code.' if profile_invalid raise AmlError, 'Request for USA require a valid SSN and postcode.' if usa_invalid end
Public Instance Methods
payload()
click to toggle source
@return [Hash] the AML check request body
# File lib/yoti/http/payloads/aml_profile.rb, line 21 def payload { given_names: @given_names, family_name: @family_name, ssn: @ssn, address: { country: @address.country, post_code: @address.post_code } } end
Private Instance Methods
address_invalid()
click to toggle source
# File lib/yoti/http/payloads/aml_profile.rb, line 39 def address_invalid !@address.is_a?(AmlAddress) || @address.country.to_s.length != 3 end
profile_invalid()
click to toggle source
# File lib/yoti/http/payloads/aml_profile.rb, line 35 def profile_invalid @given_names.to_s.empty? || @family_name.to_s.empty? || address_invalid end
usa_invalid()
click to toggle source
# File lib/yoti/http/payloads/aml_profile.rb, line 43 def usa_invalid @address.country == 'USA' && (@ssn.to_s.empty? || @address.post_code.to_s.empty?) end