NOTE: This SDK is a Release Candidate.

The PHP SDK requires PHP 7.2 and above.

PHP extensions required

  • ext-curl
  • ext-json
  • ext-mbstring
  • ext-gmp (not usually enabled by default)
  • ext-openssl

Initialization sets up the app private key and handle for the SDK to use for signing subsequent requests. The other SDK functionality will not be available until this configuration is completed. The SDK does not store this information outside of the instance that is configured. Private keys are never transmitted over the network or stored outside the scope of this instance.



// Installation
Via Composer

composer require silamoney/php-sdk:0.2.48-rc2

// Initialization
require_once 'vendor/autoload.php';

use Silamoney\Client\Api\SilaApi;
use Silamoney\Client\Domain\{BalanceEnvironments,Environments};

// Load your credentials
$appHandle = 'your app handle';
$privateKey = 'your private key';

// Create your client

// From predefined environments
$client = SilaApi::fromEnvironment(Environments::SANDBOX(), BalanceEnvironments::SANDBOX(), $appHandle, $privateKey);

// From custom URL
$client = new SilaApi('your sila endpoint url', 'your sila balance endpoint url', $appHandle, $privateKey);

// From default sandbox environments
$client = SilaApi::fromDefault($appHandle, $privateKey);

Wallet Generation

The installation step does not require ==wallet generation== the Wallet Generation code provided here are the wallet environment variables that you will need when you get to the register step. They will live with the other environment variable but you do not need them in the initial installation set up.

// Generate wallet
$wallet = $client->generateWallet();
echo $wallet->getAddress(); // Wallet public address
echo $wallet->getPrivateKey(); // Wallet private key