# Yuscom

## Pola Respon Prabayar H2H Serpul Vendor Yuscom

Dokumentasi ini menjelaskan pola-pola _callback response_ dari Vendor Yuscom untuk layanan H2H Serpul, khususnya pada transaksi prabayar. Setiap respon memiliki pola `RegEx (Regular Expression)` yang bisa digunakan untuk parsing data penting seperti `SN/Ref`, `Price`, `Saldo`, dan lainnya.

***

### ✅ Status: **Sukses**

<figure><img src="https://3070404806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFZEAhWFVv34e0c2uCqr5%2Fuploads%2FqOUOLL5GNM1Jwyo1y6kp%2Fimage.png?alt=media&#x26;token=246dc514-d186-4dc1-bfdd-38c0b9916606" alt=""><figcaption></figcaption></figure>

**Deskripsi:** Callback - Sukses

* **Pattern RegEx**:

```regex
(?<skip1>.+) SUKSES. SN\/Ref: (?<serial_number>.+).. Saldo (?<skip2>.+)-(?<price>.+)=(?<balance>.+) @
```

* **Contoh Response**:

```
R#PRAd3e3eff823d7fdf0f T#68877919  UDDND100.082197895900 SUKSES. SN/Ref: ARYX SAPXXXX/100000/Ref:2025060210121481030100166129745458353.. Saldo 108.296-100.055=8.241 @02/06 07.50.58 C#1 KP#UDDND100.
```

***

### ❌ Status: **Gagal**

<figure><img src="https://3070404806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFZEAhWFVv34e0c2uCqr5%2Fuploads%2FStBh2BGfIll9FaPm5mvW%2Fimage.png?alt=media&#x26;token=3fd80ca8-6649-41e9-bf53-c1cb18760da4" alt=""><figcaption></figcaption></figure>

**Deskripsi:** Callback - Gagal saldo kurang

* **Pattern RegEx**:

```regex
(?<skip1>.+) GAGAL. (?<description>.+). Saldo (?<balance>.+) @(?<skip2>.+)
```

* **Contoh Response**:

```
R#PRA1f74b4f0b84677378 PLNB20.32106541934 GAGAL. Sisa saldo kamu kurang dari Rp 20.565. Saldo 1.748 @11:35
```

***

### ❌ Status: **Gagal**

**Deskripsi:** Callback - Saldo Tidak Cukup

* **Pattern RegEx**:

```regex
(?<skip1>.+) GAGAL. Saldo tidak cukup. Hrg (?<price>.+), Saldo (?<balance>.+) Limit 0, proses 0.
```

* **Contoh Response**:

```
0.140501 | R#PRA758e8ba220f1c348c T# SRVP20.082358649644 GAGAL. Saldo tidak cukup. Hrg 19.770, Saldo 2.816 Limit 0, proses 0.
```

***

### ❌ Status: **Gagal**

**Deskripsi:** Callback - Nomor tujuan salah

* **Pattern RegEx**:

```regex
(?<skip1>.+) GAGAL. Nomor tujuan salah. Sal (?<balance>.+) @(?<skip2>.+)
```

* **Contoh Response**:

```
R#PRA7ca7f1707094429e3 T#68917813 Token Listrik Promo 20.000 PLNP20.14033984844 GAGAL. Nomor tujuan salah. Sal 235.505 @19.54
```

***

### ❌ Status: **Gagal**

**Deskripsi:** Callback - Timeout

* **Pattern RegEx**:

```regex
(?<skip1>.+), status Timeout. SN\/Ref: .(?<serial_number>.+) Trx (?<skip2>.+). Saldo (?<balance>.+)
```

* **Contoh Response**:

```
SRVP5.085133676614 sdh pernah jam 20.27, status Timeout. SN/Ref: .Timeout Trx ke-2/hr: SRVP5.2.085133676614.pin.. Saldo 837.170
```

***

### ❌ Status: **Gagal**

**Deskripsi:** Callback - Gagal

* **Pattern RegEx**:

```regex
(?<skip1>.+), status Gagal. SN\/Ref: .(?<serial_number>.+) Trx (?<skip2>.+). Saldo (?<balance>.+)
```

* **Contoh Response**:

```
0.153201 | status=40&message=PLNP20.14300747756 sdh pernah jam 18.49, status Gagal. SN/Ref: .Gagal Trx ke-2/hr: PLNP20.2.14300747756.pin.. Saldo 253.611
```

***

### 📌 Daftar Pola RegEx Umum & Penjelasannya

<table data-header-hidden><thead><tr><th width="204.4444580078125"></th><th width="185.77783203125"></th><th width="417.7777099609375"></th><th width="161.4444580078125"></th><th></th></tr></thead><tbody><tr><td><strong>Pattern</strong></td><td><strong>Nama Field</strong></td><td><strong>Fungsi / Penjelasan</strong></td><td><strong>Status Terkait</strong></td><td><strong>Wajib?</strong></td></tr><tr><td><code>(?&#x3C;skip[i]>.+)</code></td><td>Skip Data</td><td>Digunakan untuk <strong>melewati bagian data yang tidak dibutuhkan</strong>. Misalnya <code>skip1</code>, <code>skip2</code>, dst.</td><td>Semua status</td><td>❌</td></tr><tr><td><code>(?&#x3C;serial_number>.+)</code></td><td>Serial Number (SN)</td><td>Menangkap <strong>kode SN atau referensi transaksi vendor</strong>. Biasanya diperlukan untuk validasi.</td><td>Berhasil</td><td>✅</td></tr><tr><td><code>(?&#x3C;price>.+)</code></td><td>Harga</td><td>Menangkap <strong>harga pembelian</strong> dari produk atau layanan yang dibeli. Digunakan untuk pencatatan dan laporan.</td><td>Berhasil</td><td>✅</td></tr><tr><td><code>(?&#x3C;balance>.+)</code></td><td>Saldo</td><td>Menangkap <strong>sisa saldo akhir</strong> dari akun H2H setelah transaksi dilakukan (sukses/gagal).</td><td>Berhasil, Gagal, Pending</td><td>✅</td></tr><tr><td><code>(?&#x3C;description>.+)</code></td><td>Keterangan Gagal</td><td>Menangkap <strong>pesan error atau alasan kegagalan transaksi</strong>, misalnya "Saldo tidak cukup".</td><td>Gagal</td><td>❌</td></tr></tbody></table>

#### Tips Penggunaan:

* Gunakan `skip1`, `skip2`, dst. untuk bagian awal respon jika tidak diperlukan.
* Field dengan `✅ Wajib` harus selalu ditangkap jika ada dalam response.
* Cocokkan pattern dengan **struktur kalimat dari response vendor**. Kadang formatnya berbeda-beda, jadi perlu diuji coba.
* **Contoh lengkap pola** bisa dilihat di bagian atas dokumentasi untuk setiap jenis status (sukses/gagal).

***

### ℹ️ Catatan Penting

Jika menemukan pola respon dari callback yang **belum sesuai atau tidak dikenali**, silakan gunakan Tool regex Telegram Bot serpul, Caranya kirim pesan ke [https://t.me/SERPULCARE](https://t.me/SERPULCARE) kemudian Kirim pesan dengan format: `#REGEX` diikuti penjelasan dan contoh response.

***
