Overview
  • Namespace
  • Class

Namespaces

  • Omnipay
    • Pagarme
      • Message

Classes

  • CreditCard
  • Gateway

Class Gateway

Pagarme Gateway

Example:

// Create a gateway for the Pagarme Gateway
  // (routes to GatewayFactory::create)
  $gateway = Omnipay::create('Pagarme');

  // Initialise the gateway
  $gateway->initialize(array(
      'apiKey' => 'MyApiKey',
  ));

  // Create a credit card object
  // This card can be used for testing.
  $card = new CreditCard(array(
              'firstName'    => 'Example',
              'lastName'     => 'Customer',
              'number'       => '4242424242424242',
              'expiryMonth'  => '01',
              'expiryYear'   => '2020',
              'cvv'          => '123',
              'email'        => 'customer@example.com',
              'address1'     => 'Street name, Street number, Neighborhood',
              'address2'     => 'address complementary',
              'postcode'     => '05443100',
              'phone'        => '19 3242 8855',
              'holder_document_number' => '214.278.589-40',
  ));

  // Do an authorize transaction on the gateway
  $transaction = $gateway->authorize(array(
      'amount'           => '10.00',
      'soft_descriptor'  => 'test',
      'payment_method'   => 'credit_card',
      'card'             => $card,
      'metadata'         => array(
                                'product_id' => 'ID1111',
                                'invoice_id' => 'IV2222',
                            ),
  ));
  $response = $transaction->send();
  if ($response->isSuccessful()) {
      echo "Authorize transaction was successful!\n";
      $sale_id = $response->getTransactionReference();
      $customer_id = $response->getCustomerReference();
      $card_id = $response->getCardReference();
      echo "Transaction reference = " . $sale_id . "\n";
  }

Test modes:

Pagarme accounts have test-mode API keys as well as live-mode API keys. Data created with test-mode credentials will never hit the credit card networks and will never cost anyone money.

Unlike some gateways, there is no test mode endpoint separate to the live mode endpoint, the Pagarme API endpoint is the same for test and for live.

Setting the testMode flag on this gateway has no effect. To use test mode just use your test mode API key.

Authentication:

Authentication is by means of a single secret API key set as the apiKey parameter when creating the gateway object.

Omnipay\Common\AbstractGateway
Extended by Omnipay\Pagarme\Gateway
Namespace: Omnipay\Pagarme
See: \Omnipay\Common\AbstractGateway
See: Omnipay\Pagarme\Message\AbstractRequest
Link: https://docs.pagar.me/
Located at Gateway.php

Methods summary

public
# getName( )
public array
# getDefaultParameters( )

Get the gateway parameters

Get the gateway parameters

Returns

array
public string
# getApiKey( )

Get the gateway API Key

Get the gateway API Key

Authentication is by means of a single secret API key set as the apiKey parameter when creating the gateway object.

Returns

string
public Omnipay\Pagarme\Gateway
# setApiKey( string $value )

Set the gateway API Key

Set the gateway API Key

Authentication is by means of a single secret API key set as the apiKey parameter when creating the gateway object.

Pagarme accounts have test-mode API keys as well as live-mode API keys. Data created with test-mode credentials will never hit the credit card networks and will never cost anyone money.

Unlike some gateways, there is no test mode endpoint separate to the live mode endpoint, the Stripe API endpoint is the same for test and for live.

Setting the testMode flag on this gateway has no effect. To use test mode just use your test mode API key.

Parameters

$value

Returns

Omnipay\Pagarme\Gateway
provides a fluent interface.
public Omnipay\Pagarme\Message\AuthorizeRequest
# authorize( array $parameters = array() )

Authorize Request

Authorize Request

An Authorize request is similar to a purchase request but the charge issues an authorization (or pre-authorization), and no money is transferred. The transaction will need to be captured later in order to effect payment. Uncaptured charges expire in 5 days.

Either a card object or card_id is required by default. Otherwise, you must provide a card_hash, like the ones returned by Pagarme.js or use the boleto's payment method.

Pagarme gateway supports only two types of "payment_method":

  • credit_card
  • boleto

Optionally, you can provide the customer details to use the antifraude feature. These details is passed using the following attributes available on credit card object:

  • firstName
  • lastName
  • address1 (must be in the format "street, street_number and neighborhood")
  • address2 (used to specify the optional parameter "street_complementary")
  • postcode
  • phone (must be in the format "DDD PhoneNumber" e.g. "19 98888 5555")

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\AuthorizeRequest
public Omnipay\Pagarme\Message\CaptureRequest
# capture( array $parameters = array() )

Capture Request

Capture Request

Use this request to capture and process a previously created authorization.

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\CaptureRequest
public Omnipay\Pagarme\Message\PurchaseRequest
# purchase( array $parameters = array() )

Purchase request.

Purchase request.

To charge a credit card or generate a boleto you create a new transaction object. If your API key is in test mode, the supplied card won't actually be charged, though everything else will occur as if in live mode.

Either a card object or card_id is required by default. Otherwise, you must provide a card_hash, like the ones returned by Pagarme.js or use the boleto's payment method.

Pagarme gateway supports only two types of "payment_method":

  • credit_card
  • boleto

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\PurchaseRequest

See

https://docs.pagar.me/capturing-card-data/

Optionally

,

you can provide the customer details to use the antifraude feature. These details is passed using the following attributes available on credit card object:

  • firstName
  • lastName
  • address1 (must be in the format "street
,

street_number and neighborhood") * address2 (used to specify the optional parameter "street_complementary") * postcode * phone (must be in the format "DDD PhoneNumber" e.g. "19 98888 5555")


public Omnipay\Pagarme\Message\RefundRequest
# refund( array $parameters = array() )

Refund Request

Refund Request

When you refund, you must specify a transaction reference.

Creating a new refund will refund a transaction that has previously been created but not yet charged. Funds will be refunded to the credit that was originally authorized.

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\RefundRequest
public Omnipay\Pagarme\Message\VoidRequest
# void( array $parameters = array() )

Void Transaction Request

Void Transaction Request

Pagarme does not support voiding, per se, but we treat it as a full refund.

See RefundRequest for additional information

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\VoidRequest
public Omnipay\Pagarme\Message\CreateCardRequest
# createCard( array $parameters = array() )

Create Card

Create Card

This call can be used to create a new credit card. If a customerReference is passed in then a card is added to an existing customer. If there is no customerReference passed in then a new customer is created. The response in that case will then contain both a customer reference and a card reference, and is essentially the same as CreateCustomerRequest

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\CreateCardRequest
public Omnipay\Pagarme\Message\CreateCustomerRequest
# createCustomer( array $parameters = array() )

Create Customer

Create Customer

Customer objects allow you to perform recurring charges and track multiple charges that are associated with the same customer. The API allows you to create customers.

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\CreateCustomerRequest
public Omnipay\Pagarme\Message\InstallmentsRequest
# calculateInstallments( array $parameters = array() )

Pagarme Calculate Installments Request

Pagarme Calculate Installments Request

You can use Pagar.me API to calculate installments for a purchase.

Parameters

$parameters

Returns

Omnipay\Pagarme\Message\InstallmentsRequest
API documentation generated by ApiGen