# Hantar pesanan ke Excel dengan Power Automate

> Tambah satu baris dalam jadual Excel di OneDrive untuk setiap pesanan BCL yang dibayar, dengan automasi BCL dan flow Power Automate.
>
> Source: https://docs.bcl.my/ms/excel-power-automate/

BCL tidak ada connector Microsoft terbina dalam, tetapi anda masih boleh merekodkan setiap pesanan yang dibayar dalam workbook Excel. Automasi BCL menghantar setiap pesanan ke flow Power Automate, dan flow itu menambah satu baris ke jadual dalam OneDrive anda. Persediaannya mengambil kira-kira 15 minit.

## Sebelum anda mula

Anda memerlukan tiga perkara:

- Akaun kerja atau sekolah Microsoft 365 dengan OneDrive dan Excel for the web.
- Lesen atau trial Power Automate Premium. Trigger **When an HTTP request is received** ialah ciri Premium, jadi Power Automate percuma yang datang bersama Microsoft 365 tidak mencukupi. Anda boleh memulakan trial percuma 90 hari semasa membina flow itu.
- Login admin BCL, supaya anda boleh mencipta automasi.

## Sediakan workbook Excel

Flow itu menulis ke dalam jadual Excel, bukan julat biasa. Sediakan workbook dahulu:

1. Dalam OneDrive, cipta folder (contohnya **BCL Demo**) dan workbook Excel baru di dalamnya.
2. Taip tajuk berikut dalam baris 1:

   | Lajur | Apa yang flow itu isikan |
   | --- | --- |
   | Order Number | Nombor pesanan BCL |
   | Payment Date | Tarikh dan masa bayaran |
   | Customer | Nama pelanggan |
   | Email | E-mel pelanggan |
   | Phone | Nombor telefon pelanggan |
   | Form | Form yang digunakan oleh pelanggan untuk membayar |
   | Items | Item dan kuantiti, contohnya 2x House Blend 250g |
   | Amount | Jumlah yang dibayar, sebagai nombor |
   | Payment Method | Contohnya FPX atau DuitNow QR |
   | Status | Status bayaran |

3. Pilih tajuk itu dan klik **Home** → **Format As Table**. Tandakan **My table has headers**.

Excel mengekalkan satu baris kosong di bawah tajuk jadual baru. Selepas pesanan pertama masuk, anda boleh buang baris kosong itu.

## Cipta flow dalam Power Automate

Flow itu memberi anda alamat web yang BCL gunakan untuk menghantar setiap pesanan:

1. Pergi ke [make.powerautomate.com](https://make.powerautomate.com), klik **Create** → **Instant cloud flow**, dan beri nama kepada flow itu.
2. Pilih **When an HTTP request is received** dan klik **Create**.

   *(Screenshot: Kotak Build an instant cloud flow dengan When an HTTP request is received dipilih dan butang Create ditanda)*

3. Klik trigger itu. Dalam **Who can trigger the flow?**, pilih **Anyone**. BCL tidak log masuk ke Microsoft, jadi tetapan default **Any user in my tenant** akan menyekatnya.

   *(Screenshot: Senarai Who can trigger the flow? dengan Anyone ditanda)*

4. Klik **Use sample payload to generate schema**, paste contoh ini dan klik **Done**:

   ```json
   {
     "order_number": "BC-00123",
     "payment_date": "2026-09-27 14:05:11",
     "name": "Nurul Aina",
     "email": "nurul.aina@example.com",
     "phone": "60133456789",
     "form_title": "Kopi Kampung Coffee Beans",
     "items": "2x House Blend 250g",
     "amount": "70.00",
     "payment_method": "FPX",
     "status": "Successful"
   }
   ```

   *(Screenshot: Contoh payload JSON yang sudah di-paste dalam kotak schema)*

5. Klik **+** di bawah trigger itu, cari **Add a row into a table** dan pilih action **Excel Online (Business)**. Log masuk jika Power Automate meminta anda mencipta sambungan.

   *(Screenshot: Panel Add an action dengan Add a row into a table ditanda)*

6. Tetapkan **Location** kepada **OneDrive for Business**, **Document Library** kepada **OneDrive**, pilih workbook anda dalam **File** dan jadual anda dalam **Table**.

   *(Screenshot: Action Add a row into a table dengan Location, Document Library, File dan Table sudah diisi)*

7. Di bawah **Advanced parameters**, klik **Show all**. Klik dalam setiap lajur dan pilih nilai yang sepadan dengan ikon kilat: **order_number** untuk Order Number, **name** untuk Customer, **form_title** untuk Form, dan seterusnya.

   *(Screenshot: Setiap lajur Excel diisi dengan nilai daripada trigger HTTP)*

8. Klik **Save**. Jika flow checker memaparkan bahawa pemilik flow memerlukan lesen Power Automate Premium, klik **Test**, kemudian **free 90-day trial** dalam amaran itu, dan **Start trial**. Trial ini tidak meminta kad. Simpan flow itu sekali lagi selepas trial bermula.

   *(Screenshot: Kotak Start your free 90-day trial dengan butang Start trial ditanda)*

9. Klik trigger itu sekali lagi dan copy **HTTP URL**. Power Automate hanya mencipta URL ini selepas simpanan pertama.

   *(Screenshot: Ruangan HTTP URL pada trigger, dengan alamat disembunyikan, dan butang copy-nya)*

Semak di page butiran flow bahawa flow itu **On**. Jika ia memaparkan **Off**, klik **Turn on**.

## Hantar pesanan berbayar dari BCL

Seterusnya, cipta automasi BCL yang menghantar setiap pesanan berbayar ke flow itu:

1. Di sidebar, klik **Automations**, kemudian **New Automation**. Beri nama, contohnya Pesanan ke Excel, dan klik **Create**.

   *(Screenshot: Page Automations dengan Automations di sidebar dan butang New Automation ditanda)*

2. Klik **Add Node** dan pilih trigger **Payment Successful**. Biarkan **Payment Source Type** pada **All Sources** untuk merekodkan semua form, atau pilih satu form. Klik **Save Trigger**.
3. Klik **Add Node** sekali lagi dan pilih **HTTP Request**.

   *(Screenshot: Workflow dengan trigger Payment Successful yang disambungkan kepada action HTTP Request Send to Excel)*

4. Double-click node baru itu. Beri **Action Name**, kekalkan **Method** pada **POST**, dan paste alamat flow itu ke dalam **Request URL**.
5. Buka tab **Body**, pilih **Raw JSON** dan paste body ini. Setiap `{variable}` digantikan dengan nilai pesanan itu:

   ```json
   {
     "order_number": "{order_number}",
     "payment_date": "{payment_date}",
     "name": "{name}",
     "email": "{email}",
     "phone": "{phone}",
     "form_title": "{form_title}",
     "items": "{items_summary}",
     "amount": "{amount_value}",
     "payment_method": "{payment_method}",
     "status": "{payment_status}"
   }
   ```

   *(Screenshot: HTTP Request Action Settings dengan Request URL dan body Raw JSON ditanda)*

6. Klik **Save HTTP Request**, kemudian **Update Automation**.

Untuk menyemak sambungan ini, klik **Send Test Request** dalam action **HTTP Request**, atau buat test payment pada salah satu form anda. Baris baru dipaparkan dalam jadual Excel anda dalam beberapa saat.

*(Screenshot: Jadual Excel dengan baris baru untuk pesanan LINK-05845, ditanda)*

## Automasi atau webhook form?

Webhook payment form sendiri juga boleh memanggil flow Power Automate. Automasi biasanya pilihan yang lebih mudah:

| | Automasi dengan HTTP Request | Webhook form |
| --- | --- | --- |
| Di mana anda menetapkannya | Sekali sahaja, di bawah **Automations** | Pada setiap form, di bawah **Advanced** → **Webhook Settings** |
| Jualan yang mana | Semua sumber (payment form, event form dan booking form, QR Terminal) atau satu form | Form itu sahaja |
| Apa yang BCL hantar | Hanya ruangan yang anda senaraikan, dengan nama anda sendiri | Payload penuh, di dalam `data`, dengan item sebagai senarai |
| Dalam flow | Satu schema rata, satu **Add a row into a table** | Schema bersarang, dan **Apply to each** untuk baris item |

Guna webhook form apabila anda memerlukan setiap ruangan yang BCL ada, seperti custom field dan senarai item penuh. Lihat [Payload webhook payment form](/ms/webhook-payment-form/).

## Tips

Beberapa tabiat ini memastikan sambungan kekal boleh dipercayai:

- **Rahsiakan alamat flow.** Sesiapa yang ada **HTTP URL** boleh menambah baris ke workbook anda. Jangan paste alamat itu dalam chat atau screenshot. Jika alamat itu terdedah, off-kan flow itu dan bina flow baru, yang akan mendapat alamat baru.
- **Kemas kini flow apabila anda menukar lajur Excel.** Jika anda menukar nama atau membuang lajur dalam jadual, buka flow itu dan pilih jadual itu sekali lagi, atau flow itu akan gagal.
- **Guna nombor pesanan untuk mengesan pendua.** Jika satu pesanan dipaparkan dua kali, susun jadual mengikut **Order Number** dan buang baris yang berlebihan.
- **Mahu carta juga?** Halakan Power BI ke workbook yang sama. Lihat [Analisis jualan BCL anda dalam Power BI](/ms/power-bi/).

## Isu biasa

### Bagaimana spreadsheet saya sendiri boleh tahu apabila bayaran masuk?

Cipta automasi dengan trigger Payment Successful dan action HTTP Request yang menghantar pesanan itu ke flow Power Automate anda. Flow itu menambah satu baris dalam jadual Excel anda untuk setiap pesanan yang dibayar.

### Kenapa Power Automate kata flow saya memerlukan lesen Premium?

Trigger When an HTTP request is received ialah ciri Premium. Mulakan trial percuma 90 hari daripada amaran lesen flow itu, atau minta lesen Power Automate Premium daripada admin Microsoft 365 anda.

### Flow saya tidak menerima apa-apa. Bagaimana saya mengujinya?

Buka action HTTP Request dalam automasi BCL anda dan klik Send Test Request, kemudian semak sejarah run flow itu dalam Power Automate. Pastikan Who can trigger the flow? ditetapkan kepada Anyone dan flow itu sudah di-on-kan.
