Payment types and payment methods

Through HelcimPay.js you can control the type of payment being processed and what payment methods are displayed.

Configuring your HelcimPay.js payment

Through your HelcimPay.js initialize request, you can control a range of variables related to the payment you would like your customer to process through their checkout session.

Using the paymentMethod parameter you can determine if your customer is shown only the credit card or ACH bank payment fields based on your preferences, or if they are shown both so that they can choose their preferred payment method. The paymentMethod that you select determines the paymentType that is available for your customer.

  • When initialized with a paymentMethod of "cc" or "cc-ach", you have access to the purchase, preauth, and verify payment types.
  • When initialized with a paymentMethod of "ach", you have access to purchase or verify payment types.
  • When initialized without a paymentMethod the checkout session will default to "cc" only.
Payment TypeDescription
purchaseWill process an immediate one-time payment for the amount specified in your initialize request, against the credit card or bank details provided by the customer.
preauthWill process a pre authorized payment for the amount specified in your initialize request against the credit card provided by the customer. Can be captured using the Process Capture Transaction endpoint in the Payment API, or manually in the Payments section of your Helcim account.
verifyWill process a verify payment for an amount of 0, that verifies and tokenizes the credit card or bank details provided by the customer. Returns a cardToken or bankToken value in the payment response that can be used to process future payments securely through the Payment API.

The amount value passed in your initialize request will determine the amount displayed in the payment modal to the customer. A verify payment must have an amount value of 0. If initializing with Helcim Fee Saver, the convenience fee amount is additional to your base amount.

The currency value passed in your initialize request will determine the currency of the payment processed.

  • Canadian based merchants may process credit card payments with either "CAD" by default, or "USD" if their Helcim accounts are configured to allow multi currency processing. ACH payments will only process in "CAD", the core local currency of your Helcim business account, regardless of the currency value passed.
  • US based merchants may process credit card and ACH payments in "USD" only.

The taxAmount value passed in your initialize request can be used to determine whether level 2 processing rates are applied to eligible transactions. This parameter should be included in the checkout session amount value and does not automatically increase that value is passed.

📘

Cross border ACH payments

The Helcim system does not allow cross border ACH payments. All ACH payments for Canadian or US based merchants must be processed in the core local currency of their Helcim business account.

Processing a refund or reverse payment

HelcimPay.js can process only positive transactions, which includes purchase, preauthorization, or verify payment types.

In order to refund or reverse a payment that was processed through HelcimPay.js, you will need to integrate your application with the Helcim Payment API.

Processing a refund

In order to process a full or partial refund for a purchase or capture payment, you can use the Process Refund Transaction endpoint.

  • The payment being refunded must be in a closed credit card batch, which close at 5PM in your local time by default, unless manually settled.
  • If the payment is in an open credit card batch, the payment should be reversed instead in order to avoid processing fees for the payment.

Processing a reverse

In order to process a full reverse for a purchase or capture payment, you can use the Process Reverse Transaction endpoint.

  • The payment being reversed must be in an open credit card batch, which close at 5PM in your local time by default, unless manually settled.
  • Reversing a payment will stop the payment going through settlement and avoid processing fees for that transaction.
  • If the payment is in a closed credit card batch, the payment will need to be refunded instead.

Processing a partial reverse is not possible. In situations where you do not need to return the full amount to a customer, and should process a full reverse and then recharge the correct amount.