PHPackages                             denizgolbas/laravel-tcmb-gold - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. denizgolbas/laravel-tcmb-gold

ActiveLibrary[Parsing &amp; Serialization](/categories/parsing)

denizgolbas/laravel-tcmb-gold
=============================

TCMB XML Gold Rates Package for Laravel - TCMB Reeskont Kurları XML servisinden altın fiyatlarını çeken Laravel paketi

v1.0.0(4mo ago)10MITPHPPHP ^8.1CI passing

Since Dec 22Pushed 4mo agoCompare

[ Source](https://github.com/denizgolbas/laravel-tcmb-xml-hourly-gold-rates)[ Packagist](https://packagist.org/packages/denizgolbas/laravel-tcmb-gold)[ Docs](https://github.com/denizgolbas/laravel-tcmb-gold)[ RSS](/packages/denizgolbas-laravel-tcmb-gold/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (4)Versions (2)Used By (0)

Laravel TCMB XML Gold Rates
===========================

[](#laravel-tcmb-xml-gold-rates)

[![Latest Version on Packagist](https://camo.githubusercontent.com/dac411e6473faaa7b88afd12b7b39f6a509a9529d942e72bb5b9863f25d9dcaa/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f64656e697a676f6c6261732f6c61726176656c2d74636d622d676f6c642e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/denizgolbas/laravel-tcmb-gold)[![Total Downloads](https://camo.githubusercontent.com/29290c159ca0337ab6eab5c5466533b8bc820e9e0bb465f145cf721a597af511/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f64656e697a676f6c6261732f6c61726176656c2d74636d622d676f6c642e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/denizgolbas/laravel-tcmb-gold)[![Run Tests](https://github.com/denizgolbas/laravel-tcmb-xml-hourly-gold-rates/actions/workflows/run-tests.yml/badge.svg)](https://github.com/denizgolbas/laravel-tcmb-xml-hourly-gold-rates/actions)[![License](https://camo.githubusercontent.com/21e15fc5136c0f7223caffcfe1eeaba0bbd79dd28d78cbe330b4795e48ff8581/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f64656e697a676f6c6261732f6c61726176656c2d74636d622d676f6c642e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/denizgolbas/laravel-tcmb-gold)

TCMB (Türkiye Cumhuriyet Merkez Bankası) Reeskont Kurları XML servisinden altın fiyatlarını çeken Laravel paketi.

⚠️ Önemli Bilgi
---------------

[](#️-önemli-bilgi)

Bu paket TCMB'nin saatlik yayınladığı **Reeskont Kurları** XML servisini kullanır. Bu serviste sadece **alış fiyatı** bulunur, satış fiyatı yoktur.

🏦 TCMB XML'inde Dönen Altın Türleri
-----------------------------------

[](#-tcmb-xmlinde-dönen-altın-türleri)

TCMB Reeskont Kurları XML servisinde aşağıdaki altın türleri bulunmaktadır:

KodAçıklamaBirimKullanım Alanı`XAU`24 Ayar Altın1TCMB tarafından belirlenen altın fiyatı`XAS`SAF (Has) Altın1 gramTürkiye'deki kuyumculuk sektöründe referans fiyat### XAU vs XAS Farkı

[](#xau-vs-xas-farkı)

- **XAU (24 Ayar Altın)**: TCMB tarafından belirlenen 24 ayar altın fiyatıdır.
- **XAS (SAF / Has Altın)**: TCMB'nin hesapladığı 1 gram saf (has) altın fiyatıdır. Türkiye'deki kuyumculuk sektöründe referans olarak kullanılır.

### XML'de Dönen Tüm Alanlar

[](#xmlde-dönen-tüm-alanlar)

TCMB XML'inde her altın türü için aşağıdaki bilgiler döner:

- `doviz_cinsi_tabani`: Base currency (genellikle "TRY")
- `doviz_cinsi`: Altın kodu (XAU veya XAS)
- `birim`: Birim değeri (her zaman 1)
- `alis`: Alış fiyatı (TL cinsinden, virgülle ayrılmış)

**Not:** TCMB Reeskont Kurları XML'inde sadece **alış fiyatı** bulunur, satış fiyatı yoktur.

🚀 Özellikler
------------

[](#-özellikler)

- 🏦 **TCMB Reeskont Kurları** - Resmi altın fiyatları

    ```
    $rates = TcmbGold::all();
    // XAU (24 Ayar) ve XAS (SAF/Has) altın fiyatlarını getirir
    ```
- ⏰ **Saatlik Güncelleme** - Gün içinde 12:00, 14:00, 16:00 saatlerinde kontrol

    ```
    // Paket otomatik olarak 12:00, 14:00, 16:00 saatlerinde XML'i kontrol eder
    // İlk bulduğu geçerli veriyi döner
    $rates = TcmbGold::all();
    ```
- 💾 **Önbellekleme** - Performans için yapılandırılabilir cache (varsayılan 2 saat)

    ```
    // config/tcmb-gold.php
    'cache_duration' => 120, // 2 saat (dakika cinsinden)

    // Cache'i temizlemek için
    Cache::forget('tcmb_gold_2025-12-09_12:00');
    ```
- 📊 **Veritabanı Desteği** - Opsiyonel olarak fiyatları kaydetme

    ```
    use DenizTezc\TcmbGold\Models\GoldRate;

    $rates = TcmbGold::all();
    foreach ($rates as $rate) {
        GoldRate::updateOrCreate(
            ['code' => $rate['code'], 'date' => $rate['date']],
            $rate
        );
    }
    ```
- 🧪 **Matrix Testler** - PHP 8.1/8.2/8.3 + Laravel 10/11

    ```
    # GitHub Actions'da otomatik test edilir
    # 5 farklı kombinasyon: PHP 8.1 (L10), PHP 8.2/8.3 (L10+L11)
    # Not: Laravel 11 PHP 8.2+ gerektirir
    ```

📦 Kurulum
---------

[](#-kurulum)

```
composer require denizgolbas/laravel-tcmb-gold
```

### Config Dosyasını Publish Etme

[](#config-dosyasını-publish-etme)

```
php artisan vendor:publish --provider="DenizTezc\TcmbGold\TcmbGoldServiceProvider" --tag="config"
```

### Migration'ları Publish Etme (Opsiyonel)

[](#migrationları-publish-etme-opsiyonel)

```
php artisan vendor:publish --provider="DenizTezc\TcmbGold\TcmbGoldServiceProvider" --tag="migrations"
php artisan migrate
```

🛠️ Kullanım
-----------

[](#️-kullanım)

### Temel Kullanım

[](#temel-kullanım)

```
use DenizTezc\TcmbGold\Facades\TcmbGold;

// Bugünün tüm altın fiyatlarını al (XAU + XAS)
$rates = TcmbGold::all();

// Tüm altın türlerini listele
foreach ($rates as $gold) {
    echo "{$gold['name']}: {$gold['buying']} TL\n";
}
// Output:
// 24 Ayar Altın: 5734.7 TL
// SAF (Has) Altın: 5763.52 TL
```

### Belirli Altın Türünü Alma

[](#belirli-altın-türünü-alma)

```
// SAF (Has) Altın (gram fiyatı)
$hasAltin = $rates->firstWhere('code', 'XAS');
echo "1 gram saf altın: {$hasAltin['buying']} TL";

// 24 Ayar Altın
$xau = $rates->firstWhere('code', 'XAU');
echo "24 ayar altın: {$xau['buying']} TL";
```

### Belirli Bir Tarih İçin

[](#belirli-bir-tarih-i̇çin)

```
use Illuminate\Support\Carbon;

$date = Carbon::parse('2025-12-01');
$rates = TcmbGold::all($date);
```

### Dönen Veri Yapısı

[](#dönen-veri-yapısı)

```
[
    [
        'code' => 'XAU',
        'name' => '24 Ayar Altın',
        'buying' => 5734.70,
        'unit' => 1,
        'date' => '2025-12-09',
        'timestamp' => Carbon::instance,
    ],
    [
        'code' => 'XAS',
        'name' => 'SAF (Has) Altın',
        'buying' => 5763.52,
        'unit' => 1,
        'date' => '2025-12-09',
        'timestamp' => Carbon::instance,
    ],
]
```

⚙️ Konfigürasyon
----------------

[](#️-konfigürasyon)

`config/tcmb-gold.php`:

```
return [
    // TCMB Reeskont Kurları base URL
    'base_url' => env('TCMB_GOLD_BASE_URL', 'https://www.tcmb.gov.tr/reeskontkur'),

    // Kontrol edilecek saatler (TCMB bu saatlerde XML yayınlar)
    'check_hours' => ['12:00', '14:00', '16:00'],

    // Cache ayarları
    'cache_driver' => env('TCMB_GOLD_CACHE_DRIVER', 'file'),
    'cache_duration' => 120, // dakika (2 saat)
    'cache_prefix' => 'tcmb_gold_',
];
```

🔗 XML Servisi Hakkında
----------------------

[](#-xml-servisi-hakkında)

### URL Formatı

[](#url-formatı)

TCMB XML servisi şu URL formatını kullanır:

```
https://www.tcmb.gov.tr/reeskontkur/{YYYYMM}/{DDMMYYYY}-{HHMM}.xml

```

**URL Yapısı:**

- `{YYYYMM}`: Yıl ve ay (örn: 202512)
- `{DDMMYYYY}`: Gün, ay, yıl (örn: 09122025)
- `{HHMM}`: Saat ve dakika (örn: 1200, 1400, 1600)

**Örnek URL'ler:**

```
# Bugün 12:00 kurları
https://www.tcmb.gov.tr/reeskontkur/202512/09122025-1200.xml

# Bugün 14:00 kurları
https://www.tcmb.gov.tr/reeskontkur/202512/09122025-1400.xml

# Bugün 16:00 kurları
https://www.tcmb.gov.tr/reeskontkur/202512/09122025-1600.xml

# Farklı bir tarih (1 Aralık 2025, 12:00)
https://www.tcmb.gov.tr/reeskontkur/202512/01122025-1200.xml
```

**Canlı Test:**Tarayıcınızda veya terminal'de test edebilirsiniz:

```
curl "https://www.tcmb.gov.tr/reeskontkur/202512/09122025-1200.xml"
```

### XML Yapısı

[](#xml-yapısı)

TCMB XML'inde dönen tam yapı:

```

        DV009
        TCMB 12:00 Kurları
        TCMB 12:00 Kurları
        TCMB Piyasalar Genel Müdürlüğü - Döviz Piyasaları Müdürlüğü
        +903125075200-27
        +903125075228
        dovef@tcmb.gov.tr
        2025-12-09T12:01:50+03:00

            TRY
            XAU
            1
            5734,7
            9999

            TRY
            XAS
            1
            5763,52
            9998

```

**XML'de Dönen Tüm Altın Türleri:**

- `XAU` - 24 Ayar Altın
- `XAS` - SAF (Has) Altın

**Not:** TCMB Reeskont Kurları XML'inde sadece bu iki altın türü bulunmaktadır. Diğer değerli metaller (gümüş, platin, paladyum) bu serviste yer almaz.

🧪 Testler
---------

[](#-testler)

```
./vendor/bin/phpunit
```

### Matrix Test Kapsamı

[](#matrix-test-kapsamı)

PHPLaravel 10Laravel 118.1✅❌ (PHP 8.2+ gerekli)8.2✅✅8.3✅✅**Not:** Laravel 11 PHP 8.2 veya üzeri gerektirir, bu yüzden PHP 8.1 ile Laravel 11 test edilmez.

📄 Lisans
--------

[](#-lisans)

MIT

🙏 Teşekkürler
-------------

[](#-teşekkürler)

- [TCMB](https://www.tcmb.gov.tr) - Veri kaynağı

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance74

Regular maintenance activity

Popularity2

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

141d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/52836cdadce7cb1e93e7c4c4e14fe6b64325485a6cfac5b371db871564c7c913?d=identicon)[denizgolbas](/maintainers/denizgolbas)

---

Top Contributors

[![denizgolbas](https://avatars.githubusercontent.com/u/27892099?v=4)](https://github.com/denizgolbas "denizgolbas (6 commits)")

---

Tags

laravelxmlexchange ratesgoldtcmbTurkiyeAltınxauxasmerkez-bankası

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/denizgolbas-laravel-tcmb-gold/health.svg)

```
[![Health](https://phpackages.com/badges/denizgolbas-laravel-tcmb-gold/health.svg)](https://phpackages.com/packages/denizgolbas-laravel-tcmb-gold)
```

###  Alternatives

[ultrono/laravel-sitemap

Sitemap generator for Laravel 11, 12 and 13

36412.6k6](/packages/ultrono-laravel-sitemap)[tucker-eric/laravel-xml-middleware

A Laravel Middleware to accept XML requests

181.2M](/packages/tucker-eric-laravel-xml-middleware)[flowgistics/laravel-xml

1674.2k2](/packages/flowgistics-laravel-xml)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
