# frozen_string_literal: true require 'pay_zen/client' # PayZen PCI endpoints module PayZen::PCI; end # PCI/Charge/* endpoints of the PayZen REST API class PayZen::PCI::Charge < PayZen::Client def initialize(base_url: nil, username: nil, password: nil) super(base_url: base_url, username: username, password: password) end ## # @see https://payzen.io/en-EN/rest/V4.0/api/playground/PCI/Charge/CreatePayment/ ## def create_payment(amount: 0, currency: Setting.get('payzen_currency'), order_id: nil, form_action: 'PAYMENT', contrib: "fab-manager #{Version.current}", customer: nil, device: nil, payment_forms: nil) post('/PCI/Charge/CreatePayment', amount: amount, currency: currency, orderId: order_id, formAction: form_action, contrib: contrib, customer: customer, device: device, paymentForms: payment_forms) end end