PHP Classes

API picpay PHP SDK for E-Commerce: Process e-commerce payments via PicPay API

Recommend this page to a friend!
  Info   View files View files (28)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
Not yet rated by the usersTotal: 25 All time: 11,141 This week: 123Up
Version License PHP version Categories
picpay-e-commerce-ph 1.0MIT/X Consortium ...8E-Commerce, Web services, PHP 8
Description 

Author

This package is specific mainly for applications used in Brazil Brazil .

This package can process e-commerce payments via PicPay API.

It provides classes that e-commerce application developers can use to perform several types of operations with customers' order payments.

Currently, it can:

- Create records for a customer with his details

- Create a request for a customer to pay for an order on a PicPay page and return to a given page when the customer pays or not

- Get the payment status of an order

- Cancel a given request for an order payment

Picture of Ewerton Daniel
  Performance   Level  
Name: Ewerton Daniel <contact>
Classes: 3 packages by
Country: Brazil Brazil
Age: 38
All time rank: 4318350 in Brazil Brazil
Week rank: 307 Up16 in Brazil Brazil Up

Details

Generic badge Generic badge GitHub license Generic badge Twitter

? PicPay E-Commerce API Integration ??

_This library provides developers with a simple set of bindings to help you integrate PicPay E-Commerce API to a website and start receiving payments._

? Requirements

php >= 8.1

guzzlehttp/guzzle >= 7.0.1

echosistema/simple-http-request" >= 1.0.1

? Coming soon package to PHP versions < 8.1.

? Installation

First time using PicPay? Create your PicPay account in PicPay Studio, if you don?t have one already.

Download Composer if not already installed

On your project directory run on the command line "composer require ewertondaniel/picpay-e-commerce-php-sdk" for PHP 8.1;

That's it! PicPay E-Commerce has been successfully installed!

??? Examples

? Create a Customer/Buyer to Payment Order


use EwertonDaniel\PicPay\Customer;

  /
   * Brazilian CPF and Phone Number can be only numbers or with default mask;
   * The email and phone number fields are optional;
   */
  
        $customer = new Customer();
        $customer->setFirstName('Anakin') // REQUIRED;
            ->setLastName('Skywalker') // REQUIRED;
            ->setEmail('anakin@jediorder.com')) // Optional;
            ->setPhoneNumber('11987654321'))  // Optional;
            ->setDocument('963.237.510-62');  // REQUIRED, Has a CPF validation rule;
            

? Create a Payment Order


use EwertonDaniel\PicPay\PicPay;

          $payment = new PicPay('x_picpay_token');
          $payment
            ->setCustomer([
                'first_name' => 'Din',
                'last_name' => 'Djarin',
                'document' => '963.237.510-62'
            ]) // REQUIRED, Array or Customer class;
            ->setReferenceId('MY-ID-0001') //string, call REQUIRED, If you want an auto reference id, please call empty ex.: setReferenceId();
            ->setCallbackUrl('https://my-website.com/notification')  // REQUIRED, Where PicPay will return with POST notification;
            ->setValue(100.00) //float, REQUIRED;
            ->pay();
            

? Create a Full Payment Order


use EwertonDaniel\PicPay\PicPay;

          $payment = new PicPay('x_picpay_token');
          $payment
            ->setCustomer([
                'first_name' => 'Din',
                'last_name' => 'Djarin',
                'document' => '963.237.510-62', // It can just be numbers ex.: '96323751062'
                'email'=>'din@mandalorian.com', // Optional
                'phone_number'=>'11987654321' // Optional, It can just be masked ex.: '(11) 98765-4321, (11) 8765-4321 etc...'
            ]) // REQUIRED, Array or Customer class;
            ->setDebug(false) // Optional, (default:false) If you want to debug the request (default false);
            ->setReferenceId('MY-ID-0002') //string, call REQUIRED, If no value is entered, Reference ID will be created automatically, ex.: setReferenceId();
            ->setCallbackUrl('https://my-website.com/notification')  // REQUIRED, Where PicPay will return with POST notification;
            ->setReturnUrl('https://my-website.com/order/MY-ID-0002')  // Optional, (default:null) where customer will be redirected from PicPay Payment Page;
            ->setExpirationDate('2020-09-20') // Optional, (default:null) Format Y-m-d (yyyy-mm-dd);
            ->setSoftDescriptor('Skywalker light-saber') // Optional, (default:null) Description to customer, or an item description;
            ->setPurchaseMode('online') // Optional, (default: online, available options [online, in-store]);
            ->setChannel('channel') // Optional, (default:null) If you have another store, take a look in official documentation;
            ->setAutoCapture(true) // Optional, (default:true) Key that will define that this charge will be of the late capture type;
            ->setValue(100.00) //float, REQUIRED
            ->pay()
            

? Get a specific Order Status


use EwertonDaniel\PicPay\Order;

       $order = new Order('x_picpay_token','reference_id');
       $response = $order->status();
       $status =  $response['body']['status'];
            

Possibles status response when request Order Status:

<dl> <dd>? created: order created;</dd> <dd>? expired: payment limit date has expired or order cancelled;</dd> <dd>? analysis: paid and in the process of anti-fraud analysis;</dd> <dd>? completed: paid and amount available in your PicPay account;</dd> <dd>? refunded: paid and refunded;</dd> <dd>? chargeback: paid with chargeback;</dd> </dl>

? Cancel a specific Order


use EwertonDaniel\PicPay\Order;

       $order = new Order('x_picpay_token','reference_id');
       $response = $order->cancel();
       $status = $response['body']['status'];
            

Possibles cancellation status response:

<dl> <dd>? cancelled: order cancelled;</dd> <dd>? undefined: unknown status;</dd> </dl>

? Documentation

? Visit the PicPay Studio for further information regarding:

PicPay E-Commerce Official Documentation


  Files folder image Files  
File Role Description
Files folder imagesrc (7 files, 4 directories)
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file README.md Doc. Documentation

  Files folder image Files  /  src  
File Role Description
Files folder imageExceptions (6 files)
Files folder imageRules (3 files)
Files folder imageTests (5 files)
Files folder imageTraits (5 files)
  Plain text file Authorization.php Class Class source
  Accessible without login Plain text file autoload.php Aux. Auxiliary script
  Accessible without login Plain text file configuration.json Data Auxiliary data
  Plain text file Configuration.php Class Class source
  Plain text file Customer.php Class Class source
  Plain text file Order.php Class Class source
  Plain text file PicPay.php Class Class source

  Files folder image Files  /  src  /  Exceptions  
File Role Description
  Plain text file CpfValidationException.php Class Class source
  Plain text file CustomerException.php Class Class source
  Plain text file EmailValidationException.php Class Class source
  Plain text file ExceptionInterface.php Class Class source
  Plain text file PaymentException.php Class Class source
  Plain text file PhoneNumberValidationException.php Class Class source

  Files folder image Files  /  src  /  Rules  
File Role Description
  Plain text file BrazilianPhoneNumberRule.php Class Class source
  Plain text file CpfRule.php Class Class source
  Plain text file EmailRule.php Class Class source

  Files folder image Files  /  src  /  Tests  
File Role Description
  Plain text file AuthorizationTest.php Class Class source
  Plain text file ConfigurationTest.php Class Class source
  Plain text file CustomerTest.php Class Class source
  Plain text file DisplayColor.php Class Class source
  Plain text file PicPayTest.php Class Class source

  Files folder image Files  /  src  /  Traits  
File Role Description
  Plain text file AutoInit.php Class Class source
  Plain text file PaymentGetter.php Class Class source
  Plain text file PaymentSetter.php Class Class source
  Plain text file PicPayAuthorization.php Class Class source
  Plain text file PicPayConfiguration.php Class Class source

 Version Control Unique User Downloads Download Rankings  
 100%
Total:25
This week:0
All time:11,141
This week:123Up