Project

ekam-ruby

0.0
No commit activity in last 3 years
No release in over 3 years
Implementation of EKAM API v0.0.1 (https://app.ekam.ru/online/swagger)
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Development

~> 1.0

Runtime

~> 0.11
 Project Readme

Ekam

Простейший клиент для API сервиса ЕКАМ:

Совместимость

Клиент работает с версией ЕКАМ API v0.0.1

Установка

Добавьте следующую строку в Gemfile вашего приложения:

gem 'ekam-ruby'

Затем выполните команду:

$ bundle

Или установите gem самостоятельно:

$ gem install ekam-ruby

Примеры использования

Инициализация:

require 'ekam-ruby'

client = Ekam::Client.new(token)

Где token - авторизационный токен для вашего приложения ЕКАМ (подробнее тут: https://www.ekam.ru/page/online-api#creation).

Получение списка чеков

# Получить все чеки без ограничений
client.get_receipt_requests

# Получить последние 10 чеков
client.get_receipt_requests({limit: 10})

# Получить только возвраты
client.get_receipt_requests({type: 'returns'})

# Получить все продажи в статусе "error"
client.get_receipt_requests({type: 'sales', status: 'error'})

# Получить чек по заказу с указанным ID
order_id = '12345'
client.get_receipt_requests({order_id: order_id})

Регистрация чека (продажа)

Описание параметров: https://www.ekam.ru/page/online-api#reg

receipt_params = {
  "order_id" => "91421af3",
  "order_number" => "1014",
  "type" => "sale",
  "email" => "john@example.net",
  "phone_number" => "79650000000",
  "should_print" => true,
  "cash_amount" => 201.1,
  "electron_amount" => 0,
  "lines" => [
    {
      "price" => 10,
      "quantity" => 2,
      "title"=> "Плюшевый мишка",
      "total_price" => 20,
      "vat_rate" => null
    }
  ]
}

client.create_receipt_request!(receipt_params)

Регистрация чека (возврат)

receipt_params = {
  "order_id" => "91421af3",
  "order_number" => "1014",
  "type" => "return",
  "email" => "john@example.net",
  "phone_number" => "79650000000",
  "should_print" => true,
  "cash_amount" => 201.1,
  "electron_amount" => 0,
  "lines" => [
    {
      "price" => 10,
      "quantity" => 2,
      "title"=> "Плюшевый мишка",
      "total_price" => 20,
      "vat_rate" => null
    }
  ]
}

client.create_receipt_request!(receipt_params)

Закрытие смены

client.close_shift!