Hosted Payment Page

Overview

Hosted Payment Page (HPP) is a great solution that allows a quick way to integrate with Check Commerce. With little information from the customer, you are able to create a link and send your customers to us.

The Process

Creating a Hosted Payment page is a simple process. ( HPP must be activated on your account to process using the HPP page solution. Please Message our Boarding team to activate.)

  1. Request a Link

  2. Provide the Link to your customers

  3. They process the payment using the HPP

  4. We send back details from the transaction.

The entire process can be seen simply below.

There are two links that need to be used to complete a HPP request. Below are the sandbox and production links that are needed. See details below for details on how to use them.

Route

Sandbox

Production

/CheckApi/Auth

https://sandbox.checkcommerce.com/CheckApi/Auth

https://www.checkcommerce.com/CheckApi/Auth

/CheckApi/Link

https://sandbox.checkcommerce.com/CheckApi/HostedPage/Link

https://www.checkcommerce.com/CheckApi/HostedPage/Link

All request sent must be made to our REST API and the payload is a JSON payload

Step one in Requesting a link is generating a JWT token.

  1. Create an Authorization Token using /CheckAPI/Auth

  2. This will pass back a JWT token that can be used to create a Link request

Example Request

{
	"USERNAME":"YOUR_USERNAME",
	"PASSWORD":"YOUR_PASSWORD"
}

Example Response

{
    "Success": true,
    "IsValid": true,
    "Value": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.POstGetfAytaZS82wHcjoTyoqhMyxXiWdR7Nn7A29DNSl0EiXLdwJ6xC6AfgZWF1bOsS_TuYI3OG85AmiExREkrS6tDfTQ2B3WXlrr-wp5AokiRbz3_oB4OxG-W9KcEEbDRcZc0nH3L7LzYptiy1PtAylQGxHTWZXtGz4ht0bAecBgmpdgXMguEIcoqPJ1n3pIWk_dUZegpqx0Lka21H6XxUTxiy8OcaarA8zdnPUnV6AmNP3ecFawIFYdvJB_cm-GvpCSbr8G8y_Mllj8f4x9nBH8pQux89_6gUY618iYv7tuPWBFfEbLxtF2pZS6YC1aSfLQxeNe8djT9YjpvRZA"
}

2. Create a link request /CheckApi/HostedPage/Link

Using the JWT token from the first step you can now generate a HPP Link.

Below is an example of a link request. It contains Customer details, Your Business Details, and Order details. This information is used for the HPP.

{
  "Customer": {
    "ReferenceNo": "YOUR_REFERENCE_NUMBER",
    "Name": "Jane Doe",
    "Address1": "Street 1",
    "City": "Texas",
    "State": "TX",
    "Zip": "75001",
    "Phone": "5555555555",
    "Email": "customeremail@email.com"
  },
  "Business": {
    "MID": "YOUR_MID",
    "Name": "YOUR_COMPANY_NAME"
  },
  "Order": {
    "CustomerOrderReferenceNo": "CUSTOMER_ORDER_REFERENCE_NUMBER",
    "CustomerOrderType": "General",
    "SubTotal": 1.0,
    "Total": 1.10,
   "ReturnUrl": "REDIRECT_URL"
  },
  "OrderItems": [
    {
      "Name": "Test product",
      "Description": "first deposit Payment",
      "Quantity": 1,
      "Price": 1.0
    }
  ]
}

Example Response

https://test.checkcommerce.com/CheckPortal/hostedpage?id=q2d1_4yLJ40qNl59W16rZU4ybV1E-2BKDNrYA-DU0TeLbEuG_EwbTjBfcCr3WXwIp76S9jDK6ZhqXa_3Xniguw

Provide Link to Customer

This can be supplied to the customer as a redirected page, a popup page or in an iFrame.

There are a number of parameters that can be passed that effect how the HPP acts and feels.

This can be configured to redirect to a link upon completion.

Type

Description

Instantlink

Boolean

The instant link allows for the Invoice page to be hidden and only Plaid or Account / Routing number flow to show.

We Send back Details to the Merchant

We provide a number of options for providing feedback.

If a redirect URL is provided we send back details regarding the transactions in a query string including.

Name

Details

TransactionId

We provide the transaction Id from our system for later reference using our API

ConsumerId

The customer Id of the customer. We create this as part of the transaction process.

Status

This is a text status from our system.

CustomerOrderReferenceNo

This is the reference number you provide for tracking.

Customer Processes Payment through HPP

The hosted payment page has a number of option and configurations associated with it. However the general process remains similar.

  1. Display Order Details

  2. Link Bank account

  3. Process Payment

  4. Finish / Redirect

If you have Push Notifications turned on we are able to send details to a webhook as a JSON object.

Push Notifications

See Below for examples of the flows.

Plaid Flow

Visual

Notes

This is the initial Page displayed

Plaid Initialization

This is after an account is linked through plaid

After selecting Pay

What is displayed when a payment is complete

Instant Link Flow

Visual

Notes

This plaid flow will be all that the customer sees. They will not see the invoice page.

Non Plaid Flow

Visual

Notes

The initial page displayed

Linking a new Routing number and account number

Linked account and account selection

Hosted Page Request

The hosted page request object is made up of several smaller objects each is listed below with details.

Business Object

Parameter Name

Type

Required

Notes

MID

String

Yes

6 Digit Merchant Number

Name

String (Max 256)

Yes

Address

String (Max 256)

No

PhoneNumber

String (Max 10)

No

CSS_URL

String (Max 256)

No

The URL where Override CSS is located. This allows you to control how the page looks.

LogoURL

String (Max 256)

No

An optional Logo to be placed on the page.

Customer Object

Parameter Name

Type

Required

Notes

Name

String (Max 50)

Yes

MID

String

No

Merchant Number. If one is not provided the Business MID is used.

Address1

String (Max 50)

Yes

Address2

String (Max 50)

No

City

String (Max 50)

No

State

String (Max 2)

No

Must be a Valid US State Abbreviation

Zip

String (Max 10)

No

Phone

String (Max 10)

Depends

Either Phone, Or Mobile Phone is Required

MobilePhone

String (Max 10)

Depends

Either Phone, Or Mobile Phone is Required

Email

String (Max 50)

SSN

String

No

Customer Social Security Number should be either the full 9 digits or the last 4 digits.

DOB

String

No

ReferenceNo

String (Max 256)

Yes

Your Reference number for this customer. If passed in on Subsequent requests The same user data and linked accounts will display on the HPP portal.

Order Object

Parameter Name

Type

Required

Notes

CustomerOrderReferenceNo

String (Max 40)

Yes

CustomerOrderType

String (Max 100)

Yes

SubTotal

decimal (>=0)

No

Tax

decimal (>=0)

No

TaxPercent

decimal (>=0)

No

DeliveryFee

decimal (>=0)

No

Total

decimal (>0)

Yes

ReturnUrl

String (Max 2083)

No

This will be the URL used to return to after the payment is complete

Order Items Array

Order items are a way to add an itemized list of charges. At least one item is required.

Parameter Name

Type

Required

Notes

Name

String (Max 256)

Yes

Description

String (Max 256)

Yes

Quantity

Int (>0)

Yes

Price

decimal (>0)

Yes

Discount Items Array

Discount Items provide a way to list any discounts provided. These are not required but if they are provided the below parameters are required.

Parameter Name

Type

Required

Notes

Name

String (Max 256)

Yes

Description

String (Max 256)

Yes

Code

string (Max 50)

No

Price

decimal (>0)

Yes