PHPackages                             trillzglobal/virtual\_card - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. trillzglobal/virtual\_card

ActiveLibrary[Payment Processing](/categories/payments)

trillzglobal/virtual\_card
==========================

Generating Virtual Visa Card for Customer Registered on Application

045PHP

Since May 19Pushed 2y ago2 watchersCompare

[ Source](https://github.com/tingodev/virtual_card)[ Packagist](https://packagist.org/packages/trillzglobal/virtual_card)[ RSS](/packages/trillzglobal-virtual-card/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (2)DependenciesVersions (2)Used By (0)

Virtual Card Creation
---------------------

[](#virtual-card-creation)

*Language: PHP*

Package is used to communicate with VISA for generating Cards. It includes -Virtual Card -Instant Card -Check Balance

`composer require trillzglobal/virtual_card`

Usage
=====

[](#usage)

`use TrillzGlobal\VirtualCard\VirtualCard;`

`$create = new VirtualCard($base_url, $username,$password, $programId);`

$base\_url =

*Confirm if You can reach host with a ping*

*$requestId -&gt; This is a unique identifier of each request*

`$create->testPing($requestId, $pingId)`

*To generate a new Card*
========================

[](#to-generate-a-new-card)

*$data -&gt; Contains array of data*

*"accountSource"=&gt;"Account Source must be provided",**"address1"=&gt; "First Address must be provided",**"city"=&gt; "Customer City is needed",**"birthDate"=&gt; "Date of Birth to be provided",**"country"=&gt; "Country Name needed",**"emailAddress"=&gt; "Valid Email Should be provided",*\_"firstName"=&gt; "Firstname of Customer must be \_provided", *"idType"=&gt; "Valid ID Type needed",**"idValue"=&gt; "Provide valid ID type",**"lastName"=&gt; "Customer Lastname Needed",*\_"countryCode"=&gt; "Country code needed for mobile \_Number", *"number"=&gt; "MObile Number needed",**"preferredName"=&gt; "Prefered Name cannot be empty",**"referredBy"=&gt; "ReferredBy must be provided",**"stateRegion"=&gt; "State Region must be provided",**"subCompany"=&gt; "Sub Company must be provided",*

*type = VIRTUAL/INSTANT*

`$create->generateCard($data, $requestId, $type)`

*Get transaction for Duration*
==============================

[](#get-transaction-for-duration)

*$accountId =&gt; Id recieved when card was created**$startDate =&gt; Date to start reporting 03-FEB**$endDate =&gt; Date to stop reporting 03-APR**$numberOfTrans =&gt; Number of record to pull*

`$create->getTransaction($data, $requestId)`

*Get Card Balance*
==================

[](#get-card-balance)

*$accountId =&gt; Id recieved when card was created*

`$create->getBalance($accountId, $requestId)`

*Transfer Between Cards*
========================

[](#transfer-between-cards)

*"currencyCode"=&gt;"Use a valid country code",**"fromAccountId"=&gt; "From account cannot be empty",**"last4Digit"=&gt; "Last 4 digit of card to be provided",**"paymentType"=&gt; "Payment Type is needed",**"toAccountId"=&gt; "To Account needed",**"transferAmount"=&gt; "Transfer Amount Should be provided",**"fromCardReferenceMemo"=&gt; "To Card Reference Account needed",**"toCardReferenceMemo"=&gt; "From Card Reference Should be provided"*

`$create->transferBetweenCards($data, $requestId)`

*Transfer to Card*
==================

[](#transfer-to-card)

*"currencyCode"=&gt;"Use a valid country code",**"last4Digit"=&gt; "Last 4 digit of card to be provided",**"paymentType"=&gt; "Payment Type is needed",**"transferAmount"=&gt; "Transfer Amount Should be provided",**"referenceMemo"=&gt; "To Card Reference Account needed"*

`$create->transferToCard($data, $requestId)`

*Update Card Status*
====================

[](#update-card-status)

*"newCardStatus"=&gt;"Card Status must be Active/Inactive",**"last4Digit"=&gt; "Last 4 digit of card to be provided",**"accountId"=&gt; "Provide Customer Account ID",**"mobileNumber"=&gt; "Customer Mobile number must be provided"*

`$create->updateStatus($data, $requestId)`

*Get Balance*
=============

[](#get-balance)

`$create->getBalance($accountId, $requestId)`

*Get Card Details*
==================

[](#get-card-details)

For non PCI DSS Compiant Organization, This will only work routing through proxy. Therefore, proxy configuration must be implemented

`$virtual_card->proxy_username = 'USs7SGaAw3UtSxL4RAstX';``$virtual_card->proxy_password='b61c24ba-ebd8-4cbf-e2ffb51cd65';``$virtual_card->proxy = 'http://'.$virtual_card->proxy_username.':'.$virtual_card->proxy_password.'@127.0.0.23:8080';``$virtual_card->set_proxy =1;``$virtual_card->proxy_program_id = 'tok_sandbox_gsaBfTCohDgE4vYC9';``$virtual_card->proxy_authorization = 'tok_sandbox_tzfBba6tCVWEKWRj9Lt';`

*"last4Digit"=&gt; "Last 4 digit of card to be provided",*

`$create->getCardDetails($data, $requestId)`

array( \[accountSource\] =&gt; SKYE \[address1\] =&gt; First Address must be provided \[birthDate\] =&gt; 02-APR \[city\] =&gt; Abuja \[country\] =&gt; NG \[emailAddress\] =&gt; \[firstName\] =&gt; Michael \[idType\] =&gt; 3 \[idValue\] =&gt; AX3947573485 \[lastName\] =&gt; Ojo \[countryCode\] =&gt; 234 \[number\] =&gt; 9032878128 \[preferredName\] =&gt; Michael Ojo \[referredBy\] =&gt; 12700577 \[stateRegion\] =&gt; FC \[subCompany\] =&gt; 12700577 \[expirationDate\] =&gt; FEB-2024 \[accountId\] =&gt; 12703832 \[startDate\] =&gt; 05-FEB \[endDate\] =&gt; 20-APR \[numberOfTransaction\] =&gt; 30 \[detail\] =&gt; Funding My card \[currencyCode\] =&gt; NGN \[last4Digits\] =&gt; 3311 \[transferType\] =&gt; WALLETTOCARD \[referenceMemo\] =&gt; Michael Account Funding \[transferAmount\] =&gt; 2398 \[mobileNumber\] =&gt; 9032878128 \[newCardStatus\] =&gt; Active \[newCardStatus\] =&gt; Active \[newCardStatus\] =&gt; Active )

###  Health Score

16

—

LowBetter than 4% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity24

Early-stage or recently created project

 Bus Factor1

Top contributor holds 95.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/ddca16aa382e93f1f89ef151bc8ea29cafe2f8cdb2970c193243097bfc0f4c00?d=identicon)[trillzglobal](/maintainers/trillzglobal)

---

Top Contributors

[![trillzglobal](https://avatars.githubusercontent.com/u/44380037?v=4)](https://github.com/trillzglobal "trillzglobal (42 commits)")[![edwardoboh](https://avatars.githubusercontent.com/u/64743036?v=4)](https://github.com/edwardoboh "edwardoboh (1 commits)")[![layor2257](https://avatars.githubusercontent.com/u/49678841?v=4)](https://github.com/layor2257 "layor2257 (1 commits)")

### Embed Badge

![Health badge](/badges/trillzglobal-virtual-card/health.svg)

```
[![Health](https://phpackages.com/badges/trillzglobal-virtual-card/health.svg)](https://phpackages.com/packages/trillzglobal-virtual-card)
```

###  Alternatives

[msilabs/bkash

bKash Payment Gateway API for Laravel Framework.

181.2k](/packages/msilabs-bkash)[binkode/laravel-paystack

A description for laravel-paystack.

112.1k](/packages/binkode-laravel-paystack)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
