incevio / cybersource-wrapper
This is a simple cybersource wrapper
Installs: 2 241
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 2
Open Issues: 1
Requires
- firebase/php-jwt: 5.0.0
- illuminate/support: ^5
This package is auto-updated.
Last update: 2024-10-29 05:47:20 UTC
README
This package wraps the Cybersource Secure Acceptance REST API in a convenient, easy to use package for Laravel.
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Requirements
- PHP 5.6+
- Enable cURL PHP Extension
- Enable JSON PHP Extension
- Enable PHP_APCU PHP Extension. You will need to download it for your platform (Windows/Linux/Mac)
- CyberSource Account
- CyberSource API Keys
Installation
composer require incevio/cybersource-wrapper
If you use laravel < 5.5 you must add this to config\app.php
Providers Array
Incevio\Cybersource\Providers\CybersourceServiceProvider::class
Facade Array
"CybersourcePayments" => Incevio\Cybersource\Facades\CybersourcePaymentsFacade::class
Publishing Configuration
php artisan vendor:publish --tag=cybersource-config-file
To set your own sandbox credentials for an API request, configure the following information in cybersource_config.php file:
- Http
$this->authType = "http_signature"; $this->merchantID = "your_merchant_id"; $this->apiKeyID = "your_key_serial_number"; $this->screteKey = "your_shared_secret";
- Jwt
$this->authType = "jwt"; $this->merchantID = "your_merchant_id"; $this->keyAlias = "your_merchant_id"; $this->keyPass = "your_merchant_id"; $this->keyFilename = "your_merchant_id";
Switching between the sandbox environment and the production environment
CyberSource maintains a complete sandbox environment for testing and development purposes. This sandbox environment is an exact duplicate of our production environment with the transaction authorization and settlement process simulated. By default, this SDK is configured to communicate with the sandbox environment. To switch to the production environment, set the appropriate environment constant. For example:
// For TESTING use $this->runEnv = "cyberSource.environment.SANDBOX"; // For PRODUCTION use $this->runEnv = "cyberSource.environment.PRODUCTION";
The API Reference Guide provides examples of what information is needed for a particular request and how that information would be formatted. Using those examples, you can easily determine what methods would be necessary to include that information in a request using this SDK.
Usage REST API Payments
Example usage using Facade:
$cliRefInfoArr = [
"code" => "test_payment"
];
$amountDetailsArr = [
"totalAmount" => "102.21",
"currency" => "USD"
];
$billtoArr = [
"firstName" => "John",
"lastName" => "Doe",
"address1" => "1 Market St",
"postalCode" => "94105",
"locality" => "san francisco",
"administrativeArea" => "CA",
"country" => "US",
"phoneNumber" => "4158880000",
"company" => "ABC Company",
"email" => "test@cybs.com"
];
$paymentCardInfo = [
"expirationYear" => "2031",
"number" => "4111111111111111",
"securityCode" => "123",
"expirationMonth" => "12"
];
$response = $response = CybersourcePayments::processPayment($cliRefInfoArr, $amountDetailsArr, $billtoArr, $paymentCardInfo, "true");
Developed By
- Incevio - Web Development Team - www.incevio.com
License
This project is licensed under the MIT License