Недавно я переключил обработку платежей на Stripe. Теперь мне нужно создать отчет для нашего финансового отдела, который показывает свертку транзакций в пределах определенного диапазона дат. Я начал создавать простую веб-страницу PHP (и используя библиотеку Stripe PHP), которая даст следующие резюме:
У меня возникли проблемы с выяснением того, как правильно запрашивать платежи с помощью Stripe для моих целей отчетности.
Я знаю, что могу получить сборы:
$charges = Stripe_Charge::all();
И из возвращаемого набора сборов я могу вычислить сводную информацию, которая мне нужна в отчете. Тем не менее, это вернет мне максимум 100 платежей, и я не знаю, как вернуть расходы в течение определенного диапазона дат.
Я надеюсь, что более опытные разработчики Stripe могут указать мне правильный метод построения отчета, который мне нужен.
Как я могу вернуть все расходы в течение определенного диапазона дат?
Есть ли лучший способ получить эту сводную информацию из Stripe?
Вы можете использовать веб-узлы, чтобы получать уведомления, когда происходит charge.succeeded
или charge.refunded
charge.succeeded
charge.refunded
происходит и сохраняется соответствующая информация в базе данных, которую вы контролируете. Это даст вам гибкость, чтобы сделать необходимую отчетность. Вы можете загрузить заряды, которые уже произошли как CSV с панели инструментов Stripe.
Вы можете разбивать на страницы с помощью параметров счета и смещения (задокументировано на https://stripe.com/docs/api?lang=php#list_charges ). Я бы предложил использовать их для обработки 100 сборок за раз. Затем вы можете прекратить итерирование через свои сборы, как только вы получите заряд за пределы диапазона дат.
Я получил подтверждение от сотрудника Stripe, что только два варианта – это те, которые описаны в ответах от @dwhalen и @Saikat Chakrabarti.
Процитировав сотрудника Stripe на тот же вопрос, я спросил на Stripe :
Помимо описанных вами опций (получение всех сборов или отслеживание в вашей базе данных в качестве сборов) нет альтернативного способа создания статистики, которую вы хотите там.
Поймите, это старый, но … теперь это возможно, пример php:
$charges=Stripe_Charge::all(array("created" => array("gt" => $unix_time),"limit" => 100));
Вы можете использовать смещение как
$return = Stripe_Charge::all(array("count" => 100, 'offset' => 0)); // set count $return = Stripe_Charge::all(array("count" => 100, 'offset' => 100)); // set count $return = Stripe_Charge::all(array("count" => 100, 'offset' => 200)); // set count