1. Go to this page and download the library: Download sarigue/helloasso library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
use \HelloAsso\V5\Resource\Query\Payment as PaymentQuery;
use \HelloAsso\V5\Api\Pagination;
$pagination = null; /* @var Pagination $pagination */
$payment_list = PaymentQuery::create()
->setFromDate(date('Y').'-01-01') // Depuis le premier janvier
->setToDate(date('Y-m-d')) // Jusqu'à aujourd'hui
->search() // Appel de la requête "search"
->getCollection($pagination) // Récupère la collection de Payment
;
echo 'Current page : ' . $pagination->page . PHP_EOL;
echo 'Max page : ' . $pagination->max_page . PHP_EOL;
echo 'Page size : ' . $pagination->result_per_page . PHP_EOL;
// --------------------
// Ou bien, en récupérant d'abord la réponse
// --------------------
$response = PaymentQuery::create()
->setFromDate(date('Y').'-01-01') // Depuis le premier janvier
->setToDate(date('Y-m-d')) // Jusqu'à aujourd'hui
->search() // Appel de la requête "search"
;
$payment_list = $response->getCollection();
echo 'Current page : ' . $response->getPagination()->page . PHP_EOL;
echo 'Max page : ' . $response->getPagination()->max_page . PHP_EOL;
echo 'Page size : ' . $response->getPagination()->result_per_page . PHP_EOL;
use \HelloAsso\V5\Resource\Query\Payment as PaymentQuery;
use \HelloAsso\V5\Resource\Payment;
$payment_id = 3;
$payment = PaymentQuery::create()->get($payment_id)->getResource();
// -------------------------
// Ou bien sous forme statique :
// -------------------------
$payment_id = 3;
$payment = Payment::get($payment_id);
use \HelloAsso\V5\Resource\Payment;
// Récupérer toutes les infos d'un ORDER depuis un PAYMENT
$payment_order = Payment::get(3)->order->refresh();
// Depuis un Callback
$callback = new \HelloAsso\V5\Callback();
if ($callback->isPayment())
{
$payment = $callback->getPayment()->refresh();
}
use HelloAsso\V5\Callback;
$callback = new Callback(); // Suffisant pour initialiser depuis le POST body
if ($callback->isPayment())
{
$payment = $callback->getPayment(); // Données transmises (partielles)
$payment->refresh(); // Requête cURL pour récupéer toute la ressource
}
if ($callback->isForm())
{
$form = $callback->getForm(); // Données transmises (partielles)
$payment->refresh(); // Requête cURL pour récupéer toute la ressource
}
if ($callback->isOrder())
{
$order = $callback->getOrder(); // Données transmises (partielles)
$order->refresh(); // Requête cURL pour récupéer toute la ressource
}
HelloAsso\HelloAsso::config("id-api", "password-api");
HelloAsso\HelloAsso::setTestMode(false);
$notification = HelloAsso\Callback::getPayment();
$organism = $notification->getAction()->getOrganism()->name;
$campaign = $notification->getAction()->getCampaign()->name;
$amount = $notification->getPayment()->amount;
$firstname = $notification->getPayment()->payer_first_name;
$lastname = $notification->getPayment()->payer_last_name;
echo "$firstname $lastname a payé la somme de $amount euros à $organism à l'occasion de la campagne : $campaign";
use HelloAsso\V3\Api\Query;
use HelloAsso\V3\Resource\Payment;
// Paiements de mon organisme depuis le début de l'année
$response =
Query::create(Payment::class)
->setPage(1) // Premiere page
->setResultsPerPage(50) // 50 résultats par page
->addParam('from', date('Y').'-01-01') // Depuis le 1er janvier
->addParam('to', date('Y-m-d')) // Jusqu'à aujourd'hui
->execute() // Exécute la requête
->throwException(); // Lance l'exception si elle existe
$code = $response->getHttpCode();
$pagination = $response->getPagination();
$paiements = $response->getResource(Payment::class);
/*
* Note : Puisqu'on a initialisé Query::create() avec le nom de la classe ("Payment::class"),
* on peut aussi utiliser ici directement $response->getResource() sans paramètre
*/
echo "Code HTTP resultat : $code" . PHP_EOL;
echo "Pagination : Page {$pagination->page} / {$pagination->$max_page} ({$pagination->result_per_page} résultats par page)" . PHP_EOL;
echo count($paiements) . ' paiements trouvés' . PHP_EOL;
var_export($paiements);
echo PHP_EOL;
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.