# Cari Hesap Kaydı

Uç noktalarında kullanılan verilerin türleri ve formatlarının tanımları sayfanın alt kısmında bulunabilir.

## Uç Noktaları

## Sayfayı Getir

<mark style="color:blue;">`GET`</mark> `https://cubicl.io/api/bookkeeping/page`

Cari hesap sayfası için gerekli cari hesap kaydı, aktivite ve istatistikleri getirir.

{% tabs %}
{% tab title="200: OK Sayfa verileri. Aktiviteler, Cari Hesap kayıtları, borçlar ve alacaklar. içerir." %}

```typescript
{
    activities : BookkeepingActivity[],
    entries : BookkeepingEntry[],
    payables : {
        total : number,
        outstanding : number,
        overdue : number,
        currency : string
    },
    receivables : {
        total : number,
        outstanding : number,
        overdue : number,
        currency : string
    }
}
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok." %}

```javascript
{ code : 4 }
```

{% endtab %}
{% endtabs %}

## Cari Hesap Kaydının Aktivitelerini Getir

<mark style="color:blue;">`GET`</mark> `https://cubicl.io/api/bookkeeping/activities`

#### Query Parameters

| Name                                    | Type   | Description               |
| --------------------------------------- | ------ | ------------------------- |
| entry<mark style="color:red;">\*</mark> | string | Cari Hesap kaydının ID'si |

{% tabs %}
{% tab title="200: OK Cari Hesap kaydının aktiviteleri" %}

```javascript
activities : BookkeepingActivity[]
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok" %}

```javascript
{ code : 4 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Kayıt bulunamadı" %}

```javascript
{ code : 1501 }
```

{% endtab %}
{% endtabs %}

## Cari Hesap Kaydının Detaylarını Getir

<mark style="color:blue;">`GET`</mark> `https://cubicl.io/api/bookkeeping/entries/{entry}`

#### Path Parameters

| Name                                    | Type   | Description               |
| --------------------------------------- | ------ | ------------------------- |
| entry<mark style="color:red;">\*</mark> | string | Cari Hesap kaydının ID'si |

{% tabs %}
{% tab title="200: OK Cari Hesap kaydının detayları" %}

```javascript
entry : BookkeepingEntry
```

{% endtab %}

{% tab title="404: Not Found Kayıt bulunamadı" %}

```javascript
{ code : 1501 }
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok" %}

```javascript
{ code : 4 }
```

{% endtab %}
{% endtabs %}

## Cari Hesap Kaydı Ekle

<mark style="color:green;">`POST`</mark> `https://cubicl.io/api/bookkeeping/entries`

Bir müşteriyle ilgili alacak veya borç kaydı ekler.

#### Request Body

| Name                                       | Type   | Description                                                                                                                                                                                                                                         |   |                                                                                                                                                                                                                                                                                 |
| ------------------------------------------ | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | - | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| customer<mark style="color:red;">\*</mark> | string | Müşteri ID'si                                                                                                                                                                                                                                       |   |                                                                                                                                                                                                                                                                                 |
| dueAt                                      | number | Son ödeme tarihi. Bu tarihten önce ödeme yapılması bekleniyor.                                                                                                                                                                                      |   |                                                                                                                                                                                                                                                                                 |
| paidAmount                                 | number | <p>Toplamın ne kadarı ödeniyor?</p><p></p><p>0'dan büyük ve toplam tutardan küçük olmalıdır.</p>                                                                                                                                                    |   |                                                                                                                                                                                                                                                                                 |
| desc                                       | string | Alacak veya borç kaydı açıklaması                                                                                                                                                                                                                   |   |                                                                                                                                                                                                                                                                                 |
| name<mark style="color:red;">\*</mark>     | string | Alacak veya borç kaydı adı                                                                                                                                                                                                                          |   |                                                                                                                                                                                                                                                                                 |
| currency<mark style="color:red;">\*</mark> | string | <p>Para birimi. Aşağıdaki değerlerden birini içermelidir:</p><p></p><p>TRY, USD, EUR, GBP, AUD, CAD, CHF, CNY, HKD, NZD, SEK, KRW, SGD, NOK, MXN, INR, ZAR, RUB, BRL, JPY, TWD, DKK, PLN, THB, IDR, HUF, CZK, ILS, PHP, AED, COP, SAR, MYR, RON</p> |   |                                                                                                                                                                                                                                                                                 |
| amount<mark style="color:red;">\*</mark>   | number | Cari hesap bakiyesi. 0'dan büyük olmalıdır.                                                                                                                                                                                                         |   |                                                                                                                                                                                                                                                                                 |
| type<mark style="color:red;">\*</mark>     | string | <p>receivable                                                                                                                                                                                                                                       |   | payable<br><br>receivable: Cari hesap alacak bakiyesi. Cubicl kullanıcısının bir ürün veya hizmet karşılığında müşterilerinden aldığı ödeme.<br><br>payable: Cari hesap borç bakiyesi. Cubicl kullanıcısının bir müşteriye bir ürün veya hizmet karşılığında yaptığı ödeme.</p> |

{% tabs %}
{% tab title="200: OK Etkinlik, ödeme ve ödeme etkinliği ile yeni kayıt" %}

```javascript
{
    entry : BookkeepingEntry
    entryActivity : BookkeepingActivity,
    payment? : BookkeepingPayment // Exists if paidAmount is given
    paymentActivity? : BookkeepingActivity // Exists if paidAmount is given
}
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok" %}

```javascript
{ code : 4 }
```

{% endtab %}

{% tab title="404: Not Found Müşteri bulunamadı" %}

```javascript
{ code : 303 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Kurumunuzun mevcut planı yetersiz. Paketinizi yükseltmelisiniz." %}

```javascript
{ code : 1201 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Para birimi desteklenmiyor" %}

```javascript
{ code : 1504 }
```

{% endtab %}
{% endtabs %}

## Cari Hesap Kaydını Güncelle

<mark style="color:orange;">`PUT`</mark> `https://cubicl.io/api/bookkeeping/entries/{entry}`

#### Path Parameters

| Name                                    | Type   | Description               |
| --------------------------------------- | ------ | ------------------------- |
| entry<mark style="color:red;">\*</mark> | string | Cari Hesap kaydının ID'si |

#### Request Body

| Name                                       | Type   | Description                                                                                                                                                                                                                                         |   |                                                                                                                                                                                                                                                                                 |
| ------------------------------------------ | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | - | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| type<mark style="color:red;">\*</mark>     | string | <p>receivable                                                                                                                                                                                                                                       |   | payable<br><br>receivable: Cari hesap alacak bakiyesi. Cubicl kullanıcısının bir ürün veya hizmet karşılığında müşterilerinden aldığı ödeme.<br><br>payable: Cari hesap borç bakiyesi. Cubicl kullanıcısının bir müşteriye bir ürün veya hizmet karşılığında yaptığı ödeme.</p> |
| dueAt                                      | number | Son ödeme tarihi. Bu tarihten önce ödeme yapılması bekleniyor.                                                                                                                                                                                      |   |                                                                                                                                                                                                                                                                                 |
| desc                                       | string | Alacak veya borç kaydı açıklaması                                                                                                                                                                                                                   |   |                                                                                                                                                                                                                                                                                 |
| name<mark style="color:red;">\*</mark>     | string | Alacak veya borç kaydı adı                                                                                                                                                                                                                          |   |                                                                                                                                                                                                                                                                                 |
| currency<mark style="color:red;">\*</mark> | string | <p>Para birimi. Aşağıdaki değerlerden birini içermelidir:</p><p></p><p>TRY, USD, EUR, GBP, AUD, CAD, CHF, CNY, HKD, NZD, SEK, KRW, SGD, NOK, MXN, INR, ZAR, RUB, BRL, JPY, TWD, DKK, PLN, THB, IDR, HUF, CZK, ILS, PHP, AED, COP, SAR, MYR, RON</p> |   |                                                                                                                                                                                                                                                                                 |

{% tabs %}
{% tab title="200: OK Güncellenmiş kayıt" %}

```javascript
entry : BookkeepingEntry
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok" %}

```javascript
{ code : 4 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Ödenen tutar, kayıt tutarından fazla olamaz" %}

```javascript
{ code : 1503 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Kurumunuzun mevcut planı yetersiz. Paketinizi yükseltmelisiniz." %}

```javascript
{ code : 1201 }
```

{% endtab %}

{% tab title="404: Not Found Kayıt bulunamadı" %}

```javascript
{ code: 1501 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Para birimi desteklenmiyor" %}

```javascript
{ code: 1504 }
```

{% endtab %}
{% endtabs %}

## Cari Hesap Kaydını Sil

<mark style="color:red;">`DELETE`</mark> `https://cubicl.io/api/bookkeeping/entries/{entry}`

Bu cari hesap kaydına ilişkin tüm aktivite ve ödeme kayıtları silinir.

#### Path Parameters

| Name                                    | Type   | Description               |
| --------------------------------------- | ------ | ------------------------- |
| entry<mark style="color:red;">\*</mark> | string | Cari Hesap kaydının ID'si |

{% tabs %}
{% tab title="200: OK Boş yanıt" %}

```javascript
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok" %}

```javascript
{ code : 4 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Kayıt bulunamadı" %}

```javascript
{ code : 1501 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Kurumunuzun mevcut planı yetersiz. Paketinizi yükseltmelisiniz." %}

```javascript
{ code : 1201 }
```

{% endtab %}
{% endtabs %}

## Ödeme Ekle

<mark style="color:green;">`POST`</mark> `https://cubicl.io/api/bookkeeping/payment`

#### Path Parameters

| Name                                    | Type   | Description               |
| --------------------------------------- | ------ | ------------------------- |
| entry<mark style="color:red;">\*</mark> | string | Cari Hesap kaydının ID'si |

#### Request Body

| Name                                         | Type   | Description                                                                                      |
| -------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------ |
| paidAmount<mark style="color:red;">\*</mark> | number | <p>Toplamın ne kadarı ödeniyor?</p><p></p><p>0'dan büyük ve toplam tutardan küçük olmalıdır.</p> |
| note                                         | string |                                                                                                  |

{% tabs %}
{% tab title="200: OK Yeni ödeme ve aktivite" %}

```javascript
{
    payment : BookkeepingPayment,
    activity : BookkeepingActivity
}
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok" %}

```javascript
{ code : 4 }
```

{% endtab %}

{% tab title="404: Not Found Kayıt bulunamadı" %}

```javascript
{ code : 1501 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Ödenen tutar, kayıt tutarından fazla olamaz" %}

```javascript
{ code: 1503 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Kurumunuzun mevcut planı yetersiz. Paketinizi yükseltmelisiniz." %}

```javascript
{ code : 1201 }
```

{% endtab %}
{% endtabs %}

## Ödeme Sil

<mark style="color:red;">`DELETE`</mark> `https://cubicl.io/api/bookkeeping/payments/{payment}`

#### Path Parameters

| Name                                      | Type   | Description |
| ----------------------------------------- | ------ | ----------- |
| payment<mark style="color:red;">\*</mark> | string | Ödeme ID'si |

{% tabs %}
{% tab title="200: OK Cari hesap aktivitesi" %}

```javascript
activity : BookkeepingActivity
```

{% endtab %}

{% tab title="403: Forbidden İzniniz yok" %}

```javascript
{ code : 4 }
```

{% endtab %}

{% tab title="404: Not Found Ödeme bulunamadı" %}

```javascript
{ code : 1502 }
```

{% endtab %}

{% tab title="422: Unprocessable Entity Kurumunuzun mevcut planı yetersiz. Paketinizi yükseltmelisiniz." %}

```javascript
{ code : 1201 }
```

{% endtab %}
{% endtabs %}

## Veriler

### BookkeepingEntry

```typescript
{
    org : string, // Kurum ID'si
    customer : string, // Müşteri ID'si
    /* receivable: Cari hesap alacak bakiyesi. Cubicl kullanıcısının
     * bir ürün veya hizmet karşılığında müşterilerinden aldığı ödeme.
     * 
     * payable: Cari hesap borç bakiyesi. Cubicl kullanıcısının
     * bir müşteriye bir ürün veya hizmet karşılığında yaptığı ödeme.
     */
    type : 'receivable' | 'payable',
    amount : number, // Cari hesap bakiyesi. 0'dan büyük olmalıdır.
    /* Para birimi. Aşağıdaki değerleri içerebilir:
     * TRY, USD, EUR, GBP, AUD, CAD, CHF, CNY, HKD, NZD, SEK,
     * KRW, SGD, NOK, MXN, INR, ZAR, RUB, BRL, JPY, TWD, DKK,
     * THB, IDR, HUF, CZK, ILS, PHP, AED, COP, SAR, MYR, RON
     */
    currency : string,
    name : string,
    desc : string | null,
    // Toplamın ne kadarı ödeniyor? 0'dan büyük ve toplam tutardan küçük olmalıdır.
    paidAmount : number,
    // Tamamen ödendi mi?
    isPaid : boolean,
    // Son ödeme tarihi. Bu tarihten önce ödeme yapılması bekleniyor.
    dueAt : number | null,
    // Kaydı oluşturan kullanıcının ID'si
    createdBy : string,
    createdAt : number,
}
```

### BookkeepingPayment

```typescript
{
    org : string, // Kurum ID'si
    customer : string, // Müşteri ID'si
    amount : number, // Cari hesap bakiyesi. 0'dan büyük olmalıdır.
    entry : string, // Cari hesap kayıt ID'si
    note : string | null, // Ödeme hakkında isteğe bağlı not
    createdBy : string, // Kaydı oluşturan kullanıcının ID'si
    createdAt : number
}
```

### BookkeepingActivity

```typescript
{
    org : string, // Kurum ID'si
    customer : string, // Müşteri ID'si
    entry : string, // // Cari hesap kayıt ID'si. Her zaman gereklidir.
    // Tip 'payment-received', 'payment-sent' veya 'payment-deleted' ise gereklidir.
    payment? : string,
    type : 'receivable-created' | 'payable-created' | 'payment-received' | 'payment-sent' | 'payment-deleted',
    data : {
        entryName : string,
        entryDueAt? : number, // 'dueAt' tanımlanmışsa gereklidir.
        amount : number, // Cari hesap bakiyesi. 0'dan büyük olmalıdır.
        /* Para birimi. Aşağıdaki değerleri içerebilir:
         * TRY, USD, EUR, GBP, AUD, CAD, CHF, CNY, HKD, NZD, SEK,
         * KRW, SGD, NOK, MXN, INR, ZAR, RUB, BRL, JPY, TWD, DKK,
         * THB, IDR, HUF, CZK, ILS, PHP, AED, COP, SAR, MYR, RON
         */
        currency : string,
        // Tip 'payment-received', 'payment-sent' veya 'payment-deleted' ise gereklidir.
        // Toplamın ne kadarı ödeniyor? 0'dan büyük ve toplam tutardan küçük olmalıdır.
        paidAmount? : number,
    createdBy : string // Kaydı oluşturan kullanıcının ID'si
    createdAt : number,
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kilavuz.cubicl.io/api-entegrasyonu/cari-hesap-kaydi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
