Looking to hire Laravel developers? Try LaraJobs

laravel-yuki-api-client maintained by xve

Description
Laravel client for the Yuki accounting SOAP webservices (Sales, VAT, AccountingInfo).
Last update
2026/08/04 23:30 (dev-main)
License
Downloads
30
Tags

Comments
comments powered by Disqus

Laravel Yuki API Client

A Laravel package for pushing sales invoices to Yuki's accounting SOAP webservices (Sales, VAT, AccountingInfo).

Features

  • Session-cached SOAP authentication against Sales.asmx (no ext-soap required)
  • ProcessSalesInvoices to push a sales invoice and read back per-invoice status
  • Administrations, ActiveVATCodesList, and GetGLAccountScheme lookups
  • A soft, local daily call-budget guard
  • Swappable action classes for every remote call, configured in one place

Installation

composer require xve/laravel-yuki-api-client

Optionally publish the config:

php artisan vendor:publish --tag="laravel-yuki-api-client-config"

Configuration

Add to your .env:

YUKI_API_KEY=your-webservice-api-key
YUKI_ADMINISTRATION_ID=your-administration-id
YUKI_REGION=be

YUKI_REGION selects the API host: be for api.yukiworks.be, nl for api.yukiworks.nl.

Usage

use XVE\LaravelYukiApiClient\Data\Contact;
use XVE\LaravelYukiApiClient\Data\InvoiceLine;
use XVE\LaravelYukiApiClient\Data\Product;
use XVE\LaravelYukiApiClient\Data\SalesInvoice;
use XVE\LaravelYukiApiClient\Facades\Yuki;

$invoice = new SalesInvoice(
    reference: 'INV-2026-0001',
    subject: 'Monthly invoice',
    contact: new Contact(fullName: 'Acme Corp'),
    lines: [
        new InvoiceLine(
            description: 'Consulting hours',
            productQuantity: 4.0,
            product: new Product(
                description: 'Consulting',
                salesPrice: 125.00,
                vatPercentage: 21.00,
                vatType: 1,
                glAccountCode: '700000',
            ),
        ),
    ],
    process: true,
);

$result = Yuki::processSalesInvoice($invoice);

if ($result->successful()) {
    // $result->first()->isDuplicateReference(), ->rawResponseXml, etc.
}

Testing

composer test

Credits

License

The MIT License (MIT). Please see License File for more information.