<?php
require_once __DIR__ . "/parasut_class.php";
//$customer_id = 10271994;
//$product_id = 10241853;
$parasut_config = array(
    "client_id" => "0ab8fba6aad2002b60ae427e97930f3c9bfbf739c8a7c3938c3dac7089641bd6",
    "username" => "avcihanunal01@gmail.com",
    "password" => "avakado9",
    "grant_type" => "password",
    "redirect_uri" => "urn:ietf:wg:oauth:2.0:oob",
    'company_id' => "233599"
);
$parasut = new parasut($parasut_config);
$invoice = array(
    'data' => array(
        'type' => 'sales_invoices', // Zorunlu
        'attributes' => array(
            'item_type' => 'invoice', // Zorunlu
            'description' => 'Oim Fatura', //Fatura Açıklaması
            'issue_date' => date("Y-m-d"), // Zorunlu
            'due_date' => date("Y-m-d"),
            'invoice_series' => 'oim', //Fatura seri kodu. Zorunlu değildir.
//          'invoice_id' => '1', //Fatura seri numarası daha önce kullanılmamış olacak. Zorunlu alan değildir.
            'currency' => 'TRL' //Fatura para kodu TRL->Türk Lirası
        ),
        'relationships' => array(
            'details' => array(
                'data' => array(
                    array(
                        'type' => 'sales_invoice_details',
                        'attributes' => array(
                            'quantity' => 1, //Miktar
                            'unit_price' => str_replace(',','.',$unit_price), //Birim Fiyatı KDV Hariç
                            'vat_rate' => 18, //KDV Oranı
                            'description' => 'Oim Urun' //Açıklama
                        ),
                        "relationships" => array(
                            "product" => array(
                                "data" => array(
                                    "id" => $product_id, //Ürün ID'si
                                    "type" => "products"
                                )
                            )
                        )
                    ),
                ),
            ),
            'contact' => array(
                'data' => array(
                    'id' => $customer_id, //Müşteri ID'si
                    'type' => 'contacts'
                )
            )
        ),
    )
);
$customer = array(
    'data' =>
    array(
        'type' => 'contacts',
        'attributes' => array(
            'email' => 'test@test.com',
            'name' => 'test123', // Zorunlu
            'short_name' => 'Mehmet',
            'contact_type' => 'person', // Person yada Company
            'district' => 'Kocasinan',
            'city' => 'Kayseri',
            'address' => 'Test Mah.',
            'phone' => '+905351112233',
            'account_type' => 'customer', // Zorunlu
            'tax_number' => '11111112344 ', // Kişi için TC
            'tax_office' => 'Erciyes' //Vergi Dairesi
        ),
    ),
);
try {
	  $invoiceInfo = $parasut->createInvoice($invoice); //Fatura Oluşturma
      echo $invoiceInfo["data"]["id"]; //Fatura ID'si
    /*
      $invoiceInfo = $parasut->createInvoice($invoice); //Fatura Oluşturma
      echo $invoiceInfo["data"]["id"]; //Fatura ID'si
     */
    /*
      $customerInfo = $parasut->createAccount($customer); //Müşteri Oluşturma
      echo $customerInfo["data"]["id"]; //Müşteri ID'si
     */
    
    /*
    $customer_filter = array(//Zorunlu değil boş bırakılabilir. 
        "filter" => array(//Zorunlu değil eğer sonuçları filtrelemek istiyorsak bunu kullanabiliriz. Örneğin mail adresi a@b.com olanlar
//            "name" => "", //Zorunlu değil
            "email" => "test@test.com", //Zorunlu değil
//            "tax_number" => "", // Zorunlu değil
//            "tax_office" => "", // Zorunlu değil
//            "city" => "" // Zorunlu değil
        ),
        "sort" => "-balance", //Varsayılan -balance. Diğer parametreler: id,balance,name,email
        "page" => array(
            "number" => 1, //Sayfa numarası
            "size" => 15, //Sayfadaki liste toplamı
        ),
        "include" => "" //Response ile birlikte geri dönmesini istediğiniz ilişkiler - Available: category, contact_portal, contact_people
    );
    $customers = $parasut->AccountList($customer_filter);
    echo $customers["data"][0]["id"];
     */
    
    //echo $customer_id = $parasut->getCustomerIdByEmail("test@test.com");
    
} catch (Exception $exc) {
    echo $exc->getMessage();
}