Sha256: 665406c8f20267849569c31321d9f4cca31a40c8a920dfaddb7bcffba1d63b10

Contents?: true

Size: 577 Bytes

Versions: 2

Compression:

Stored size: 577 Bytes

Contents

# frozen_string_literal: true

module MonoMerchant
  module Invoice

    # Finalize holding amount
    class Finalize < ApiRequest
      attr_reader :invoice_id, :amount, :items

      def initialize(invoice_id, amount, items: [])
        @invoice_id = invoice_id
        @amount = amount
        @items = items.map { |i| Item.new(i).to_hash }
        super()
      end

      protected

      def body
        { invoiceId: invoice_id,
          amount: amount,
          items: items.presence
        }
      end

      def data
        %w[status]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mono-merchant-0.2.0 lib/mono-merchant/invoice/finalize.rb
mono-merchant-0.1.0 lib/mono-merchant/invoice/finalize.rb