# Sakuku Integration Guide

One of the e-money payment methods offered by Faspay is BCA Sakuku. By using this payment method, customers can pay via e-money website and Faspay will send real-time notifications when the customer completes the payment.

The basic integration process of BCA Sakuku will be explained below.

## Integration Step

1. [Post Data Transaction to Faspay](#id-1.-post-data-transaction)
2. [Redirect customer to Sakuku's website](#id-2.-redirect-customer-to-sakukus-website)
3. [Callback/Return URL](#id-3.-callback-return-url)
4. [Payment Notification](#id-4.-payment-notification)

### 1. Post Data Transaction

Post data transactions should be initiated from the merchant's backend. You can find detailed API references [Here](https://docs.faspay.co.id/merchant-integration/api-reference-1/debit-transaction/post-data-transaction)

This is an example of post data transaction for Sakuku channel

**A. Post Data Transaction Request**

{% tabs %}
{% tab title="Sample Code - XML" %}

```xml
<?xml version="1.0" encoding="UTF-8" ?>
<faspay>
    <request>Post Data Transaction</request>
    <merchant_id>99999</merchant_id>
    <merchant>Sophia Store</merchant>
    <bill_no>20201222024113</bill_no>
    <bill_reff>20200324_02-2286704_336</bill_reff>
    <bill_date>2020-12-19 06:04:29</bill_date>
    <bill_expired>2020-12-19 07:04:29</bill_expired>
    <bill_desc>Payment Online Via Faspay</bill_desc>
    <bill_currency>IDR</bill_currency>
    <bill_gross>100000</bill_gross>
    <bill_miscfee>100000</bill_miscfee>
    <bill_total>200000</bill_total>
    <cust_no>01</cust_no>
    <cust_name>John Doe</cust_name>
    <payment_channel>704</payment_channel>
    <pay_type>01</pay_type>
    <msisdn>8562927907</msisdn>
    <email>john@gmail.com</email>
    <terminal>10</terminal>
    <billing_address>Jl Sabang 37</billing_address>
    <billing_address_city>Jakarta</billing_address_city>
    <billing_address_region>DKI Jakarta</billing_address_region>
    <billing_address_state>Indonesia</billing_address_state>
    <billing_address_poscode>10170</billing_address_poscode>
    <billing_address_country_code>ID</billing_address_country_code>
    <receiver_name_for_shipping>John Doe</receiver_name_for_shipping>
    <shipping_address>Jl. Sabang 37</shipping_address>
    <shipping_address_city>Jakarta</shipping_address_city>
    <shipping_address_region>DKI Jakarta</shipping_address_region>
    <shipping_address_state>Indonesia</shipping_address_state>
    <shipping_address_poscode>10170</shipping_address_poscode>
    <item>
	<id>A001</id>
	<product>Invoice #2286704</product>
	<qty>1</qty>
	<amount>100000</amount>
	<payment_plan>01</payment_plan>
	<merchant_id>99999</merchant_id>
	<tenor>00</tenor>
    </item>
    <reserve1></reserve1>
    <reserve2></reserve2>
    <signature>d0ef313cc0f20a5d64d01fd3f43899c10b5e5442</signature>
</faspay>
```

{% endtab %}

{% tab title="Sample Code - JSON" %}

```json
{
   "request": "Post Data Transaction",
   "merchant_id": "99999",
   "merchant": "Sophia Store",
   "bill_no": "20201222024113",
   "bill_reff": "20200324_02-2286704_336",
   "bill_date": "2020-12-19 06:04:29",
   "bill_expired": "2020-12-19 07:04:29",
   "bill_desc": "Payment Online Via Faspay",
   "bill_currency": "IDR",
   "bill_gross": "100000",
   "bill_miscfee": "100000",
   "bill_total": "200000",
   "cust_no": "01",
   "cust_name": "John Doe",
   "payment_channel": "704",
   "pay_type": "01",
   "msisdn": "8562927907",
   "email": "john@gmail.com",
   "terminal": "10",
   "billing_address": "Jl Sabang 37",
   "billing_address_city": "Jakarta",
   "billing_address_region": "DKI Jakarta",
   "billing_address_state": "Indonesia",
   "billing_address_poscode": "10170",
   "billing_address_country_code": "ID",
   "receiver_name_for_shipping": "John Doe",
   "shipping_address": "Jl. Sabang 37",
   "shipping_address_city": "Jakarta",
   "shipping_address_region": "DKI Jakarta",
   "shipping_address_state": "Indonesia",
   "shipping_address_poscode": "10170",
   "item": {
      "id": "A001",
      "product": "Invoice #2286704",
      "qty": "1",
      "amount": "100000",
      "payment_plan": "01",
      "merchant_id": "99999",
      "tenor": "00"
   },
   "reserve1": "",
   "reserve2": "",
   "signature": "d0ef313cc0f20a5d64d01fd3f43899c10b5e5442"
}
```

{% endtab %}
{% endtabs %}

**B. Post Data Transaction response**

You will get the post data response like the following:

{% tabs %}
{% tab title="Sample Code XML" %}

```xml
<?xml version="1.0" encoding="UTF-8" ?>
<faspay>
    <response>Transmission of Purchase Detail Info</response>
    <trx_id>9999970400001750</trx_id>
    <merchant_id>99999</merchant_id>
    <merchant>Sophia Store</merchant>
    <bill_no>20201222024113</bill_no>
    <bill_items>
	<id>A001</id>
	<product>Invoice #2286704</product>
	<qty>1</qty>
	<amount>100000</amount>
	<payment_plan>01</payment_plan>
	<merchant_id>99999</merchant_id>
	<tenor>00</tenor>
    </bill_items>
    <response_code>00</response_code>
    <response_desc>Success</response_desc>
    <redirect_url>https://dev.faspay.co.id/pws/100003/0830000010100000/d0ef313cc0f20a5d64d01fd3f43899c10b5e5442?trx_id=9999970400001750&merchant_id=99999&bill_no=20201222024113
    </redirect_url>
</faspay>
```

{% endtab %}

{% tab title="Sample Code - JSON" %}

```json
{
   "response": "Transmission of Purchase Detail Info",
   "trx_id": "9999970400001750",
   "merchant_id": "99999",
   "merchant": "Sophia Store",
   "bill_no": "20201222024113",
   "bill_items": {
      "id": "A001",
      "product": "Invoice #2286704",
      "qty": "1",
      "amount": "100000",
      "payment_plan": "01",
      "merchant_id": "99999",
      "tenor": "00"
   },
   "response_code": "00",
   "response_desc": "Success",
   "redirect_url" : "https://dev.faspay.co.id/pws/100003/0830000010100000/d0ef313cc0f20a5d64d01fd3f43899c10b5e5442?trx_id=9999970400001750&merchant_id=99999&bill_no=20201222024113"
}
```

{% endtab %}
{% endtabs %}

### 2. Redirect customer to Sakuku's website

To redirect customers to Sakuku's Website, use `redirect_url` retrieved from Post Data Transaction response (JSON Format) or follow the detailed API reference [Here](https://docs.faspay.co.id/merchant-integration/api-reference-1/debit-transaction/redirect-process)

### 3. Callback/Return URL

After the customer completes the payment via Sakuku's apps, the Sakuku website automatically redirects the 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](https://docs.faspay.co.id/merchant-integration/api-reference-1/debit-transaction/url-callback-return-url)

### 4. Payment Notification

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

The detailed API reference can be found [here](https://docs.faspay.co.id/merchant-integration/api-reference-1/debit-transaction/payment-notification)&#x20;
