Overview

Introduction

Prizm Pay is a powerful online payment services platform, which provides secure, multi-channel, multi-lingual and multi-currency payment services. It is used by many renowned companies and organizations in the region.

Purpose and Objective

The main purpose of this document is to provide merchants with the necessary technical information during their credit card payment gateway implementation for their applications and platforms. This manual contains a technical overview, the payment flows as well as the API formats required between Prizm Pay and the merchant system. This guide also provides setup instructions and sample scripts which merchants will find useful with the integration.

Contact Information

Prizm Pay Limited

16/F SML Tower, 165 Hoi Bun Road

Kwun Tong, Kowloon, Hong Kong S.A.R.

 

Technical questions: [email protected]

Getting Started

Below you'll find tutorials that will teach you how to use Prizm Pay, and reference documentation for all the moving part.

Merchant Account

The account provided by Prizm Pay via email or letter. The account includes:

 

Merchant ID (MID)

The unique identifier for your account, the most important value and needed for a lot of places.

 

Login ID & Password

The master Login ID and Password for login Merchant Panel.

 

Merchant Panel

The online interfaces for manage your merchant account, you can … 

  • View and update account information
  • View transactions summary and details
  • Process refund
  • Create other users and user groups
  • Custom payment settings
  • More ...

  

 
Production Merchant Panel

https://backend.prizmmpay.com/merchant/

 

Testing Merchant Panel

https://backend-test.prizmmpay.com/merchant/

 

Secure Hash

SHA-256 Hash feature allows you to authenticate that transaction responses are securely received from Prizm Pay. Prizm Pay uses the hash field for this feature.

 

How It Works

The SHA-256 is a specific way of encrypting information to make it unreadable but unique to a given transaction. It allows a merchant to verify that the results of the transaction are actually from Prizm Pay. Since every scripting language supports SHA-256 Hashes, you can create your SHA-256 hash value using the same information that we used for the encryption. If the SHA-256 Hash that you create matches the SHA-256 Hash that you received, then you know that only Prizm Pay could have sent the transaction response.

 

Creating the SHA-256 Hash

A static secret key is required to create the SHA-256 Hash and it is assigned to a merchant by the Prizm Pay. The merchant must use this key to create the hash value.

 

Example

Key

Value

Description

SECRET_KEY

key

The key from Prizm Pay

UNIX_TIMESTAMP

1406780084

Current UNIX timestamp

MERCHANT_ID

8888

Merchant ID

DATA

Hello World

Data

 

 

Hash = sha256 (SECRET_KEY + UNIX_TIMESTAMP + MERCHANT_ID + DATA)

 

Concatenate values
Hash = sha256 ("key" + "1406780084" + "8888" + Hello World")

 

SHA256 hashing
Hash = sha256 ("key14067800848888Hello World")

 

Result
Hash = "0a0017d13b8b666cdbe1278cf745eac32c635fb38ca941032f7a94b9853d6d45"

 

Payment Page

It is the most popular connection method among merchants. The advantage of this connection method is simple and speedy. On the other hand, payment transaction flow is ready to use. Merchant can kick off the web site on-the-fly with just a small scale integration.

Scope and Compatibility

This connection is designed for merchants who have Online Shopping Cart System. The routine is HTML-based with JavaScript and should be widely applicable to on-line shopping cart software and architecture, whose technical specifications and varieties are beyond the scope of this document. Compatibility with shopping cart software is yet to be exhaustively given and would not be included in the scope of this document.

 

The compatible version of the software code is as follow:

Software Code

Version

HTML

4

JavaScript

1.3

 

 

The version compatibility of the software code with popular browser software is as follow:

Browser

Version

Internet Explorer

6.0 or above

Chrome

All supported

Firefox

All supported

Safari on iOS

iOS 5 or above

Android

2.3 or above

Netscape Navigator

1.3

 

Preparation

Before implementation, you should have the following information:

 

Merchant ID

Please refer to Getting Started section.

 

Secret Key

You may find the secret key in Merchant Panel.

  1. Login Merchant Panel
  2. Open `Merchant` in menu
  3. Open `Payment Page` in sub menu
  4. Copy `Secret Key` field

 

Note: The Secret Key for TESTING URL can be found in TESTING Merchant Panel.

 

Payment Page URL

Production URL

https://pp.prizmmpay.com/pay

Testing URL

https://pp-test.prizmmpay.com/pay

Open Payment Page

Definition of Parameters

The following are the parameters for integration. Prizm Pay is case sensitive. Make sure the typeface is correct.

 

Parameters in GET

Parameter

Type

Description

mid

Number (11)

Prizm Pay Merchant ID

time

Number (11)

Current Unix timestamp

hash

String (64)

Hash string using SHA-256

(Please refer to Secret Hash section)

 

Parameters in POST

All parameters should be stored in a field named `data`.

Parameter

Type

Description

merchant_referenceCode

String (30)

Merchant‘s order unique reference number

merchant_invoiceId

String (25)

Merchant‘s order invoice number

(Optional)

purchaseTotals_currency

String (3)

The currency code (ISO 4217) of the payment. Currency will remain as is initial setup

(Please refer to Appendix A.1)

purchaseTotals_grandTotalAmount

Number(15,2)

Total amount of whole payment

billTo[firstName]

String (50)

First name of billing contact

billTo[lastName]

String (50)

Last name of billing contact

billTo[email]

String (150)

Email of billing contact

billTo[phoneNumber]

String (25)

Phone number of billing contact

billTo[street1]

String (100)

Line 1 of billing address

billTo[street2]

String (100)

Line 2 of billing address

(Optional)

billTo[city]

String (50)

City of billing address

billTo[state]

String (50)

State of billing address

(Required for transactions in the U.S. and Canada)

(Please refer to Appendix A.3)

billTo[country]

String (2)

Country of billing address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

billTo[postalCode]

String (10)

Postal code of billing address

shipTo[firstName]

String (50)

First name of shipping contact

shipTo[lastName]

String (50)

Last name of shipping contact

shipTo[email]

String (150)

Email of shipping contact

shipTo[phoneNumber]

String (25)

Phone number of shipping contact

shipTo[street1]

String (100)

Line 1 of shipping address

shipTo[street2]

String (100)

Line 2 of shipping address

(Optional)

shipTo[city]

String (50)

City of shipping address

shipTo[state]

String (50)

State of shipping address

shipTo[country]

String (2)

Country of shipping address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

shipTo[postalCode]

String (10)

Postal code of shipping address

item

Text

Item details including name, unitPrice, quantity in JSON format

 

Example

The following is a sample HTML form with values. The form will be auto submit Prizm Pay Standard Payment Page by JavaScript in POST method.

<form id="form" name="form" method="post" action="https://pp-test.prizmmpay.com/pay?mid=1102&time=1405934494&hash=c1b4b82448923e0fa52a7a41921561aaa3516abf78fb0d3daae214deb84921bc">
<input type="hidden" name="data[merchant_referenceCode]" value="53ccdb9e4ef121405934494" />
<input type="hidden" name="data[merchant_invoiceId]" value="53ccdb9e4f3021405934494" />
<input type="hidden" name="data[purchaseTotals_grandTotalAmount]" value="0.3" />
<input type="hidden" name="data[purchaseTotals_currency]" value="USD" />
<input type="hidden" name="data[item][0][name]" value="item 1" />
<input type="hidden" name="data[item][0][quantity]" value="1" />
<input type="hidden" name="data[item][0][unitPrice]" value="0.1" />
<input type="hidden" name="data[item][1][name]" value="item 2" />
<input type="hidden" name="data[item][1][quantity]" value="2" />
<input type="hidden" name="data[item][1][unitPrice]" value="0.1" />
<input type="hidden" name="data[billTo][firstName]" value="John" />
<input type="hidden" name="data[billTo][lastName]" value="Doe" />
<input type="hidden" name="data[billTo][email]" value="[email protected]" />
<input type="hidden" name="data[billTo][phoneNumber]" value="650-965-6000" />
<input type="hidden" name="data[billTo][street1]" value="1295 Charleston Rd." />
<input type="hidden" name="data[billTo][street2]" value="" />
<input type="hidden" name="data[billTo][city]" value="Mountain View" />
<input type="hidden" name="data[billTo][state]" value="CA" />
<input type="hidden" name="data[billTo][country]" value="US" />
<input type="hidden" name="data[billTo][postalCode]" value="94043" />
<input type="hidden" name="data[shipTo][firstName]" value="John" />
<input type="hidden" name="data[shipTo][lastName]" value="Doe" />
<input type="hidden" name="data[shipTo][email]" value="[email protected]" />
<input type="hidden" name="data[shipTo][phoneNumber]" value="650-965-6000" />
<input type="hidden" name="data[shipTo][street1]" value="1295 Charleston Rd." />
<input type="hidden" name="data[shipTo][street2]" value="" />
<input type="hidden" name="data[shipTo][city]" value="Mountain View" />
<input type="hidden" name="data[shipTo][state]" value="CA" />
<input type="hidden" name="data[shipTo][country]" value="US" />
<input type="hidden" name="data[shipTo][postalCode]" value="94043" />
</form>

 

<script type="text/javascript">
// The JavaScript for auto submit
document.getElementById('form').submit();
</script>

 

Note: Optional parameters must be set with an empty value if not required.

Payment API

This method is used for the merchant if they want to capture the credit card information from their web page instead of using our standard payment page. This connection method only applies to credit card transaction. The requirement of using this method is to install a SSL Certificate to your domain in order to protect your customer's credit card information.

 

Payment API required additional approval, DISABLED by default.

Preparation

Before implementation, you should have the following information:

 

Merchant ID

Please refer to Getting Started section.

 

Secret Key

You may find the secret key in Merchant Panel.

  1. Login to the Merchant Panel
  2. Open `Merchant` in menu
  3. Open `Payment Page` in sub menu
  4. Copy `Secret Key` field

 

Note: The Secret Key for TESTING URL can be found in TESTING Merchant Panel.

 

API URL

Production URL

https://api.prizmmpay.com/

Testing URL

https://api-test.prizmmpay.com/

 

Device Fingerprint ID

Please refer to the next section about Device Fingerprint.

 

Device Fingerprint

 

The device fingerprint is a unique identifier derived from persistent cookies set during profiling. This computer identifier can be the single constant element that you use to identify morphing and the true location of a computer. With this type of identity morphing, customer and order data may seem completely random, but the fingerprint does not change.

 

The fingerprint enables you to identify many characteristics of a computer, for example:

  • Connections between accounts and other customer data
  • True locations of devices when they are hidden behind a proxy
  • Suspicious configurations of computers, such as language settings inconsistent with the country

 

Adding the Fingerprint

You must add a 1-pixel image, which is not displayed, and two code segments to the <body> tag of your checkout page, ensuring that 3 to 5 seconds elapse between the execution of the code and the submission of the order.

 

Adding the Code Segments

Add the code segments to your checkout page immediately above the closing </body> tag to ensure that web pages render correctly. Do not enclose the segments in visible HTML elements. The code segments must be loaded before the customer submits an order. Otherwise, you receive an error message.

 

Replacing the Variables

You can copy the code segments shown below. In each code segment, replace the variables with your values:

Parameter

Type

Description

<MERCHANT_ID>

Number (11)

Prizm Pay Merchant ID

<MERCHANT_REF>

String (30)

Merchant‘s order unique reference number

<SESSION_ID>

String (64)

HTTP Session ID

<ORG_ID>

String (10)

Test Org ID: 1snn5n9w

Production Org ID: k8vif92e

<DF_ID>

String (128)

The value concatenated with MERCHANT_ID, MERCHANT _REF and SESSION_ID .

 

Format:

"<MERCHANT_ID>_<MERCHANT_REF>_<SESSION_ID>"

<DF_PARAMS>

String (256)

The value concatenated with static string and DF_ID.

 

Format:

"org_id=<ORG_ID>&amp;session_id=prizmm<DF_ID>"

 

Code Segments

<p style="background:url(http://h.online-metrix.net/fp/clear.png?<DF_PARAMS>&m=1)"></p> 
<img src="http://h.online-metrix.net/fp/clear.png?<DF_PARAMS>&m=2" alt="">
<object type="application/x-shockwave-flash" data="http://h.online-metrix.net/fp/fp.swf?<DF_PARAMS>" width="1" height="1" id="thm_fp">
<param name="movie" value="http://h.online-metrix.net/fp/fp.swf?<DF_PARAMS>" />
</object>
<script src="http://h.online-metrix.net/fp/check.js?<DF_PARAMS>" type="text/javascript"></script> 

 

Authorizing a Payment

Authorization means that when you submit an order using a credit card, you receive an immediate confirmation about the availability of the funds. If the funds are available, the issuing bank reduces your customer’s open to buy, which is the amount of credit available on the card. Most of the common credit cards are processed online. For authorizations, you will typically start the process of order fulfillment soon after you receive confirmation of the order.

 

Authorizations expire with the issuing bank after a specific length of time if they have not been captured and settled. Most authorizations expire within five to seven days. The issuing bank sets the length of time.

 

Authorization Request

Definition of Parameters

Parameters in HTTP Request Header

Parameter

Type

Description

API_VERSION

Number (4)

API Version

(Default is 100)

API_MID

Number (11)

Prizm Pay Merchant ID

API_TIME

Number (11)

Current Unix timestamp

API_HASH

String (64)

Hash string using SHA-256

(Please refer to Secret Hash section) 

 

Parameters in POST

All parameters should be stored into a field named `data` in JSON format.

Parameter

Type

Description

merchantID

Number (10)

Merchant‘s ID

merchantReferenceCode

String (30)

Merchant‘s order unique reference number

merchantInvoiceID

String (25)

Merchant‘s order invoice number

(Optional)

deviceFingerprintID

String 128()

Device Fingerprint ID

(Please refer to Device Fingerprint section, <DF_ID>)

purchaseTotals[currency]

String (3)

The currency code (ISO 4217) of the payment. Currency will remain as is initial setup

(Please refer to Appendix A.1)

purchaseTotals[grandTotalAmount]

Number (15,2)

Total amount of whole payment

billTo[firstName]

String (50)

First name of billing contact

billTo[lastName]

String (50)

Last name of billing contact

billTo[email]

String (150)

Email of billing contact

billTo[phoneNumber]

String (25)

Phone number of billing contact

billTo[street1]

String (100)

Line 1 of billing address

billTo[street2]

String (100)

Line 2 of billing address

(Optional)

billTo[city]

String (50)

City of billing address

billTo[state]

String (50)

State of billing address

(Required for transactions in the U.S. and Canada)

(Please refer to Appendix A.3)

billTo[country]

String (2)

Country of billing address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

billTo[postalCode]

String (10)

Postal code of billing address

shipTo[firstName]

String (50)

First name of shipping contact

shipTo[lastName]

String (50)

Last name of shipping contact

shipTo[email]

String (150)

Email of shipping contact

shipTo[phoneNumber]

String (25)

Phone number of shipping contact

shipTo[street1]

String (100)

Line 1 of shipping address

shipTo[street2]

String (100)

Line 2 of shipping address

(Optional)

shipTo[city]

String (50)

City of shipping address

shipTo[state]

String (50)

State of shipping address

shipTo[country]

String (2)

Country of shipping address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

shipTo[postalCode]

String (10)

Postal code of shipping address

cardHolder[firstName]

String (50)

First name of card holder

cardHolder[lastName]

String (50)

Last name of card holder

cardHolder[email]

String (150)

Email of card holder

cardHolder[phoneNumber]

String (25)

Phone number of card holder

cardHolder[street1]

String (100)

Line 1 of card holder address

cardHolder[street2]

String (100)

Line 2 of card holder address

(Optional)

cardHolder[city]

String (50)

City of card holder address

cardHolder[state]

String (50)

State of card holder address

cardHolder[country]

String (2)

Country of card holder address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

cardHolder[postalCode]

String (10)

Postal code of card holder address

item

Text

Item details including name, unitPrice, quantity

JSON format string

card[fullName]

String (50)

Credit card holder’s full name

card[accountNumber]

String (12)

Credit card account number

card[cvNumber]

String (3)

Card Verification Value of card

card[cardType]

String (10)

Type of credit card

Value: visa / mastercard

card[expirationMonth]

Number (2)

Expiration month of card (MM)

card[expirationYear]

Number (4)

Expiration year of card (YYYY)

 

Note: This gateway is case sensitive. Please make sure the typeface is correct.

 

Example (JSON Format)

{
"item":[
{
"name":"Orange",
"quantity":"1",
"unitPrice":"1"
},
{
"name":"Apple",
"quantity":"2",
"unitPrice":"3"
}
],
"billTo":{
"firstName":"John",
"lastName":"Doe",
"email":"[email protected]",
"phoneNumber":"650-965-6000",
"street1":"1295 Charleston Rd.",
"street2":"",
"city":"Mountain View",
"state":"CA",
"country":"US",
"postalCode":"94043"
},
"shipTo":{
"firstName":"John",
"lastName":"Doe",
"email":"[email protected]",
"phoneNumber":"650-965-6000",
"street1":"1295 Charleston Rd.",
"street2":"",
"city":"Mountain View",
"state":"CA",
"country":"US",
"postalCode":""
},
"cardHolder":{
"firstName":"John",
"lastName":"Doe",
"email":"[email protected]",
"phoneNumber":"650-965-6000",
"street1":"1295 Charleston Rd.",
"street2":"",
"city":"Mountain View",
"state":"CA",
"country":"US",
"postalCode":"94043"
},
"card":{
"cardType":"visa",
"fullName":"John Doe",
"accountNumber":"4111111111111111",
"cvNumber":"413",
"expirationMonth":"06",
"expirationYear":"2016"
},
"deviceFingerprintID":"2_53e498ba21fdc_amp03rp64m3frajj7r23vrqjd1",
"merchantID":"2",
"merchantReferenceCode":"53e498ba21fdc",
"purchaseTotals":{
"grandTotalAmount":"7",
"currency":"HKD"
},
"merchantInvoiceID":"53e498ba21fdc"
}

Authorization Response

Definition of Response Parameters

Parameter

Type

Description

status

Number(1)

The status of request result

0: Failure

1: Success

message

String (255)

Short description of response

data[transactionID]

Number (20)

Prizm Pay Transaction ID

data[reasonCode]

Number (3)

Response reason code

data[reasonMessage]

String (100)

Response reason message

data[datafeed][client_id]

Number (11)

Merchant ID

data[datafeed][client_ref]

String (30)

Merchant order reference

data[datafeed][transaction_id]

Number (20)

Prizm Pay Transaction ID

data[datafeed][action]

String (30)

Data feed action

data[datafeed][details]

Text

Transaction details in JSON format

 

Example

status:1,
message:"ACCEPT",
data:{
transactionID:"71",
resaonCode:100,
reasionMessage:"",
datafeed:{
client_id:1,
client_ref:"53e475c3eb0c8",
transaction_id:"70",
action:"UPDATE STATUS",
details:{
currency:USD,
amount:57.52,
status:1
}
}
}

Capturing an Authorization

When you are ready to fulfill a customer’s order and transfer funds from the customer’s bank to your bank, capture the authorization for that order.

Capture Request

Definition of Parameters

Parameters in HTTP Request Header

Parameter

Type

Description

API_VERSION

Number (4)

API Version

(Default is 100)

API_MID

Number (11)

Prizm Pay Merchant ID

API_TIME

Number (11)

Current Unix timestamp

API_HASH

String (64)

Hash string using SHA-256

(Please refer to Secret Hash section)

 

Parameters in POST

All parameters should be stored into a field named `data` in JSON format.

Parameter

Type

Description

merchantID

Number (10)

Merchant‘s ID

merchantReferenceCode

String (30)

Merchant‘s reference code, must be as same as authorized merchant’s reference code

 

Note: This gateway is case sensitive. Please make sure the typeface is correct.

Example (JSON Format)

{
"merchantID":"2",
"merchantReferenceCode":"53e498ba21fdc"
}

Capture Response

Definition of Parameters

Parameter

Type

Description

status

Number(1)

The status of request result

0: Failure

1: Success

message

String (255)

Short description of response

data[transactionID]

Number (20)

Prizm Pay Transaction ID

data[reasonCode]

Number (3)

Response reason code

data[reasonMessage]

String (100)

Response reason message

Response Example

status:1,
message:"ACCEPT",
data:{
transactionID:"72",
resaonCode:100,
reasionMessage:""
}

Reversing an Authorization

The full authorization reversal service releases the hold that the authorization placed on the customer’s credit card funds. Use this service to reverse an unnecessary or undesired authorization. You can use full authorization reversal only for an authorization that has not been captured and settled.

Reverse Request

Definition of Parameters

Parameters in HTTP Request Header

Parameter

Type

Description

API_VERSION

Number (4)

API Version

(Default is 100)

API_MID

Number (11)

Prizm Pay Merchant ID

API_TIME

Number (11)

Current Unix timestamp

API_HASH

String (64)

Hash string using SHA-256

(Please refer to Secret Hash section)

 

Parameters in POST

All parameters should be stored into a field named `data` in JSON format.

Parameter

Type

Description

merchantID

Number (10)

Merchant‘s ID

merchantReferenceCode

String (30)

Merchant‘s reference code, must be as same as authorized merchant’s reference code

 

Note: This gateway is case sensitive. Please make sure the typeface is correct.

 

Response Example

status:1,
message:"ACCEPT",
data:{
transactionID:"73",
resaonCode:100,
reasionMessage:""
}

Reverse Response

Definition of Parameters

Parameter

Type

Description

status

Number(1)

The status of request result

0: Failure

1: Success

message

String (255)

Short description of response

data[transactionID]

Number (20)

Prizm Pay Transaction ID

data[reasonCode]

Number (3)

Response reason code

data[reasonMessage]

String (100)

Response reason message

Response Example

status:1,
message:"ACCEPT",
data:{
transactionID:"73",
resaonCode:100,
reasionMessage:""
}

Performing a Sale

A sale is a bundled authorization and capture. You can use a sale instead of a separate authorization and capture if there is no delay between taking a customer’s order and shipping the goods. A sale is typically used for electronic goods and for services that you can turn on immediately.

 

To perform a sale, request the authorization and capture services at the same time. Include the request fields that are required for the authorization. No additional fields are required for the capture. If the authorization is successful, Prizm Pay processes the capture immediately and the reply message includes results for the authorization and for the capture. If the authorization is declined, Prizm Pay does not process the capture and the reply message includes results only for the authorization.

Sale Request

Definition of Parameters

Parameters in HTTP Request Header

Parameter

Type

Description

API_VERSION

Number (4)

API Version

(Default is 100)

API_MID

Number (11)

Prizm Pay Merchant ID

API_TIME

Number (11)

Current Unix timestamp

API_HASH

String (64)

Hash string using SHA-256

(Please refer to Secret Hash section)

 

Parameters in POST

All parameters should be stored into a field named `data` in JSON format.

Parameter

Type

Description

merchantID

Number (10)

Merchant‘s ID

merchantReferenceCode

String (30)

Merchant‘s order unique reference number

merchantInvoiceID

String (25)

Merchant‘s order invoice number

(Optional)

deviceFingerprintID

String 128()

Device Fingerprint ID

(Please refer to Device Fingerprint section, <DF_ID>)

purchaseTotals[currency]

String (3)

The currency code (ISO 4217) of the payment. Currency will remain as is initial setup

(Please refer to Appendix A.1)

purchaseTotals[grandTotalAmount]

Number (15,2)

Total amount of whole payment

billTo[firstName]

String (50)

First name of billing contact

billTo[lastName]

String (50)

Last name of billing contact

billTo[email]

String (150)

Email of billing contact

billTo[phoneNumber]

String (25)

Phone number of billing contact

billTo[street1]

String (100)

Line 1 of billing address

billTo[street2]

String (100)

Line 2 of billing address

(Optional)

billTo[city]

String (50)

City of billing address

billTo[state]

String (50)

State of billing address

(Required for transactions in the U.S. and Canada)

(Please refer to Appendix A.3)

billTo[country]

String (2)

Country of billing address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

billTo[postalCode]

String (10)

Postal code of billing address

shipTo[firstName]

String (50)

First name of shipping contact

shipTo[lastName]

String (50)

Last name of shipping contact

shipTo[email]

String (150)

Email of shipping contact

shipTo[phoneNumber]

String (25)

Phone number of shipping contact

shipTo[street1]

String (100)

Line 1 of shipping address

shipTo[street2]

String (100)

Line 2 of shipping address

(Optional)

shipTo[city]

String (50)

City of shipping address

shipTo[state]

String (50)

State of shipping address

shipTo[country]

String (2)

Country of shipping address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

shipTo[postalCode]

String (10)

Postal code of shipping address

cardHolder[firstName]

String (50)

First name of card holder

cardHolder[lastName]

String (50)

Last name of card holder

cardHolder[email]

String (150)

Email of card holder

cardHolder[phoneNumber]

String (25)

Phone number of card holder

cardHolder[street1]

String (100)

Line 1 of card holder address

cardHolder[street2]

String (100)

Line 2 of card holder address

(Optional)

cardHolder[city]

String (50)

City of card holder address

cardHolder[state]

String (50)

State of card holder address

cardHolder[country]

String (2)

Country of card holder address in ISO 3166-1 alpha-2 code

(Please refer to Appendix A.2)

cardHolder[postalCode]

String (10)

Postal code of card holder address

item

Text

Item details including name, unitPrice, quantity

JSON format string

card[fullName]

String (50)

Credit card holder’s full name

card[accountNumber]

String (12)

Credit card account number

card[cvNumber]

String (3)

Card Verification Value of card

card[cardType]

String (10)

Type of credit card

Value: visa / mastercard

card[expirationMonth]

Number (2)

Expiration month of card (MM)

card[expirationYear]

Number (4)

Expiration year of card (YYYY)

 

Note: This gateway is case sensitive. Please make sure the typeface is correct.

 

Example (JSON Format)

{
"item":[
{
"name":"Orange",
"quantity":"1",
"unitPrice":"1"
},
{
"name":"Apple",
"quantity":"2",
"unitPrice":"3"
}
],
"billTo":{
"firstName":"John",
"lastName":"Doe",
"email":"[email protected]",
"phoneNumber":"650-965-6000",
"street1":"1295 Charleston Rd.",
"street2":"",
"city":"Mountain View",
"state":"CA",
"country":"US",
"postalCode":"94043"
},
"shipTo":{
"firstName":"John",
"lastName":"Doe",
"email":"[email protected]",
"phoneNumber":"650-965-6000",
"street1":"1295 Charleston Rd.",
"street2":"",
"city":"Mountain View",
"state":"CA",
"country":"US",
"postalCode":""
},
"cardHolder":{
"firstName":"John",
"lastName":"Doe",
"email":"[email protected]",
"phoneNumber":"650-965-6000",
"street1":"1295 Charleston Rd.",
"street2":"",
"city":"Mountain View",
"state":"CA",
"country":"US",
"postalCode":"94043"
},
"card":{
"cardType":"visa",
"fullName":"John Doe",
"accountNumber":"4111111111111111",
"cvNumber":"413",
"expirationMonth":"06",
"expirationYear":"2016"
},
"deviceFingerprintID":"2_53e498ba21fdc_amp03rp64m3frajj7r23vrqjd1",
"merchantID":"2",
"merchantReferenceCode":"53e498ba21fdc",
"purchaseTotals":{
"grandTotalAmount":"7",
"currency":"HKD"
},
"merchantInvoiceID":"53e498ba21fdc"
}

 

Sale Response

Definition of Parameters

Parameter

Type

Description

status

Number(1)

The status of request result

0: Failure

1: Success

message

String (255)

Short description of response

data[transactionID]

Number (20)

Prizm Pay Transaction ID

data[reasonCode]

Number (3)

Response reason code

data[reasonMessage]

String (100)

Response reason message

data[datafeed][client_id]

Number (11)

Merchant ID

data[datafeed][client_ref]

String (30)

Merchant order reference

data[datafeed][transaction_id]

Number (20)

Prizm Pay Transaction ID

data[datafeed][action]

String (30)

Data feed action

data[datafeed][details]

Text

Transaction details in JSON format

 

Example

status:1,
message:"ACCEPT",
data:{
transactionID:"70",
resaonCode:100,
reasionMessage:"",
datafeed:{
client_id:1,
client_ref:"53e475c3eb0c8",
transaction_id:"70",
action:"UPDATE STATUS",
details:{
currency:USD,
amount:57.52,
status:1
}
}
}

Recurring Payments via Credit Card Vault

For the recurring payment, you may need setup Credit Card Vault and store all required informations (e.g. billing address, shipping address ...) on first payment request.

 

The steps as below:

  • Include the field named `cardVault_setup` with value `1` and `cardVault_secretKey` in first Sale/Auth API request.
  • When this payment success, additional parameters named `cardVault_token` in the response.
  • Include `cardVault_token` and `cardVault_secretKey` in your follow-on Sale/Auth API requests.
Note: You may find the card vault key in Merchant Panel.

Refund or Credit

Refund Request

Definition of Parameters

Parameters in HTTP Request Header

Parameter

Type

Description

API_VERSION

Number (4)

API Version

(Default is 100)

API_MID

Number (11)

Prizm Pay Merchant ID

API_TIME

Number (11)

Current Unix timestamp

API_HASH

String (64)

Hash string using SHA-256

(Please refer to Secret Hash section)

 

Parameters in POST

All parameters should be stored into a field named `data` in JSON format.

Parameter

Type

Description

merchantID

Number (10)

Merchant‘s ID

merchantReferenceCode

String (30)

Merchant‘s reference code, must be as same as authorized merchant’s reference code

refundAmount

Number (15,2)

The refund amount, must be equal or less than the SALE amount

 

Note: This gateway is case sensitive. Please make sure the typeface is correct.

Example (JSON Format)

{
"merchantID":"2",
"merchantReferenceCode":"53e498ba21fdc",
"refundAmount":"9.99"
}

Refund Response

Definition of Parameters

Parameter

Type

Description

status

Number(1)

The status of request result

0: Failure

1: Success

message

String (255)

Short description of response

data[transactionID]

Number (20)

Prizm Pay Transaction ID

data[reasonCode]

Number (3)

Response reason code

data[reasonMessage]

String (100)

Response reason message

Response Example

status:1,
message:"ACCEPT",
data:{
transactionID:"72",
resaonCode:100,
reasionMessage:""
}

Payment Apps

We have different payment methods can be used instantly without integration.

Data Feed

Merchant is required to setup Datafeed URL at the Merchant Panel. In order to ensure merchant can receive the payment result notification, payment result will be sent via http POST from payment server directly to merchant’s Datafeed URL.

 

This is independent with the action of redirect shoppers to Success URL after payment is done. In case shoppers cannot be redirected successfully to your Success URL, you can still receive payment result at your Datafeed URL.

 

Print out 'PRIZMPAY' (without any spacing) in your Data Feed Page to notify us you have received the payment result.

Setup Datafeed URL

  1. Login Merchant Panel
  2. Open `Merchant`
  3. Open `Payment Page`
  4. Enter your `Datafeed URL`
  5. Click `Submit` button

Datafeed Format

Definition of Parameters

Parameters in POST

Parameter

Type

Description

data[client_id]

Number (11)

Prizm Pay Merchant ID

data[client_ref]

String (50)

Merchant‘s Order Reference Number

data[transaction_id]

String (50)

Prizm Pay Transaction ID

data[action]

String (50)

Current action of each Datafeed

data[details][currency]

String (3)

The currency code (ISO 4217) of the payment. Currency will remain as is initial setup

(Please refer to Appendix A.1)

data[details][amount]

Number (15,2)

The effective amount of each Datafeed

data[details][status]

String (50)

Status of each Datafeed

1 = Success

mid

Number (11)

Prizm Pay Merchant ID

time

Number (11)

Current Unix timestamp

hash

String (64)

Hash string using SHA-256

Message should contain feedback in JSON formation, encrypted by merchant key.

 

 

Datafeed Example

data:{ 
"client_id":"1102",
"client_ref":"53db16ba6ae111406867130",
"transaction_id":"218",
"action":"UPDATE STATUS",
"details":{
"currency":"USD",
"amount":"0.10",
"status":1
}
},
mid: 1102,
time: 1406867125,
hash:"eadb0a2bcc77db51c954c882e8b9f8f03fa60dd261cdbd9032ebe52aeab80daa"

Handling Program

PHP Example

<?php
define('MERCHANT_ID', 'YOUR_MERCHANT_ID');
define('MERCHANT_SECRET_KEY', 'YOUR_SECRET_KEY');

function datafeed($merchantID, $secretKey, $expiry = 900) {
$time = filter_input(INPUT_POST, 'time');
// check timeout
if ($time && (abs($time - time()) > $expiry)) {
return FALSE;
}
$data = filter_input(INPUT_POST, 'data');
$hash = filter_input(INPUT_POST, 'hash');
// check secret hash
$localHash = secretHash($merchantID, $secretKey, $data, $time);
if ($localHash != $hash) {
return FALSE;
}
// return decoded datafeed
return json_decode($data, TRUE);
}

function secretHash($merchantID, $secretKey, $data, $timestamp) {
return hash('sha256', $secretKey . $timestamp . $merchantID . $data);
}

if (datafeed(MERCHANT_ID, MERCHANT_SECRET_KEY)) {
exit('PRIZMPAY'); // echo success code
} else {
exit('ERROR'); // echo failure code
}

Testing

To ensure that your requests are processed correctly, you need to test the basic success and error conditions for each service you plan to use.

Requirements

  • Unless otherwise specified, use test credit card numbers, not real ones.
  • Use a real combination for the city, state, and postal code.
  • Use a real combination for the area code and telephone number.
  • Use a nonexistent account and domain name for the customer’s email address.
  • When testing, use the test URL.

Credit Card Services

Use the credit card numbers in the following table to test the services. Do not use real credit card numbers. To test card types not listed in the table, use an account number that is within the card’s bin range. For best results, try each test with a different service request and with different test credit card numbers.

 

Test Credit Card Numbers

Credit Card Type

Test Account Number
(Remove spaces when sending out.)

Visa

4111 1111 1111 1111

MasterCard

5555 5555 5555 4444

 

APPENDIX A

1. Currency Code

Currency Code

Currency Name

AED

United Arab Emirates Dirham

AFN

Afghanistan Afghani

ALL

Albania Lek

AMD

Armenia Dram

ANG

Netherlands Antilles Guilder

AOA

Angola Kwanza

ARS

Argentina Peso

AUD

Australia Dollar

AWG

Aruba Guilder

AZN

Azerbaijan New Manat

BAM

Bosnia and Herzegovina Convertible Marka

BBD

Barbados Dollar

BDT

Bangladesh Taka

BGN

Bulgaria Lev

BHD

Bahrain Dinar

BIF

Burundi Franc

BMD

Bermuda Dollar

BND

Brunei Darussalam Dollar

BOB

Bolivia Boliviano

BRL

Brazil Real

BSD

Bahamas Dollar

BTN

Bhutan Ngultrum

BWP

Botswana Pula

BYR

Belarus Ruble

BZD

Belize Dollar

CAD

Canada Dollar

CDF

Congo/Kinshasa Franc

CHF

Switzerland Franc

CLP

Chile Peso

CNY

China Yuan Renminbi

COP

Colombia Peso

CRC

Costa Rica Colon

CUC

Cuba Convertible Peso

CUP

Cuba Peso

CVE

Cape Verde Escudo

CZK

Czech Republic Koruna

DJF

Djibouti Franc

DKK

Denmark Krone

DOP

Dominican Republic Peso

DZD

Algeria Dinar

EGP

Egypt Pound

ERN

Eritrea Nakfa

ETB

Ethiopia Birr

EUR

Euro Member Countries

FJD

Fiji Dollar

FKP

Falkland Islands (Malvinas) Pound

GBP

United Kingdom Pound

GEL

Georgia Lari

GGP

Guernsey Pound

GHS

Ghana Cedi

GIP

Gibraltar Pound

GMD

Gambia Dalasi

GNF

Guinea Franc

GTQ

Guatemala Quetzal

GYD

Guyana Dollar

HKD

Hong Kong Dollar

HNL

Honduras Lempira

HRK

Croatia Kuna

HTG

Haiti Gourde

HUF

Hungary Forint

IDR

Indonesia Rupiah

ILS

Israel Shekel

IMP

Isle of Man Pound

INR

India Rupee

IQD

Iraq Dinar

IRR

Iran Rial

ISK

Iceland Krona

JEP

Jersey Pound

JMD

Jamaica Dollar

JOD

Jordan Dinar

JPY

Japan Yen

KES

Kenya Shilling

KGS

Kyrgyzstan Som

KHR

Cambodia Riel

KMF

Comoros Franc

KPW

Korea (North) Won

KRW

Korea (South) Won

KWD

Kuwait Dinar

KYD

Cayman Islands Dollar

KZT

Kazakhstan Tenge

LAK

Laos Kip

LBP

Lebanon Pound

LKR

Sri Lanka Rupee

LRD

Liberia Dollar

LSL

Lesotho Loti

LTL

Lithuania Litas

LYD

Libya Dinar

MAD

Morocco Dirham

MDL

Moldova Leu

MGA

Madagascar Ariary

MKD

Macedonia Denar

MMK

Myanmar (Burma) Kyat

MNT

Mongolia Tughrik

MOP

Macau Pataca

MRO

Mauritania Ouguiya

MUR

Mauritius Rupee

MVR

Maldives (Maldive Islands) Rufiyaa

MWK

Malawi Kwacha

MXN

Mexico Peso

MYR

Malaysia Ringgit

MZN

Mozambique Metical

NAD

Namibia Dollar

NGN

Nigeria Naira

NIO

Nicaragua Cordoba

NOK

Norway Krone

NPR

Nepal Rupee

NZD

New Zealand Dollar

OMR

Oman Rial

PAB

Panama Balboa

PEN

Peru Nuevo Sol

PGK

Papua New Guinea Kina

PHP

Philippines Peso

PKR

Pakistan Rupee

PLN

Poland Zloty

PYG

Paraguay Guarani

QAR

Qatar Riyal

RON

Romania New Leu

RSD

Serbia Dinar

RUB

Russia Ruble

RWF

Rwanda Franc

SAR

Saudi Arabia Riyal

SBD

Solomon Islands Dollar

SCR

Seychelles Rupee

SDG

Sudan Pound

SEK

Sweden Krona

SGD

Singapore Dollar

SHP

Saint Helena Pound

SLL

Sierra Leone Leone

SOS

Somalia Shilling

SPL*

Seborga Luigino

SRD

Suriname Dollar

STD

São Tomé and Príncipe Dobra

SVC

El Salvador Colon

SYP

Syria Pound

SZL

Swaziland Lilangeni

THB

Thailand Baht

TJS

Tajikistan Somoni

TMT

Turkmenistan Manat

TND

Tunisia Dinar

TOP

Tonga Pa'anga

TRY

Turkey Lira

TTD

Trinidad and Tobago Dollar

TVD

Tuvalu Dollar

TWD

Taiwan New Dollar

TZS

Tanzania Shilling

UAH

Ukraine Hryvnia

UGX

Uganda Shilling

USD

United States Dollar

UYU

Uruguay Peso

UZS

Uzbekistan Som

VEF

Venezuela Bolivar

VND

Viet Nam Dong

VUV

Vanuatu Vatu

WST

Samoa Tala

XAF

Communauté Financière Africaine (BEAC) CFA Franc BEAC

XCD

East Caribbean Dollar

XDR

International Monetary Fund (IMF) Special Drawing Rights

XOF

Communauté Financière Africaine (BCEAO) Franc

XPF

Comptoirs Français du Pacifique (CFP) Franc

YER

Yemen Rial

ZAR

South Africa Rand

ZMW

Zambia Kwacha

ZWD

Zimbabwe Dollar

2. Country Code

Country Code

Country Name

High Risk

AD

Andorra

 

AE

United Arab Emirates

 

AF

Afghanistan

 

AG

Antigua and Barbuda

 

AI

Anguilla

 

AL

Albania

 

AM

Armenia

 

AO

Angola

 

AQ

Antarctica

 

AR

Argentina

 

AS

American Samoa

 

AT

Austria

 

AU

Australia

 

AW

Aruba

 

AX

Åland Islands

 

AZ

Azerbaijan

 

BA

Bosnia and Herzegovina

 

BB

Barbados

 

BD

Bangladesh

 

BE

Belgium

 

BF

Burkina Faso

 

BG

Bulgaria

***

BH

Bahrain

 

BI

Burundi

 

BJ

Benin

 

BM

Bermuda

 

BN

Brunei Darussalam

 

BO

Bolivia, Plurinational State of

 

BQ

Bonaire, Sint Eustatius and Saba

 

BR

Brazil

 

BS

Bahamas

 

BT

Bhutan

 

BV

Bouvet Island

 

BW

Botswana

 

BY

Belarus

 

BZ

Belize

 

CA

Canada

 

CC

Cocos (Keeling) Islands

 

CD

Congo, the Democratic Republic of the

 

CF

Central African Republic

 

CG

Congo

 

CH

Switzerland

 

CI

Côte d'Ivoire

 

CK

Cook Islands

 

CL

Chile

 

CM

Cameroon

***

CN

China

 

CO

Colombia

 

CR

Costa Rica

 

CU

Cuba

 

CV

Cabo Verde

 

CW

Curaçao

 

CX

Christmas Island

 

CY

Cyprus

 

CZ

Czech Republic

 

DE

Germany

 

DJ

Djibouti

 

DK

Denmark

 

DM

Dominica

 

DO

Dominican Republic

 

DZ

Algeria

 

EC

Ecuador

 

EE

Estonia

 

EG

Egypt

***

EH

Western Sahara

 

ER

Eritrea

 

ES

Spain

 

ET

Ethiopia

 

FI

Finland

 

FJ

Fiji

 

FK

Falkland Islands (Malvinas)

 

FM

Micronesia, Federated States of

 

FO

Faroe Islands

 

FR

France

 

GA

Gabon

 

GB

United Kingdom

 

GD

Grenada

 

GE

Georgia

 

GF

French Guiana

 

GG

Guernsey

 

GH

Ghana

***

GI

Gibraltar

 

GL

Greenland

 

GM

Gambia

***

GN

Guinea

 

GP

Guadeloupe

 

GQ

Equatorial Guinea

 

GR

Greece

 

GS

South Georgia and the South Sandwich Islands

 

GT

Guatemala

 

GU

Guam

 

GW

Guinea-Bissau

 

GY

Guyana

 

HK

Hong Kong

 

HM

Heard Island and McDonald Islands

 

HN

Honduras

 

HR

Croatia

 

HT

Haiti

 

HU

Hungary

 

ID

Indonesia

***

IE

Ireland

 

IL

Israel

***

IM

Isle of Man

 

IN

India

 

IO

British Indian Ocean Territory

 

IQ

Iraq

 

IR

Iran, Islamic Republic of

***

IS

Iceland

 

IT

Italy

 

JE

Jersey

 

JM

Jamaica

 

JO

Jordan

 

JP

Japan

 

KE

Kenya

 

KG

Kyrgyzstan

 

KH

Cambodia

 

KI

Kiribati

 

KM

Comoros

 

KN

Saint Kitts and Nevis

 

KP

Korea, Democratic People's Republic of

 

KR

Korea, Republic of

 

KW

Kuwait

 

KY

Cayman Islands

 

KZ

Kazakhstan

 

LA

Lao People's Democratic Republic

 

LB

Lebanon

 

LC

Saint Lucia

 

LI

Liechtenstein

 

LK

Sri Lanka

 

LR

Liberia

 

LS

Lesotho

 

LT

Lithuania

***

LU

Luxembourg

 

LV

Latvia

 

LY

Libya

 

MA

Morocco

***

MC

Monaco

 

MD

Moldova, Republic of

 

ME

Montenegro

 

MF

Saint Martin (French part)

 

MG

Madagascar

 

MH

Marshall Islands

 

MK

Macedonia, the former Yugoslav Republic of

 

ML

Mali

 

MM

Myanmar

 

MN

Mongolia

 

MO

Macao

 

MP

Northern Mariana Islands

 

MQ

Martinique

 

MR

Mauritania

 

MS

Montserrat

 

MT

Malta

 

MU

Mauritius

 

MV

Maldives

 

MW

Malawi

 

MX

Mexico

 

MY

Malaysia

***

MZ

Mozambique

 

NA

Namibia

 

NC

New Caledonia

 

NE

Niger

 

NF

Norfolk Island

 

NG

Nigeria

***

NI

Nicaragua

 

NL

Netherlands

 

NO

Norway

 

NP

Nepal

 

NR

Nauru

 

NU

Niue

 

NZ

New Zealand

 

OM

Oman

 

PA

Panama

 

PE

Peru

 

PF

French Polynesia

 

PG

Papua New Guinea

 

PH

Philippines

 

PK

Pakistan

***

PL

Poland

 

PM

Saint Pierre and Miquelon

 

PN

Pitcairn

 

PR

Puerto Rico

 

PS

Palestine, State of

 

PT

Portugal

 

PW

Palau

 

PY

Paraguay

 

QA

Qatar

 

RE

Réunion

 

RO

Romania

***

RS

Serbia

 

RU

Russian Federation

***

RW

Rwanda

 

SA

Saudi Arabia

 

SB

Solomon Islands

 

SC

Seychelles

 

SD

Sudan

 

SE

Sweden

 

SG

Singapore

 

SH

Saint Helena, Ascension and Tristan da Cunha

 

SI

Slovenia

 

SJ

Svalbard and Jan Mayen

 

SK

Slovakia

 

SL

Sierra Leone

 

SM

San Marino

 

SN

Senegal

 

SO

Somalia

 

SR

Suriname

 

SS

South Sudan

 

ST

Sao Tome and Principe

 

SV

El Salvador

 

SX

Sint Maarten (Dutch part)

 

SY

Syrian Arab Republic

 

SZ

Swaziland

 

TC

Turks and Caicos Islands

 

TD

Chad

 

TF

French Southern Territories

 

TG

Togo

 

TH

Thailand

 

TJ

Tajikistan

 

TK

Tokelau

 

TL

Timor-Leste

 

TM

Turkmenistan

 

TN

Tunisia

 

TO

Tonga

 

TR

Turkey

***

TT

Trinidad and Tobago

 

TV

Tuvalu

 

TW

Taiwan, Province of China

 

TZ

Tanzania, United Republic of

 

UA

Ukraine

***

UG

Uganda

 

UM

United States Minor Outlying Islands

 

US

United States

 

UY

Uruguay

 

UZ

Uzbekistan

 

VA

Holy See (Vatican City State)

 

VC

Saint Vincent and the Grenadines

 

VE

Venezuela, Bolivarian Republic of

 

VG

Virgin Islands, British

 

VI

Virgin Islands, U.S.

 

VN

Viet Nam

***

VU

Vanuatu

 

WF

Wallis and Futuna

 

WS

Samoa

 

YE

Yemen

 

YT

Mayotte

 

YU

Yugoslavia

***

ZA

South Africa

 

ZM

Zambia

 

ZW

Zimbabwe

 

3. State / Province / Territory

The following tables provide the two-character state, province, and territory codes for the United States and Canada.

 

I. United States Postal Service (USPS) Abbreviations

For a complete list of United States Postal Service abbreviations, see https://www.usps.com/ship/official-abbreviations.htm

State

Code

Alabama

AL

Alaska

AK

American Samoa

AS

Arizona

AZ

Arkansas

AR

Armed Forces Africa

AE

Armed Forces Americas

AA

Armed Forces Canada

AE

Armed Forces Europe

AE

Armed Forces Middle East

AE

Armed Forces Pacific

AP

California

CA

Colorado

CO

Connecticut

CT

Delaware

DE

District of Columbia

DC

Florida

FL

Georgia

GA

Guam

GU

Hawaii

HI

Idaho

ID

Illinois

IL

Indiana

IN

Iowa

IA

Kansas

KS

Kentucky

KY

Louisiana

LA

Maine

ME

Marshall Islands

MH

Maryland

MD

Massachusetts

MA

Michigan

MI

Micronesia

FM

Minnesota

MN

Minor Outlying Islands

UM

Mississippi

MS

Missouri

MO

Montana

MT

Nebraska

NE

Nevada

NV

New Hampshire

NH

New Jersey

NJ

New Mexico

NM

New York

NY

North Carolina

NC

North Dakota

ND

Northern Mariana Islands

MP

Ohio

OH

Oklahoma

OK

Oregon

OR

Palau

PW

Pennsylvania

PA

Puerto Rico

PR

Rhode Island

RI

South Carolina

SC

South Dakota

SD

Tennessee

TN

Texas

TX

Utah

UT

Vermont

VT

Virginia

VA

Virgin Islands

VI

Washington

WA

West Virginia

WV

Wisconsin

WI

Wyoming

WY

 

 

 

II. Canadian Provinces and Territories

For more information about Canadian addresses, see the Canada Post Canada Postal Guide and Reference Tools at http://www.canadapost.ca/tools/pg/manual/PGaddress-e.asp

Province or Territory

Abbreviation

Alberta

AB

British Columbia

BC

Manitoba

MB

New Brunswick

NB

Newfoundland and Labrador

NL

Northwest Territories

NT

Nova Scotia

NS

Nunavut

NU

Ontario

ON

Prince Edward Island

PE

Québec

QC

Saskatchewan

SK

Yukon

YT

 

 

APPENDIX R

The resources could be help for integration

Demo Projects

PHP

Requirements:
  • PHP version >= 5.1.2
  • cURL support

 

For Payment Page

Download Source

 

For Payment API

Download Source

 

For Apple Pay

Integration Guide

Examples

Java

For Payment Page

Download Source

 

ASP.Net

For Payment Page

Download Source

 

Ruby

Requirements:
 
For Payment Page

Download Source

 

Payment Modules

Prizm Pay payment module enables merchant integrate with Prizm Pay payment page from the open source shopping cart.

Magento

Tested Compatible with 1.5 ~ 1.9

Download

PrestaShop

Tested Compatible with 1.4 ~ 1.6

Download

OpenCart

Tested Compatible with 1.5

Download