Faspay
  • Homepage
  • Getting Started
    • Faspay Business
      • Debit Transaction
        • Features
          • Static Transaction
            • Virtual Account Static
          • UNIcount
      • Credit Card Transaction
        • Recurring Payment
    • Faspay Billing
      • Introduction
      • Feature
      • How To Use
        • Getting Started
        • Dashboard
        • Recipient
          • List Recipient
          • Recipient Group
          • Recurrence Status
        • Scheduled Status
        • Invoice
        • Report
        • Create Billing System
          • Single Billing
          • Mass Billing
        • Billing Setting
          • Reminder Setting
          • Template Setting
          • Invoice Status
    • Faspay Billing 2.0
      • How to Use
        • Getting Started
        • Billings
          • Billings List
            • Detail Billing
            • Upload Document
          • Scheduled Billing
          • Recurring Billing
          • Static VA Generator
            • Static VA Close Generator
            • Static VA Open Generator
            • Static VA List
            • Payment History
            • Excel File Template
        • Customers
          • Customer List
          • Customer Group
        • Reports
          • Invoice Issued
          • Payment History
          • Summary Outstanding
          • Detail Outstanding
          • Invoice Aging Report
          • Invoice Paid Report
          • Export Report
        • Items
          • Product Catalogs
          • Rooms
          • Product Category
          • UoM (Unit of Measurement)
        • E-Faktur
          • E-Faktur Range Number
            • Generate E-Faktur Number
            • Cancelation E-Faktur Number
          • Export CSV
          • E-Faktur Files
          • Setting Threshold E-Faktur
        • QR Business Profile
          • Create Business Profile
          • Business Profile List
          • Access Business Profile Page
          • Transaction History on Business Profile
            • Lite Sales App
        • Billing Settings
    • Faspay Xpress
      • Faspay Xpress 4.0
        • Setting Language
        • Payment Method
        • Quick Payment Guide
        • Send your Order Details and Payment Instructions
        • Payment Status
        • Payment Receipt
        • Rating Payment
      • Setting Xpress
    • Faspay SendMe
      • Introduction
      • Credentials
      • List Of Service API
      • Authentication
        • Header
        • Authorization
        • Signature
          • Generate signature token
          • Generate signature other service
          • HTTP Method
          • Relative URL
        • Request Body
        • Access Token
      • Cash Out
        • Alfamart Cash Out
        • Indomaret Cash Out
      • E-Wallet
    • SNAP
      • SNAP Direct Debit
      • SNAP QRIS
      • SNAP Virtual Account
      • SNAP Disbursement
  • Merchant Integration
    • API Reference
      • Debit
        • Payment Channel Inquiry
        • Post Data Transaction
        • Redirect Process
        • Inquiry Payment Status
        • Cancel Transaction
        • Payment Notification
        • URL Callback/Return URL
        • Reference
          • Status Response Code
          • Payment Channel Code
        • Bank Transfer Integration Guide
        • Internet Banking integration Guide
        • Retail Payment Integration Guide
        • Online Debit Integration Guide
          • B-secure
          • BRI Direct Debit
        • Online Credit Integration Guide
          • Status Response Code
        • e-Money Integration Guide
          • LinkAja Integration Guide
          • LinkAja QRIS Integration Guide
          • LinkAja AppLink Integration Guide
          • DANA Integration Guide
          • Sakuku Integration Guide
          • OVO Integration Guide
          • ShopeePay Jump App Integration Guide
          • ShopeePay QRIS Integration Guide
          • OVO Tokenize Integration Guide
          • DANA Subs Integration Guide
          • Paydia QRIS Integration Guide
        • Features
          • Static Transaction Integration
            • BNI VA Static Integration
            • BNC VA Static Integration
          • Unicount
        • Postman Collection
      • Credit Card
        • Payment Integration API
        • Additional API Integration
          • Inquiry Payment Status
          • Capture Transaction
          • Transaction Void
          • Refund Transaction
          • Signature Transaction
            • Generate Signature Request
            • Genarete signature response
          • Server CallBack / URL Notification Credit Card
          • API Tokenization
            • Payment Window Integration API
            • Payment Direct API
            • Advance Functionality API Tokenization
              • Inquiry Detail Token
              • Inquiry Delete Token
              • Inquiry Last Token (Dynamic Token Only)
        • Recurring Payment API
          • Message Flow Transaction
            • Post Transaction
            • Update Card
          • JSON Message Format
            • Update Member
            • Inquiry Status
            • Payment Notification
            • Notification CC Expired
          • Status Response Code
        • Response Transaction
          • Response Success
          • Response Failed
          • Response Code Error Transaction
          • User Notification Screen
        • Reference
          • Faspay e-Payment Error Code Listing - CC
          • Transaction Status - CC
          • End User Indicator (EUI)
          • Categories of User Code and User Message - CC
          • ECI
      • Xpress
        • Xpress Version 4🆕
      • Faspay Billing API
        • Create Billing
        • Inquiry Billing
        • Cancel Billing
        • Get List Invoice
        • Callback
      • SendMe
        • Register Account
        • Confirmation Register Account
        • Transfer
        • Inquiry Name
        • Inquiry Balance
        • Mutasi
        • Inquiry Status
        • Notification / Callback
        • Error Code And Response Code
        • APPENDIX
        • Cash Out
          • ATM Permata Cash Out
          • Alfamart Cash Out
          • Indomaret Cash Out
        • E-Wallet (Top Up)
          • Inquiry Name
          • Transfer (Top Up)
      • SNAP
        • Signature SNAP
        • SNAP Virtual Account
        • SNAP Direct Debit
        • SNAP QRIS
        • SNAP Disbursement
          • Response Code
      • Route Payment
        • Post Data Transaction
        • SNAP Generate QRIS
        • SNAP Create Virtual Account
        • SNAP Direct Debit
        • Inquiry Static VA
        • SNAP Inquiry Static VA
        • Response Code
    • E-Commerce Plugin
      • Woocommerce
      • Ecwid
  • SDK Integration
    • SendMe SDK
      • Integration with Java SDK
      • Integrate with PHP SDK
      • Integrate with Python SDK
  • BEFORE LIVE
    • Whitelist IP
    • Account Testing
    • Sample Code
  • AFTER LIVE
  • Merchant page Reference
    • Change Password
    • Dashboard
    • Transactions
      • Debit
      • Credit
      • Settlement
      • Notification
    • Settings Profile
    • Faspay Business
      • Credential Settings
      • Report Settings
        • Daily Report Settings
        • Daily Report
        • Resend Daily Report
      • Developer Settings
      • Route Payment
        • Transaction Report
        • History
    • Faspay SendMe
      • Google Authenticator Pairing
      • Disbursement Account
      • Withdrawal
      • Withdraw History
      • Single Transfer
      • Mass Transfer
        • Upload File
        • Validation
        • Mass Transfer
      • Transaction History
      • Paycheck
      • Top Up
      • Credential Settings
      • Report Settings
        • Daily Report
        • Daily Report Setting
        • Resend Daily Report
Powered by GitBook
On this page
  • Integration Step
  • 1. Post Data Transaction
  • 2 Display QR Code
  • 3 Callback/Return URL
  • 4 Payment Notification
  1. Merchant Integration
  2. API Reference
  3. Debit
  4. e-Money Integration Guide

LinkAja QRIS Integration Guide

The basic integration process of the LinkAja channel will be explained below

PreviousLinkAja Integration GuideNextLinkAja AppLink Integration Guide

Last updated 1 year ago

Integration Step

  1. Post Data Transaction to Faspay

  2. Display QR Code

  3. Callback/Return URL

  4. Payment Notification

1. Post Data Transaction

Post-data transactions should be done from the merchant backend, the detailed API reference can be found

This is an example of a post-data transaction sample code for the LinkAja QRIS channel:

A. Post Data Transaction Request

<faspay>
	<request>Purchased Details Transmission</request>
	<merchant_id>99999</merchant_id>
	<merchant>FASPAY STORE</merchant>
	<bill_no>849389422312</bill_no>
	<bill_reff>Payment</bill_reff>
	<bill_date>2023-10-10 09:19:00</bill_date>
	<bill_expired>2023-10-11 12:10:10</bill_expired>
	<bill_desc>Payment #12345678</bill_desc>
	<bill_currency>IDR</bill_currency>
	<bill_gross>0</bill_gross>
	<bill_tax>0</bill_tax>
	<bill_miscfee>0</bill_miscfee>
	<bill_total>10000</bill_total>
	<cust_no>1</cust_no>
	<cust_name>Faspay Agus Priyono</cust_name>
	<cust_lastname></cust_lastname>
	<payment_channel>715</payment_channel>
	<pay_type>1</pay_type>
	<bank_userid></bank_userid>
	<msisdn>081234567891</msisdn>
	<email>sanjayaegasanto@gmail.com</email>
	<terminal>10</terminal>
	<billing_name>payment item faspay</billing_name>
	<billing_lastname>0</billing_lastname>
	<billing_address>jalan pintu air raya</billing_address>
	<billing_address_city>Jakarta Pusat</billing_address_city>
	<billing_address_region>DKI Jakarta</billing_address_region>
	<billing_address_state>Indonesia</billing_address_state>
	<billing_address_poscode>10710</billing_address_poscode>
	<billing_msisdn></billing_msisdn>
	<billing_address_country_code>ID</billing_address_country_code>
	<receiver_name_for_shipping>Faspay Agus</receiver_name_for_shipping>
	<shipping_lastname></shipping_lastname>
	<shipping_address>jalan pintu air raya</shipping_address>
	<shipping_address_city>Jakarta Pusat</shipping_address_city>
	<shipping_address_region>DKI Jakarta</shipping_address_region>
	<shipping_address_state>Indonesia</shipping_address_state>
	<shipping_address_poscode>10710</shipping_address_poscode>
	<shipping_msisdn>08766688686</shipping_msisdn>
	<shipping_address_country_code>ID</shipping_address_country_code>
	<item>
		<id>123</id>
		<product>Glass Plastic</product>
		<qty>1</qty>
		<amount>10000</amount>
		<payment_plan>01</payment_plan>
		<merchant_id>99999</merchant_id>
		<tenor>00</tenor>
		<type>Furniture</type>
		<url>http://localhost:8088/index</url>
		<image_url>https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg</image_url>
	</item>
	<item>
		<id>234</id>
		<product>Plastic Bucket</product>
		<qty>1</qty>
		<amount>10000</amount>
		<payment_plan>01</payment_plan>
		<merchant_id>99999</merchant_id>
		<tenor>00</tenor>
		<type>Furniture</type>
		<url>http://localhost:8088/kredivo</url>
		<image_url>https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg</image_url>
	</item>
	<reserve1>0</reserve1>
	<reserve2></reserve2>
	<signature>0d8a326853f3090251fb81b1a56f5c4d5b5f2639</signature>
</faspay>
{
    "request": "Purchased Details Transmission",
    "merchant_id": 99999,
    "merchant": "FASPAY STORE",
    "bill_no": 849389422312,
    "bill_reff": "Payment",
    "bill_date": "2023-10-10 09:19:00",
    "bill_expired": "2023-10-11 12:10:10",
    "bill_desc": "Payment #12345678",
    "bill_currency": "IDR",
    "bill_gross": 0,
    "bill_tax": 0,
    "bill_miscfee": 0,
    "bill_total": 10000,
    "cust_no": 1,
    "cust_name": "Faspay Agus Priyono",
    "cust_lastname": "",
    "payment_channel": 715,
    "pay_type": 1,
    "bank_userid": "",
    "msisdn": 81234567891,
    "email": "sanjayaegasanto@gmail.com",
    "terminal": 10,
    "billing_name": "payment item faspay",
    "billing_lastname": 0,
    "billing_address": "jalan pintu air raya",
    "billing_address_city": "Jakarta Pusat",
    "billing_address_region": "DKI Jakarta",
    "billing_address_state": "Indonesia",
    "billing_address_poscode": 10710,
    "billing_msisdn": "",
    "billing_address_country_code": "ID",
    "receiver_name_for_shipping": "Faspay Agus",
    "shipping_lastname": "",
    "shipping_address": "jalan pintu air raya",
    "shipping_address_city": "Jakarta Pusat",
    "shipping_address_region": "DKI Jakarta",
    "shipping_address_state": "Indonesia",
    "shipping_address_poscode": 10710,
    "shipping_msisdn": 8766688686,
    "shipping_address_country_code": "ID",
    "item": [
      {
        "id": 123,
        "product": "Glass Plastic",
        "qty": 1,
        "amount": 10000,
        "payment_plan": 1,
        "merchant_id": 99999,
        "tenor": 0,
        "type": "Furniture",
        "url": "http://localhost:8088/index",
        "image_url": "https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg"
      },
      {
        "id": 234,
        "product": "Plastic Bucket",
        "qty": 1,
        "amount": 10000,
        "payment_plan": 1,
        "merchant_id": 99999,
        "tenor": 0,
        "type": "Furniture",
        "url": "http://localhost:8088/kredivo",
        "image_url": "https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg"
      }
    ],
    "reserve1": 0,
    "reserve2": "",
    "signature": "0d8a326853f3090251fb81b1a56f5c4d5b5f2639"
  }

B. Post Data Transaction Response

Response parameters are the parameters sent by the Faspay system in response to requests made by the merchant system. If any of these parameters do not match or contain incorrect values, the transaction will be rejected by Faspay's system.

For the LinkAja QRIS payment method, there are 2 types of transaction models:

  • Direct Type

  • Redirect Type

Here below are 2 different responses based on the transaction type model.

Parameter
Data Type
M/O/C
Description

response

Alphanumeric (50)

Mandatory

Response Name

trx_id

Numeric (16)

Mandatory

Transaction ID (Issued/generated by Faspay (Media Indonusa)) Notes: Unique Transaction ID for 1 day or as long as it hasn't been paid and hasn't expired

merchant_id

Numeric (5)

Mandatory

Merchant Code

merchant

Alphanumeric (32)

Mandatory

Merchant Name

bill_no

Alphanumeric (32)

Mandatory

Order Number

bill_items

Array

id

Numeric

Optional

ID product

product

Alphanumeric

Optional

Product name

amount

Numeric

Optional

Nominal product price

merchant_id

Numeric (5)

Mandatory

Merchant Code

qty

Numeric

Optional

Quantity of item

payment_plan

Numeric

Optional

Payment code 1: Full Settlement 2: Installement

tenor

Numeric

Optional

Installment Tenor 00: Full Payment 03: 3 months 06: 6 months 12: 12 months

type

Alphanumeric

Optional

Item type

url

Alphanumeric

Optional

Item Link

image_url

Alfaumeric

Optional

Image item Link

response_code

Numeric (2)

Mandatory

Response Code 00 Success

response_desc

Alphanumeric (32)

Mandatory

Response Code Description

web_url

Alphanumeric

Conditional

Used if the transaction model uses direct type, displaying only QR code in the browser.

qr_content

Alphanumeric

Conditional

Data will be encoded in a QR code generated or processed.

Notes: Use this if the transaction is direct type.

redirect_url

Alphanumeric

Mandatory

Link to Faspay landing page containing QR image

Sample Code for Direct Type

<?xml version="1.0" encoding="UTF-8"?>
<faspay>
	<response>Purchase Details Transmission</response>
	<trx_id>9999971571609433</trx_id>
	<merchant_id>99999</merchant_id>
	<merchant>FASPAY DEMO</merchant>
	<bill_no>849389422312</bill_no>
	<bill_items>
		<id>123</id>
		<product>Glass Plastic</product>
		<qty>1</qty>
		<amount>10000</amount>
		<payment_plan>01</payment_plan>
		<merchant_id>99999</merchant_id>
		<tenor>00</tenor>
		<type>Furniture</type>
		<url>http://localhost:8088/index</url>
		<image_url>https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg</image_url>
	</bill_items>
	<bill_items>
		<id>234</id>
		<product>Plastic Bucket</product>
		<qty>1</qty>
		<amount>10000</amount>
		<payment_plan>01</payment_plan>
		<merchant_id>99999</merchant_id>
		<tenor>00</tenor>
		<type>Furniture</type>
		<url>http://localhost:8088/kredivo</url>
		<image_url>https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg</image_url>
	</bill_items>
	<response_code>00</response_code>
	<response_desc>Success</response_desc>
	<web_url>https://debit-urgent-staging.faspay.co.id/__assets/qr/linkaja/99999-9999971571609433.png</web_url>
	<qr_content>00020101021226660014ID.LINKAJA.WWW011893600911002140400102152106140914040010303UME51450015ID.OR.GPNQR.WWW02150000000000000000303UME520454995802ID5906Faspay6007Jakarta61051071062200116999997156141292153033605403100630497F4</qr_content>
</faspay>
{
    "response": "Purchase Details Transmission",
    "trx_id": 9999971571609432,
    "merchant_id": 99999,
    "merchant": "FASPAY DEMO",
    "bill_no": 849389422312,
    "bill_items": [
      {
        "id": 123,
        "product": "glass plastic",
        "qty": 1,
        "amount": 10000,
        "payment_plan": 1,
        "merchant_id": 99999,
        "tenor": 0,
        "type": "Furniture",
        "url": "http://localhost:8088/index",
        "image_url": "https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg"
      },
      {
        "id": 234,
        "product": "plastic bucket",
        "qty": 1,	
        "amount": 10000,
        "payment_plan": 1,
        "merchant_id": 99999,
        "tenor": 0,
        "type": "Furniture",
        "url": "http://localhost:8088/kredivo",
        "image_url": "https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg"
      }
    ],
    "response_code": 0,
    "response_desc": "Success",
    "web_url": "https://debit-urgent-staging.faspay.co.id/__assets/qr/linkaja/99999-9999971571609433.png",
    "qr_content": "00020101021226660014ID.LINKAJA.WWW011893600911002140400102152106140914040010303UME51450015ID.OR.GPNQR.WWW02150000000000000000303UME520454995802ID5906Faspay6007Jakarta61051071062200116999997156141292153033605403100630497F4"
  }

Sample Code Response Post Data (Redirect Type)

<?xml version="1.0" encoding="UTF-8" ?>
<faspay>
        <response> Purchase Details Transmission</response>
        <trx_id>9999971150758059</trx_id>
        <merchant_id>99999</merchant_id>
        <merchant>FASPAY DEMO</merchant>
        <bill_no>163b4ef032520a7.07128111</bill_no>
        <bill_items>
	        <id>01</id>
	        <product>Glass Plastic Prem</product>
	        <qty>1</qty>
	        <amount>1000000</amount>
	        <payment_plan>01</payment_plan>
	        <merchant_id>99999</merchant_id>
	        <tenor>00</tenor>
	        <type>Furniture</type>
	        <url>http://localhost</url>
	        <image_url>https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg</image_url>
         </bill_items>
         <response_code>00</response_code>
         <response_desc>Success</response_desc>
         <redirect_url>https://web.faspay.co.id/pws/100003/2830000010100000/92fb23821115e920a979b3c28ea969d98ac76497?trx_id=9999971150758059&merchant_id=99999&bill_no=163b4ef032520a7.07128111</redirect_url>
</faspay>
{
    "response": " Purchase Details Transmission",
    "trx_id": "9999971150758059",
    "merchant_id": "99999",
    "merchant": "FASPAY DEMO",
    "bill_no": "163b4ef032520a7.07128111",
    "bill_items": [
        {
            "id": "01",
            "product": "Glass Plastic Prem",
            "qty": "1",
            "amount": "1000000",
            "payment_plan": "01",
            "merchant_id": "99999",
            "tenor": "00",
            "type": "Furniture",
            "url": "http://localhost",
            "image_url": "https://cdn.mos.cms.futurecdn.net/Mffc35PH77Dq7USrHb4qNm-1200-80.jpg"
        }
    ],
    "response_code": "00",
    "response_desc": "Success",
    "redirect_url": "https://web.faspay.co.id/pws/100003/2830000010100000/92fb23821115e920a979b3c28ea969d98ac76497?trx_id=9999971150758059&merchant_id=99999&bill_no=163b4ef032520a7.07128111"
}

2 Display QR Code

Here are two ways to display the QR Code:

  • Direct Type: To display the QR Code on the merchant's page, if the frontend is HTML, you can use the web_url retrieved from the post-data transaction within an image tag like this: <img src="[web_url]">. Alternatively, you can display it on a similar component without downloading. However, if the front end does not support this scenario, you should download and display the QR code image from that URL on the front end.

3 Callback/Return URL

4 Payment Notification

Payment notification from Faspay to the Merchant backend will also be triggered in the event of transaction status getting updated, to ensure the merchant is securely informed. Please provide the URL and make sure it's already registered on the Faspay system

Redirect Type: To display the QR Code on Faspay's page, redirect using the redirect_url obtained from the Post Data Transaction Response (in JSON format), or refer to the detailed API reference for more information

After the customer completes the payment via LinkAja's website, the LinkAja website automatically redirects the customer to the Callback/Return URL. Please provide the URL and make sure it's already registered on the Faspay system. For details, reference can be found

The detailed API reference can be found

Here
Here
Here
here