đŸ‡«đŸ‡·
Developper
DashboardGithubWebsite
French
French
  • 👋Bienvenue
  • Introduction
    • 🔐Authentication
    • 📃Format des rĂ©ponses
    • ⚠Erreurs
    • 🧙Test
    • đŸȘWebhooks
  • Payments
    • 💰Initialiser un paiement
    • 🔁IntĂ©gration Standard
    • 😎VĂ©rifier un paiement
    • 🔎Retrouver un paiement
    • ✋Statut
    • 🌍MĂ©thodes Disponibles
    • 🧙Tests
  • Payouts
    • 💾Initialiser un transfert
    • 😎VĂ©rifier un transfert
    • 🔎RĂ©cupĂ©rer un transfert
    • ✋Statut du transfert
    • 🌍MĂ©thodes Disponibles
    • 🧙Tests
  • SDKs
    • 🐘PHP SDK
    • ⚡Laravel SDK
  • Integrations
    • 🛒WooCommerce
Powered by GitBook
On this page
  • Besoins
  • Installation
  • Paiement
  • Transfert
  • Traitement des exceptions
  • Support
  • VulnĂ©rabilitĂ©s sĂ©curitaires
  • Licence

Was this helpful?

  1. SDKs

PHP SDK

PreviousTestsNextLaravel SDK

Last updated 11 months ago

Was this helpful?

Le SDK Moneroo PHP est une bibliothÚque complÚte qui permet aux développeurs PHP d'interagir avec le service d'orchestration des paiements Moneroo.

Besoins

PHP 7.4 et versions ultérieures.

Installation

Vous pouvez installer le paquet via composer :

composer require moneroo/moneroo-php

Paiement

La classe Moneroo\Payment fournit des méthodes pour initialiser, vérifier, récupérer et marquer les paiements comme traités. Vous pouvez l'utiliser comme suit :

Initier le paiement

Pour créer un paiement, vous devez transmettre un tableau de données de paiement à la méthode de création. Le tableau doit contenir les clés suivantes :

Voici les champs obligatoires sous forme de tableau :

Nom des champs
Type
Obligatoire
Description

amount

integer

Oui

Le montant du paiement.

currency

string

Oui

La devise du paiement.

description

string

Non

Description du paiement.

return_url

string

Oui

URL de retour oĂč votre client sera redirigĂ© aprĂšs le paiement.

customer.email

string

Oui

Adresse e-mail du client.

customer.first_name

string

Oui

Prénom du client.

customer.last_name

string

Oui

Nom du client.

customer.phone

string

NonÂč

customer.address

string

NonÂč

Adresse du client.

customer.city

string

NonÂč

Ville du client.

customer.state

string

NonÂč

État du client.

customer.country

string

NonÂč

customer.zip

string

NonÂč

Code postal du client.

metadata

array

NonÂČ

Données supplémentaires pour le paiement.

methods

array

NonÂł

Méthodes de paiement autorisées.

  1. Si ces informations ne sont pas fournies, le client peut ĂȘtre invitĂ© Ă  les saisir au cours de la procĂ©dure de paiement, en fonction de la mĂ©thode de paiement sĂ©lectionnĂ©e.

  2. Il s'agit d'un tableau de paires clé-valeur. Seules les chaßnes de caractÚres sont autorisées.

  3. S'il n'est pas fourni, tous les modes de paiement disponibles seront autorisés. Le tableau ne doit contenir que les méthodes de paiement prises en charge.

Exemple d'utilisation

$paymentData = [
    'amount' => 100,
    'currency' => 'USD',
    'customer' => [
        'email' => 'john.doe@example.com',
        'first_name' => 'John',
        'last_name' => 'Doe',
        'phone' => '123456789',
        'address' => '123 Main St',
        'city' => 'Los Angeles',
        'state' => 'CA',
        'country' => 'USA',
        'zip' => '90001',
    ],
    'description' => 'Payment for order #123',
    'return_url' => 'https://yourwebsite.com/thanks',
    'metadata' => [
        'order_id' => '123',
        'customer_id' => '456',
    ],
    'methods' => ['card', 'orange_ci'],
];
$monerooPayment = new \Moneroo\Payment($publicKey, $secretKey);
$payment = $monerooPayment->init($paymentData);

// Redirect the customer to the Checkout URL
header('Location: ' . $payment->checkout_url);

La méthode create renvoie un objet contenant les détails du paiement, y compris l'identifiant de la transaction et l'URL de paiement vers laquelle vous devez rediriger le client pour qu'il effectue le paiement. Vous pouvez utiliser cet identifiant de transaction pour vérifier le paiement ultérieurement.

Vérifier le paiement

Vous pouvez vérifier un paiement à l'aide de son id. Cette fonction est utile lorsque vous souhaitez vérifier l'état d'un paiement avant de traiter une commande de votre cÎté.

$transactionId = 'your-payment-transaction-id';

$monerooPayment = new \Moneroo\Payment();
$payment = $monerooPayment->verify($transactionId);

Récupération du paiement

Pour obtenir les détails d'un paiement, utilisez la méthode get avec l'id de la transaction.

$transactionId = 'your-payment-transaction-id';

$monerooPayment = new \Moneroo\Payment($publicKey, $secretKey);
$payment = $monerooPayment->get($transactionId);

Marquer le paiement comme traité

Il s'agit actuellement d'une fonctionnalité expérimentale. Veuillez l'utiliser avec prudence et signaler tout problÚme que vous rencontrez.

Cette méthode est utile lorsque vous souhaitez marquer un paiement comme étant traité aprÚs avoir reçu un rappel de l'API Moneroo et avoir traité la commande de votre cÎté. Cela vous permet également d'éviter les commandes en double ou de stocker les identifiants des transactions dans votre base de données pour référence ultérieure.

Pour marquer un paiement comme traité, utilisez la méthode makeAsProcessed avec l'id de la transaction.

Exemple d'usage :

$transactionId = 'your-payment-transaction-id';

$monerooPayment = new \Moneroo\Payment($publicKey, $secretKey);
$payment = $monerooPayment->makeAsProcessed($transactionId);

Transfert

La classe Moneroo\Payout fournit des méthodes d'initialisation, de vérification et de récupération des paiements.

Initier le paiement

Pour initialiser un tranfert, vous devez transmettre un tableau de données répondant aux rÚgles de validation spécifiées. Le tableau doit contenir les clés suivantes :

Voici les champs obligatoires sous forme de tableau :

Nom des champs
Type
Obligatoire
Description

amount

integer

Oui

Le montant du transfert.

currency

string

Oui

description

string

Oui

Description du transfert.

customer.email

string

Oui

Adresse e-mail du client.

customer.first_name

string

Oui

Prénom du client.

customer.last_name

string

Oui

Nom du client.

return_url

string

Oui

URL de retour oĂč votre client sera redirigĂ© aprĂšs le transfert.

customer.phone

string

Non

customer.address

string

Non

Adresse du client.

customer.city

string

Non

Ville du client.

customer.state

string

Non

État du client.

customer.country

string

Non

customer.zip

string

Non

Code postal du client.

metadata

array

Non

Données supplémentaires pour le transfert.

method

string

OuiÂč

Méthodes de transfert autorisées

request_confirmationÂČ

bool

Non

Si vous souhaitez demander une confirmation au client.

  1. Cette fonctionnalitĂ© est actuellement en phase expĂ©rimentale et n'est pas disponible pour tous les utilisateurs/applications. Elle vous permet de demander une confirmation Ă  un client avant de procĂ©der au transfert. Moneroo enverra un e-mail au client contenant un code de confirmation. Le client est alors dirigĂ© vers une page de confirmation oĂč il peut vĂ©rifier le montant du paiement et les dĂ©tails de son compte. Si les informations sont correctes, le client peut saisir le code de confirmation pour approuver ou rejeter la demande de paiement. Cette fonction est un outil prĂ©cieux pour Ă©viter les informations incorrectes ou les transactions frauduleuses. Si l'utilisateur ne rĂ©pond pas dans les 15 minutes, la demande de paiement sera automatiquement annulĂ©e.

En plus des informations ci-dessus, vous devez ajouter des champs obligatoires pour les méthodes de tranfert dans les détails du compte. Par exemple, si le mode de paiement est mtn_bj, vous devez fournir les champs msisdn.

Il s'agit d'une information diffĂ©rente de celle de l'utilisateur, qui indique oĂč l'argent sera versĂ©. Pour plus d'informations, veuillez consulter les champs obligatoires pour chaque mĂ©thode de transfert.

$payoutData = [
    'amount' => 100,
    'currency' => 'USD',
    'customer' => [
        'email' => 'john.doe@example.com',
        'first_name' => 'John',
        'last_name' => 'Doe',
        // other customer details...
    ],
    'description' => 'Salary payment',
    'method' => 'mtn_bj',
    'msisdn' => '22912345678', // required field for mtn_bj payout method
    // other data...
];

$monerooPayout = new Moneroo\Payout($publicKey, $secretKey);
$payout = $monerooPayout->init($payoutData);

La méthode create renvoie un objet contenant les détails du paiement, y compris l'id de la transaction et le statut du paiement. Vous pouvez utiliser cet identifiant de transaction pour vérifier le paiement ultérieurement.

Vérifier le transfert

Vous pouvez vérifier un tranfert grùce à l'id de la transaction.

$transactionId = 'your-payout-transaction-id';

$monerooPayout = new Moneroo\Payout($publicKey, $secretKey);
$payout = $monerooPayout->verify($transactionId);

Récupérer le tranfert

Pour obtenir les détails d'un tranfert, utilisez la méthode get avec l'id de la transaction.

$transactionId = 'your-payout-transaction-id';

$payout = new \Moneroo\Payout($publicKey, $secretKey);
$payout = $payout->get($transactionId);

Traitement des exceptions

Le SDK est livré avec un certain nombre d'exceptions personnalisées pour vous aider à gérer les erreurs potentielles qui peuvent survenir lors de l'utilisation de l'API Moneroo. Ces exceptions sont les suivantes :

  • InvalidPayloadException : Cette exception est dĂ©clenchĂ©e lorsque la charge utile envoyĂ©e Ă  l'API ne rĂ©pond pas aux critĂšres attendus.

  • ForbiddenException : Cette exception est dĂ©clenchĂ©e lorsque l'utilisateur authentifiĂ© tente d'effectuer une action pour laquelle il ne dispose pas des autorisations nĂ©cessaires.

  • InvalidResourceException : Cette exception est dĂ©clenchĂ©e lorsqu'une requĂȘte est adressĂ©e Ă  une ressource inexistante ou invalide.

  • ServerErrorException : Cette exception est dĂ©clenchĂ©e en cas d'erreur du cĂŽtĂ© du serveur.

  • NotAcceptableException : Cette exception est dĂ©clenchĂ©e lorsque les caractĂ©ristiques du contenu de la demande du client ne sont pas acceptables selon les en-tĂȘtes Accept envoyĂ©s dans la demande.

  • ServiceUnavailableException : Cette exception est dĂ©clenchĂ©e lorsque le service est actuellement indisponible, peut-ĂȘtre en raison de problĂšmes de maintenance ou de charge sur le serveur.

  • UnauthorizedException : Cette exception est levĂ©e lorsque la demande ne comporte pas d'informations d'authentification valides pour la ressource cible.

Pour chaque exception, vous pouvez accéder au message d'erreur en appelant$exception->getMessage(), et au code d'erreur (s'il est disponible) en appelant$exception->getCode().

Support

Vulnérabilités sécuritaires

Licence

Le SDK Moneroo PHP est un logiciel libre sous licence MIT.

Numéro de téléphone du client dans le format .

Pays du client. Il s'agir du code du pays au format valide.

La devise du transfert. La devise doit ĂȘtre une devise prise en charge dans un format valide.

Numéro de téléphone du client dans le format .

Pays du client. Il s'agir du code du pays au format valide.

Il s'agit d'une supportée par Moneroo

Si vous avez des questions ou besoin d'aide, n'hésitez pas à . Nous sommes toujours heureux de répondre à vos questions.

Si vous découvrez une faille de sécurité dans le SDK PHP de Moneroo, veuillez envoyer un e-mail à Moneroo Security via . Toutes les failles de sécurité seront traitées rapidement.

méthode de transfert
nous contacter
security@moneroo.io
E164
ISO 3166-1 alpha-2
ISO 4217
E164
ISO 3166-1 alpha-2
🐘
PHP Version
Build Status
Latest Stable Version
Total Downloads
License
Star on GitHub
GitHub
Page cover image