Raw Capture

In the basic get it started we showed how to use the library with unified interface or in other words Payment model. Sometimes you need completely custom solution.

prepare.php

Installation and configuration are same and we have to modify only a prepare part.

Here you have to modify a gatewayName value. Set it to stripe_js or any other you want. The rest remain the same as described in basic get it started documentation.

<?php
// prepare.php

use Payum\Core\Model\ArrayObject;
use Payum\Core\Security\SensitiveValue;

include __DIR__.'/config.php';

$gatewayName = 'stripe_js';

/** @var \Payum\Core\Payum $payum */
$storage = $payum->getStorage(ArrayObject::class);

$details = $storage->create();
$details['amount'] = '10.00'; 
$details['currency'] = 'USD';
$details['card'] = new SensitiveValue([
    'number' => '4242424242424242', 
    'expiryMonth' => '6', 
    'expiryYear' => '2016', 
    'cvv' => '123',
]);

$details["amount"] = '10.00';
$details["currency"] = 'USD';
$details["description"] = 'A description';
$details["card"] = 'aStripeToken';

// or
//
//$details["card"] = new SensitiveValue(array(
//   'number' => '4111111111111111',
//   'exp_month' => '10',
//   'exp_year' => '2018',
//   'cvc' => '123',
//));

$storage->update($details);

$captureToken = $payum->getTokenFactory()->createCaptureToken($gatewayName, $details, 'done.php');

header("Location: ".$captureToken->getTargetUrl());

Supporting Payum

Payum is an MIT-licensed open source project with its ongoing development made possible entirely by the support of community and our customers. If you'd like to join them, please consider:

Last updated