elegantly/laravel-yousign

Yousign SDK for Laravel

v0.0.1 2024-06-08 20:36 UTC

This package is auto-updated.

Last update: 2024-09-17 15:14:43 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Yousign API and Webhooks for your Laravel App.

Installation

You can install the package via composer:

composer require elegantly/laravel-yousign

You can publish the config file with:

php artisan vendor:publish --tag="laravel-yousign-config"

This is the contents of the published config file:

return [
    /**
     * The Yousign API key
     */
    'api_key' => env('YOUSIGN_KEY'),

    /**
     * Whether request should be sent to the sandbox environnement
     */
    'sandbox' => env('YOUSIGN_SANDBOX', true),

    'webhooks' => [
        /*
        * Yousign will sign each webhook using a secret. You can find the used secret at the
        * webhook configuration settings: https://yousign.app/auth/workspace/integrations/webhooks
        */
        'signing_secret' => env('YOUSIGN_WEBHOOK_SECRET'),

        /*
        * You can define a default job that should be run for all other Stripe event type
        * without a job defined in next configuration.
        * You may leave it empty to store the job in database but without processing it.
        */
        'default_job' => '',

        /*
        * You can define the job that should be run when a certain webhook hits your application
        * here. The key is the name of the Stripe event type with the `.` replaced by a `_`.
        *
        * You can find a list of Stripe webhook types here:
        * https://stripe.com/docs/api#event_types.
        */
        'jobs' => [
            // 'signature_request_done' => \App\Jobs\YousignWebhooks\HandleSignatureRequestDone::class,
        ],

        /*
        * The classname of the model to be used. The class should equal or extend
        * Spatie\WebhookClient\Models\WebhookCall.
        */
        'model' => \Spatie\WebhookClient\Models\WebhookCall::class,

        /**
         * This class determines if the webhook call should be stored and processed.
         */
        'profile' => \Elegantly\Yousign\Webhooks\YousignWebhookProfile::class,

        /*
        * Specify a connection and or a queue to process the webhooks
        */
        'connection' => env('YOUSIGN_WEBHOOK_CONNECTION'),
        'queue' => env('YOUSIGN_WEBHOOK_QUEUE'),

        /*
        * When disabled, the package will not verify if the signature is valid.
        * This can be handy in local environments.
        */
        'verify_signature' => env('YOUSIGN_SIGNATURE_VERIFY', true),
    ],
];

API Usage

\Elegantly\Yousign\Facades\Yousign::connector()->signatureRequest()->find('YOUSIGN_SIGNATURE_ID');

Webhooks Usage

Route::yousignWebhooks('/yousign/webhooks');

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

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