# Sambungkan GiveWP kepada Bayarcash

> Install plugin Bayarcash GiveWP untuk terima derma sekali sahaja melalui FPX, DuitNow dan lain-lain, serta derma berulang melalui Direct Debit.
>
> Source: https://docs.bayarcash.com/ms/givewp/

Plugin **Bayarcash GiveWP** menambah Bayarcash pada form derma GiveWP anda. Penderma boleh menderma sekali melalui FPX, DuitNow dan saluran lain. Penderma juga boleh menderma setiap minggu atau setiap bulan melalui Direct Debit.

Derma berulang memerlukan add-on [Recurring Donations for GiveWP](https://givewp.com/addons/recurring-donations/). Selepas itu, Bayarcash memotong setiap derma dari akaun bank penderma secara automatik, dengan caj tetap. Lihat [Derma berulang melalui Direct Debit](#derma-berulang-melalui-direct-debit).

Untuk melihat plugin ini berfungsi sebelum anda install, cuba [demo langsung](https://givewp.bayarcash-demo.com/).

## Saluran yang disokong

Setiap saluran Bayarcash menjadi satu payment gateway GiveWP yang berasingan. Anda boleh on-kan seberapa banyak yang anda mahu:

| Gateway dalam GiveWP | Cara penderma membayar |
|---|---|
| **Online Banking** | Perbankan online FPX. Gateway ini juga menjalankan derma berulang melalui Direct Debit. |
| **Online Banking (DuitNow)** | DuitNow Online Banking/Wallets |
| **Credit Card** | FPX Line of Credit: akaun kad kredit melalui FPX, bukan bayaran kad. Lihat [FPX Line of Credit](/ms/fpx-line-of-credit/) |
| **DuitNow QR** | Mana-mana aplikasi bank atau e-wallet yang menyokong DuitNow QR |
| **Boost PayFlex** | Boost PayFlex |
| **Indonesia Online Banking** | Perbankan online Indonesia (QRIS) |
| **Indonesia e-Wallet** | E-wallet Indonesia (QRIS) |
| **NETS** | NETS (Singapura) |
| **Alipay** | Alipay |
| **WeChat Pay** | WeChat Pay |
| **PromptPay** | PromptPay (Thailand) |

Sesuatu saluran hanya berfungsi jika saluran itu juga di-on-kan untuk portal Bayarcash anda. Lihat [Saluran bayaran](/ms/payment-channels/).

## Sebelum anda mula

Anda memerlukan perkara ini sebelum anda sediakan plugin:

- Akaun merchant Bayarcash yang sudah diluluskan.
- **Personal Access Token (PAT)**, **API Secret Key** dan **Portal Key** anda. Lihat [Cari API keys anda](/ms/api-keys/).
- GiveWP yang sudah di-install dan aktif. Mata wang mesti ringgit Malaysia (MYR).
- Untuk derma berulang, add-on GiveWP Recurring Donations.

## Install plugin

Plugin ini percuma di WordPress.org dengan nama [Bayarcash GiveWP](https://wordpress.org/plugins/bayarcash-givewp/). Untuk install plugin ini:

1. Dalam WordPress, pergi ke **Plugins** → **Add New**.
2. Cari **Bayarcash GiveWP** dan klik **Install**.
3. Klik **Activate**.

## Masukkan keys anda

Page tetapan Bayarcash ada satu tab bagi setiap saluran, dan setiap tab menyimpan keys sendiri. Isi tab bagi setiap saluran yang anda mahu guna:

1. Pergi ke **Donations** → **Settings** → **Payment Gateways**, kemudian buka bahagian **Bayarcash**.
   
2. Klik tab saluran itu, contohnya **Online Banking**.
3. Paste token anda ke dalam **Personal Access Token (PAT)** dan klik **Verify Token**. Plugin memaparkan "PAT Token is valid" apabila token itu berfungsi.
4. Pilih portal anda dalam **Portal Key**. Senarai ini hanya diisi selepas token itu sah.
5. Paste key anda ke dalam **API Secret Key**.
6. Pilihan: tetapkan **Billing Fields** kepada **Enabled** untuk meminta butiran bil penderma. Tetapkan **Enable Phone field** kepada **Enabled** untuk meminta nombor telefon bagi derma sekali sahaja.
7. Klik **Save changes**.

## On-kan gateway

Keys sahaja tidak memaparkan Bayarcash pada form anda. Anda juga perlu on-kan setiap gateway dalam GiveWP:

1. Dalam **Donations** → **Settings** → **Payment Gateways**, buka senarai gateway GiveWP.
2. Tandakan setiap gateway Bayarcash yang anda sediakan, contohnya **Online Banking** dan **DuitNow QR**.
3. Pilihan: tukar label yang penderma nampak, contohnya kepada "Online Banking (FPX)".
4. Simpan.

## Guna keys lain pada satu form

Setiap form derma boleh menggunakan akaun atau portal Bayarcash sendiri. Ini berguna jika anda mahu melihat kutipan setiap kempen secara berasingan dalam laporan. Dalam editor form, buka tab saluran Bayarcash dan pilih satu pilihan:

| Pilihan | Bila perlu guna |
|---|---|
| **Global Option** | Guna keys dari page tetapan Bayarcash. |
| **Customize** | Masukkan **Personal Access Token (PAT)**, **Portal Key** dan **API Secret Key** yang lain untuk form ini sahaja. |
| **Disable** | Sembunyikan saluran ini pada form ini. |

## Uji dalam sandbox

Plugin ini mengikut test mode GiveWP. Apabila test mode di-on-kan, setiap bayaran Bayarcash pergi ke sandbox Bayarcash, dengan keys yang anda masukkan:

1. Dapatkan token, secret key dan portal key dari [merchant dashboard sandbox](https://console.bayarcash-sandbox.com). Keys live tidak berfungsi dalam sandbox.
2. On-kan test mode GiveWP.
3. Masukkan keys sandbox pada page tetapan Bayarcash dan simpan.
4. Buat satu derma ujian.
5. Apabila semuanya berfungsi, off-kan test mode, masukkan keys live anda dan simpan semula.

## Cara keputusan bayaran sampai ke laman web anda

Anda tidak perlu paste URL callback ke dalam merchant dashboard. Plugin ini menghantar alamat sendiri bersama setiap derma, iaitu `/give-api/bayarcash_gateway/` pada laman web anda, dan Bayarcash menghantar keputusan ke alamat itu. Plugin juga menyemak semula derma yang pending setiap 5 minit.

Jika derma kekal pending selepas bayaran berjaya, pastikan laman web anda terbuka kepada umum dan menggunakan HTTPS. Pastikan juga tiada firewall atau plugin keselamatan yang menyekat alamat itu. Lihat [Callback dan checksum](/ms/callbacks-and-checksum/).

## Derma berulang melalui Direct Debit

Dengan add-on GiveWP Recurring Donations, penderma boleh menderma setiap minggu atau setiap bulan melalui Direct Debit. Penderma menandatangani e-mandate sekali sahaja, dan Bayarcash memotong setiap derma dari akaun bank penderma.

Untuk menerima derma berulang:

1. Install dan aktifkan GiveWP Recurring Donations.
2. Sediakan gateway **Online Banking** seperti di atas.
3. Jadikan form itu form derma berulang, dengan tempoh mingguan atau bulanan.

Pada form derma berulang, penderma mengisi **Phone Number**, **Identification Type** dan **Identification Number**, kemudian meluluskan e-mandate dengan bank mereka. Bank mengenakan amaun pengesahan yang kecil pada akaun penderma, dan amaun ini tidak dipulangkan. Resit derma menyatakan perkara ini. Lihat [Jadual potongan Direct Debit](/ms/direct-debit-deduction-schedule/) dan [e-Mandate](/ms/e-mandates/).

## Tips

Dua habit ini membantu anda mengurus derma:

- **Guna portal yang berasingan bagi setiap kempen.** Portal bagi setiap form memisahkan derma setiap kempen dalam laporan Bayarcash anda.
- **Pastikan e-mel penderma pendek pada form derma berulang.** Direct Debit hanya menerima e-mel sehingga 27 aksara, jadi alamat yang panjang akan menyekat derma itu.

## Isu biasa

### Kenapa Verify Token memaparkan "Invalid PAT Token"?

Token itu salah, atau token itu dari environment yang lain. Jika test mode GiveWP di-on-kan, guna token dari merchant dashboard sandbox. Jika test mode di-off-kan, guna token dari merchant dashboard live. Lihat Cari API keys anda (/ms/api-keys/).

### Penderma nampak "Email length reaches a limit of 27 characters." Apa maksudnya?

Untuk derma berulang melalui Direct Debit, e-mel penderma boleh ada maksimum 27 aksara. Untuk derma sekali sahaja, hadnya 50 aksara. Minta penderma guna alamat e-mel yang lebih pendek.

### Kenapa penderma nampak "Please tick the create account button if you want to create a subscription donation"?

Derma berulang memerlukan akaun penderma. Penderma perlu tandakan pilihan untuk membuat akaun pada form derma, kemudian cuba semula.

### Kenapa saya hanya nampak pilihan Online Banking pada form derma berulang saya?

Derma berulang dikutip melalui Direct Debit, dan Direct Debit berjalan melalui gateway Online Banking. Saluran Bayarcash yang lain tidak dipaparkan pada form derma berulang. Saluran itu hanya menerima derma sekali sahaja.
