Class: Hws::Connectors::Hypto::VirtualAccount

Inherits:
Hws::Connectors::Hypto show all
Includes:
Transaction
Defined in:
lib/hws-connectors/hypto/virtual_account/base.rb

Defined Under Namespace

Modules: Transaction

Constant Summary collapse

META_RESPONSES =
%w(id account_number udf1 udf2 udf3 settle_to parent_id parent_type level hierarchy created_at updated_at link_upi upi_details)

Constants included from Transaction

Transaction::TXN_META_RESPONSES

Constants inherited from Hws::Connectors::Hypto

END_POINTS, NAME

Constants inherited from Hws::Connectors

VERSION

Actions collapse

Methods included from Transaction

#send_to_bank_account, #send_to_upi_id, #status

Methods inherited from Hws::Connectors::Hypto

#initialize

Methods inherited from Hws::Connectors

configure, logging?

Methods included from Hws::Connectors::Helper

included

Constructor Details

This class inherits a constructor from Hws::Connectors::Hypto

Instance Method Details

#activate(reference_number:) ⇒ Dto::VirtualAccountResponse

Parameters:

  • reference_number (String)

Returns:



37
38
39
40
41
# File 'lib/hws-connectors/hypto/virtual_account/base.rb', line 37

def activate(reference_number:)
  payload = { id: reference_number }
  resp = initiate_request(__method__, payload)
  to_response(resp['data'], resp['message'])
end

#create(request:) ⇒ Dto::VirtualAccountResponse

Parameters:

Returns:



8
9
10
11
12
13
14
15
16
# File 'lib/hws-connectors/hypto/virtual_account/base.rb', line 8

def create(request:)
  payload = { reference_number: request.reference_number, udf1: request.meta[:udf1], udf2: request.meta[:udf2], udf3: request.meta[:udf3],
              parent_id: request.meta[:parent_id], link_upi: request.meta[:link_upi], upi_name: request.meta[:upi_name],
              whitelisted_remitters: request.remitters.map { |remitter| { number: remitter.beneficiary., ifsc: remitter.beneficiary. } } }
  payload[:settle_to] = request.meta[:settle_to] if request.meta[:settle_to].present?
  payload[:parent_type] = request.meta[:parent_type] if request.meta[:parent_type].present?
  resp = initiate_request(__method__, payload)
  to_response(resp['data']['virtual_account'], resp['message'])
end

#deactivate(reference_number:) ⇒ Dto::VirtualAccountResponse

Parameters:

  • reference_number (String)

Returns:



45
46
47
48
49
# File 'lib/hws-connectors/hypto/virtual_account/base.rb', line 45

def deactivate(reference_number:)
  payload = { id: reference_number }
  resp = initiate_request(__method__, payload)
  to_response(resp['data'], resp['message'])
end

#fetch(reference_number:) ⇒ Dto::VirtualAccountResponse

Parameters:

  • reference_number (String)

Returns:



20
21
22
23
24
# File 'lib/hws-connectors/hypto/virtual_account/base.rb', line 20

def fetch(reference_number:)
  payload = { id: reference_number }
  resp = initiate_request(__method__, payload)
  to_response(resp['data'], resp['message'])
end

#update(request:) ⇒ Dto::VirtualAccountResponse

Parameters:

Returns:



28
29
30
31
32
33
# File 'lib/hws-connectors/hypto/virtual_account/base.rb', line 28

def update(request:)
  payload = { id: request.meta[:id], reference_number: request.reference_number, udf1: request.meta[:udf1], udf2: request.meta[:udf2], udf3: request.meta[:udf3],
              whitelisted_remitters: request.remitters.map { |remitter| { number: remitter.beneficiary., ifsc: remitter.beneficiary. } } }
  resp = initiate_request(__method__, payload)
  to_response(resp['data']['virtual_account'], resp['message'])
end