Class: OnlinePayments::SDK::Merchant::Payments::PaymentsClient

Inherits:
ApiResource
  • Object
show all
Defined in:
lib/onlinepayments/sdk/merchant/payments/payments_client.rb

Overview

Payments client. Thread-safe.

Instance Attribute Summary

Attributes inherited from ApiResource

#client_meta_info, #communicator

Instance Method Summary collapse

Constructor Details

#initialize(parent, path_context) ⇒ PaymentsClient

Returns a new instance of PaymentsClient.

Parameters:



26
27
28
# File 'lib/onlinepayments/sdk/merchant/payments/payments_client.rb', line 26

def initialize(parent, path_context)
  super(parent: parent, path_context: path_context)
end

Instance Method Details

#cancel_payment(payment_id, body, context = nil) ⇒ OnlinePayments::SDK::Domain::CancelPaymentResponse

Resource /v2/{merchantId}/payments/{paymentId}/cancel - Cancel payment

Parameters:

Returns:

Raises:



137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
# File 'lib/onlinepayments/sdk/merchant/payments/payments_client.rb', line 137

def cancel_payment(payment_id, body, context = nil)
  path_context = {
    'paymentId'.freeze => payment_id,
  }
  uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}/cancel', path_context)
  @communicator.post(
    uri,
    client_headers,
    nil,
    body,
    OnlinePayments::SDK::Domain::CancelPaymentResponse,
    context)
rescue OnlinePayments::SDK::Communication::ResponseException => e
  error_type = OnlinePayments::SDK::Domain::ErrorResponse
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
end

#capture_payment(payment_id, body, context = nil) ⇒ OnlinePayments::SDK::Domain::CaptureResponse

Resource /v2/{merchantId}/payments/{paymentId}/capture - Capture payment

Parameters:

Returns:

Raises:



170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
# File 'lib/onlinepayments/sdk/merchant/payments/payments_client.rb', line 170

def capture_payment(payment_id, body, context = nil)
  path_context = {
    'paymentId'.freeze => payment_id,
  }
  uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}/capture', path_context)
  @communicator.post(
    uri,
    client_headers,
    nil,
    body,
    OnlinePayments::SDK::Domain::CaptureResponse,
    context)
rescue OnlinePayments::SDK::Communication::ResponseException => e
  error_type = OnlinePayments::SDK::Domain::ErrorResponse
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
end

#create_payment(body, context = nil) ⇒ OnlinePayments::SDK::Domain::CreatePaymentResponse

Resource /v2/{merchantId}/payments - Create payment

Parameters:

Returns:

Raises:



45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/onlinepayments/sdk/merchant/payments/payments_client.rb', line 45

def create_payment(body, context = nil)
  uri = instantiate_uri('/v2/{merchantId}/payments', nil)
  @communicator.post(
    uri,
    client_headers,
    nil,
    body,
    OnlinePayments::SDK::Domain::CreatePaymentResponse,
    context)
rescue OnlinePayments::SDK::Communication::ResponseException => e
  error_type = OnlinePayments::SDK::Domain::PaymentErrorResponse
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
end

#get_payment(payment_id, context = nil) ⇒ OnlinePayments::SDK::Domain::PaymentResponse

Resource /v2/{merchantId}/payments/{paymentId} - Get payment

Parameters:

Returns:

Raises:



74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# File 'lib/onlinepayments/sdk/merchant/payments/payments_client.rb', line 74

def get_payment(payment_id, context = nil)
  path_context = {
    'paymentId'.freeze => payment_id,
  }
  uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}', path_context)
  @communicator.get(
    uri,
    client_headers,
    nil,
    OnlinePayments::SDK::Domain::PaymentResponse,
    context)
rescue OnlinePayments::SDK::Communication::ResponseException => e
  error_type = OnlinePayments::SDK::Domain::ErrorResponse
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
end

#get_payment_details(payment_id, context = nil) ⇒ OnlinePayments::SDK::Domain::PaymentDetailsResponse

Resource /v2/{merchantId}/payments/{paymentId}/details - Get payment details

Parameters:

Returns:

Raises:



105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
# File 'lib/onlinepayments/sdk/merchant/payments/payments_client.rb', line 105

def get_payment_details(payment_id, context = nil)
  path_context = {
    'paymentId'.freeze => payment_id,
  }
  uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}/details', path_context)
  @communicator.get(
    uri,
    client_headers,
    nil,
    OnlinePayments::SDK::Domain::PaymentDetailsResponse,
    context)
rescue OnlinePayments::SDK::Communication::ResponseException => e
  error_type = OnlinePayments::SDK::Domain::ErrorResponse
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
end

#refund_payment(payment_id, body, context = nil) ⇒ OnlinePayments::SDK::Domain::RefundResponse

Resource /v2/{merchantId}/payments/{paymentId}/refund - Refund payment

Parameters:

Returns:

Raises:



204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
# File 'lib/onlinepayments/sdk/merchant/payments/payments_client.rb', line 204

def refund_payment(payment_id, body, context = nil)
  path_context = {
    'paymentId'.freeze => payment_id,
  }
  uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}/refund', path_context)
  @communicator.post(
    uri,
    client_headers,
    nil,
    body,
    OnlinePayments::SDK::Domain::RefundResponse,
    context)
rescue OnlinePayments::SDK::Communication::ResponseException => e
  error_type = OnlinePayments::SDK::Domain::RefundErrorResponse
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
  raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
end