Get Started Card Payments Check Payments Recurring Payments Gift & Loyalty Payments Fraud Plugins & Integrations Reporting Demo Semi Integrated Fully Integrated Terminals POS Middleware Connectors Portico Gateway Documentation API Overview Gift & Loyalty Bill Pay Payroll Introduction Developer Support Authentication Credit Card Gift Card eCheck & ACH Recurring Reporting Error Handling Semi-Integrated Devices Heartland Profac Global Payments eCommerce Tokenization Demo Testing Knowledge Center GitHub Partnerships
Get sandbox account
Get sandbox account

Stored Value

Cost savings on smaller-ticket transactions with your own stored value wallet.


Save money by creating your own stored value wallet. Customers can add value to the wallet and top-up with automated rules. You use the value in the wallet to charge customers for each purchase instead of a credit card transaction, saving on transaction processing fees. Heartland processes millions of stored value transactions per day and can deliver a turn-key solution. Link to the SDK for Gift

Add Value to a Gift Card

For the below sections, the code samples will reference the following objects:

Prepare to charge a credit card

using GlobalPayments.Api.Entities;
using GlobalPayments.Api.PaymentMethods;

var card = new CreditCardData {
    Token = "single- or multi-use token"
};

var address new Address {
    PostalCode = "12345"
};
<?php
use GlobalPayments\Api\Entities\Address;
use GlobalPayments\Api\PaymentMethods\CreditCardData;

$card = new CreditCardData();
$card->token = "single- or multi-use token";

$address = new Address();
$address->postalCode = "12345";
import com.global.api.entities.Address;
import com.global.api.paymentMethods.CreditCardData;

CreditCardData card = new CreditCardData();
card.setToken("single- or multi-use token");

Address address = new Address();
address.setCode("12345");
# coming soon
from globalpayments.api.entities import Address
from globalpayments.api.payment_methods import CreditCardData

card = CreditCardData()
card.token = 'single- or multi-use token'

address = Address()
address.postal_code = '12345'
import { Address, CreditCardData } from "globalpayments-api";

const card = new CreditCardData();
card.token = "single- or multi-use token";

const address = new Address();
address.code = "12345";

Not using tokens?

Our SDKs support using tokens in place of card data, but using tokens is optional if you have other requirements. Review other options in the Credit Card section of our SDK documentation.

Using Multi-Use Tokens

Add Value to a Gift Card

You can add a value to an existing Gift Card

Add to Gift Card

<?php
$response = $card->addValue(10)
    ->withCurrency("USD")
    ->execute();
var response = card.AddValue(10m)
    .WithCurrency("USD")
    .Execute();
import com.global.api.entities.Transaction;
import java.math.BigDecimal;

Transaction response = card.addValue(new BigDecimal("10"))
    .withCurrency("USD")
    .execute();
response = card.add_value(10) \
    .with_currency('USD') \
    .execute()
# coming soon
const response = await card.addValue(10)
  .withCurrency("USD")
  .execute();

Next Steps

Learn more about eWallet payments with:

Heartland