Payment API
Process credit card payments online using the Payment API.
The Payment API allows you to process credit card payments online, through your existing website or application. Payment types include Purchase, Preauthorization, Capture, Verify, Refund, Reverse, and ACH Withdraw.
A successful payment processed through the Payment API will create a transaction
object in the Helcim system. Where an existing customerCode
or invoiceNumber
was not associated with the payment, new ones will be created and returned in the response.
Payment API functionality
The Payment API allows you to process a range of credit card payment types that will create a transaction object in the Helcim system.
Payments
A transaction
object is created as the result of a credit card payment attempt and is the primary means through which you will charge your customers for goods and services through the Helcim API.
A transaction stores a number of core details about a payment, including:
- Unique
transactionId
andcardBatchId
values to manage the payment and it's associated credit card batch. - Information about the
type
,amount
,status
, andcurrency
of the payment. - Information about the card type used to process the payment, the first 6 and last 4 digits of the card number, the cardholder name, and the unique
cardToken
for thecard
object created by the payment. - The
customerCode
andinvoiceNumber
for the customer and invoice objects associated with the payment, as well as the user that processed the payment. - The unique approval code, and AVS or CVV response values from the issuing bank.
ACH bank payments
A
transaction
object created as the result of an ACH bank payment will differ from a credit card transaction. It has a number of unique parameters within the object related to ACH bank payments.
Card batches
A card batch
object is created as a the result of a card payment processed through any Helcim payment tool, including the Payment API or HelcimPay.js. A card batch may have one or more transaction
objects stored within it and once closed will go through a settlement process and ultimately be deposited into the provided bank account.
A card batch stores a number of core details about your payments, including:
- The unique
cardBatchId
value that is also stored in anytransaction
object included in the card batch. - The date values for when the card batch was created, last updated, and closed.
- The card
batchNumber
and whether the card batch is in an open or closed state. - The card
terminalId
that the transactions in this card batch were processed on.
Card terminals
A card terminal
object is created when a Helcim merchants account is onboarded with our acquiring bank, or when a developer test account is created for integration testing.
A card terminal stores a number of core details about your processing, including:
- A unique card
terminalId
that can be optionally passed in requests to Payment API endpoints or HelcimPay.js to specify the card terminal to process on. - The
currency
of the card terminal for payments processed through it. - The current
status
of the card terminal, indicating whether it is active or inactive. - An
address
sub-object that stores the address given during account registration.
Payment API endpoints
Payments
Create transaction
objects by processing credit card payments using the following endpoints.
- Process a credit card payment
- Preauthorize a credit card payment
- Capture a credit card payment
- Reverse a credit card payment
- Refund a credit card payment
- Verify credit card details
Retrieve existing transaction
objects using the following endpoints.
Card batches
Retrieve and settle existing card batch
objects using the following endpoints.
Card terminals
Retrieve existing card terminal
objects using the following endpoint.
Updated 16 days ago