Class: DPay::CardService
- Inherits:
-
Object
- Object
- DPay::CardService
- Defined in:
- lib/dpay/card/card_service.rb,
sig/dpay/card/card_service.rbs
Instance Method Summary collapse
- #apple_pay(transaction_id, request) ⇒ CardPaymentResult
- #cancel(transaction_id, amount = nil) ⇒ CardPaymentResult
- #capture(transaction_id, amount) ⇒ CardPaymentResult
- #google_pay(transaction_id, request) ⇒ CardPaymentResult
-
#initialize(api) ⇒ CardService
constructor
A new instance of CardService.
- #pay_otp(transaction_id, request) ⇒ CardPaymentResult
- #post(transaction_id, suffix, body) ⇒ CardPaymentResult
- #pre_auth(transaction_id, request) ⇒ CardPaymentResult
- #public_key ⇒ String
Constructor Details
#initialize(api) ⇒ CardService
Returns a new instance of CardService.
5 6 7 |
# File 'lib/dpay/card/card_service.rb', line 5 def initialize(api) @api = api end |
Instance Method Details
#apple_pay(transaction_id, request) ⇒ CardPaymentResult
33 34 35 |
# File 'lib/dpay/card/card_service.rb', line 33 def apple_pay(transaction_id, request) post(transaction_id, "/pay/apple-pay", request.to_body) end |
#cancel(transaction_id, amount = nil) ⇒ CardPaymentResult
25 26 27 |
# File 'lib/dpay/card/card_service.rb', line 25 def cancel(transaction_id, amount = nil) post(transaction_id, "/cancellation", amount.nil? ? {} : { "amount" => amount.to_decimal.to_f }) end |
#capture(transaction_id, amount) ⇒ CardPaymentResult
21 22 23 |
# File 'lib/dpay/card/card_service.rb', line 21 def capture(transaction_id, amount) post(transaction_id, "/capture", { "amount" => amount.to_decimal.to_f }) end |
#google_pay(transaction_id, request) ⇒ CardPaymentResult
29 30 31 |
# File 'lib/dpay/card/card_service.rb', line 29 def google_pay(transaction_id, request) post(transaction_id, "/pay/google-pay", request.to_body) end |
#pay_otp(transaction_id, request) ⇒ CardPaymentResult
13 14 15 |
# File 'lib/dpay/card/card_service.rb', line 13 def pay_otp(transaction_id, request) post(transaction_id, "/pay/card-otp", request.to_body) end |
#post(transaction_id, suffix, body) ⇒ CardPaymentResult
39 40 41 42 43 44 45 |
# File 'lib/dpay/card/card_service.rb', line 39 def post(transaction_id, suffix, body) path = "/api/v1_0/cards/payment/#{Internal::PHP.raw_url_encode(transaction_id)}#{suffix}" data = @api.post_json(Internal::BaseUrls::API_PAYMENTS, path, body) raise CardPaymentError.from_api(data) unless data["success"] == true CardPaymentResult.from_api(data) end |
#pre_auth(transaction_id, request) ⇒ CardPaymentResult
17 18 19 |
# File 'lib/dpay/card/card_service.rb', line 17 def pre_auth(transaction_id, request) post(transaction_id, "/pay/card-pre-auth", request.to_body) end |
#public_key ⇒ String
9 10 11 |
# File 'lib/dpay/card/card_service.rb', line 9 def public_key @api.get_text(Internal::BaseUrls::API_PAYMENTS, "/api/v1_0/cards/public-key").strip end |