Cards

The Card Object

A card object is created and stored against a customer object, when any payment is processed through the Helcim system with credit card details. A customer's card information can be saved through a range of Helcim payment tools, including the Payment API, HelcimPay.js, Payment Pages, Virtual Terminal, and more.

A card stores a number of core payment details for the customer, including:

  • Non-sensitive cardholder details, such as cardholder name, first 6 and last 4 of the card number, and the card expiry date.
  • Unique cardToken value to allow for processing within the Payment API.
  • A range of date values indicating when the card was created and last updated.
// Example card object

{
    "id": 21622095,
    "cardHolderName": "John Doe",
    "cardF6L4": "5454545454",
    "cardToken": "a63d4eb597114b06bb7a14",
    "cardExpiry": "0125",
    "dateCreated": "2024-06-10 13:45:41",
    "dateUpdated": "2024-06-10 13:51:40"
  }

Tokenizing Customer Credit Card Details

The Helcim system will verify and tokenize any credit card information used to process a payment through our payment tools, storing this in the following places.

  • If a payment is linked to an existing customer before processing, the transaction will be linked to the customer and tokenized card details used for that payment will be stored in the customer object.
  • If a payment is not linked to an existing customer before processing, the Helcim system will create a basic customer object that the transaction will be linked to and tokenized cards details will be stored in.
  • In the merchants Card Vault for later processing.

📘

Using HelcimPay.js to tokenize credit card details in a secure manner

To reduce your PCI compliance scope and capture credit card details in a secure manner, we recommend merchants integrate with HelcimPay.js to create a unique cardToken value that can be used to process payments within the Helcim system without handling full credit card details.

To better understand reducing your PCI compliance scope, we recommend reviewing the following documentation.

Setting a Card as Default

Every customer within the system can have a single default card object. This default card is the primary card displayed in various Helcim payment tools, such as HelcimPay.js and Virtual Terminal. It is also the card that automated payments through our Recurring Payments and Recurring Invoice solutions will process on.

If a customer updates their credit card details, you can set those new payment details as the default for the customer using the following options.

  • When capturing the payment details through HelcimPay.js, by passing a value of "1" for the setAsDefaultPaymentMethod parameter in your initialize request.
  • After the payment details have been captured, by using the Set customer card as default endpoint in the Customer API.

Card Endpoints

Retrieve customer cards and set a new default card for a customer using the following endpoints.

EndpointDescriptionVersion
Get customer cardRetrieve a customer card, based on the customerId and cardId.V2.1
Get customer cardsRetrieve an array of customer cards, based on the customerId.V2.1
Set customer card as defaultSet a customer card as the default card for processing using the new V2.2 endpoint. Default cards will be used for all recurring payments and display as the primary card in many Helcim payment tools.V2.2