Helcim Payment Integration

About Helcim:

Helcim Inc. is an independent Visa, MasterCard, American Express, Discover and Interac processor and merchant account provider.
Founded in Calgary, Alberta in 2006, we are a team of talented individuals determined to out-do our bank-owned competitors. Our passion allows us to be approachable, innovative and to create a great customer experience. With a strong focus on e-commerce, we’ve become a Canadian leader in the design and operation of state-of-the-art online processing platforms.

At Helcim, our goal is to provide Canadian and US businesses with the opportunity to accept credit card payments at affordable rates. By creating a wide range of online and retail platforms, we are continuing our efforts in accommodating the transaction needs of businesses of all kinds. Through fair and transparent pricing structures, we strive to build long-term relationships with each of our merchants, clients, and partners.

Implemented Features:

FeatureLevel of Support
AuthImplemented
Sale (Auth+Capture)Implemented
CaptureImplemented
VoidImplemented
CreditImplemented
Gateway TokenizeImplemented

Authentication and Security Credentials:

Supported Parameters:

Key NameFormatMandatoryDescriptions
apiVersionNumericalRequired“1.0.1”
apiTypeAlphabeticalRequired“pxyhpci”
userNameAlphanumericRequiredAPI Username
userPassKeyAlphanumericRequiredAPI PassKey
pxyCreditCard.creditCardNumberNumericalRequiredHostedPCI Token Representing Credit Card
pxy.CreditCard.cardCodeVerificationNumericalOptionalHostedPCI Token Representing CVV Code
pxyCreditCard.expirationMonthNumericalRequiredExpiration month with 2 digits for example, for December use “12”
pxyCreditCard.expirationYearNumericalRequiredExpiration year with 4 digits for example, for 2025, use “2025”
pxyTransaction.txnCurISOAlphabeticalRequired3 letter ISO Currency Code for example, “USD” or “CAD”
pxyTransaction.txnAmountNumericalRequiredAmount to Authorize, for example for $10.50 use 10.50
pxyTransaction.merchantRefIdNumericalRequiredMerchant reference number can be order id or invoice id
pxyTransaction.txnPayNameAlphanumericRequiredHostedPCI payment profile name, for example “DEF”
pxyTransaction.txnCommentAlphabeticalOptionalShort comment
pxyCustomerInfo.emailAlphanumericRequiredCustomer’s Email Address
pxyCustomerInfo.customerIPNumericalRequiredCustomer’s IP Address
pxyCustomerInfo.customerIdAlphaNumericalOptionalCustomer’s ID
pxyCustomerInfo.invoiceNumberAlphaNumericalRequiredOrder ID
pxyCustomerInfo.billingLocation.firstNameAlphabeticalRequiredCustomer’s First Name
pxyCustomerInfo.billingLocation.lastNameAlphabeticalRequiredCustomer’s Last Name
pxyCustomerInfo.billingLocation.phoneNumberNumericalRequiredBilling Phone Number
pxyCustomerInfo.billingLocation.addressAlphanumericRequiredCustomer’s Billing Address
pxyCustomerInfo.billingLocation.cityAlphabeticalRequiredCustomer’s Billing City
pxyCustomerInfo.billingLocation.stateAlphabeticalRequiredCustomer’s Billing State or Province
pxyCustomerInfo.billingLocation.zipCodeNumericalRequiredCustomer’s Billing Zip Code or Postal Code
pxyCustomerInfo.billingLocation.countryAlphabeticalRequiredCustomer’s Billing Country
pxyCustomerInfo.shippingLocation.firstNameAlphabeticalOptionalCustomer’s First Name for Shipping
pxyCustomerInfo.shippingLocation.lastNameAlphabeticalOptionalCustomer’s Last Name for Shipping
pxyCustomerInfo.shippingLocation.phoneNumberNumericalOptionalShipping Phone Number
pxyCustomerInfo.shippingLocation.addressAlphanumericOptionalCustomer’s Shipping Address
pxyCustomerInfo.shippingLocation.cityAlphabeticalOptionalCustomer’s Shipping City
pxyCustomerInfo.shippingLocation.stateAlphabeticalOptionalCustomer’s Shipping State or Province
pxyCustomerInfo.shippingLocation.zipCodeAlphabeticalOptionalCustomer’s Shipping Zip Code or Postal Code
pxyCustomerInfo.shippingLocation.countryAlphabeticalOptionalCustomer’s Shipping Country

API Endpoint URL:

https://[HPCI_API_HOSTENAME]/iSynSApp/paymentAuth.action

API Request Body:

apiVersion=1.0.1&apiType=pxyhpci&userName=[APIuserName]&userPassKey=[APIPassKey]&pxyCreditCard.creditCardNumber=[CreditCardToken]&pxyCreditCard.cardCodeVerification=[CVVToken]&pxyCreditCard.expirationMonth=[ExpiryMonth]&pxyCreditCard.expirationYear=[ExpiryYear]&pxyTransaction.txnCurISO=[Currency]&pxyTransaction.txnAmount=[Amount]&pxyTransaction.merchantRefId=[UniqueMerchantRefID]&pxyTransaction.txnPayName=[ProfileName]&pxyTransaction.txnComment=[ShortComment]&pxyCustomerInfo.billingLocation.firstName=[CustomerFirstName]&pxyCustomerInfo.billingLocation.lastName=[CustomerLastName]&pxyCustomerInfo.billingLocation.address=[BillingStreetAddress]&pxyCustomerInfo.billingLocation.city=[BillingCity]&pxyCustomerInfo.billingLocation.state=[State/Province]&pxyCustomerInfo.billingLocation.zipCode=[ZipCode/PostalCode]&pxyCustomerInfo.billingLocation.country=[Country]&pxyCustomerInfo.shippingLocation.firstName=[ShippingFirstName]&pxyCustomerInfo.shippingLocation.lastName=[ShippingLastName]&pxyCustomerInfo.shippingLocation.address=[ShippingStreetAddress]&pxyCustomerInfo.shippingLocation.city=[ShippingCity]&pxyCustomerInfo.shippingLocation.state=[ShippingState/Province]&pxyCustomerInfo.shippingLocation.zipCode=[ShippingZipCode/PostalCode]&pxyCustomerInfo.shippingLocation.country=[ShippingCountry]

Helcim Gateway Tokenization

Parameters Required for Gateway Tokenization:
PARAMETERSVALUE
pxyCreditCard.creditCardNumber[HostedPCI Token]
pxyCreditCard.cardCodeVerification[HostedPCI CVV place holder]
pxyCreditCard.expirationMonth[Credit Card expire month]
pxyCreditCard.expirationYear[Credit Card expire year]
pxyTransaction.txnPayName[Profile Name provided by HostedPCI]
pxyCustomerInfo.billingLocation.firstName[Client’s first name as it appears on the card]
pxyCustomerInfo.billingLocation.lastName[Client’s last name as it appears on the card]
Optional Parameters for Gateway Tokenization:
PARAMETERSVALUE
pxyCustomerInfo.customerId[customer id/code]
pxyCustomerInfo.customerId[Customers IP Address]

Helcim Gateway Tokenization API Call:

Request:

pxyCreditCard.creditCardNumber=411100..........&apiVersion=1.0.1&userPassKey=[HPCIPasskey]&pxyCreditCard.expirationMonth=09&pxyCreditCard.expirationYear=2022&pxyCustomerInfo.billingLocation.lastName=Name&pxyCustomerInfo.billingLocation.firstName=Test&userName=[HPCIUsername]&pxyCreditCard.cardCodeVerification=200&pxyTransaction.txnPayName=[HelcimPayProfile]&apiType=pxyhpci

Response:

status=success&operId=&tokenId=646842728&pxyResponse.threeDSEnrolled=&pxyResponse.threeDSAcsUrl=&pxyResponse.threeDSErrorDesc=&pxyResponse.processorRefId=19749973&pxyResponse.processorType=helcimResponse&pxyResponse.threeDSMessageId=&pxyResponse.threeDSSessionId=&pxyResponse.cardOnFileIssuerId=&pxyResponse.mappedParams=txnResponse.ccTypeEst%3DVISA&pxyResponse.threeDSARS=&pxyResponse.threeDSOrderId=&pxyResponse.gatewayToken.status=&pxyResponse.threeDSErrorSubId=&pxyResponse.responseStatus.name=&pxyResponse.threeDSReasonDesc=&pxyResponse.responseAVS2=&pxyResponse.responseStatus=approved&pxyResponse.gatewayToken=76aceba278b45f79c9cb30&pxyResponse.responseAVS1=X&pxyResponse.responseAVS4=&pxyResponse.responseStatus.description=APPROVED&pxyResponse.threeDSCAVV=&pxyResponse.responseAVS3=&pxyResponse.gatewayToken.fullNativeResp=&pxyResponse.threeDSXid=&pxyResponse.threeDSProtoVersion=&pxyResponse.responseStatus.reasonCode=&pxyResponse.threeDSPARequest=&pxyResponse.responseCVV1=M&pxyResponse.threeDSECI=&pxyResponse.responseCVV2=&pxyResponse.fullNativeResp=date%3D2021-07-13%26amount%3D0%26approvalCode%3DT6E9ST%26cvvResponse%3DM%26customerCode%3DCST99792807%26type%3Dverify%26transactionId%3D19749973%26cardToken%3D76aceba278b45f79c9cb30%26avsResponse%3DX%26response%3D1%26currency%3DUSD%26time%3D10%253A31%253A59%26responseMessage%3DAPPROVED%26cardNumber%3D4111********1111&pxyResponse.threeDSErrorSubIdType=&pxyResponse.threeDSAcsPageData=&pxyResponse.gatewaySubToken2=&pxyResponse.threeDSTransactionId=&pxyResponse.gatewaySubToken1=&pxyResponse.gatewaySubToken3=&pxyResponse.merchantRefId=&pxyResponse.threeDSErrorId=&pxyResponse.txnPayName=DEF_HELCIM2&pxyResponse.responseStatus.code=1&pxyResponse.threeDSReasonCode=&pxyResponse.threeDSSRS=