Xpress
Faspay Xpress is another way to integrate with Faspay business services, the difference is the payment channel option is on the Faspay page.
The basic integration process of Faspay Xpress will be explained below.
- 1.Post Data Transaction
- 2.Callback/return URL (for one-step transaction)
- 3.Payment Notification
Endpoint URL is used as a feedback URL that will process the data in the post from the merchant system. There are two URLs that need to be used, namely Production and Development. For the implementation of the testing or UAT can use the URL development
Production | Development |
---|---|
Request Parameter
Sample Request
Parameter | Data Type | M/O/C | Description |
---|---|---|---|
merchant_id | Numeric (5) | Mandatory | Merchant code from faspay |
merchant_name | AlphaNumeric (32) | Mandatory | Merchant Name |
order_id | AlphaNumeric (32) | Mandatory | Order Number |
order_reff | AlphaNumeric (32) | Optional | Booking Number/reffrence (can fill same with order no) |
bill_date | Datetime | Mandatory | Transaction/Order Date |
bill_expired | Datetime | Mandatory | Transaction/Order Expiry Date |
bill_desc | AlphaNumeric (128) | Mandatory | Transaction Description |
bill_gross | Numeric (15) | Optional | Order Nominal |
bill_miscfee | Numeric (15) | Optional | Miscellaneous fee |
bill_total | Numeric (15) | Mandatory | Total Nominal |
custNo | AlphaNumeric (32) | Mandatory | Customer Number |
return_url | AlphaNumeric (32) | Mandatory | url using to return to merchant website (*channel credit card) |
custName | AlphaNumeric (32) | Optional | Customer Name |
custPhone | Numeric (128) | Optional | Customer Mobile Phone |
custEmail | AlphaNumeric (128) | Mandatory | Customer Email |
billingAddress | AlphaNumeric (200) | Optional | Billing Address |
billingCity | AlphaNumeric (50) | Optional | Billing City |
billingRegion | AlphaNumeric (100) | Optional | Billing Addres Region |
billingState | AlphaNumeric (100) | Optional | Billing Address State |
billingPoscode | AlphaNumeric (10) | Optional | Billing Address PosCode |
billingCountryCode | AlphaNumeric (10) | Optional | Billing Address Country Code |
receiver_name | AlphaNumeric (100) | Optional | Receiver Name |
shippingAddress | AlphaNumeric (200) | Optional | Shipping Address |
shippingCity | AlphaNumeric (50) | Optional | Shipping Address City |
shippingRegion | AlphaNumeric (100) | Optional | Shipping Address Region |
shippingState | AlphaNumeric (100) | Optional | Shipping Address State |
shippingPostcode | AlphaNumeric (10) | Optional | Shipping AddressPosCode |
products | AlphaNumeric (50) | Mandatory | Items |
signature | AlphaNumeric (100) | Mandatory | sha1(md5(user_id merchant + password merchant + bill_no + bill_total)) |
term_condition | Numeric (1) | Mandatory | Active Term and Conditions (1=True , 0=False) |
$products = array(
array(
'product' => 'Bunga',
'qty' => 1,
'amount' => 450000
),
array(
'product' => 'Coklat',
'qty' => 2,
'amount' => 500000
)
);
$signature = sha1(md5($this->merchant_user.$this->merchant_password.$bill_no));
foreach($products as $rprod => $fprod){ $bill_total += ($fprod["amount"] * $fprod["qty"]); }
$data = serialize($products);
$encoded = htmlentities($data);
$post = array(
"merchant_id" => $this->merchant_id,
"merchant_name" => $this->merchant_name,
"order_id" => $bill_no,
"order_reff" => $bill_no,
"bill_date" => date("Y-m-d H:i:s"),
"bill_expired" => date("Y-m-d H:i:s", strtotime("+1 day")),
"bill_gross" => $bill_total,
"bill_miscfee" => '0',
"bill_total" => $bill_total,
"bill_desc" => 'Purchase Orders',
"custNo" => '01',
"return_url" => 'https://alamatwebsite.com/response',
"custName" => 'Tester',
"custPhone" => '085881130118',
"custEmail" => '[email protected]',
"billingAddress" => 'Jl. Pintu Air Raya No 2A',
"billingState" => 'Indonesia',
"billingCity" => 'Jakarta Pusat',
"billingRegion" => 'DKI Jakarta',
"billingPostcode" => '10710',
"billingCountryCode" => 'ID',
"receiver_name" => 'Tester',
"shippingAddress" => 'Jl. Pintu Air Raya No 2A',
"shippingState" => 'Indonesia',
"shippingCity" => 'Jakarta Pusat',
"shippingRegion" => 'DKI JAKARTA',
"shippingPostCode" => '10710',
"klik_pay_code" => $this->klikpay_code,
"clear_key" => $this->clear_key,
"server" => $this->server,
"mixed" => 0,
"mid_full" => '100001',
"mid_tiga_bulan" => '100003',
"mid_enam_bulan" => '100006',
"mid_duabelas_bulan" => '100012',
"mid_duaempat_bulan" => '100024',
"cicilan_enam_bulan" => 1,
"cicilan_tiga_bulan" => 1,
"cicilan_duabelas_bulan" => 1,
"cicilan_duaempat_bulan" => 1,
"products" => $encoded,
"signature" => $signature,
"term_condition" => 1,
);
For every valid post data will get results like the example below :

xpress purchase detail page

xpress payment method page
After the customer completes the payment via bank's website, the bank website automatically redirect customer to Callback/Return URL. Please provide the URL and make sure it's already registered on Faspay system. For the detailed reference can be found Here
Payment notification from Faspay to Merchant backend will also be triggered in event of transaction status getting updated, to ensure merchant is securely informed. Please provide the URL and make sure it's already registered on Faspay system
Last modified 7mo ago