Module: CurrencyCloud

Defined in:
lib/currency_cloud/version.rb,
lib/currency_cloud.rb,
lib/currency_cloud/iban.rb,
lib/currency_cloud/rate.rb,
lib/currency_cloud/ibans.rb,
lib/currency_cloud/payer.rb,
lib/currency_cloud/rates.rb,
lib/currency_cloud/client.rb,
lib/currency_cloud/sender.rb,
lib/currency_cloud/account.rb,
lib/currency_cloud/actions.rb,
lib/currency_cloud/balance.rb,
lib/currency_cloud/contact.rb,
lib/currency_cloud/payment.rb,
lib/currency_cloud/reports.rb,
lib/currency_cloud/session.rb,
lib/currency_cloud/currency.rb,
lib/currency_cloud/resource.rb,
lib/currency_cloud/transfer.rb,
lib/currency_cloud/reference.rb,
lib/currency_cloud/conversion.rb,
lib/currency_cloud/pagination.rb,
lib/currency_cloud/beneficiary.rb,
lib/currency_cloud/transaction.rb,
lib/currency_cloud/actions/find.rb,
lib/currency_cloud/actions/save.rb,
lib/currency_cloud/bank_details.rb,
lib/currency_cloud/purpose_code.rb,
lib/currency_cloud/payment_dates.rb,
lib/currency_cloud/actions/cancel.rb,
lib/currency_cloud/actions/create.rb,
lib/currency_cloud/actions/delete.rb,
lib/currency_cloud/actions/update.rb,
lib/currency_cloud/actions/current.rb,
lib/currency_cloud/funding_account.rb,
lib/currency_cloud/request_handler.rb,
lib/currency_cloud/virtual_account.rb,
lib/currency_cloud/actions/retrieve.rb,
lib/currency_cloud/conversion_dates.rb,
lib/currency_cloud/errors/api_error.rb,
lib/currency_cloud/payment_fee_rule.rb,
lib/currency_cloud/response_handler.rb,
lib/currency_cloud/virtual_accounts.rb,
lib/currency_cloud/quote_payment_fee.rb,
lib/currency_cloud/errors/error_utils.rb,
lib/currency_cloud/settlement_account.rb,
lib/currency_cloud/term_and_condition.rb,
lib/currency_cloud/withdrawal_account.rb,
lib/currency_cloud/funding_transaction.rb,
lib/currency_cloud/withdrawal_accounts.rb,
lib/currency_cloud/errors/general_error.rb,
lib/currency_cloud/terms_and_conditions.rb,
lib/currency_cloud/collections_screening.rb,
lib/currency_cloud/margin_balance_top_up.rb,
lib/currency_cloud/payment_report_result.rb,
lib/currency_cloud/payment_tracking_info.rb,
lib/currency_cloud/report_request_result.rb,
lib/currency_cloud/sender_details_result.rb,
lib/currency_cloud/actions_post/find_post.rb,
lib/currency_cloud/payer_required_details.rb,
lib/currency_cloud/resourceful_collection.rb,
lib/currency_cloud/actions/instance_delete.rb,
lib/currency_cloud/conversion_split_result.rb,
lib/currency_cloud/errors/unexpected_error.rb,
lib/currency_cloud/payment_submission_info.rb,
lib/currency_cloud/conversion_cancel_result.rb,
lib/currency_cloud/conversion_report_result.rb,
lib/currency_cloud/withdrawal_account_funds.rb,
lib/currency_cloud/payment_validation_result.rb,
lib/currency_cloud/account_compliance_setting.rb,
lib/currency_cloud/conversion_profit_and_loss.rb,
lib/currency_cloud/find_report_requests_result.rb,
lib/currency_cloud/payment_confirmation_result.rb,
lib/currency_cloud/collections_screening_result.rb,
lib/currency_cloud/payment_authorisation_result.rb,
lib/currency_cloud/payment_delivery_date_result.rb,
lib/currency_cloud/conversion_date_change_result.rb,
lib/currency_cloud/account_payment_charges_setting.rb,
lib/currency_cloud/conversion_split_history_result.rb,
lib/currency_cloud/conversion_split_preview_result.rb,
lib/currency_cloud/conversion_date_change_quote_result.rb,
lib/currency_cloud/conversion_cancellation_quote_result.rb,
lib/currency_cloud/beneficiary_account_verification_result.rb

Overview

Separate Gem version from ‘API version’

Defined Under Namespace

Modules: Actions, ActionsPost, ErrorUtils, Resource Classes: Account, AccountComplianceSetting, AccountPaymentChargesSetting, ApiError, ApiErrorMessage, AuthenticationError, BadRequestError, Balance, BankDetails, Beneficiary, BeneficiaryAccountVerificationResult, Client, CollectionsScreening, CollectionsScreeningResult, Contact, Conversion, ConversionCancelResult, ConversionCancellationQuoteResult, ConversionDateChangeQuoteResult, ConversionDateChangeResult, ConversionDates, ConversionProfitAndLoss, ConversionReportResult, ConversionSplitHistoryResult, ConversionSplitPreviewResult, ConversionSplitResult, Currency, FindReportRequestsResult, ForbiddenError, FundingAccount, FundingTransaction, GeneralError, IBAN, IBANs, InternalApplicationError, MarginBalanceTopUp, NotFoundError, Pagination, Payer, PayerRequiredDetails, Payment, PaymentAuthorisationResult, PaymentConfirmationResult, PaymentDates, PaymentDeliveryDateResult, PaymentFeeRule, PaymentReportResult, PaymentSubmissionInfo, PaymentTrackingInfo, PaymentValidationResult, PurposeCode, QuotePaymentFee, Rate, Rates, Reference, ReportRequestResult, Reports, RequestHandler, ResourcefulCollection, ResponseHandler, Sender, SenderDetailsResult, Session, SettlementAccount, TermAndCondition, TermsAndConditions, TooManyRequestsError, Transaction, Transfer, UnexpectedError, VirtualAccount, VirtualAccounts, WithdrawalAccount, WithdrawalAccountFunds, WithdrawalAccounts

Constant Summary collapse

UUID_REGEX =
/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i
API_VERSION =

API Version

"v2".freeze
VERSION =

Gem Version

"4.3.0".freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.api_keyObject

Returns the value of attribute api_key.



14
15
16
# File 'lib/currency_cloud.rb', line 14

def api_key
  @api_key
end

.environmentObject

Returns the value of attribute environment.



14
15
16
# File 'lib/currency_cloud.rb', line 14

def environment
  @environment
end

.login_idObject

Returns the value of attribute login_id.



14
15
16
# File 'lib/currency_cloud.rb', line 14

def 
  @login_id
end

.tokenObject

Returns the value of attribute token.



14
15
16
# File 'lib/currency_cloud.rb', line 14

def token
  @token
end

Class Method Details

.close_sessionObject



21
22
23
24
# File 'lib/currency_cloud.rb', line 21

def self.close_session
  @session.close if @session
  true
end

.on_behalf_of(contact_id) ⇒ Object



31
32
33
34
35
36
37
38
39
# File 'lib/currency_cloud.rb', line 31

def self.on_behalf_of(contact_id)
  raise CurrencyCloud::GeneralError, '#on_behalf_of has already been set' unless session.on_behalf_of.nil?
  raise CurrencyCloud::GeneralError, 'contact id for on behalf of is not a UUID' unless UUID_REGEX.match(contact_id)

  session.on_behalf_of = contact_id
  yield
ensure
  session.on_behalf_of = nil
end

.reset_sessionObject



26
27
28
29
# File 'lib/currency_cloud.rb', line 26

def self.reset_session
  @session = nil
  @token = nil
end

.sessionObject



17
18
19
# File 'lib/currency_cloud.rb', line 17

def self.session
  @session ||= CurrencyCloud::Session.new(environment, , api_key, token)
end