FPX

FPX is a type of Online Bank Transfer.

This payment method is available for integration with Wirecard Payment Page v1 only.

General Information

Countries and Currencies

Countries

Malaysia

Currencies

MYR

Communication Formats

This table illustrates how FPX notifications are encoded and which formats and methods can be used for requests and responses.

Requests/Responses

NVP Format

IPN Encodement

Please follow the instructions given at Instant Payment Notification to set up IPN.

Transaction Types

Wirecard Payment Page v1 supports the transaction type purchase only.

Test Credentials

URL (Endpoint)

https://test.wirecard.com.sg/engine/hpp/

Merchant Account ID (MAID)

5f544f9f-c56a-4242-8ce7-d6422ca3599d

Secret Key

0fbb1b24-6082-42d4-891e-cf9202083dcf

Additional Test Credentials on FPX Environment

Bank Selection

SBI BANK A (to obtain a positive test case)

SBI BANK B/C (to obtain negative test case)

Username

1234

Password

1234

Workflow

FPX workflow
  1. Consumer adds items to shopping basket and proceeds to checkout.

  2. Merchant sends consumer’s payment request to WPG for processing.

  3. Consumer selects payment method FPX.

  4. WPG displays list of available banks for FPX.

  5. Consumer selects the preferred bank.

  6. WPG redirects consumer to FPX page showing the details of the bank the consumer has selected.

  7. FPX sends consumer to bank page.

  8. Consumer logs in and completes payment on bank page.

  9. WPG receives transaction status from FPX.

  10. WPG sends notification with transaction status to the merchant.

  11. WPG redirects consumer back to the shop where the merchant displays the status of the payment process.

Fields

The fields used for FPX requests, responses and notifications are the same as for REST API and Payment Page. Please refer to: REST API Fields or Payment Page.

Sample

To test FPX, use the following JavaScript snippet.

For details on hash-generation, go to our WPPv1 Security section, see Request Signature and Secret Key Exchange.
purchase Request (successful)
 var requestedData = {
    "request_time_stamp" : getTimeStamp(), //get current timestamp
    "request_id" : generateUid(), //generate unique ID
    "merchant_account_id" : "5f544f9f-c56a-4242-8ce7-d6422ca3599d",
    "transaction_type" : "purchase",
    "requested_amount" : "500",
    "requested_amount_currency" : "MYR",
    "success_redirect_url" : "https://demoshop-test.wirecard.com/demoshop/#/success",
    "cancel_redirect_url" : "https://demoshop-test.wirecard.com/demoshop/#/cancel",
    "fail_redirect_url" : "https://demoshop-test.wirecard.com/demoshop/#/error",
    "ip_address" : "127.0.0.1",
    "secret_key" : "0fbb1b24-6082-42d4-891e-cf9202083dcf",
    "psp_name" : "demo",
    "first_name" : "Test",
    "last_name" : "User",
    "attempt_three_d" : "false",
    "request_signature" : "", //generate request signature
    "payment_method" : "fpx",
    "order_number" : "20190919063932"
}
WirecardPaymentPage.hostedPay(requestData);
Custom URL: