siip-whatsapp-notifications.../test_stripe.php

45 lines
1.7 KiB
PHP
Executable File

<?php
require_once __DIR__ . '/vendor/autoload.php';
$config = json_decode(file_get_contents(__DIR__ . '/data/config.json'), true);
$ucrmOptions = [
'base_uri' => 'https://localhost/crm/api/v1.0/',
'verify' => false,
'headers' => [
'X-Auth-App-Key' => $config['apitoken'],
'Content-Type' => 'application/json'
]
];
$ucrmClient = new \GuzzleHttp\Client($ucrmOptions);
// Fetch client 157
$res = $ucrmClient->get('clients/157');
$client = json_decode($res->getBody()->getContents(), true);
$stripeCustomerId = null;
foreach ($client['attributes'] as $attr) {
if (stripos($attr['name'], 'Stripe') !== false && stripos($attr['name'], 'Customer') !== false) {
$stripeCustomerId = $attr['value'];
}
}
if (!$stripeCustomerId) {
foreach ($client['attributes'] as $attr) {
if ($attr['key'] === 'stripeCustomerId' || $attr['key'] === 'customerIdStripe') {
$stripeCustomerId = $attr['value'];
}
}
}
echo "Stripe Customer ID: $stripeCustomerId\n";
if ($stripeCustomerId && isset($config['tokenstripe'])) {
$stripeOptions = [
'base_uri' => 'https://api.stripe.com/v1/',
'auth' => [$config['tokenstripe'], ''],
];
$stripeClient = new \GuzzleHttp\Client($stripeOptions);
$res = $stripeClient->get("payment_intents?customer=$stripeCustomerId&limit=3");
$intents = json_decode($res->getBody()->getContents(), true);
foreach ($intents['data'] as $intent) {
echo "PaymentIntent: {$intent['id']}, Amount: {$intent['amount']}, Status: {$intent['status']}, Types: " . implode(',', $intent['payment_method_types']) . "\n";
echo "Metadata: " . json_encode($intent['metadata']) . "\n";
}
}