меню
Generic selectors
Exact matches only
Search in title
Search in content
Search in posts
Search in pages

Метод getPayments

Метод для получения информации о платежах пользователя прикреплённого к партнёру.

Данный метод работает только для аккаунтов, имеющих статус реселлера.

Принцип использования

Синтаксис и URL для вызова метода
getPayments ([string login, datetime from, datetime to, bool only_real_deposit,
string ids,array comment_substrings, string payment_type])
https://api.unisender.com/ru/api/getPayments?format=json&api_key=KEY&login=LOGIN&from=TIME&to=TIME&ids=
1,2,3&comment_substrings[0]=COMMENT&comment_substrings[1]=COMMENT2
Аргументы
api_key * Ключ доступа к API
login Логин пользователя, информацию по платежам которого хочется получить. В случае если не указан, будут возвращены данные по платежам всех пользователей реселлера.
from * Дата и время проведения платежа, начиная с которой нужно выводить платежи, в формате «ГГГГ-ММ-ДД чч:мм».
to * Дата и время проведения платежа, заканчивая которой нужно выводить платежи, в формате «ГГГГ-ММ-ДД чч:мм».
only_real_deposit 0 или 1, по умолчанию 0. Если 1, то будут выгружены только платежи — пополнения реального счёта. Списания и пополнения бонусного счёта выгружены не будут.
ids Строковое представление списока кодов платежей, разделенных запятой. Выгружаются платежи с указанными кодами.
comment_substrings Массив подстрок. Выгружаются только те платежи, в комментариях к которым встречается хотя бы одна из указанных подстрок.
payment_type Тип платежа. На данный момент поддерживаются следующие значения:
«money_transfer» — перевод денежных средств с лицевого счета реселлера на лицевой счет пользователя. При указании этого значения будут выгружены только платежи, являющиеся переводами реселлера своему пользователю.
«ex_transfer» — выгружаются платежи за исключением переводов реселлеров своим пользователям.
Примечание:
* — обязательные параметры
Возвращаемое значение
JSON-массив, каждый элемент массива – объект с полями:
id (уникальный код платежа, 64-битное беззнаковое число)
login (логин пользователя с которым связан платёж),
pay_sum (сумма платежа),
pay_time (время проведения платежа в формате «ГГГГ-ММ-ДД чч:мм:сс», в часовом поясе UTC),
pay_comment (описание платежа),
payment_type (тип платежа, на данный момент поддерживается «money_transfer» — перевод денежных средств с лицевого счета реселлера на лицевой счет пользователя)
currency (трёхбуквенный международный код валюты, в которой произведён платёж),
is_bonus (является платёж бонусным или нет), by_coupon (являтся платежом по купону или нет),
tariff_id (идентификатор тарифа связанный с платежом),
num (признак кратности платежа, если платёж за несколько периодов).Пример возвращаемого значения:

{
  "result":[
	{
		"id":"123456",
		"login":"username",
		"pay_sum":100,
		"pay_time":"2011-08-10 18:00:00",
		"pay_comment":"test payment",
		"payment_type": "money_transfer",
		"currency":"USD",
		"is_bonus":0,
		"by_coupon":0,
		"tariff_id":1,
		"num":1
	}
  ]
}

Примеры на PHP

Мы настоятельно рекомендуем использовать POST-запросы, так как это более безопасный метод передачи данных, нежели GET. Используйте SSL-соединение с UniSender. Подробнее о методах соединения здесь.

Пример с использованием POST-запроса

// Ваш ключ доступа к API (из Личного Кабинета)
$api_key = "xxxxxxxxxxxxxxxxxxxxxxxxx";

// Логин пользователя, о платежах которого надо узнать иформацию
$user_name = "test_user_login";

// Создаём POST-запрос
$POST = array (
  'api_key' => $api_key,
  'login' => $user_name
);

// Устанавливаем соединение
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $POST);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_URL,
			'https://api.unisender.com/ru/api/getPayments?format=json');
$result = curl_exec($ch);

if ($result) {
  // Раскодируем ответ API-сервера
  $jsonObj = json_decode($result);

  if(null===$jsonObj) {
	// Ошибка в полученном ответе
	echo "Invalid JSON";

  }
  elseif(!empty($jsonObj->error)) {
	// Ошибка получения списка платежей
	echo "An error occured: " . $jsonObj->error
		. "(code: " . $jsonObj->code . ")";

  } else {
	// Выводим сумму и валюту платежа
	echo "Here's a list of user payments:
";
	foreach ($jsonObj->result as $one) {
	  echo "Payment " . $one->pay_sum . " (" . $one->currency . ")". "
";
	}

  }
} else {
  // Ошибка соединения с API-сервером
  echo "API access error";
}

Пример с использованием GET-запроса

// Ваш ключ доступа к API (из Личного Кабинета)
$api_key = "xxxxxxxxxxxxxxxx";

// Логин пользователя, о платежах которого надо узнать информацию
$user_name = "test_user_login";

// Создаём GET-запрос
$api_url = "https://api.unisender.com/ru/api/getPayments?"
	."api_key=$api_key&login=$user_name";

// Делаем запрос на API-сервер
$result = file_get_contents($api_url);

if ($result) {
  // Раскодируем ответ API-сервера
  $jsonObj = json_decode($result);

  if(null===$jsonObj) {
	// Ошибка в полученном ответе
	echo "Invalid JSON";

  }
  elseif(!empty($jsonObj->error)) {
	// Ошибка получения списка платежей пользователя
	echo "An error occured: " . $jsonObj->error
		. "(code: " . $jsonObj->code . ")";

  } else {
	// Выводим сумму платежа и валюту платежа
	echo "Here's a list of user payments:
";
	foreach ($jsonObj->result as $one) {
	  echo "Payment " . $one->pay_sum . " (" . $one->currency . ")". "
";
	}
  }

} else {
  // Ошибка соединения с API-сервером
  echo "API access error";
}