Skip to content

paulandrieux/MangopayBundle

 
 

Repository files navigation

AppVentus

Gitter License Version SensioLabsInsight Dependency Status

MangopayBundle

This bundle provides integration of the official SDK PHP for Mangopay api V2 into Symfony.

Configuration

app_ventus_mangopay:
    client_id: your_mangopay_client_id
    client_password: your_mangopay_client_password
    base_url: your_mangopay_base_url

How to use it ?

The official sdk provides a "MangoMapApi" class which is a shortcut to all the "tools" like "ApiPayIns", "ApiWallets", "ApiUsers"... You can access those "tools" through the service "appventus_mangopay.mango_api".

    $payIn = new PayIn();
    $this->get('appventus_mangopay.mango_api')->PayIns->create($payIn);

Additionnaly, there is some helpers that handle most of the mangopay actions. fell free to fork and implement yours

BankInformationHelper

It can register user BankInformations as it implements BankInformationInterface

    $bankInformation = new BankInformation();
    $this->get('appventus_mangopay.bank_information_helper')->createBankAccount($bankInformation);

PaymentHelper

It can register a CardPreauthorisation and execute it

    $cardRegistration = new CardRegistration();
    $this->get('appventus_mangopay.payment_helper')->createPreAuthorisation($cardRegistration);

    $cardPreAuthorisation = new CardPreAuthorisation();
    $this->get('appventus_mangopay.payment_helper')->executePreAuthorisation($cardPreAuthorisation, $user, $wallet);

PaymentDirectHelper

It can create a new direct payment

    $transaction = new Transaction();
    $this->get('appventus_mangopay.payment_direct_helper')->createDirectTransaction($transaction);

UserHelper

It can create a new user in mangopay as the User object implements the UserInterface

    $user = new User();
    $this->get('appventus_mangopay.user_helper')->createMangoUser($user);

WalletHelper

It can create a user wallet

    $user = new User();
    $this->get('appventus_mangopay.wallet_helper')->createWalletForUser($user);

This is the general workflow for the mangopay payment page:

  1. Displaying the payment form to user

Step 1

  1. Create mangopay user and the card registration through mangopay API

Step 2

  1. Call the tokenisation server to validate the user credit card, use 3d secure if needed, update the CardR egistration with tokenized Card, create the PreAuthorisation then redirect the user to success page. Step 3

About

Mangopay api implementation for Symfony 2

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 79.0%
  • JavaScript 13.9%
  • HTML 7.1%