<?php require_once dirname(__FILE__) . '/init.php'; require_once dirname(__FILE__) . '/config.php'; $arr = array(); //headers array_push($arr, array('balance_id', 'charge_id', 'type', 'amount', 'net', 'fee', 'created', 'available_on', 'status', 'description', 'product_id', 'product_type', 'order_id', 'customer_name', 'customer_email')); $out = fopen('balance_history_expanded.csv', 'w'); $increment = 100; $continue = true; $ending_before = 'txn_16U0xRGYjKzzi3FkTJGKL2Vo'; while ($continue) { $transactionsJSON = \Stripe\BalanceTransaction::all(array("limit" => $increment, "ending_before" => $ending_before)); $transactions = $transactionsJSON->__toArray(true); $continue = $transactions['has_more']; $ending_before = current($transactions['data'])['id']; foreach ($transactions['data'] as $transaction) { if ($transaction['type'] != 'transfer') { $charge = NULL; $chargeJSON = \Stripe\Charge::retrieve($transaction['source']); $charge = $chargeJSON->__toArray(true); array_push($arr, array($transaction['id'], $transaction['source'], $transaction['type'], $transaction['amount'] / 100, $transaction['net'] / 100, $transaction['fee'] / 100, gmdate("Y-m-d H:i:s", $transaction['created']), gmdate("Y-m-d H:i:s", $transaction['available_on']), $transaction['status'], $transaction['description'], $charge['metadata']['product_id'], $charge['metadata']['product_type'], $charge['metadata']['order_id'], $charge['metadata']['customer_name'], $charge['metadata']['customer_email'])); } } } foreach ($arr as $rows) { fputcsv($out, $rows); } fclose($out);
public function save_stripe_charge($stripe) { \Stripe\Stripe::setApiKey($this->stripe_private_key); // $stripe = $stripe_response->jsonSerialize(); $charge_obj = $stripe['data']['object']; $charge_data = array(); $charge_data['stripe_id'] = $charge_obj['id']; $charge_data['currency'] = $charge_obj['currency']; $charge_data['amount'] = $charge_obj['amount']; $charge_data['created'] = $charge_obj['created']; $bt = \Stripe\BalanceTransaction::retrieve($charge_obj['balance_transaction']); $charge_data['amount_converted'] = $bt->amount; if ($charge_obj['source']['customer']) { $stripe_id = $charge_obj['source']['customer']; } else { $stripe_id = $charge_obj['id']; } \adz_stripe_donations\CustomSave::save_stripe_charge_detail($charge_data, $stripe_id); }