2017 © Pedro Peláez
 

library plexo-sdk

Plexo SDK para PHP

image

plexouy/plexo-sdk

Plexo SDK para PHP

  • Thursday, May 31, 2018
  • by bng5
  • Repository
  • 2 Watchers
  • 0 Stars
  • 36 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 2 Forks
  • 0 Open issues
  • 18 Versions
  • 9 % Grown

The README.md

Plexo SDK para PHP

Build Status, (*1)

Plexo es un repositorio de medios de pago. Su objetivo es facilitar la utilización de estos instrumentos permitiendo desacoplar toda complejidad asociada a la integración con los medios de pago., (*2)

Requerimientos

Para correr el SDK, su sistema debe contar con PHP >= 5.6 compilado con el módulo openssl., (*3)

Primeros pasos

Instalación

Instalando el SDK vía Composer., (*4)

$ composer require plexouy/plexo-sdk

Certificados

El cliente puede desarrollar y registrar su propia clase de almacenamiento de certificados. Esta clase debe implementar la interfaz Plexo\Sdk\Certificate\CertificateStoreInterface., (*5)

De esta manera se evitará la realización de peticiones adicionales a la API, dándole al cliente la libertad de optar por el modo y lugar de almacenamiento más conveniente para él (base de datos, sistema de archivos, APIs, etc)., (*6)

Ver ejemplo, (*7)

La clase Plexo\Sdk\Certificate\Certificate

Representa un certificado, conteniendo su fingerprint, clave pública y/o clave privada., (*8)

  • fingerprint (string) SHA1 en hexadecimal.
  • cert (string) Clave pública en Base 64, conteniendo las declaraciones "-----BEGIN CERTIFICATE-----" y "-----END CERTIFICATE-----".
  • pkey (string) Clave privada en Base 64, conteniendo las declaraciones "-----BEGIN PRIVATE KEY-----" y "END PRIVATE KEY".

Credenciales

La autenticación se realiza a través de un nombre de usuario y verificación de firmas. Todas las peticiones son firmadas utilizando una clave privada emitida por Plexo., (*9)

Nombre de usuario, (*10)

El nombre de usuario puede ser configurado fijando la variable de entorno PLEXO_CREDENTIALS_CLIENT o indicado en el código al instanciar la clase Plexo\Sdk\Client con la opción client., (*11)

Clave privada, (*12)

La configuración de la clave privada puede realizarse de las siguientes tres maneras, tanto como variables de entorno o en el código al instanciar la clase Plexo\Sdk\Client:, (*13)

Opción 1. Fingerprint: Si ha registrado su clase de almacenamiento de certificados, el SDK consultará el método getByFingerprint, pasando como parámetro el fingerprint, para obtener la clave privada almacenada. Su clase debe retornar un objeto del tipo Plexo\Sdk\Certificate\Certificate conteniendo la clave privada extraída del archivo pfx., (*14)

  • Variable de entorno:
    • PLEXO_CREDENTIALS_PRIVKEY_FINGERPRINT
  • Opción del constructor:
    • privkey_fingerprint

Opción 2. PEM/Fingerprint: Si la clave privada fue extraída del archivo pfx a un archivo pem, agregue la ruta del archivo pem y el SDK utilizará clave contenida., (*15)

  • Variables de entorno:
    • PLEXO_CREDENTIALS_PEM_FILENAME
    • PLEXO_CREDENTIALS_PRIVKEY_FINGERPRINT
  • Opción del constructor:
    • pem_filename
    • privkey_fingerprint

Opcion 3. PFX/Passphase (más lento): Si no ha extraído los datos del archivo pfx, puede indicar la ruta a ese archivo y su contraseña de instalación., (*16)

  • Variables de entorno:
    • PLEXO_CREDENTIALS_PFX_FILENAME
    • PLEXO_CREDENTIALS_PFX_PASSPHRASE
  • Opción del constructor:
    • pfx_filename
    • pfx_passphrase
Ejemplo: Utilizando variables de entorno.
<?php
// Require the Composer autoloader.
require_once 'vendor/autoload.php';

use Plexo\Sdk;

$client = new Sdk\Client();
Ejemplo: Indicando credenciales al instanciar Client.
<?php
// Require the Composer autoloader.
require_once 'vendor/autoload.php';

use Plexo\Sdk;

$client = new Sdk\Client([
    'client' => $client_name,
    'pem_filename' => $pem_filename,
    'privkey_fingerprint' => $fingerprint,
]);

Clase Plexo\Sdk\Client

Métodos

The Versions

31/05 2018

dev-master

9999999-dev

Plexo SDK para PHP

  Sources   Download

GNU AGPL AGPL-3.0-only

The Requires

 

The Development Requires

31/05 2018

0.4.2

0.4.2.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

18/05 2018

0.4.1

0.4.1.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

05/05 2018

0.4.0

0.4.0.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

04/05 2018

0.3.9

0.3.9.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

28/04 2018

0.3.8

0.3.8.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

28/04 2018

0.3.7

0.3.7.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

24/04 2018

0.3.6

0.3.6.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

16/04 2018

0.3.4

0.3.4.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

07/04 2018

0.3.3

0.3.3.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

05/04 2018

0.3.2

0.3.2.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

04/04 2018

0.3.1

0.3.1.0

Plexo SDK para PHP

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

03/04 2018

0.3.0

0.3.0.0

  Sources   Download

AGPL-3.0-only

The Requires

 

The Development Requires

18/09 2017

0.2.0

0.2.0.0

  Sources   Download

GNU AGPL

The Requires

 

The Development Requires

18/09 2017

dev-http_client_handler

dev-http_client_handler

  Sources   Download

GNU AGPL

The Requires

 

The Development Requires

08/08 2017

0.1.1

0.1.1.0

  Sources   Download

GNU AGPL

The Requires

 

The Development Requires

08/08 2017

dev-dev

dev-dev

  Sources   Download

GNU AGPL

The Requires

 

The Development Requires

07/08 2017

0.1.0

0.1.0.0

  Sources   Download

GNU AGPL

The Requires

 

The Development Requires