class Synapsis::Bank
Attributes
account_class[RW]
account_number_string[RW]
account_type[RW]
address[RW]
balance[RW]
bank_name[RW]
date[RW]
email[RW]
id[RW]
is_active[RW]
is_buyer_default[RW]
is_seller_default[RW]
is_verified[RW]
mfa_verifed[RW]
name_on_account[RW]
nickname[RW]
phone_number[RW]
resource_uri[RW]
routing_number_string[RW]
Public Class Methods
add(params)
click to toggle source
# File lib/synapsis/bank.rb, line 35 def self.add(params) added_bank = create_request(params) return_response(added_bank) end
link(params)
click to toggle source
# File lib/synapsis/bank.rb, line 40 def self.link(params) partially_linked_bank = request(:post, bank_link_url, params) parsed_partially_linked_bank = parse_as_synapse_resource(partially_linked_bank) if parsed_partially_linked_bank.success if parsed_partially_linked_bank.banks # This happens if the added bank has no MFA return parsed_partially_linked_bank end @access_token = parsed_partially_linked_bank.response.access_token new_bank = request(:post, bank_mfa_url, params.merge(access_token: @access_token)) parsed_new_bank = parse_as_synapse_resource(new_bank) if parsed_new_bank.banks # SynapseAPI will return an array of the banks if the MFA process was successful return parsed_new_bank else raise Synapsis::Error, 'Wrong MFA answer.' end else raise Synapsis::Error, JSON.parse(partially_linked_bank.body)['message'] end end
remove(bank_id, oauth_consumer_key)
click to toggle source
# File lib/synapsis/bank.rb, line 74 def self.remove(bank_id, oauth_consumer_key) params = { bank_id: bank_id, oauth_consumer_key: oauth_consumer_key } response = request(:post, bank_delete_url, params) return_response(response) end
set_as_primary(bank_id:, oauth_consumer_key:)
click to toggle source
By default, the first added bank account is the primary one. If you add another bank it will not be set as the primary one unless it was deleted. When a bank account is deleted, if it was the primary bank account, the next bank account chronologically added will be set as the primary one.
# File lib/synapsis/bank.rb, line 86 def self.set_as_primary(bank_id:, oauth_consumer_key:) params = { bank_id: bank_id, oauth_consumer_key: oauth_consumer_key } response = request(:post, set_bank_as_primary_url, params) return_response(response) end
view_bank(oauth_token:, bank_id: )
click to toggle source
# File lib/synapsis/bank.rb, line 69 def self.view_bank(oauth_token:, bank_id: ) response = view_request(oauth_consumer_key: oauth_token, id: bank_id) return_response(response) end
view_linked_banks(oauth_token)
click to toggle source
# File lib/synapsis/bank.rb, line 64 def self.view_linked_banks(oauth_token) response = view_request(oauth_consumer_key: oauth_token) return_response(response) end
Private Class Methods
bank_delete_url()
click to toggle source
# File lib/synapsis/bank.rb, line 110 def self.bank_delete_url "#{API_V2_PATH}bank/delete" end
bank_link_url()
click to toggle source
# File lib/synapsis/bank.rb, line 98 def self.bank_link_url "#{API_V2_PATH}bank/login/?is_dev=yes" end
bank_mfa_url()
click to toggle source
# File lib/synapsis/bank.rb, line 102 def self.bank_mfa_url "#{API_V2_PATH}bank/mfa/?is_dev=yes" end
set_bank_as_primary_url()
click to toggle source
# File lib/synapsis/bank.rb, line 106 def self.set_bank_as_primary_url "#{API_V2_PATH}bank/setprimary" end