Module: RootInsurance::Api::Payment
- Included in:
- Client
- Defined in:
- lib/root_insurance/api/payment.rb
Instance Method Summary collapse
-
#create_payment_method(policyholder_id:, type: 'debit_order', bank_details: {}, policy_ids: nil) ⇒ Hash
Create a payment method.
-
#link_payment_method(policy_id:, payment_method_id:) ⇒ Object
Link a payment method to a policy.
Instance Method Details
#create_payment_method(policyholder_id:, type: 'debit_order', bank_details: {}, policy_ids: nil) ⇒ Hash
Create a payment method
Bank details
- account_holder (string)
-
Name of account holder.
- bank (string)
-
Bank name - one of [
absa
,capitec
,fnb
,investec
,nedbank
,postbank
,standard_bank
] - branch_code (string)
-
Branch code for bank account
- account_number (string)
-
Bank account number
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/root_insurance/api/payment.rb', line 31 def create_payment_method(policyholder_id:, type: 'debit_order', bank_details: {}, policy_ids: nil) validate_bank_details(bank_details) data = { type: type, bank_details: bank_details } if policy_ids && policy_ids.is_a?(Array) data.merge!(policy_ids: policy_ids) elsif policy_ids && policy_ids.is_a?(String) data.merge!(policy_ids: [policy_ids]) end post("policyholders/#{policyholder_id}/payment-methods", data) end |
#link_payment_method(policy_id:, payment_method_id:) ⇒ Object
Link a payment method to a policy
58 59 60 61 62 |
# File 'lib/root_insurance/api/payment.rb', line 58 def link_payment_method(policy_id:, payment_method_id:) data = {payment_method_id: payment_method_id} put("policies/#{policy_id}/payment-method", data) end |