Биллинг

Методы для работы с билингом для фулфилмента

Базовый URL: https://api.selsup.ru

🔗 Получение операций биллинга за период

Возвращает данные как для клиента так и для фулфилмента
GET /api/billing/find

Параметры запроса QUERY

Название Тип Обязательный Описание
from string Нет Дата начала периода
to string Нет Дата окончания периода
limit integer Нет Ограничение на количество записей. Максимальное значение - 500
page integer Нет Номер страницы начиная с 1
count boolean Нет Возвратить в ответе общее количество записей
sortBy string Нет Поле сортировки записей. Работает только при получении списка.
ascending boolean Нет Порядок сортировки - по возрастанию?. Работает только при получении списка.

Тело ответа

✓ 200 OK
Content-Type: application/json
Поле Тип Описание
rows Array of Billing Строки с результатом поиска
Структура Billing
Поле Тип Описание
id integer Идентификатор биллинга. Проставляется автоматически
name string Наименование операции биллинга
productId integer Идентификатор товара, для которого рассчитан биллинг
itemId integer привязка к единице хранения на складе
orderId integer Заказ по которому был рассчитан биллинг
price number
volume integer объем для операций, которые зависят от объема
weight integer
quantity integer
totalPrice number
tariffId integer идентификатор тарифа для хранения или короба
linkedClientId integer идентификатор клиента фулфилмента
clientId integer идентификатор клиента самого фулфилмента
from string дата тарификации от
to string дата тарификации до
date string дата операции
userId integer идентификатор пользователя фулфилмента, который добавил операцию
total integer Общее количество найденных записей. Возвращается только, когда count = true
page integer Номер запрошенной страницы
hasNextPage boolean Есть ли следующая страница
emptyPurchase integer Показатель пустой закупочной цены
⚠ 400 Ошибка с данными запроса
Content-Type: application/json
Поле Тип Описание
error Обязательный string Код ошибки
localMessage Обязательный string Текст ошибки на языке пользователя
params object Дополнительные параметры ошибки
⚠ 403 Доступ запрещен
Content-Type: application/json
Поле Тип Описание
error Обязательный string Код ошибки
✗ 500 Внутренняя ошибка сервера
Content-Type: application/json
Поле Тип Описание
error Обязательный string Код ошибки
message string Описание ошибки
system string Системная ошибки парсинга данных запроса
Укажите ключ API в правом верхнем углу, чтобы попробовать использовать метод

Примеры кода

const axios = require('axios');

const params = {
  from: '2024-01-15T10:30:00Z',
  to: '10000',
  limit: '100',
  page: '1',
  count: 'Россия',
  sortBy: 'Пример sortBy',
  ascending: 'true',
};

const response = await axios.get('https://api.selsup.ru/api/billing/find',
  {
    params,
    headers: {
      'Authorization': 'YOUR_API_KEY',
      'Content-Type': 'application/json'
    }
  }
);

console.log(response.data);
import axios from 'axios';

interface QueryParams {
  from?: string;
  to?: string;
  limit?: number;
  page?: number;
  count?: string;
  sortBy?: string;
  ascending?: string;
}

const params: QueryParams = {
  from: '2024-01-15T10:30:00Z',
  to: '10000',
  limit: '100',
  page: '1',
  count: 'Россия',
  sortBy: 'Пример sortBy',
  ascending: 'true',
};

const response = await axios.get<any>('https://api.selsup.ru/api/billing/find',
  {
    params,
    headers: {
      'Authorization': 'YOUR_API_KEY',
      'Content-Type': 'application/json'
    }
  }
);

console.log(response.data);
import requests

headers = {
    'Authorization': 'YOUR_API_KEY',
    'Content-Type': 'application/json'
}

params = {
    'from': '2024-01-15T10:30:00Z',
    'to': '10000',
    'limit': '100',
    'page': '1',
    'count': 'Россия',
    'sortBy': 'Пример sortBy',
    'ascending': 'true',
}

response = requests.get(
    'https://api.selsup.ru/api/billing/find',
    headers=headers,
    params=params
)

print(response.json())
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "net/http"
)

func main() {
    client := &http.Client{}

    req, _ := http.NewRequest("get", "https://api.selsup.ru/api/billing/find?from=2024-01-15T10%3A30%3A00Z&to=10000&limit=100&page=1&count=%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D1%8F&sortBy=%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%20sortBy&ascending=true", nil)
    req.Header.Set("Authorization", "YOUR_API_KEY")
    req.Header.Set("Content-Type", "application/json")

    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    var result map[string]interface{}
    json.NewDecoder(resp.Body).Decode(&result)
    fmt.Println(result)
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;

HttpClient client = HttpClient.newHttpClient();

HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.selsup.ru/api/billing/find?from=2024-01-15T10%3A30%3A00Z&to=10000&limit=100&page=1&count=%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D1%8F&sortBy=%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%20sortBy&ascending=true"))
    .header("Authorization", "YOUR_API_KEY")
    .header("Content-Type", "application/json")
    .get(HttpRequest.BodyPublishers.noBody())
    .build();

HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
<?php
$curl = curl_init();

$params = [
    'from' => '2024-01-15T10:30:00Z',
    'to' => '10000',
    'limit' => '100',
    'page' => '1',
    'count' => 'Россия',
    'sortBy' => 'Пример sortBy',
    'ascending' => 'true',
];

$url = 'https://api.selsup.ru/api/billing/find?' . http_build_query($params);

curl_setopt_array($curl, [
    CURLOPT_URL => $url,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => 'get',
    CURLOPT_HTTPHEADER => [
        'Authorization: YOUR_API_KEY',
        'Content-Type: application/json'
    ]
]);

$response = curl_exec($curl);
curl_close($curl);

echo $response;
?>
curl -X get \
  'https://api.selsup.ru/api/billing/find?from=2024-01-15T10%3A30%3A00Z&to=10000&limit=100&page=1&count=%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D1%8F&sortBy=%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%20sortBy&ascending=true' \
  -H 'Authorization: YOUR_API_KEY' \
  -H 'Content-Type: application/json'