Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@
| Παραδείγματα παραστατικών | Δελτίο Αποστολής | invoices/delivery-invoice |
| Παραδείγματα παραστατικών | Πιστωτικό Τιμολόγιο | invoices/credit-invoice |
| Παραδείγματα παραστατικών | Απόδειξη Λιανικής | invoices/retail-invoice |
| Παραδείγματα παραστατικών | Απόδειξη Παροχής Υπηρεσιών | invoices/retail-service-invoice |
| Παραδείγματα παραστατικών | Πιστωτικό Στοιχείο Λιανικής | invoices/credit-retail-invoice |
| Παραδείγματα παραστατικών | Ενδοκοινοτικό Τιμολόγιο | invoices/foreign-invoice |
| Παραδείγματα παραστατικών | Ολοκληρωμένο Παράδειγμα | invoices/complete-example |
| Τύποι δεδομένων | Invoice | types/invoice-type |
Expand Down
77 changes: 77 additions & 0 deletions docs/invoices/credit-retail-invoice.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Παράδειγμα: Πιστωτικό Στοιχείο Λιανικής

## Αρχικοποίηση του εκδότη παραστατικού

```php
use Firebed\AadeMyData\Models\Issuer;

$issuer = new Issuer();
$issuer->setVatNumber('888888888');
$issuer->setCountry('GR');
$issuer->setBranch(1);
```

## Αρχικοποίηση του λήπτη παραστατικού

> [!CAUTION]
> Όπως και στις Αποδείξεις Λιανικής, τα Πιστωτικά Λιανικής είναι μη αντικριζόμενα παραστατικά και δεν απαιτούν την αναγραφή του λήπτη

## Αρχικοποίηση της επικεφαλίδας παραστατικού

```php
use Firebed\AadeMyData\Models\InvoiceHeader;
use Firebed\AadeMyData\Enums\InvoiceType;

$header = new InvoiceHeader();
$header->setSeries('A');
$header->setAa(101);
$header->setIssueDate(date('Y-m-d'));
$header->setInvoiceType(InvoiceType::TYPE_11_4);
$header->setCurrency('EUR');
```

## Αρχικοποίηση των τρόπων πληρωμής

```php
use Firebed\AadeMyData\Models\PaymentMethodDetail;
use Firebed\AadeMyData\Enums\PaymentMethod;

$payment = new PaymentMethodDetail();
$payment->setType(PaymentMethod::METHOD_3);
$payment->setAmount(1000);
```

## Αρχικοποίηση των προϊόντων / υπηρεσιών

```php
use Firebed\AadeMyData\Models\InvoiceDetails;
use Firebed\AadeMyData\Enums\VatCategory;
use Firebed\AadeMyData\Enums\IncomeClassificationType;
use Firebed\AadeMyData\Enums\IncomeClassificationCategory;

$row = new InvoiceDetails();
$row->setLineNumber(1);
$row->setNetValue(1000);
$row->setVatCategory(VatCategory::VAT_1);
$row->setVatAmount(240);
$row->addIncomeClassification(
IncomeClassificationType::E3_561_003,
IncomeClassificationCategory::CATEGORY_1_3,
1000
);
```

## Ολοκλήρωση του παραστατικού

```php
use Firebed\AadeMyData\Models\Invoice;

$invoice = new Invoice();
$invoice->setIssuer($issuer);
$invoice->setInvoiceHeader($header);
$invoice->addPaymentMethod($payment);
$invoice->addInvoiceDetails($row);

// Αρχικοποιεί τη σύνοψη του παραστατικού
$invoice->summarizeInvoice();
```
78 changes: 78 additions & 0 deletions docs/invoices/retail-service-invoice.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Παράδειγμα: Απόδειξη Παροχής Υπηρεσιών



```php
use Firebed\AadeMyData\Models\Issuer;

$issuer = new Issuer();
$issuer->setVatNumber('888888888'); // Ο ΑΦΜ της επιχείρησής σας
$issuer->setCountry('GR');
$issuer->setBranch(1);
```

## Αρχικοποίηση του λήπτη παραστατικού

> [!CAUTION]
> Οι Αποδείξεις Παροχής Υπηρεσιών είναι μή αντικριζόμενα παραστατικά και δεν απαιτούν την αναγραφή του λήπτη του παραστατικού.

## Αρχικοποίηση της επικεφαλίδας παραστατικού

```php
use Firebed\AadeMyData\Models\InvoiceHeader;
use Firebed\AadeMyData\Enums\InvoiceType;

$header = new InvoiceHeader();
$header->setSeries('A');
$header->setAa(101);
$header->setIssueDate(date('Y-m-d'));
$header->setInvoiceType(InvoiceType::TYPE_11_2);
$header->setCurrency('EUR');
```

## Αρχικοποίηση των τρόπων πληρωμής

```php
use Firebed\AadeMyData\Models\PaymentMethodDetail;
use Firebed\AadeMyData\Enums\PaymentMethod;

$payment = new PaymentMethodDetail();
$payment->setType(PaymentMethod::METHOD_3);
$payment->setAmount(1000.00);
$payment->setPaymentMethodInfo('Payment Method Info...');
```

## Αρχικοποίηση των προϊόντων

```php
use Firebed\AadeMyData\Models\InvoiceDetails;
use Firebed\AadeMyData\Enums\VatCategory;
use Firebed\AadeMyData\Enums\IncomeClassificationType;
use Firebed\AadeMyData\Enums\IncomeClassificationCategory;

$row = new InvoiceDetails();
$row->setLineNumber(1);
$row->setNetValue(1000);
$row->setVatCategory(VatCategory::VAT_1);
$row->setVatAmount(240);
$row->addIncomeClassification(
IncomeClassificationType::E3_561_003,
IncomeClassificationCategory::CATEGORY_1_3,
1000
);
```

## Ολοκλήρωση του παραστατικού

```php
use Firebed\AadeMyData\Models\Invoice;

$invoice = new Invoice();
$invoice->setIssuer($issuer);
$invoice->setInvoiceHeader($header);
$invoice->addPaymentMethod($payment);
$invoice->addInvoiceDetails($row);

// Αρχικοποιεί τη σύνοψη του παραστατικού
$invoice->summarizeInvoice();
```
Loading