class Privat24Api::PaymentRequest

Constants

MOD

Attributes

card_args[R]

Public Class Methods

new(**card_args) click to toggle source
# File lib/privat24_api/request/payment/payment_request.rb, line 10
def initialize(**card_args)
  @card_args = card_args
end

Public Instance Methods

check_status_mobile(id) click to toggle source
# File lib/privat24_api/request/payment/payment_request.rb, line 101
def check_status_mobile(id)
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('0')
    data.test('0')
    data.payment do
      data.prop(name: 'id', value: id)
    end
  end
end
check_status_pay(id, ref) click to toggle source
# File lib/privat24_api/request/payment/payment_request.rb, line 63
def check_status_pay(id, ref)
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('0')
    data.test('0')
    data.payment do
      data.prop(name: 'id',  value: card)
      data.prop(name: 'ref', value: amount)
    end
  end
end
pay_on_mobile(phone, amount) click to toggle source
# File lib/privat24_api/request/payment/payment_request.rb, line 75
def pay_on_mobile(phone, amount)
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('0')
    data.test('0')
    data.payment(id: '') do
      data.prop(name: 'phone', value: phone)
      data.prop(name: 'amt',   value: amount)
    end
  end
end
pay_on_mobile_multiple(phones) click to toggle source
# File lib/privat24_api/request/payment/payment_request.rb, line 87
def pay_on_mobile_multiple(phones)
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('0')
    data.test('0')
    phones.each_with_index do |phone, index|
      data.payment(id: index) do
        data.prop(name: 'phone', value: phone[:number])
        data.prop(name: 'amt',   value: phone[:amount])
      end
    end
  end
end
pay_on_privat_card(payment_id, card, amount, details, currency='UAH') click to toggle source

payment_id - order id of your shop

# File lib/privat24_api/request/payment/payment_request.rb, line 15
def pay_on_privat_card(payment_id, card, amount, details, currency='UAH')
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('0')
    data.test('0')
    data.payment(id: payment_id) do
      data.prop(name: 'b_card_or_acc', value: card)
      data.prop(name: 'amt',           value: amount)
      data.prop(name: 'ccy',           value: currency)
      data.prop(name: 'details',       value: details)
    end
  end
end
pay_on_ua_card(payment_id, card, amount, b_name, b_crf, b_bic, details, currency='UAH') click to toggle source

payment_id - order id of your shop

# File lib/privat24_api/request/payment/payment_request.rb, line 30
def pay_on_ua_card(payment_id, card, amount, b_name, b_crf, b_bic, details, currency='UAH')
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('0')
    data.test('0')
    data.payment(id: payment_id) do
      data.prop(name: 'b_card_or_acc', value: card)
      data.prop(name: 'amt',           value: amount)
      data.prop(name: 'ccy',           value: currency)
      data.prop(name: 'b_name',        value: b_name)
      data.prop(name: 'b_crf',         value: b_crf)
      data.prop(name: 'b_bic',         value: b_bic)
      data.prop(name: 'details',       value: details)
    end
  end
end
pay_on_visa_card(payment_id, card, amount, b_name, details, currency='UAH') click to toggle source

payment_id - order id of your shop

# File lib/privat24_api/request/payment/payment_request.rb, line 48
def pay_on_visa_card(payment_id, card, amount, b_name, details, currency='UAH')
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('30')
    data.test('0')
    data.payment(id: payment_id) do
      data.prop(name: 'b_card_or_acc', value: card)
      data.prop(name: 'amt',           value: amount)
      data.prop(name: 'ccy',           value: currency)
      data.prop(name: 'b_name',        value: b_name)
      data.prop(name: 'details',       value: details)
    end
  end
end
send_sms(phone_from, phone_to, message) click to toggle source
# File lib/privat24_api/request/payment/payment_request.rb, line 112
def send_sms(phone_from, phone_to, message)
  Request.new(card_args).send_data_for(MOD, __method__.to_s) do |data|
    data.oper('cmt')
    data.wait('0')
    data.test('0')
    data.payment(id: '') do
      data.prop(name: 'phone',   value: phone_from)
      data.prop(name: 'phoneto', value: phone_to)
      data.prop(name: 'text',    value: message)
    end
  end
end