REST API

Documentatie


Betalen

Print API biedt twee manieren om te betalen. Heb je zelf een betaalsysteem waar jouw klanten kunnen afrekenen, dan kun je ervoor kiezen om zelf periodiek een factuur te ontvangen. In dat geval kun je deze stap overslaan.

Lees meer over het verdienmodel in onze FAQ.
Optioneel Betaal-links

Om een betaal-link te genereren, POST je de betaalgegevens naar de set-up URL van de bestelling. Die URL staat in de API response bij het plaatsen van de bestelling. De prijzen zijn per product instelbaar via je account, onder het kopje Betaalscherm.

// $order = $api->post('/orders', ...);

$setupUrl = $order->checkout->setupUrl;
$checkout = $api->post($setupUrl, get_checkout_setup($order));

echo $checkout->paymentUrl; // hier kan je klant betalen

function get_checkout_setup($order)
{
    return array(
        'returnUrl' => 'http://localhost/voorbeeld?order_id=' . $order->id,
        'billing' => array(
            'address' => array(
                'name' => 'Print API',
                'line1' => 'Osloweg 75',
                'postCode' => '9700 GE',
                'city' => 'Groningen',
                'country' => 'NL'
            )
        )
    );
}
Velden met bijzonderheden:
Naam Toelichting
"returnUrl" De URL waar je klant na de betaling naar terugkeert
address["country"] Een ISO 3166-1 alpha 2 landcode

Als jouw gebruiker de betaling voltooit of annuleert, wordt hij of zij terugverwezen naar de returnUrl die je in de POST hebt opgegeven. Op die pagina kun je de status van de betaling weer uit de API opvragen — zie het voorbeeld hieronder. Als de betaling nog niet is voltooid, blijft de paymentUrl gewoon beschikbaar.

// Voorbeeld script voor op je return URL:
            
$id = urlencode($_GET['order_id']);
$order = $api->get('/orders/' . $id);

switch ($order->checkout->status) {

    case 'Successful':
        echo 'Bedankt voor je bestelling!';
        break;

    case 'Open':
        echo 'Betaling nog niet voltooid. Probeer het nogmaals. <br />';
        echo $order->checkout->paymentUrl;
        break;

    case 'Cancelled':
        echo 'De betaling is verlopen.';
        break;
}
Print API heeft ook webhooks om je server automatisch op de hoogte te stellen van statuswijzigingen. Daarover meer in de volgende stap.

TIP: Je kunt je klant al laten afrekenen voordat de bestanden zijn aangeleverd. Daar hoeft je klant dus niet op te wachten. Voordelig bij grotere PDF's, of als je de bestanden pas op een later moment genereert. Is een bestelling betaald maar ontbreken de bestanden na 48 uur, dan nemen wij contact op.

Volgende