Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
# Conflicts:
#	LICENSE
#	README.md
  • Loading branch information
ElGigi committed Feb 22, 2018
2 parents 91385f2 + ce90ccb commit 1a0f5c4
Show file tree
Hide file tree
Showing 32 changed files with 7,361 additions and 2 deletions.
8 changes: 8 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto

# Denote all files that are truly binary and should not be modified.
*.eot binary
*.ttf binary
*.woff binary
*.woff2 binary
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/vendor/
phpunit.xml

# Dev environment
.idea
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Change Log
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning] (http://semver.org/).
For change log format, use [Keep a Changelog] (http://keepachangelog.com/).

## [1.0.0] - 2018-02-21
Initial development
107 changes: 105 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,105 @@
# LyraPayments
Lyra payments Webservices v5 PHP Client (SytemPay, Payzen, Sogecommerce, Crédit du Nord, ...)
# Lyra payments Webservices v5 PHP Client

[![Latest Version](http://img.shields.io/packagist/v/elgigi/lyra-payments.svg?style=flat-square)](https://github.com/ElGigi/LyraPayments/releases)
[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE)
[![Build Status](https://img.shields.io/scrutinizer/build/g/ElGigi/LyraPayments.svg?style=flat-square)](https://scrutinizer-ci.com/g/ElGigi/LyraPayments/build-status/master)
[![Quality Score](https://img.shields.io/scrutinizer/g/ElGigi/LyraPayments.svg?style=flat-square)](https://scrutinizer-ci.com/g/ElGigi/LyraPayments)
[![Total Downloads](https://img.shields.io/packagist/dt/elgigi/lyra-payments.svg?style=flat-square)](https://packagist.org/packages/elgigi/lyra-payments)

PHP client to dialog with Lyra Network web services v5, payment solution for:
- **WebServices** of french Natixis banks
- **Payzen** for all french banks, most european banks, Brazil, Chile, Argentina, Peru, Mexico, USA and Canada, India and soon Colombia.
- **Sogecommerce** for the **Société Générale** french bank
- The **Crédit du Nord** french bank group
- The **OSB** bank to Tahiti
- The **CSB** bank to Noumea
- The **BNPP** bank in Africa
- **FirstData** to Brazil
- **Innocard** to Switzerland

## Installation

### Composer

You can install the client with [Composer](https://getcomposer.org/), it's the recommended installation.

```bash
$ composer require elgigi/lyra-payments
```

### Dependencies

* **PHP** >= 7.1


## Methods

All methods available in web services v5 of Lyra Network payment system are functional.

Each implemented method return detail of result ; you are able to call too `WebServices::getLastResult()` method after calling your method.

For more detail on functionality of each method and theirs details results, report you to the web services documentation.

### Backward compatibility of WebServices

```php
array|null getPaymentUuid(LegacyTransactionKey $legacyTransactionKeyRequest)
```

### Routine transactions on payments

```php
array|null createPayment(?ThreeDS $threeDSRequest, Payment $paymentRequest, Order $orderRequest, Card $cardRequest, ?Customer $customerRequest, ?Tech $techRequest, ?ShoppingCart $shoppingCartRequest)
array|null updatePayment(Query $queryRequest, Payment $paymentRequest)
array|null updatePaymentDetails(Query $queryRequest, ShoppingCart $shoppingCartRequest)
array|null cancelPayment(Query $queryRequest)
array|null findPayments(Query $queryRequest)
array|null refundPayment(Payment $paymentRequest, Query $queryRequest)
array|null duplicatePayment(Payment $paymentRequest, Query $queryRequest, Order $orderRequest)
array|null validatePayment(Query $queryRequest)
array|null capturePayment(Settlement $settlementRequest)
array|null getPaymentDetails(Query $queryRequest, ?ExtendedResponse $extendedResponseRequest)
array|null verifyThreeDSEnrollment(Payment $paymentRequest, Card $cardRequest, ?Tech $techRequest, ?ThreeDS $threeDSRequest)
array|null checkThreeDSAuthentication(ThreeDS $threeDSRequest)
```

### Token payments

```php
array|null createToken(Card $cardRequest, Customer $customerRequest)
array|null createTokenFromTransaction(Query $queryRequest, ?Card $cardRequest)
array|null updateToken(Query $queryRequest, ?Card $cardRequest, ?Customer $customerRequest)
array|null getTokenDetails(Query $queryRequest)
array|null cancelToken(Query $queryRequest)
array|null reactivateToken(Query $queryRequest)
array|null createSubscription(Order $orderRequest, Subscription $subscriptionRequest, Card $cardRequest)
array|null updateSubscription(Query $queryRequest, Subscription $subscriptionRequest, ?Payment $paymentRequest)
array|null getSubscriptionDetails(Query $queryRequest)
array|null cancelSubscription(Query $queryRequest)
```


## Models

Models available to use payment methods:

- `Info\CartItem`
- `Info\Ext`
- `Request\BillingDetails`
- `Request\Card`
- `Request\Common`
- `Request\Customer`
- `Request\ExtendedResponse`
- `Request\ExtraDetails`
- `Request\LegacyTransactionKey`
- `Request\Order`
- `Request\Payment`
- `Request\Query`
- `Request\Settlement`
- `Request\ShippingDetails`
- `Request\ShoppingCart`
- `Request\Subscription`
- `Request\Tech`
- `Request\ThreeDS`

It's a simple integration of model describes on web services documentation **with data format control**.
46 changes: 46 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"name": "elgigi/lyra-payments",
"description": "Lyra payments Webservices v5 PHP Client (SytemPay, Payzen, Sogecommerce, Crédit du Nord, ...)",
"keywords": [
"lyra",
"lyra network",
"webservices",
"payment",
"systempay",
"banque populaire",
"caisse d épargne",
"payzen",
"sogecommerce",
"crédit du nord",
"osb",
"csb",
"bnpp",
"firstdata",
"innocard"
],
"minimum-stability": "stable",
"license": "MIT",
"homepage": "https://elgigi.fr",
"authors": [
{
"name": "Ronan Giron",
"email": "[email protected]"
}
],
"autoload": {
"psr-4": {
"ElGigi\\LyraPayments\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"ElGigi\\LyraPayments\\Tests\\": "tests/"
}
},
"require": {
"php": ">=7.1"
},
"require-dev": {
"phpunit/phpunit": "~6.5"
}
}
Loading

0 comments on commit 1a0f5c4

Please sign in to comment.