UpdateInvoice
Bir faturayı belirttiğiniz parametreler ile güncelleyin.
Method / Endpoint
PUT/ {{API_URL}} Billing/UpdateInvoice/ {{ID}}
İstek Parametreleri
Parametre Adı | Türü | Zorunlu | Açıklama |
---|---|---|---|
{{ID}} | Integer | Evet | Fatura ID Numarası |
notification | Boolean | Hayır | Bildirim Gönderilme Durumu |
user | Object | Hayır | Faturanın Müşteri Bilgileri |
user.id | Integer | Hayır | Müşterinin ID Numarası |
user.lang | String | Hayır | ISO 639-1 formatına göre müşterinin dil bilgisi. Örneğin: "en" , "de" , "tr" gibi. |
user.identity | Integer | Hayır | Müşterinin 11 haneli T.C. kimlik numarası |
user.type | String | Hayır | Müşterinin Hesap Türü. "individual": Bireysel, "corporate": Kurumsal |
user.name | String | Hayır | Müşterinin Adı |
user.surname | String | Hayır | Müşterinin Soyadı |
user.full_name | String | Hayır | Müşterinin Tam Adı |
user.email | String | Hayır | Müşterinin E-Posta Adresi |
user.phone | Integer | Hayır | Müşterinin Telefon Numarası. (Ülke alan kodu dahil). Örneğin: Şöyle ise: +1 (123) 456-7890 şu şekilde olmalı: 11234567890 |
user.company_name | String | Hayır | Müşterinin Firma Ünvanı |
user.company_tax_number | String | Hayır | Müşterinin Firma Vergi Numarası |
user.company_tax_office | String | Hayır | Müşterinin Firma Vergi Dairesi |
user.custom_fields | Object | Hayır | Faturada Müşteriye ait Özel Alanlar |
user.custom_fields.field_id | Integer | Hayır | Özel Alan ID Numarası |
user.custom_fields.name | String | Hayır | Özel Alan Adı |
user.custom_fields.value | String | Hayır | Özel Alan İçeriği |
user.address.country_code | String | Hayır | Müşterinin Ülke Kodu. (ISO 3166-1 Alpha-2) Örn: US, FR, DE |
user.address.country_name | String | Hayır | Müşterinin Ülke Adı. Örn: United States, Germany, France, Turkey |
user.city | String | Hayır | Müşterinin Şehir Bilgisi |
user.state | String | Hayır | Müşterinin İlçesi |
user.detail | String | Hayır | Müşterinin Adres Detayları |
user.zipcode | String | Hayır | Müşterinin Posta Kodu |
notes | String | Hayır | Fatura Notu (Personellerin görebilmesi içindir.) |
status | String | Hayır | Fatura Durumu. Alabileceği değerler: "unpaid',' "pending',' "paid',' "refunded',' "cancelled'. Varsayılan: "unpaid" |
formalize | Boolean | Hayır | Resmileştirilme Durumu |
formalize_file | String | Hayır | Resmileştirilme dosyası bir URL içermelidir. Dahili API kullanılıyorsa bir dizin yolu da belirtebilirsiniz. (İletilen dosya otomatik olarak sisteme kopyalanacaktır.) |
created_at | String | Hayır | Fatura Oluşturulma Tarihi. Format: YYYY-MM-DD HH:ii:ss Varsayılan: İstek atılan tarih geçerli sayılır. |
due_date | String | Hayır | Son Ödeme Tarihi. Format: YYYY-MM-DD HH:ii:ss |
payment_date | String | Hayır | Ödenme Tarihi. Format: YYYY-MM-DD HH:ii:ss Fatura durumu: "paid" veya "pending" ise zorunludur. |
refund_date | String | Hayır | Fatura İade Tarihi. Format: YYYY-MM-DD HH:ii:ss Fatura durumu "refunded" ise zorunludur. |
currency | String | Hayır | Faturanın Para Birimi. Format: ISO 4217. Örneğin: USD, EUR, GBP, TRY |
payment_method | String | Hayır | Ödeme Yöntemi Adı |
payment_method_data | Object | Hayır | Ödeme Yöntemi Verileri |
payment_method_commission | Double | Hayır | Ödeme Yöntemi Komisyon Tutarı |
payment_method_commission_rate | Double | Hayır | Ödeme Yöntemi Komisyon Oranı |
send_bill_to_address | Double | Hayır | Adrese Fatura Gönderim Ücreti |
exchange | Double | Hayır | Mevcut Döviz Kuru |
discounts | Object | Hayır | İndirimler |
discounts.type | String | Evet | İndirim Türü ("promotion": Promosyon, "coupon": Kupon, "dealership": Bayi) |
discounts.sequence | Integer | Evet | Fatura ögesinde belirlediğiniz "sequence" bilgisi ile aynı olmalıdır. |
discounts.rate | Double | Hayır | İndirim Yüzdesi. Varsayılan: 0 |
discounts.amount | Double | Evet | Uygulanan İndirim Tutarı |
discounts.description | String | Evet | İndirim Adı: Kupon kodu, Promosyon adı vb. |
discounts.dkey | String | Hayır | Eğer indirim türü "dealership" ise bayilik indiriminin hangi üründen veya ürün grubundan elde edildiğinin bilgisi. |
Harici Örnek
curl --location --request PUT 'https://example.com/api/Billing/UpdateInvoice/123' \
--header 'Content-Type: application/json' \
--header 'Apikey: [YOUR_API_KEY]' \
--data '{
"status": "paid",
"payment_date": "2024-01-14 21:16:10",
"formalize": true,
"formalize_file": "https://example.com/1703590375.pdf",
"payment_method": "BankTransfer",
"payment_method_data": {
"bank_name": "TEST BANK",
"sender_name": "John Doe",
"rce": "REF1234"
}
}'
Dahili Örnek
Helper::Load("Api");
try {
$result = Api::Billing()->UpdateInvoice([
'id' => 123,
'status' => 'paid',
'payment_date' => '2024-01-14 21:16:10',
'formalize' => true,
'formalize_file' => 'https://example.com/1703590375.pdf',
'payment_method' => 'BankTransfer',
'payment_method_data' => [
'bank_name' => 'TEST BANK',
'sender_name' => 'John Doe',
'rce' => 'REF1234',
],
]);
print_r($result);
}
catch (Exception $e)
{
echo 'Error: '.$e->getMessage();
}
Örnek JSON Yanıtı
{
"status": "successful",
"data": {
"id": 468,
"number": "#468",
"user": {
"id": 22,
"lang": "en",
"type": "corporate",
"identity": "11111111111",
"company_name": "ABC LLC",
"company_tax_number": "12345",
"company_tax_office": "XTEST",
"name": "Mark",
"surname": "Roberson",
"full_name": "Mark Roberson",
"email": "[email protected]",
"phone": "19142426349",
"address": {
"country_code": "US",
"country_name": "United States",
"city": "New York",
"state": "Mount Kisco",
"detail": "1159 Lake Forest Drive",
"zipcode": "10549"
}
},
"taxation_type": "exclusive",
"notes": "I created this invoice with API",
"created_at": "2023-12-13 16:25:00",
"due_date": "2023-12-20 23:59:59",
"payment_date": "2024-01-14 21:16:10",
"refund_date": "0000-00-00 00:00:00",
"status": "paid",
"formalize": true,
"formalize_file": "https://example.com/resources/uploads/invoices/875f43260f3f480c23ade59a4bb3f593.pdf",
"local": false,
"taxfree": false,
"exchange_rate": 1,
"currency": "USD",
"tax_rate": 0,
"subtotal": 493.23000000000001818989403545856475830078125,
"tax": 0,
"total": 463.58400000000000318323145620524883270263671875,
"payment_method": "Banka Transfer",
"payment_method_data": {
"bank_name": "TEST BANK",
"sender_name": "John Doe",
"rce": "REF1234"
},
"payment_method_commission": 0,
"payment_method_commission_rate": 0,
"send_bill_to_address": 0,
"share": {
"token": "bGI1UlRBVXpPL3lmZThpTmM1Zy9pdXhoZldFa3E1cUdNQmRSVWJCV0ROMD0=",
"link": "https://example.com/en/invoice?token=bGI1UlRBVXpPL3lmZThpTmM1Zy9pdXhoZldFa3E1cUdNQmRSVWJCV0ROMD0="
},
"discounts": [
{
"type": "coupon",
"item_id": 571,
"rate": 20,
"description": "AE1Q2CDF3",
"amount": 28.6460000000000007958078640513122081756591796875
},
{
"type": "promotion",
"item_id": 570,
"rate": 5,
"description": "Test Promotion 1",
"amount": 1
}
],
"items": [
{
"id": 570,
"rank": 1,
"owner_id": 468,
"description": "test description 1",
"quantity": 1,
"tax_exempt": false,
"amount": 100,
"total": 100,
"order_id": 0,
"due_date": "2023-12-20 23:59:59",
"attributes": {
"sample1": "Example test 1",
"amount_including_discount": 100
}
},
{
"id": 571,
"rank": 2,
"owner_id": 468,
"description": "Sample Web Hosting (#123) (example.com) (2023-11-20 - 2023-12-20)",
"quantity": 1,
"tax_exempt": false,
"amount": 143.229999999999989768184605054557323455810546875,
"total": 143.229999999999989768184605054557323455810546875,
"order_id": 123,
"due_date": "2023-12-20 23:59:59",
"attributes": {
"event": "ExtendOrderPeriod",
"amount_including_discount": 143.229999999999989768184605054557323455810546875
}
},
{
"id": 572,
"rank": 3,
"owner_id": 468,
"description": "test description 3",
"quantity": 1,
"tax_exempt": false,
"amount": 250,
"total": 250,
"order_id": 0,
"due_date": "2023-12-20 23:59:59",
"attributes": {
"sample3": "Example test 3"
}
}
]
}
}
Yanıt Parametreleri
Parametre Adı | Türü | Açıklama |
---|---|---|
status | String | Eylem Durumu "successful" veya "error" |
message | String | Eylem Durumu "error" gelmişse hata mesajı |
data | Object | "getInvoice" ile aynı verileri iletmektedir. |