1. Go to this page and download the library: Download elpandape/quipu-laravel library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
elpandape / quipu-laravel example snippets
use ElPandaPe\QuipuLaravel\Facades\Quipu;
$result = Quipu::emit($invoice); // construye, firma y reporta a SUNAT
if ($result->cdr->isAccepted()) {
// aceptado
}
use ElPandaPe\QuipuLaravel\Tenancy\HasQuipuEmitter;
use ElPandaPe\QuipuLaravel\Tenancy\ProvidesQuipuEmitter;
class Tenant extends BaseTenant implements ProvidesQuipuEmitter
{
use HasQuipuEmitter; // deriva el emisor de las columnas quipu_* del tenant
}
use ElPandaPe\QuipuLaravel\Facades\Quipu;
Quipu::forTenant($tenantKey, fn () => Quipu::emit($invoice));
use ElPandaPe\QuipuLaravel\Facades\Quipu;
Quipu::fake();
// ... el código de tu app emite un comprobante ...
Quipu::emit($invoice);
Quipu::assertSent(); // se envió al menos un comprobante
Quipu::assertSentCount(1); // exactamente uno
Quipu::assertSent(fn($signed) => str_contains($signed->xml, 'F001'));
Quipu::assertNothingSent(); // no se envió nada
Quipu::fake()->rejectsEverything('2335'); // todo se rechaza
Quipu::fake()->observesEverything(['...']); // aceptado con observaciones
Quipu::fake()->acceptsEverything(); // aceptado (por defecto)
use ElPandaPe\QuipuPro\Testing\CdrAsserter;
CdrAsserter::for(Quipu::emit($invoice))->isAccepted();