From b7ea72420aa0919a3c86fc40e24177ba0dfcda2f Mon Sep 17 00:00:00 2001 From: WorldlineAcquiring Date: Wed, 11 Dec 2024 16:42:40 +0100 Subject: [PATCH] Release 1.0.0. --- acquiring-sdk-ruby.gemspec | 2 +- .../sdk/communication/metadata_provider.rb | 2 +- .../v1/acquirer/merchant/balanceinquiries.rb | 4 + .../balance_inquiries_client.rb | 60 +++++++++++++ .../v1/acquirer/merchant/merchant_client.rb | 8 ++ .../api_account_verification_request.rb | 9 ++ .../v1/domain/api_balance_inquiry_request.rb | 79 ++++++++++++++++ .../v1/domain/api_balance_inquiry_response.rb | 87 ++++++++++++++++++ .../sdk/v1/domain/api_capture_request.rb | 18 ++++ .../domain/api_capture_request_for_refund.rb | 18 ++++ .../sdk/v1/domain/api_increment_request.rb | 9 ++ .../v1/domain/api_payment_refund_request.rb | 9 ++ .../sdk/v1/domain/api_payment_request.rb | 9 ++ .../sdk/v1/domain/api_payment_response.rb | 12 +++ .../v1/domain/api_payment_reversal_request.rb | 9 ++ .../sdk/v1/domain/api_refund_response.rb | 12 +++ .../domain/api_technical_reversal_request.rb | 9 ++ .../sdk/v1/domain/card_data_for_dcc.rb | 7 ++ .../sdk/v1/domain/card_payment_data.rb | 7 ++ .../card_payment_data_for_balance_inquiry.rb | 89 +++++++++++++++++++ .../v1/domain/card_payment_data_for_refund.rb | 23 +++-- .../domain/card_payment_data_for_resource.rb | 9 -- .../domain/card_payment_data_for_response.rb | 6 +- .../card_payment_data_for_verification.rb | 16 ++++ .../acquiring/sdk/v1/domain/emv_data_item.rb | 41 +++++++++ .../sdk/v1/domain/payment_references.rb | 7 -- .../sdk/v1/domain/point_of_sale_data.rb | 50 +++++++++-- .../domain/point_of_sale_data_for_response.rb | 41 +++++++++ .../acquiring/sdk/v1/domain/terminal_data.rb | 80 +++++++++++++++++ 29 files changed, 697 insertions(+), 35 deletions(-) create mode 100644 lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries.rb create mode 100644 lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries/balance_inquiries_client.rb create mode 100644 lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_request.rb create mode 100644 lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_response.rb create mode 100644 lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_balance_inquiry.rb create mode 100644 lib/worldline/acquiring/sdk/v1/domain/emv_data_item.rb create mode 100644 lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data_for_response.rb create mode 100644 lib/worldline/acquiring/sdk/v1/domain/terminal_data.rb diff --git a/acquiring-sdk-ruby.gemspec b/acquiring-sdk-ruby.gemspec index fdd0ba3..29d63f4 100644 --- a/acquiring-sdk-ruby.gemspec +++ b/acquiring-sdk-ruby.gemspec @@ -1,6 +1,6 @@ Gem::Specification.new do |spec| spec.name = 'acquiring-sdk-ruby' - spec.version = '0.1.0' + spec.version = '1.0.0' spec.authors = ['Worldline Acquiring'] spec.email = ['github.acquiring@worldline.com'] spec.summary = %q{SDK to communicate with the Worldline Acquiring platform using the Worldline Acquiring API} diff --git a/lib/worldline/acquiring/sdk/communication/metadata_provider.rb b/lib/worldline/acquiring/sdk/communication/metadata_provider.rb index 59223c3..686dfe2 100644 --- a/lib/worldline/acquiring/sdk/communication/metadata_provider.rb +++ b/lib/worldline/acquiring/sdk/communication/metadata_provider.rb @@ -14,7 +14,7 @@ module Communication class MetadataProvider private - SDK_VERSION = '0.1.0'.freeze + SDK_VERSION = '1.0.0'.freeze SERVER_META_INFO_HEADER = 'X-WL-ServerMetaInfo'.freeze PROHIBITED_HEADERS = [SERVER_META_INFO_HEADER, 'Date', 'Content-Type', 'Authorization'].sort!.freeze CHARSET = 'utf-8'.freeze diff --git a/lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries.rb b/lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries.rb new file mode 100644 index 0000000..98b377c --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries.rb @@ -0,0 +1,4 @@ +# +# This file was automatically generated. +# +Dir[File.join(__dir__, 'balanceinquiries', '*.rb')].each { |f| require f } diff --git a/lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries/balance_inquiries_client.rb b/lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries/balance_inquiries_client.rb new file mode 100644 index 0000000..7d07f79 --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries/balance_inquiries_client.rb @@ -0,0 +1,60 @@ +# +# This file was automatically generated. +# +require 'worldline/acquiring/sdk/api_resource' +require 'worldline/acquiring/sdk/communication/response_exception' +require 'worldline/acquiring/sdk/v1/exception_factory' +require 'worldline/acquiring/sdk/v1/domain/api_balance_inquiry_response' +require 'worldline/acquiring/sdk/v1/domain/api_payment_error_response' + +module Worldline + module Acquiring + module SDK + module V1 + module Acquirer + module Merchant + module Balanceinquiries + # BalanceInquiries client. Thread-safe. + class BalanceInquiriesClient < Worldline::Acquiring::SDK::ApiResource + + # @param parent [Worldline::Acquiring::SDK::ApiResource] + # @param path_context [Hash, nil] + def initialize(parent, path_context) + super(parent: parent, path_context: path_context) + end + + # Resource /processing/v1/!{acquirerId}/!{merchantId}/balance-inquiries - {https://docs.acquiring.worldline-solutions.com/api-reference#tag/Balance-Inquiries/operation/processBalanceInquiry Balance inquiry} + # + # @param body [Worldline::Acquiring::SDK::V1::Domain::ApiBalanceInquiryRequest] + # @param context [Worldline::Acquiring::SDK::CallContext, nil] + # @return [Worldline::Acquiring::SDK::V1::Domain::ApiBalanceInquiryResponse] + # @raise [Worldline::Acquiring::SDK::V1::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400) + # @raise [Worldline::Acquiring::SDK::V1::AuthorizationException] if the request was not allowed (HTTP status code 403) + # @raise [Worldline::Acquiring::SDK::V1::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed, + # or there was a conflict (HTTP status code 404, 409 or 410) + # @raise [Worldline::Acquiring::SDK::V1::PlatformException] if something went wrong at the Worldline Acquiring platform, + # the Worldline Acquiring platform was unable to process a message from a downstream partner/acquirer, + # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503) + # @raise [Worldline::Acquiring::SDK::V1::ApiException] if the Worldline Acquiring platform returned any other error + def process_balance_inquiry(body, context = nil) + uri = instantiate_uri('/processing/v1/{acquirerId}/{merchantId}/balance-inquiries', nil) + @communicator.post( + uri, + nil, + nil, + body, + Worldline::Acquiring::SDK::V1::Domain::ApiBalanceInquiryResponse, + context) + rescue Worldline::Acquiring::SDK::Communication::ResponseException => e + error_type = Worldline::Acquiring::SDK::V1::Domain::ApiPaymentErrorResponse + error_object = @communicator.marshaller.unmarshal(e.body, error_type) + raise Worldline::Acquiring::SDK::V1.create_exception(e.status_code, e.body, error_object, context) + end + end + end + end + end + end + end + end +end diff --git a/lib/worldline/acquiring/sdk/v1/acquirer/merchant/merchant_client.rb b/lib/worldline/acquiring/sdk/v1/acquirer/merchant/merchant_client.rb index 004a15a..48aca05 100644 --- a/lib/worldline/acquiring/sdk/v1/acquirer/merchant/merchant_client.rb +++ b/lib/worldline/acquiring/sdk/v1/acquirer/merchant/merchant_client.rb @@ -3,6 +3,7 @@ # require 'worldline/acquiring/sdk/api_resource' require 'worldline/acquiring/sdk/v1/acquirer/merchant/accountverifications/account_verifications_client' +require 'worldline/acquiring/sdk/v1/acquirer/merchant/balanceinquiries/balance_inquiries_client' require 'worldline/acquiring/sdk/v1/acquirer/merchant/dynamiccurrencyconversion/dynamic_currency_conversion_client' require 'worldline/acquiring/sdk/v1/acquirer/merchant/payments/payments_client' require 'worldline/acquiring/sdk/v1/acquirer/merchant/refunds/refunds_client' @@ -44,6 +45,13 @@ def account_verifications Worldline::Acquiring::SDK::V1::Acquirer::Merchant::Accountverifications::AccountVerificationsClient.new(self, nil) end + # Resource /processing/v1/{acquirerId}/{merchantId}/balance-inquiries + # + # @return [Worldline::Acquiring::SDK::V1::Acquirer::Merchant::Balanceinquiries::BalanceInquiriesClient] + def balance_inquiries + Worldline::Acquiring::SDK::V1::Acquirer::Merchant::Balanceinquiries::BalanceInquiriesClient.new(self, nil) + end + # Resource /processing/v1/{acquirerId}/{merchantId}/operations/{operationId}/reverse # # @return [Worldline::Acquiring::SDK::V1::Acquirer::Merchant::Technicalreversals::TechnicalReversalsClient] diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_account_verification_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_account_verification_request.rb index b61cbb2..48b593b 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_account_verification_request.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_account_verification_request.rb @@ -7,6 +7,7 @@ require 'worldline/acquiring/sdk/v1/domain/card_payment_data_for_verification' require 'worldline/acquiring/sdk/v1/domain/merchant_data' require 'worldline/acquiring/sdk/v1/domain/payment_references' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -17,6 +18,7 @@ module Domain # @attr [Worldline::Acquiring::SDK::V1::Domain::MerchantData] merchant # @attr [String] operation_id # @attr [Worldline::Acquiring::SDK::V1::Domain::PaymentReferences] references + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiAccountVerificationRequest < Worldline::Acquiring::SDK::Domain::DataObject @@ -28,6 +30,8 @@ class ApiAccountVerificationRequest < Worldline::Acquiring::SDK::Domain::DataObj attr_accessor :references + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) @@ -37,6 +41,7 @@ def to_h hash['merchant'] = @merchant.to_h unless @merchant.nil? hash['operationId'] = @operation_id unless @operation_id.nil? hash['references'] = @references.to_h unless @references.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -58,6 +63,10 @@ def from_hash(hash) raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash @references = Worldline::Acquiring::SDK::V1::Domain::PaymentReferences.new_from_hash(hash['references']) end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_request.rb new file mode 100644 index 0000000..76146f4 --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_request.rb @@ -0,0 +1,79 @@ +# +# This file was automatically generated. +# +require 'date' + +require 'worldline/acquiring/sdk/domain/data_object' +require 'worldline/acquiring/sdk/v1/domain/card_payment_data_for_balance_inquiry' +require 'worldline/acquiring/sdk/v1/domain/merchant_data' +require 'worldline/acquiring/sdk/v1/domain/payment_references' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' + +module Worldline + module Acquiring + module SDK + module V1 + module Domain + # @attr [Worldline::Acquiring::SDK::V1::Domain::CardPaymentDataForBalanceInquiry] card_payment_data + # @attr [Worldline::Acquiring::SDK::V1::Domain::MerchantData] merchant + # @attr [String] operation_id + # @attr [Worldline::Acquiring::SDK::V1::Domain::PaymentReferences] references + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data + # @attr [DateTime] transaction_timestamp + class ApiBalanceInquiryRequest < Worldline::Acquiring::SDK::Domain::DataObject + + attr_accessor :card_payment_data + + attr_accessor :merchant + + attr_accessor :operation_id + + attr_accessor :references + + attr_accessor :terminal_data + + attr_accessor :transaction_timestamp + + # @return (Hash) + def to_h + hash = super + hash['cardPaymentData'] = @card_payment_data.to_h unless @card_payment_data.nil? + hash['merchant'] = @merchant.to_h unless @merchant.nil? + hash['operationId'] = @operation_id unless @operation_id.nil? + hash['references'] = @references.to_h unless @references.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? + hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? + hash + end + + def from_hash(hash) + super + if hash.has_key? 'cardPaymentData' + raise TypeError, "value '%s' is not a Hash" % [hash['cardPaymentData']] unless hash['cardPaymentData'].is_a? Hash + @card_payment_data = Worldline::Acquiring::SDK::V1::Domain::CardPaymentDataForBalanceInquiry.new_from_hash(hash['cardPaymentData']) + end + if hash.has_key? 'merchant' + raise TypeError, "value '%s' is not a Hash" % [hash['merchant']] unless hash['merchant'].is_a? Hash + @merchant = Worldline::Acquiring::SDK::V1::Domain::MerchantData.new_from_hash(hash['merchant']) + end + if hash.has_key? 'operationId' + @operation_id = hash['operationId'] + end + if hash.has_key? 'references' + raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash + @references = Worldline::Acquiring::SDK::V1::Domain::PaymentReferences.new_from_hash(hash['references']) + end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end + if hash.has_key? 'transactionTimestamp' + @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) + end + end + end + end + end + end + end +end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_response.rb b/lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_response.rb new file mode 100644 index 0000000..b7dbb40 --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/domain/api_balance_inquiry_response.rb @@ -0,0 +1,87 @@ +# +# This file was automatically generated. +# +require 'worldline/acquiring/sdk/domain/data_object' +require 'worldline/acquiring/sdk/v1/domain/amount_data' +require 'worldline/acquiring/sdk/v1/domain/api_references_for_responses' + +module Worldline + module Acquiring + module SDK + module V1 + module Domain + # @attr [String] authorization_code + # @attr [Worldline::Acquiring::SDK::V1::Domain::AmountData] available_amount + # @attr [String] operation_id + # @attr [Worldline::Acquiring::SDK::V1::Domain::ApiReferencesForResponses] references + # @attr [String] responder + # @attr [String] response_code + # @attr [String] response_code_category + # @attr [String] response_code_description + class ApiBalanceInquiryResponse < Worldline::Acquiring::SDK::Domain::DataObject + + attr_accessor :authorization_code + + attr_accessor :available_amount + + attr_accessor :operation_id + + attr_accessor :references + + attr_accessor :responder + + attr_accessor :response_code + + attr_accessor :response_code_category + + attr_accessor :response_code_description + + # @return (Hash) + def to_h + hash = super + hash['authorizationCode'] = @authorization_code unless @authorization_code.nil? + hash['availableAmount'] = @available_amount.to_h unless @available_amount.nil? + hash['operationId'] = @operation_id unless @operation_id.nil? + hash['references'] = @references.to_h unless @references.nil? + hash['responder'] = @responder unless @responder.nil? + hash['responseCode'] = @response_code unless @response_code.nil? + hash['responseCodeCategory'] = @response_code_category unless @response_code_category.nil? + hash['responseCodeDescription'] = @response_code_description unless @response_code_description.nil? + hash + end + + def from_hash(hash) + super + if hash.has_key? 'authorizationCode' + @authorization_code = hash['authorizationCode'] + end + if hash.has_key? 'availableAmount' + raise TypeError, "value '%s' is not a Hash" % [hash['availableAmount']] unless hash['availableAmount'].is_a? Hash + @available_amount = Worldline::Acquiring::SDK::V1::Domain::AmountData.new_from_hash(hash['availableAmount']) + end + if hash.has_key? 'operationId' + @operation_id = hash['operationId'] + end + if hash.has_key? 'references' + raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash + @references = Worldline::Acquiring::SDK::V1::Domain::ApiReferencesForResponses.new_from_hash(hash['references']) + end + if hash.has_key? 'responder' + @responder = hash['responder'] + end + if hash.has_key? 'responseCode' + @response_code = hash['responseCode'] + end + if hash.has_key? 'responseCodeCategory' + @response_code_category = hash['responseCodeCategory'] + end + if hash.has_key? 'responseCodeDescription' + @response_code_description = hash['responseCodeDescription'] + end + end + end + end + end + end + end +end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_capture_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_capture_request.rb index 0e403de..944c5c8 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_capture_request.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_capture_request.rb @@ -6,6 +6,8 @@ require 'worldline/acquiring/sdk/domain/data_object' require 'worldline/acquiring/sdk/v1/domain/amount_data' require 'worldline/acquiring/sdk/v1/domain/dcc_data' +require 'worldline/acquiring/sdk/v1/domain/payment_references' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -17,6 +19,8 @@ module Domain # @attr [Worldline::Acquiring::SDK::V1::Domain::DccData] dynamic_currency_conversion # @attr [true/false] is_final # @attr [String] operation_id + # @attr [Worldline::Acquiring::SDK::V1::Domain::PaymentReferences] references + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiCaptureRequest < Worldline::Acquiring::SDK::Domain::DataObject @@ -30,6 +34,10 @@ class ApiCaptureRequest < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :operation_id + attr_accessor :references + + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) @@ -40,6 +48,8 @@ def to_h hash['dynamicCurrencyConversion'] = @dynamic_currency_conversion.to_h unless @dynamic_currency_conversion.nil? hash['isFinal'] = @is_final unless @is_final.nil? hash['operationId'] = @operation_id unless @operation_id.nil? + hash['references'] = @references.to_h unless @references.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -63,6 +73,14 @@ def from_hash(hash) if hash.has_key? 'operationId' @operation_id = hash['operationId'] end + if hash.has_key? 'references' + raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash + @references = Worldline::Acquiring::SDK::V1::Domain::PaymentReferences.new_from_hash(hash['references']) + end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_capture_request_for_refund.rb b/lib/worldline/acquiring/sdk/v1/domain/api_capture_request_for_refund.rb index 82188ea..44562a0 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_capture_request_for_refund.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_capture_request_for_refund.rb @@ -4,6 +4,8 @@ require 'date' require 'worldline/acquiring/sdk/domain/data_object' +require 'worldline/acquiring/sdk/v1/domain/payment_references' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -11,17 +13,25 @@ module SDK module V1 module Domain # @attr [String] operation_id + # @attr [Worldline::Acquiring::SDK::V1::Domain::PaymentReferences] references + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiCaptureRequestForRefund < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :operation_id + attr_accessor :references + + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) def to_h hash = super hash['operationId'] = @operation_id unless @operation_id.nil? + hash['references'] = @references.to_h unless @references.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -31,6 +41,14 @@ def from_hash(hash) if hash.has_key? 'operationId' @operation_id = hash['operationId'] end + if hash.has_key? 'references' + raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash + @references = Worldline::Acquiring::SDK::V1::Domain::PaymentReferences.new_from_hash(hash['references']) + end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_increment_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_increment_request.rb index 79a641b..4b4aab0 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_increment_request.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_increment_request.rb @@ -6,6 +6,7 @@ require 'worldline/acquiring/sdk/domain/data_object' require 'worldline/acquiring/sdk/v1/domain/amount_data' require 'worldline/acquiring/sdk/v1/domain/dcc_data' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -15,6 +16,7 @@ module Domain # @attr [Worldline::Acquiring::SDK::V1::Domain::DccData] dynamic_currency_conversion # @attr [Worldline::Acquiring::SDK::V1::Domain::AmountData] increment_amount # @attr [String] operation_id + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiIncrementRequest < Worldline::Acquiring::SDK::Domain::DataObject @@ -24,6 +26,8 @@ class ApiIncrementRequest < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :operation_id + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) @@ -32,6 +36,7 @@ def to_h hash['dynamicCurrencyConversion'] = @dynamic_currency_conversion.to_h unless @dynamic_currency_conversion.nil? hash['incrementAmount'] = @increment_amount.to_h unless @increment_amount.nil? hash['operationId'] = @operation_id unless @operation_id.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -49,6 +54,10 @@ def from_hash(hash) if hash.has_key? 'operationId' @operation_id = hash['operationId'] end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_payment_refund_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_payment_refund_request.rb index a696e88..f7d3f87 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_payment_refund_request.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_payment_refund_request.rb @@ -7,6 +7,7 @@ require 'worldline/acquiring/sdk/v1/domain/amount_data' require 'worldline/acquiring/sdk/v1/domain/dcc_data' require 'worldline/acquiring/sdk/v1/domain/payment_references' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -18,6 +19,7 @@ module Domain # @attr [Worldline::Acquiring::SDK::V1::Domain::DccData] dynamic_currency_conversion # @attr [String] operation_id # @attr [Worldline::Acquiring::SDK::V1::Domain::PaymentReferences] references + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiPaymentRefundRequest < Worldline::Acquiring::SDK::Domain::DataObject @@ -31,6 +33,8 @@ class ApiPaymentRefundRequest < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :references + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) @@ -41,6 +45,7 @@ def to_h hash['dynamicCurrencyConversion'] = @dynamic_currency_conversion.to_h unless @dynamic_currency_conversion.nil? hash['operationId'] = @operation_id unless @operation_id.nil? hash['references'] = @references.to_h unless @references.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -65,6 +70,10 @@ def from_hash(hash) raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash @references = Worldline::Acquiring::SDK::V1::Domain::PaymentReferences.new_from_hash(hash['references']) end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_payment_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_payment_request.rb index f2a91fe..b9d204a 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_payment_request.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_payment_request.rb @@ -9,6 +9,7 @@ require 'worldline/acquiring/sdk/v1/domain/dcc_data' require 'worldline/acquiring/sdk/v1/domain/merchant_data' require 'worldline/acquiring/sdk/v1/domain/payment_references' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -22,6 +23,7 @@ module Domain # @attr [Worldline::Acquiring::SDK::V1::Domain::MerchantData] merchant # @attr [String] operation_id # @attr [Worldline::Acquiring::SDK::V1::Domain::PaymentReferences] references + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiPaymentRequest < Worldline::Acquiring::SDK::Domain::DataObject @@ -39,6 +41,8 @@ class ApiPaymentRequest < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :references + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) @@ -51,6 +55,7 @@ def to_h hash['merchant'] = @merchant.to_h unless @merchant.nil? hash['operationId'] = @operation_id unless @operation_id.nil? hash['references'] = @references.to_h unless @references.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -83,6 +88,10 @@ def from_hash(hash) raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash @references = Worldline::Acquiring::SDK::V1::Domain::PaymentReferences.new_from_hash(hash['references']) end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_payment_response.rb b/lib/worldline/acquiring/sdk/v1/domain/api_payment_response.rb index eb758c8..293d06c 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_payment_response.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_payment_response.rb @@ -7,6 +7,7 @@ require 'worldline/acquiring/sdk/v1/domain/amount_data' require 'worldline/acquiring/sdk/v1/domain/api_references_for_responses' require 'worldline/acquiring/sdk/v1/domain/card_payment_data_for_response' +require 'worldline/acquiring/sdk/v1/domain/emv_data_item' module Worldline module Acquiring @@ -14,6 +15,7 @@ module SDK module V1 module Domain # @attr [Worldline::Acquiring::SDK::V1::Domain::CardPaymentDataForResponse] card_payment_data + # @attr [Array] emv_data # @attr [String] initial_authorization_code # @attr [String] operation_id # @attr [String] payment_id @@ -30,6 +32,8 @@ class ApiPaymentResponse < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :card_payment_data + attr_accessor :emv_data + attr_accessor :initial_authorization_code attr_accessor :operation_id @@ -58,6 +62,7 @@ class ApiPaymentResponse < Worldline::Acquiring::SDK::Domain::DataObject def to_h hash = super hash['cardPaymentData'] = @card_payment_data.to_h unless @card_payment_data.nil? + hash['emvData'] = @emv_data.collect{|val| val.to_h} unless @emv_data.nil? hash['initialAuthorizationCode'] = @initial_authorization_code unless @initial_authorization_code.nil? hash['operationId'] = @operation_id unless @operation_id.nil? hash['paymentId'] = @payment_id unless @payment_id.nil? @@ -79,6 +84,13 @@ def from_hash(hash) raise TypeError, "value '%s' is not a Hash" % [hash['cardPaymentData']] unless hash['cardPaymentData'].is_a? Hash @card_payment_data = Worldline::Acquiring::SDK::V1::Domain::CardPaymentDataForResponse.new_from_hash(hash['cardPaymentData']) end + if hash.has_key? 'emvData' + raise TypeError, "value '%s' is not an Array" % [hash['emvData']] unless hash['emvData'].is_a? Array + @emv_data = [] + hash['emvData'].each do |e| + @emv_data << Worldline::Acquiring::SDK::V1::Domain::EmvDataItem.new_from_hash(e) + end + end if hash.has_key? 'initialAuthorizationCode' @initial_authorization_code = hash['initialAuthorizationCode'] end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_payment_reversal_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_payment_reversal_request.rb index ab94577..c151b67 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_payment_reversal_request.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_payment_reversal_request.rb @@ -6,6 +6,7 @@ require 'worldline/acquiring/sdk/domain/data_object' require 'worldline/acquiring/sdk/v1/domain/amount_data' require 'worldline/acquiring/sdk/v1/domain/dcc_data' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -15,6 +16,7 @@ module Domain # @attr [Worldline::Acquiring::SDK::V1::Domain::DccData] dynamic_currency_conversion # @attr [String] operation_id # @attr [Worldline::Acquiring::SDK::V1::Domain::AmountData] reversal_amount + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiPaymentReversalRequest < Worldline::Acquiring::SDK::Domain::DataObject @@ -24,6 +26,8 @@ class ApiPaymentReversalRequest < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :reversal_amount + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) @@ -32,6 +36,7 @@ def to_h hash['dynamicCurrencyConversion'] = @dynamic_currency_conversion.to_h unless @dynamic_currency_conversion.nil? hash['operationId'] = @operation_id unless @operation_id.nil? hash['reversalAmount'] = @reversal_amount.to_h unless @reversal_amount.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -49,6 +54,10 @@ def from_hash(hash) raise TypeError, "value '%s' is not a Hash" % [hash['reversalAmount']] unless hash['reversalAmount'].is_a? Hash @reversal_amount = Worldline::Acquiring::SDK::V1::Domain::AmountData.new_from_hash(hash['reversalAmount']) end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_refund_response.rb b/lib/worldline/acquiring/sdk/v1/domain/api_refund_response.rb index c25500f..14f17b2 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_refund_response.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_refund_response.rb @@ -7,6 +7,7 @@ require 'worldline/acquiring/sdk/v1/domain/amount_data' require 'worldline/acquiring/sdk/v1/domain/api_references_for_responses' require 'worldline/acquiring/sdk/v1/domain/card_payment_data_for_resource' +require 'worldline/acquiring/sdk/v1/domain/emv_data_item' module Worldline module Acquiring @@ -15,6 +16,7 @@ module V1 module Domain # @attr [String] authorization_code # @attr [Worldline::Acquiring::SDK::V1::Domain::CardPaymentDataForResource] card_payment_data + # @attr [Array] emv_data # @attr [String] operation_id # @attr [String] referenced_payment_id # @attr [Worldline::Acquiring::SDK::V1::Domain::ApiReferencesForResponses] references @@ -33,6 +35,8 @@ class ApiRefundResponse < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :card_payment_data + attr_accessor :emv_data + attr_accessor :operation_id attr_accessor :referenced_payment_id @@ -62,6 +66,7 @@ def to_h hash = super hash['authorizationCode'] = @authorization_code unless @authorization_code.nil? hash['cardPaymentData'] = @card_payment_data.to_h unless @card_payment_data.nil? + hash['emvData'] = @emv_data.collect{|val| val.to_h} unless @emv_data.nil? hash['operationId'] = @operation_id unless @operation_id.nil? hash['referencedPaymentId'] = @referenced_payment_id unless @referenced_payment_id.nil? hash['references'] = @references.to_h unless @references.nil? @@ -86,6 +91,13 @@ def from_hash(hash) raise TypeError, "value '%s' is not a Hash" % [hash['cardPaymentData']] unless hash['cardPaymentData'].is_a? Hash @card_payment_data = Worldline::Acquiring::SDK::V1::Domain::CardPaymentDataForResource.new_from_hash(hash['cardPaymentData']) end + if hash.has_key? 'emvData' + raise TypeError, "value '%s' is not an Array" % [hash['emvData']] unless hash['emvData'].is_a? Array + @emv_data = [] + hash['emvData'].each do |e| + @emv_data << Worldline::Acquiring::SDK::V1::Domain::EmvDataItem.new_from_hash(e) + end + end if hash.has_key? 'operationId' @operation_id = hash['operationId'] end diff --git a/lib/worldline/acquiring/sdk/v1/domain/api_technical_reversal_request.rb b/lib/worldline/acquiring/sdk/v1/domain/api_technical_reversal_request.rb index c215262..3c3e65c 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/api_technical_reversal_request.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/api_technical_reversal_request.rb @@ -4,6 +4,7 @@ require 'date' require 'worldline/acquiring/sdk/domain/data_object' +require 'worldline/acquiring/sdk/v1/domain/terminal_data' module Worldline module Acquiring @@ -12,6 +13,7 @@ module V1 module Domain # @attr [String] operation_id # @attr [String] reason + # @attr [Worldline::Acquiring::SDK::V1::Domain::TerminalData] terminal_data # @attr [DateTime] transaction_timestamp class ApiTechnicalReversalRequest < Worldline::Acquiring::SDK::Domain::DataObject @@ -19,6 +21,8 @@ class ApiTechnicalReversalRequest < Worldline::Acquiring::SDK::Domain::DataObjec attr_accessor :reason + attr_accessor :terminal_data + attr_accessor :transaction_timestamp # @return (Hash) @@ -26,6 +30,7 @@ def to_h hash = super hash['operationId'] = @operation_id unless @operation_id.nil? hash['reason'] = @reason unless @reason.nil? + hash['terminalData'] = @terminal_data.to_h unless @terminal_data.nil? hash['transactionTimestamp'] = @transaction_timestamp.iso8601(3) unless @transaction_timestamp.nil? hash end @@ -38,6 +43,10 @@ def from_hash(hash) if hash.has_key? 'reason' @reason = hash['reason'] end + if hash.has_key? 'terminalData' + raise TypeError, "value '%s' is not a Hash" % [hash['terminalData']] unless hash['terminalData'].is_a? Hash + @terminal_data = Worldline::Acquiring::SDK::V1::Domain::TerminalData.new_from_hash(hash['terminalData']) + end if hash.has_key? 'transactionTimestamp' @transaction_timestamp = DateTime.parse(hash['transactionTimestamp']) end diff --git a/lib/worldline/acquiring/sdk/v1/domain/card_data_for_dcc.rb b/lib/worldline/acquiring/sdk/v1/domain/card_data_for_dcc.rb index 23c63eb..31eccbf 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/card_data_for_dcc.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/card_data_for_dcc.rb @@ -11,6 +11,7 @@ module Domain # @attr [String] bin # @attr [String] brand # @attr [String] card_country_code + # @attr [String] card_entry_mode class CardDataForDcc < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :bin @@ -19,12 +20,15 @@ class CardDataForDcc < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :card_country_code + attr_accessor :card_entry_mode + # @return (Hash) def to_h hash = super hash['bin'] = @bin unless @bin.nil? hash['brand'] = @brand unless @brand.nil? hash['cardCountryCode'] = @card_country_code unless @card_country_code.nil? + hash['cardEntryMode'] = @card_entry_mode unless @card_entry_mode.nil? hash end @@ -39,6 +43,9 @@ def from_hash(hash) if hash.has_key? 'cardCountryCode' @card_country_code = hash['cardCountryCode'] end + if hash.has_key? 'cardEntryMode' + @card_entry_mode = hash['cardEntryMode'] + end end end end diff --git a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data.rb b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data.rb index fa270d5..32084fa 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data.rb @@ -15,6 +15,7 @@ module V1 module Domain # @attr [true/false] allow_partial_approval # @attr [String] brand + # @attr [String] brand_selector # @attr [true/false] capture_immediately # @attr [Worldline::Acquiring::SDK::V1::Domain::PlainCardData] card_data # @attr [String] card_entry_mode @@ -30,6 +31,8 @@ class CardPaymentData < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :brand + attr_accessor :brand_selector + attr_accessor :capture_immediately attr_accessor :card_data @@ -53,6 +56,7 @@ def to_h hash = super hash['allowPartialApproval'] = @allow_partial_approval unless @allow_partial_approval.nil? hash['brand'] = @brand unless @brand.nil? + hash['brandSelector'] = @brand_selector unless @brand_selector.nil? hash['captureImmediately'] = @capture_immediately unless @capture_immediately.nil? hash['cardData'] = @card_data.to_h unless @card_data.nil? hash['cardEntryMode'] = @card_entry_mode unless @card_entry_mode.nil? @@ -73,6 +77,9 @@ def from_hash(hash) if hash.has_key? 'brand' @brand = hash['brand'] end + if hash.has_key? 'brandSelector' + @brand_selector = hash['brandSelector'] + end if hash.has_key? 'captureImmediately' @capture_immediately = hash['captureImmediately'] end diff --git a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_balance_inquiry.rb b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_balance_inquiry.rb new file mode 100644 index 0000000..53b429a --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_balance_inquiry.rb @@ -0,0 +1,89 @@ +# +# This file was automatically generated. +# +require 'worldline/acquiring/sdk/domain/data_object' +require 'worldline/acquiring/sdk/v1/domain/e_commerce_data' +require 'worldline/acquiring/sdk/v1/domain/plain_card_data' +require 'worldline/acquiring/sdk/v1/domain/point_of_sale_data' + +module Worldline + module Acquiring + module SDK + module V1 + module Domain + # @attr [String] brand + # @attr [String] brand_selector + # @attr [Worldline::Acquiring::SDK::V1::Domain::PlainCardData] card_data + # @attr [String] card_entry_mode + # @attr [String] cardholder_verification_method + # @attr [Worldline::Acquiring::SDK::V1::Domain::ECommerceData] ecommerce_data + # @attr [Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData] point_of_sale_data + # @attr [String] wallet_id + class CardPaymentDataForBalanceInquiry < Worldline::Acquiring::SDK::Domain::DataObject + + attr_accessor :brand + + attr_accessor :brand_selector + + attr_accessor :card_data + + attr_accessor :card_entry_mode + + attr_accessor :cardholder_verification_method + + attr_accessor :ecommerce_data + + attr_accessor :point_of_sale_data + + attr_accessor :wallet_id + + # @return (Hash) + def to_h + hash = super + hash['brand'] = @brand unless @brand.nil? + hash['brandSelector'] = @brand_selector unless @brand_selector.nil? + hash['cardData'] = @card_data.to_h unless @card_data.nil? + hash['cardEntryMode'] = @card_entry_mode unless @card_entry_mode.nil? + hash['cardholderVerificationMethod'] = @cardholder_verification_method unless @cardholder_verification_method.nil? + hash['ecommerceData'] = @ecommerce_data.to_h unless @ecommerce_data.nil? + hash['pointOfSaleData'] = @point_of_sale_data.to_h unless @point_of_sale_data.nil? + hash['walletId'] = @wallet_id unless @wallet_id.nil? + hash + end + + def from_hash(hash) + super + if hash.has_key? 'brand' + @brand = hash['brand'] + end + if hash.has_key? 'brandSelector' + @brand_selector = hash['brandSelector'] + end + if hash.has_key? 'cardData' + raise TypeError, "value '%s' is not a Hash" % [hash['cardData']] unless hash['cardData'].is_a? Hash + @card_data = Worldline::Acquiring::SDK::V1::Domain::PlainCardData.new_from_hash(hash['cardData']) + end + if hash.has_key? 'cardEntryMode' + @card_entry_mode = hash['cardEntryMode'] + end + if hash.has_key? 'cardholderVerificationMethod' + @cardholder_verification_method = hash['cardholderVerificationMethod'] + end + if hash.has_key? 'ecommerceData' + raise TypeError, "value '%s' is not a Hash" % [hash['ecommerceData']] unless hash['ecommerceData'].is_a? Hash + @ecommerce_data = Worldline::Acquiring::SDK::V1::Domain::ECommerceData.new_from_hash(hash['ecommerceData']) + end + if hash.has_key? 'pointOfSaleData' + raise TypeError, "value '%s' is not a Hash" % [hash['pointOfSaleData']] unless hash['pointOfSaleData'].is_a? Hash + @point_of_sale_data = Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData.new_from_hash(hash['pointOfSaleData']) + end + if hash.has_key? 'walletId' + @wallet_id = hash['walletId'] + end + end + end + end + end + end + end +end diff --git a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_refund.rb b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_refund.rb index cf82dc5..5da6630 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_refund.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_refund.rb @@ -4,7 +4,6 @@ require 'worldline/acquiring/sdk/domain/data_object' require 'worldline/acquiring/sdk/v1/domain/network_token_data' require 'worldline/acquiring/sdk/v1/domain/plain_card_data' -require 'worldline/acquiring/sdk/v1/domain/point_of_sale_data' module Worldline module Acquiring @@ -12,25 +11,28 @@ module SDK module V1 module Domain # @attr [String] brand + # @attr [String] brand_selector # @attr [true/false] capture_immediately # @attr [Worldline::Acquiring::SDK::V1::Domain::PlainCardData] card_data # @attr [String] card_entry_mode + # @attr [String] cardholder_verification_method # @attr [Worldline::Acquiring::SDK::V1::Domain::NetworkTokenData] network_token_data - # @attr [Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData] point_of_sale_data # @attr [String] wallet_id class CardPaymentDataForRefund < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :brand + attr_accessor :brand_selector + attr_accessor :capture_immediately attr_accessor :card_data attr_accessor :card_entry_mode - attr_accessor :network_token_data + attr_accessor :cardholder_verification_method - attr_accessor :point_of_sale_data + attr_accessor :network_token_data attr_accessor :wallet_id @@ -38,11 +40,12 @@ class CardPaymentDataForRefund < Worldline::Acquiring::SDK::Domain::DataObject def to_h hash = super hash['brand'] = @brand unless @brand.nil? + hash['brandSelector'] = @brand_selector unless @brand_selector.nil? hash['captureImmediately'] = @capture_immediately unless @capture_immediately.nil? hash['cardData'] = @card_data.to_h unless @card_data.nil? hash['cardEntryMode'] = @card_entry_mode unless @card_entry_mode.nil? + hash['cardholderVerificationMethod'] = @cardholder_verification_method unless @cardholder_verification_method.nil? hash['networkTokenData'] = @network_token_data.to_h unless @network_token_data.nil? - hash['pointOfSaleData'] = @point_of_sale_data.to_h unless @point_of_sale_data.nil? hash['walletId'] = @wallet_id unless @wallet_id.nil? hash end @@ -52,6 +55,9 @@ def from_hash(hash) if hash.has_key? 'brand' @brand = hash['brand'] end + if hash.has_key? 'brandSelector' + @brand_selector = hash['brandSelector'] + end if hash.has_key? 'captureImmediately' @capture_immediately = hash['captureImmediately'] end @@ -62,14 +68,13 @@ def from_hash(hash) if hash.has_key? 'cardEntryMode' @card_entry_mode = hash['cardEntryMode'] end + if hash.has_key? 'cardholderVerificationMethod' + @cardholder_verification_method = hash['cardholderVerificationMethod'] + end if hash.has_key? 'networkTokenData' raise TypeError, "value '%s' is not a Hash" % [hash['networkTokenData']] unless hash['networkTokenData'].is_a? Hash @network_token_data = Worldline::Acquiring::SDK::V1::Domain::NetworkTokenData.new_from_hash(hash['networkTokenData']) end - if hash.has_key? 'pointOfSaleData' - raise TypeError, "value '%s' is not a Hash" % [hash['pointOfSaleData']] unless hash['pointOfSaleData'].is_a? Hash - @point_of_sale_data = Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData.new_from_hash(hash['pointOfSaleData']) - end if hash.has_key? 'walletId' @wallet_id = hash['walletId'] end diff --git a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_resource.rb b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_resource.rb index 6393b20..9b10358 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_resource.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_resource.rb @@ -2,7 +2,6 @@ # This file was automatically generated. # require 'worldline/acquiring/sdk/domain/data_object' -require 'worldline/acquiring/sdk/v1/domain/point_of_sale_data' module Worldline module Acquiring @@ -10,18 +9,14 @@ module SDK module V1 module Domain # @attr [String] brand - # @attr [Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData] point_of_sale_data class CardPaymentDataForResource < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :brand - attr_accessor :point_of_sale_data - # @return (Hash) def to_h hash = super hash['brand'] = @brand unless @brand.nil? - hash['pointOfSaleData'] = @point_of_sale_data.to_h unless @point_of_sale_data.nil? hash end @@ -30,10 +25,6 @@ def from_hash(hash) if hash.has_key? 'brand' @brand = hash['brand'] end - if hash.has_key? 'pointOfSaleData' - raise TypeError, "value '%s' is not a Hash" % [hash['pointOfSaleData']] unless hash['pointOfSaleData'].is_a? Hash - @point_of_sale_data = Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData.new_from_hash(hash['pointOfSaleData']) - end end end end diff --git a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_response.rb b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_response.rb index 930c18d..cfc8441 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_response.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_response.rb @@ -3,7 +3,7 @@ # require 'worldline/acquiring/sdk/domain/data_object' require 'worldline/acquiring/sdk/v1/domain/e_commerce_data_for_response' -require 'worldline/acquiring/sdk/v1/domain/point_of_sale_data' +require 'worldline/acquiring/sdk/v1/domain/point_of_sale_data_for_response' module Worldline module Acquiring @@ -12,7 +12,7 @@ module V1 module Domain # @attr [String] brand # @attr [Worldline::Acquiring::SDK::V1::Domain::ECommerceDataForResponse] ecommerce_data - # @attr [Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData] point_of_sale_data + # @attr [Worldline::Acquiring::SDK::V1::Domain::PointOfSaleDataForResponse] point_of_sale_data class CardPaymentDataForResponse < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :brand @@ -41,7 +41,7 @@ def from_hash(hash) end if hash.has_key? 'pointOfSaleData' raise TypeError, "value '%s' is not a Hash" % [hash['pointOfSaleData']] unless hash['pointOfSaleData'].is_a? Hash - @point_of_sale_data = Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData.new_from_hash(hash['pointOfSaleData']) + @point_of_sale_data = Worldline::Acquiring::SDK::V1::Domain::PointOfSaleDataForResponse.new_from_hash(hash['pointOfSaleData']) end end end diff --git a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_verification.rb b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_verification.rb index 981c6d4..1b7123e 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_verification.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/card_payment_data_for_verification.rb @@ -6,6 +6,7 @@ require 'worldline/acquiring/sdk/v1/domain/e_commerce_data_for_account_verification' require 'worldline/acquiring/sdk/v1/domain/network_token_data' require 'worldline/acquiring/sdk/v1/domain/plain_card_data' +require 'worldline/acquiring/sdk/v1/domain/point_of_sale_data' module Worldline module Acquiring @@ -13,17 +14,21 @@ module SDK module V1 module Domain # @attr [String] brand + # @attr [String] brand_selector # @attr [Worldline::Acquiring::SDK::V1::Domain::PlainCardData] card_data # @attr [String] card_entry_mode # @attr [Worldline::Acquiring::SDK::V1::Domain::CardOnFileData] card_on_file_data # @attr [String] cardholder_verification_method # @attr [Worldline::Acquiring::SDK::V1::Domain::ECommerceDataForAccountVerification] ecommerce_data # @attr [Worldline::Acquiring::SDK::V1::Domain::NetworkTokenData] network_token_data + # @attr [Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData] point_of_sale_data # @attr [String] wallet_id class CardPaymentDataForVerification < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :brand + attr_accessor :brand_selector + attr_accessor :card_data attr_accessor :card_entry_mode @@ -36,18 +41,22 @@ class CardPaymentDataForVerification < Worldline::Acquiring::SDK::Domain::DataOb attr_accessor :network_token_data + attr_accessor :point_of_sale_data + attr_accessor :wallet_id # @return (Hash) def to_h hash = super hash['brand'] = @brand unless @brand.nil? + hash['brandSelector'] = @brand_selector unless @brand_selector.nil? hash['cardData'] = @card_data.to_h unless @card_data.nil? hash['cardEntryMode'] = @card_entry_mode unless @card_entry_mode.nil? hash['cardOnFileData'] = @card_on_file_data.to_h unless @card_on_file_data.nil? hash['cardholderVerificationMethod'] = @cardholder_verification_method unless @cardholder_verification_method.nil? hash['ecommerceData'] = @ecommerce_data.to_h unless @ecommerce_data.nil? hash['networkTokenData'] = @network_token_data.to_h unless @network_token_data.nil? + hash['pointOfSaleData'] = @point_of_sale_data.to_h unless @point_of_sale_data.nil? hash['walletId'] = @wallet_id unless @wallet_id.nil? hash end @@ -57,6 +66,9 @@ def from_hash(hash) if hash.has_key? 'brand' @brand = hash['brand'] end + if hash.has_key? 'brandSelector' + @brand_selector = hash['brandSelector'] + end if hash.has_key? 'cardData' raise TypeError, "value '%s' is not a Hash" % [hash['cardData']] unless hash['cardData'].is_a? Hash @card_data = Worldline::Acquiring::SDK::V1::Domain::PlainCardData.new_from_hash(hash['cardData']) @@ -79,6 +91,10 @@ def from_hash(hash) raise TypeError, "value '%s' is not a Hash" % [hash['networkTokenData']] unless hash['networkTokenData'].is_a? Hash @network_token_data = Worldline::Acquiring::SDK::V1::Domain::NetworkTokenData.new_from_hash(hash['networkTokenData']) end + if hash.has_key? 'pointOfSaleData' + raise TypeError, "value '%s' is not a Hash" % [hash['pointOfSaleData']] unless hash['pointOfSaleData'].is_a? Hash + @point_of_sale_data = Worldline::Acquiring::SDK::V1::Domain::PointOfSaleData.new_from_hash(hash['pointOfSaleData']) + end if hash.has_key? 'walletId' @wallet_id = hash['walletId'] end diff --git a/lib/worldline/acquiring/sdk/v1/domain/emv_data_item.rb b/lib/worldline/acquiring/sdk/v1/domain/emv_data_item.rb new file mode 100644 index 0000000..c53c420 --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/domain/emv_data_item.rb @@ -0,0 +1,41 @@ +# +# This file was automatically generated. +# +require 'worldline/acquiring/sdk/domain/data_object' + +module Worldline + module Acquiring + module SDK + module V1 + module Domain + # @attr [String] tag + # @attr [String] value + class EmvDataItem < Worldline::Acquiring::SDK::Domain::DataObject + + attr_accessor :tag + + attr_accessor :value + + # @return (Hash) + def to_h + hash = super + hash['tag'] = @tag unless @tag.nil? + hash['value'] = @value unless @value.nil? + hash + end + + def from_hash(hash) + super + if hash.has_key? 'tag' + @tag = hash['tag'] + end + if hash.has_key? 'value' + @value = hash['value'] + end + end + end + end + end + end + end +end diff --git a/lib/worldline/acquiring/sdk/v1/domain/payment_references.rb b/lib/worldline/acquiring/sdk/v1/domain/payment_references.rb index d04545d..5b8edf8 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/payment_references.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/payment_references.rb @@ -10,21 +10,17 @@ module V1 module Domain # @attr [String] dynamic_descriptor # @attr [String] merchant_reference - # @attr [String] retrieval_reference_number class PaymentReferences < Worldline::Acquiring::SDK::Domain::DataObject attr_accessor :dynamic_descriptor attr_accessor :merchant_reference - attr_accessor :retrieval_reference_number - # @return (Hash) def to_h hash = super hash['dynamicDescriptor'] = @dynamic_descriptor unless @dynamic_descriptor.nil? hash['merchantReference'] = @merchant_reference unless @merchant_reference.nil? - hash['retrievalReferenceNumber'] = @retrieval_reference_number unless @retrieval_reference_number.nil? hash end @@ -36,9 +32,6 @@ def from_hash(hash) if hash.has_key? 'merchantReference' @merchant_reference = hash['merchantReference'] end - if hash.has_key? 'retrievalReferenceNumber' - @retrieval_reference_number = hash['retrievalReferenceNumber'] - end end end end diff --git a/lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data.rb b/lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data.rb index 7e0084f..5e7254a 100644 --- a/lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data.rb +++ b/lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data.rb @@ -2,28 +2,68 @@ # This file was automatically generated. # require 'worldline/acquiring/sdk/domain/data_object' +require 'worldline/acquiring/sdk/v1/domain/emv_data_item' module Worldline module Acquiring module SDK module V1 module Domain - # @attr [String] terminal_id + # @attr [Array] emv_data + # @attr [String] encrypted_pin_block + # @attr [true/false] is_response_to_pin_request + # @attr [true/false] is_retry_with_the_same_operation_id + # @attr [String] pin_master_key_reference + # @attr [String] track2_data class PointOfSaleData < Worldline::Acquiring::SDK::Domain::DataObject - attr_accessor :terminal_id + attr_accessor :emv_data + + attr_accessor :encrypted_pin_block + + attr_accessor :is_response_to_pin_request + + attr_accessor :is_retry_with_the_same_operation_id + + attr_accessor :pin_master_key_reference + + attr_accessor :track2_data # @return (Hash) def to_h hash = super - hash['terminalId'] = @terminal_id unless @terminal_id.nil? + hash['emvData'] = @emv_data.collect{|val| val.to_h} unless @emv_data.nil? + hash['encryptedPinBlock'] = @encrypted_pin_block unless @encrypted_pin_block.nil? + hash['isResponseToPinRequest'] = @is_response_to_pin_request unless @is_response_to_pin_request.nil? + hash['isRetryWithTheSameOperationId'] = @is_retry_with_the_same_operation_id unless @is_retry_with_the_same_operation_id.nil? + hash['pinMasterKeyReference'] = @pin_master_key_reference unless @pin_master_key_reference.nil? + hash['track2Data'] = @track2_data unless @track2_data.nil? hash end def from_hash(hash) super - if hash.has_key? 'terminalId' - @terminal_id = hash['terminalId'] + if hash.has_key? 'emvData' + raise TypeError, "value '%s' is not an Array" % [hash['emvData']] unless hash['emvData'].is_a? Array + @emv_data = [] + hash['emvData'].each do |e| + @emv_data << Worldline::Acquiring::SDK::V1::Domain::EmvDataItem.new_from_hash(e) + end + end + if hash.has_key? 'encryptedPinBlock' + @encrypted_pin_block = hash['encryptedPinBlock'] + end + if hash.has_key? 'isResponseToPinRequest' + @is_response_to_pin_request = hash['isResponseToPinRequest'] + end + if hash.has_key? 'isRetryWithTheSameOperationId' + @is_retry_with_the_same_operation_id = hash['isRetryWithTheSameOperationId'] + end + if hash.has_key? 'pinMasterKeyReference' + @pin_master_key_reference = hash['pinMasterKeyReference'] + end + if hash.has_key? 'track2Data' + @track2_data = hash['track2Data'] end end end diff --git a/lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data_for_response.rb b/lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data_for_response.rb new file mode 100644 index 0000000..20a108e --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/domain/point_of_sale_data_for_response.rb @@ -0,0 +1,41 @@ +# +# This file was automatically generated. +# +require 'worldline/acquiring/sdk/domain/data_object' + +module Worldline + module Acquiring + module SDK + module V1 + module Domain + # @attr [String] pan_last4_digits + # @attr [Integer] pin_retry_counter + class PointOfSaleDataForResponse < Worldline::Acquiring::SDK::Domain::DataObject + + attr_accessor :pan_last4_digits + + attr_accessor :pin_retry_counter + + # @return (Hash) + def to_h + hash = super + hash['panLast4Digits'] = @pan_last4_digits unless @pan_last4_digits.nil? + hash['pinRetryCounter'] = @pin_retry_counter unless @pin_retry_counter.nil? + hash + end + + def from_hash(hash) + super + if hash.has_key? 'panLast4Digits' + @pan_last4_digits = hash['panLast4Digits'] + end + if hash.has_key? 'pinRetryCounter' + @pin_retry_counter = hash['pinRetryCounter'] + end + end + end + end + end + end + end +end diff --git a/lib/worldline/acquiring/sdk/v1/domain/terminal_data.rb b/lib/worldline/acquiring/sdk/v1/domain/terminal_data.rb new file mode 100644 index 0000000..cfe93c5 --- /dev/null +++ b/lib/worldline/acquiring/sdk/v1/domain/terminal_data.rb @@ -0,0 +1,80 @@ +# +# This file was automatically generated. +# +require 'worldline/acquiring/sdk/domain/data_object' + +module Worldline + module Acquiring + module SDK + module V1 + module Domain + # @attr [true/false] allow_single_tap + # @attr [Array] card_reading_capabilities + # @attr [String] cardholder_activated_terminal_level + # @attr [true/false] is_attended_terminal + # @attr [String] pin_entry_capability + # @attr [String] terminal_id + # @attr [String] terminal_location + class TerminalData < Worldline::Acquiring::SDK::Domain::DataObject + + attr_accessor :allow_single_tap + + attr_accessor :card_reading_capabilities + + attr_accessor :cardholder_activated_terminal_level + + attr_accessor :is_attended_terminal + + attr_accessor :pin_entry_capability + + attr_accessor :terminal_id + + attr_accessor :terminal_location + + # @return (Hash) + def to_h + hash = super + hash['allowSingleTap'] = @allow_single_tap unless @allow_single_tap.nil? + hash['cardReadingCapabilities'] = @card_reading_capabilities unless @card_reading_capabilities.nil? + hash['cardholderActivatedTerminalLevel'] = @cardholder_activated_terminal_level unless @cardholder_activated_terminal_level.nil? + hash['isAttendedTerminal'] = @is_attended_terminal unless @is_attended_terminal.nil? + hash['pinEntryCapability'] = @pin_entry_capability unless @pin_entry_capability.nil? + hash['terminalId'] = @terminal_id unless @terminal_id.nil? + hash['terminalLocation'] = @terminal_location unless @terminal_location.nil? + hash + end + + def from_hash(hash) + super + if hash.has_key? 'allowSingleTap' + @allow_single_tap = hash['allowSingleTap'] + end + if hash.has_key? 'cardReadingCapabilities' + raise TypeError, "value '%s' is not an Array" % [hash['cardReadingCapabilities']] unless hash['cardReadingCapabilities'].is_a? Array + @card_reading_capabilities = [] + hash['cardReadingCapabilities'].each do |e| + @card_reading_capabilities << e + end + end + if hash.has_key? 'cardholderActivatedTerminalLevel' + @cardholder_activated_terminal_level = hash['cardholderActivatedTerminalLevel'] + end + if hash.has_key? 'isAttendedTerminal' + @is_attended_terminal = hash['isAttendedTerminal'] + end + if hash.has_key? 'pinEntryCapability' + @pin_entry_capability = hash['pinEntryCapability'] + end + if hash.has_key? 'terminalId' + @terminal_id = hash['terminalId'] + end + if hash.has_key? 'terminalLocation' + @terminal_location = hash['terminalLocation'] + end + end + end + end + end + end + end +end