2Выберите возврат денег

Используя библиотеку, поддерживаемую 2Checkout для PHP, у меня возникают проблемы с возвратом денег в их песочнице через их API, используя предоставленный ими пример и мои собственные учетные данные. Что я делаю неправильно? Обратите внимание, что я могу делать платежи просто отлично в их песочнице, но не возмещает.

<?php

error_reporting(E_ALL);
ini_set('display_errors','On');
header('Content-Type: text/plain');

require_once('lib/Twocheckout.php');

$sChargeID = '4093729353592'; // my order ID
Twocheckout::username('USER'); // my username
Twocheckout::password('PASSWORD'); // my password
Twocheckout::sandbox(true);

Twocheckout::verifySSL(false);

$charge = Twocheckout_Sale::refund(array(
    'sale_id' => $sChargeID,
    'comment' => 'Customer decided the item did not meet expectations and it was within their refund period.',
    'category' => 2 // did not like item
));

echo "\nRESPONSE = \n";
print_r($charge);
echo "\n";

Когда я выкидываю ответ CURL, я вижу это:

{
   "errors" : [
      {
         "code" : "FORBIDDEN",
         "message" : "Access denied to API"
      }
   ]
}

1 ответ

Решение

Есть 2 вещи, которые они не слишком ясно объясняют с помощью 2Checkout относительно возмещения API:

  1. Их служба электронной почты для сброса пароля в песочнице не работает. Я получил ответ от их техподдержки по этому поводу.

  2. Вы должны зайти в панель инструментов Песочницы (если не Live), а затем нажать Учетная запись> Управление пользователями. Вы увидите маленькую заметку с надписью: "** Пользователи не могут получить доступ как к API, так и к зоне продавца". Вы также заметите, что ваша собственная учетная запись не имеет прав доступа API и обновления API. Это означает, что вы должны создать другую учетную запись на этом экране управления пользователями, а когда вы это сделаете, отметьте флажок Admin API и возможность обновления API. Затем используйте это имя пользователя и пароль, но используйте тот же идентификатор учетной записи, что и для другой учетной записи. Обратите внимание, что этот новый пользователь может вернуть деньги через API, но не может войти в панель управления.

Обратите внимание, что платежи не используют "API администратора" - они используют отдельный API, который использует ключи API вместо комбинации "пользователь / пароль". Нет никакого смысла в том, что я могу использовать ключи API для одного API, но для другого нужно использовать ограниченную комбинацию user / pass.

Именно такие скачки делают 2Checkout менее привлекательным, чем Stripe, но, к сожалению, очень немногие сервисы имеют быстрые входящие и основанные на токене платежи, такие как Stripe. 2Checkout - мой "второй лучший выбор".

Другие вопросы по тегам