PHP code example of issei-m / spike-php

1. Go to this page and download the library: Download issei-m/spike-php library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

issei-m / spike-php example snippets


$spike = new \Issei\Spike\Spike('your_api_secret_key');

// The token's id is retrieved by SPIKE Checkout (client side script) usually.
$token = new \Issei\Spike\Model\Token('tok_xxxxxxxxxxxxxxxxxxxxxxxx');

$request = new \Issei\Spike\ChargeRequest();
$request
    ->setToken($token)
    ->setAmount(123.45, 'USD')
    ->setCapture(true) // If you set false, you can delay capturing.
;

$product = new \Issei\Spike\Model\Product('my-product-00001');
$product
    ->setTitle('Product Name')
    ->setDescription('Description of Product.')
    ->setPrice(123.45, 'USD')
    ->setLanguage('EN')
    ->setCount(3)
    ->setStock(97)
;

// The product can be added any times.
$request->addProduct($product);

/** @var $createdCharge \Issei\Spike\Model\Charge */
$createdCharge = $spike->charge($request);

$request->setToken('tok_xxxxxxxxxxxxxxxxxxxxxxxx');

/** @var $charge \Issei\Spike\Model\Charge */
$charge = $spike->getCharge('20150101-100000-xxxxxxxxxx');

/** @var $charge \Issei\Spike\Model\Charge */
$capturedCharge = $spike->capture($charge);

/** @var $charge \Issei\Spike\Model\Charge */
$refundedCharge = $spike->refund($charge);

$refundedCharge = $spike->refund('20150101-100000-xxxxxxxxxx');

/** @var $charges \Issei\Spike\Model\Charge[] */
$charges = $spike->getCharges();

$charges = $spike->getCharges(5);

$nextCharges = $spike->getCharges(5, $charges[count($charges) - 1]);

$nextCharges = $spike->getCharges(5, $charges[count($charges) - 1], ...);

$request = new \Issei\Spike\TokenRequest();
$request
    ->setCardNumber('4444333322221111')
    ->setExpirationMonth(12)
    ->setExpirationYear(19)
    ->setHolderName('Taro Spike')
    ->setSecurityCode('123')
    ->setCurrency('JPY')
    ->setEmail('[email protected]')
;

/** @var $charge \Issei\Spike\Model\Token */
$token = $spike->requestToken($request);

$request = new \Issei\Spike\ChargeRequest();
$request
    ->setToken($token)
    // ...
;

/** @var $charge \Issei\Spike\Model\Charge */
$charge = $spike->charge($request);

/** @var $token \Issei\Spike\Model\Token */
$token = $spike->getToken('tok_xxxxxxxxxxxxxxxxxxxxxxxx');