class EasyPost::Services::ReferralCustomer
Public Instance Methods
Source
# File lib/easypost/services/referral_customer.rb, line 81 def add_bank_account_from_stripe(referral_api_key, financial_connections_id, mandate_data, priority = 'primary') params = { financial_connections_id: financial_connections_id, mandate_data: mandate_data, priority: priority, } referral_client = EasyPost::Client.new(api_key: referral_api_key) response = referral_client.make_request( :post, 'bank_accounts', params, ) EasyPost::InternalUtilities::Json.convert_json_to_object(response) end
Add a bank account to EasyPost
for a ReferralCustomer
. This function requires the ReferralCustomer
User’s API key.
Source
# File lib/easypost/services/referral_customer.rb, line 44 def add_credit_card(referral_api_key, number, expiration_month, expiration_year, cvc, priority = 'primary') easypost_stripe_api_key = retrieve_easypost_stripe_api_key begin stripe_credit_card_token = create_stripe_token( number, expiration_month, expiration_year, cvc, easypost_stripe_api_key, ) rescue StandardError raise EasyPost::Errors::ExternalApiError.new(EasyPost::Constants::STRIPE_CARD_CREATE_FAILED) end create_easypost_credit_card(referral_api_key, stripe_credit_card_token, priority) end
Add a credit card to EasyPost
for a ReferralCustomer
without needing a Stripe account. This function requires the ReferralCustomer
User’s API key.
Source
# File lib/easypost/services/referral_customer.rb, line 63 def add_credit_card_from_stripe(referral_api_key, payment_method_id, priority = 'primary') params = { credit_card: { payment_method_id: payment_method_id, priority: priority, }, } referral_client = EasyPost::Client.new(api_key: referral_api_key) response = referral_client.make_request( :post, 'credit_cards', params, ) EasyPost::InternalUtilities::Json.convert_json_to_object(response) end
Add a credit card to EasyPost
for a ReferralCustomer
with a payment method ID from Stripe. This function requires the ReferralCustomer
User’s API key.
Source
# File lib/easypost/services/referral_customer.rb, line 27 def all(params = {}) filters = { key: 'referral_customers' } get_all_helper('referral_customers', MODEL_CLASS, params, filters) end
Retrieve a list of referral customers. This function requires the Partner User’s API key.
Source
# File lib/easypost/services/referral_customer.rb, line 7 def create(params = {}) response = @client.make_request(:post, 'referral_customers', { user: params }) EasyPost::InternalUtilities::Json.convert_json_to_object(response, MODEL_CLASS) end
Create a referral customer. This function requires the Partner User’s API key.
Source
# File lib/easypost/services/referral_customer.rb, line 34 def get_next_page(collection, page_size = nil) raise EasyPost::Errors::EndOfPaginationError.new unless more_pages?(collection) params = { before_id: collection.referral_customers.last.id } params[:page_size] = page_size unless page_size.nil? all(params) end
Get the next page of referral customers.
Source
# File lib/easypost/services/referral_customer.rb, line 14 def update_email(user_id, email) wrapped_params = { user: { email: email, }, } @client.make_request(:put, "referral_customers/#{user_id}", wrapped_params) # return true if API succeeds, else an error is throw if it fails. true end
Update a referral customer. This function requires the Partner User’s API key.