Billink Documentation ## Sections • [Introduction](https://developers.billink.nl/introduction.md): The ​ Billink API ​ is designed with a RESTful architecture, offering developers a predictable and efficient way to integrate their applications. The API supports only ​ JSON ​ request and response format. The ​ Billink API ​ provides a robust set of endpoints for managing key operations, including order handling, and payment processing. Key features include: Order Management ​: Create orders, set orders on hold, and resume them, initiate workflows, open disputes Payments ​: Create payment sessions, process payments, and track their statuses. Messaging ​: Send updates and messages associated with orders. Status Tracking ​: Monitor the progress and state of orders and workflows. Unable to find the endpoint you need? We are happy to help every business day​ . You can reach us directly via the chat, by phone or WhatsApp. All details you can find here . To facilitate seamless testing and deployment, the ​ Billink API ​ offers two operational modes: Sandbox Mode ​: A safe testing environment that allows you to experiment with API features without affecting live production data. Production Mode ​: The live environment for real-world operations and customer interactions. You can use our API Explorer to be able to test our endpoints right away. You can always switch between ​ sandbox ​ and ​ production ​environment API URLs Billink API provides two distinct environments to facilitate development and production operations. Each environment is accessible via a dedicated URL: Staging Environment ​: Use this environment for testing and development purposes. URL: https://api-staging.billink.nl Production Environment ​: Use this environment for live, production-level operations. URL: https://api.billink.nl Make sure to use the appropriate URL depending on whether you're working in staging or production to avoid unintended interactions with live data. • [Billink Status](https://developers.billink.nl/billink-status.md): You can always check the current status of our services at: https://status.billink.nl • [Billink Changelog](https://developers.billink.nl/billink-changelog.md): On this page you’ll find relevant updates to the Billink platform: from new features and improvements in Billink One to important bug fixes, API changes, and new PSP integrations. This way, you’ll always stay up to date on what’s changing and how it improves your checkout, integration, or customer experience. • [Release v2026.2 - 4 March, 2026](https://developers.billink.nl/billink-changelog/release-v2026-1-january-20-2026-copy.md): During this release, several A/B tests are being conducted to optimize conversion and further improve customer experience in the Billink One checkout. These tests include improvements to the mobile checkout flow and clearer communication around payment options. Features Various design and copy improvements in the checkout and payment page of Billink One Improvements to the order confirmation screen for clearer user experience A new branded loading screen during background checks in Billink One A customer’s secondary email address is new displayed on the order details page Added an “incl. VAT” label to the total amount on the Billink One payment page. App icons for Android and iOS updated to the latest version Bug Fixes Push notifications in the mobile app have been optimized Minor visual improvements across Billink One interface Login issues in My Billink have been resolved Hotfix Billink One session loading time have been further optimized for a faster checkout experience • [Release v2026.1 – January 20, 2026](https://developers.billink.nl/billink-changelog/release-66-november-11-2025-copy.md): Project features Billink One Optimization We continuously improve Billink One through A/B tests and system optimizations to enhance the shopping experience and overall functionality. Features New functionality makes it easier to send structured B2B invoices digitally via Peppol, supported by Maventa. Improvements in the shopping cart provide a clearer display of payment information, including totals and VAT, in all supported languages. The notification process in Billink One has been optimized, allowing messages to be delivered to customers more efficiently and clearly. Bug Fixes Email handling has been improved so that all addresses, including special characters and spaces, are processed correctly and displayed properly in the app. Users can now easily select an alternative payment option in case of an iDIN mismatch. Optimizations ensure reliable registration of Belgian Chamber of Commerce numbers. The Bancontact payment process has been optimized, allowing shoppers to be correctly and seamlessly directed to the appropriate payment page. • [Release 66 - November 11, 2025](https://developers.billink.nl/billink-changelog/release-64-october-7-2025-copy.md): Project features Billink One Optimization During the release, we test different variants via A/B testing to continuously optimize both conversion and customer experience. Features Billink One interface optimized with new labels and an improved form structure. VAT information and payment options are presented more clearly and consistently in Billink One. Hotfixes Mobile apps updated for consistent labeling and automatic selection of relevant payment options. Bug Fixes Webhooks and API integrations stabilized for reliable data transfer. Pop-ups and notifications trigger correctly and appear at the right time. Corrections applied to calculations and page updates, including iDIN verification and full crediting. • [Release 64 – October 7, 2025](https://developers.billink.nl/billink-changelog/release-64-october-7-2025.md): Project features Mobile App Improvements Previously, it was not possible for a consumer to directly pay an overdue order that had not been paid on time. From now on, this can be done directly in the app. Billink One Optimization During this release, we are running several A/B tests to maintain optimal conversion rates and continue improving the customer experience. HPP Device Fingerprint v0 On Billink One each device receives a unique identifier for improved fraud detection. Features Down payment details are now shown in customer notifications. General fixes and stability improvements. Customers now receive emails for partial credits. Developer Portal expanded with Billink One branding. Ability to download PDF invoices for orders. Improved reliability of settings and success notifications. Invoice improvements: outstanding invoices now include pagination for better clarity. Maintenance Optimizations in customer settings. Extended webhook support. Database performance optimizations. Bug Fixes Various improvements to login processes, translations, and interface display. Improved email communication and correction of error messages in payment flows. • [Release 62 – August 26, 2025](https://developers.billink.nl/billink-changelog/release-62-august-26-2025.md): Project features HPP – Downpayments v1: The logic around downpayments has been further refined. The option is only shown when legally and commercially appropriate. Rebrand Mobile apps v0: Our mobile apps have been redesigned to align with Billink’s new branding. A more modern look, improved readability, simpler navigation, and a dark mode for ease of use. Multi-email accounts (app): Users can now link multiple email addresses to a single Billink account. This allows consumers to view multiple orders if they use different email addresses. Features Added Session Cancel status → provides merchants and customers with more clarity when a session is terminated. New fields in the downpayment option → better insight into payment options and decision-making logic. New payment method selector and improved Next button in Billink One → fewer clicks, faster checkout. Invoice numbers added to payment descriptions. Affiliate program terms linked in the system → direct visibility for merchants. Webhook examples added in developer documentation → easier testing and faster integration. Documentation updated with new branding → more consistent developer experience. Mid release deployments (Hotfixes) Extended documentation for webhooks (session/order info). Bank option removed from iDEAL in mijn.billink.nl for a clearer payment experience for customers. Bug fixes We resolved a large number of issues to improve stability and reliability. Key fixes include: Order amounts and birthdates now displayed correctly in portals. Various fixes in Customer Portal (login, order overview, payroll tables). Improved error handling in forms and dispute flows → fewer blockers for merchants. Minor UI and UX fixes in portals (icons, translations, layouts). Billink One logo added to developer portal → better recognition and consistency. Maintenance Improved dialogs and prompts in portals for clearer merchant interaction. Branding and minor text changes implemented across portals and affiliate pages. • [Partners Exclusive](https://developers.billink.nl/partners-exclusive.md): The Client Management section is dedicated to the creation of emerchants within the system. It allows users to register new emerchants by providing the necessary client information. This section ensures that merchants are properly onboarded into the Billink platform. • [Merchant Create](https://developers.billink.nl/partners-exclusive/client-api.md): The Merchant Create endpoint allows partners (resellers) to create a new client (submerchant) profile within the Billink platform. It is typically used during onboarding to register a client with all the necessary business, billing, and contact details. billinkUsername and billinkID are your partner account credentials — the new client is created under and linked to your partner account. The new client's username and email must be unique across Billink. The method field controls workflow setup: send 1 to configure payment workflows for the new client (Billink defaults, or the configuration you pass in workflows ); any other numeric value skips workflow setup. Set changePasswordLink to "true" to receive a one-time password-reset link for the new client in the response. All available errors for this endpoint you can find in errors section. • [Authorize payment](https://developers.billink.nl/authorize-payment.md): The Payment Session Management section facilitates the creation and monitoring of payment sessions, ensuring a smooth and streamlined payment process for users. This section enables you to initialize payment sessions and check their current status, providing real-time insights into the payment lifecycle. These capabilities are vital for delivering a secure and efficient payment experience. • [Create Session](https://developers.billink.nl/authorize-payment/create-session.md): Creates a new Billink payment session by submitting merchant, customer, address, and order details. Returns a session URL that redirects the customer to the Billink checkout flow for completing the payment. Suitable for integrating Billink into your online checkout process. The session remains valid until one of the following occurs: The customer ​ completes ​ the payment, The session is ​ cancelled ​, Or ​ 1 hour ​ has passed since the session was created. All available errors for this endpoint you can find in errors section. • [Session Status](https://developers.billink.nl/authorize-payment/session-status.md): The Session Status endpoint allows you to check the real-time status of an order placed through the Billink platform. It’s particularly useful for determining whether a payment session has been successfully completed, is still pending, or was abandoned. All provided identifiers are combined — the session must match every one of them; the newest matching session is returned. If no identifier is provided the request fails with 400 "Missing search parameters". All available errors for this endpoint you can find in errors section. • [Order management](https://developers.billink.nl/order-management.md): The Order Management section provides tools for handling the lifecycle of an order: monitoring, workflow start, payment and more. It enables efficient order processing through functionalities such as checking the status of an order, adding messages to orders, and managing workflows by placing orders on hold or resuming them. These features ensure seamless integration, accurate tracking, and streamlined operations for order management.Please note that the described endpoints include only a few examples of error responses. For a comprehensive list of error codes and messages, refer to the Errors section. • [Start Workflow](https://developers.billink.nl/order-management/start-workflow.md): The Start Workflow is used to automatically trigger the workflow process for one or more invoices after order delivery. By default, Billink applies a 3-day delay before starting the workflow, giving customers time to review the delivery. However, this delay can be adjusted through your account settings to suit your business needs. All available errors for this endpoint you can find in errors section. • [Credit](https://developers.billink.nl/order-management/credit.md): The Credit allows you to apply partial or full credit to existing invoices within the Billink system. This provides greater flexibility in managing post-sale scenarios such as returns, discounts, or billing corrections. All available errors for this endpoint you can find in errors section. • [Carriers list](https://developers.billink.nl/order-management/carriers-list.md): The Carriers List returns all carriers supported by the tracker endpoints. Use it as the source of truth for the carrierCode parameter of Create Tracker and Update Tracker . For every carrier, code is the exact value to pass as carrierCode , and name is the human-readable label you can show in your interface. Some codes differ from the display name (e.g. DHL_Express vs "DHL Express") — always send the code . This endpoint requires no authentication. • [Create Tracker](https://developers.billink.nl/order-management/create-tracker.md): The Create Tracker allows you to register tracking information for an existing order. This enhances shipment transparency for both merchants and customers, enabling efficient post-purchase communication and logistics monitoring. This endpoint supports attaching a track-and-trace code and optional media (e.g., shipping labels or proof of shipment) encoded in Base64 format. • [Update Tracker](https://developers.billink.nl/order-management/update-tracker.md): The Update Tracker allows you to modify tracking information for an existing tracker. This is useful for correcting errors, updating delivery details, or uploading additional media such as updated shipping labels or proof of delivery. By providing the tracker ID and the updated fields, you can change details like the carrier, invoice number, or track-and-trace code. Optionally, you may also attach or replace associated files (e.g., images or PDFs) encoded as Base64. • [Payment](https://developers.billink.nl/order-management/payment.md): The Payment enables merchants to initiate payments against one or more invoices within the Billink system. This feature is designed for use cases where payments are collected outside the Billink checkout flow—such as repeat customers paying directly on a webshop, administrative invoice management, or integration with custom billing workflows. All available errors for this endpoint you can find in errors section. • [On Hold](https://developers.billink.nl/order-management/on-hold.md): The On Hold allows merchants to temporarily pause an invoice within the Billink platform, giving them more flexibility in managing billing and payment cycles. When an invoice is placed on hold, no dunning or collection action will take place for the duration of the hold period - for the number of days you specify, or until the order is manually resumed All available errors for this endpoint you can find in errors section. • [Resume Order](https://developers.billink.nl/order-management/resume-order.md): The Resume Order allows users to reactivate invoices that were previously placed on hold. This API enables a smooth continuation of the invoice processing and payment workflow, ensuring no disruption in billing operations. It offers merchants greater flexibility and control over invoice lifecycle management within the Billink system. All available errors for this endpoint you can find in errors section. • [Order Info](https://developers.billink.nl/order-management/order-info.md): The Order Info allows users to fetch detailed information about the payment status and current workflow position of one or multiple invoices. This enables effective tracking of orders and helps users monitor whether payments have been made and where orders stand in the processing lifecycle. It provides insights for managing invoices efficiently within the Billink platform. Status values: 1 — invoice paid. description contains the current workflow step of the order. 0 — invoice not paid yet. description contains the current workflow step ("No steps given" if the workflow has no steps, "Pending COEO" while the order is at the collection stage). -1 — order not found for the given invoice number. description is "Order not found". Status values are returned as strings. The description field is only included when step descriptions are enabled for your account. All available errors for this endpoint you can find in errors section. • [Message](https://developers.billink.nl/order-management/message.md): The Message allows users to attach internal messages to specific orders. These messages are visible to the Billink customer service team via the backend interface and can be used to pass important information, status updates, or special handling instructions related to an invoice. This feature enhances internal communication and streamlines workflow management throughout the billing lifecycle. All available errors for this endpoint you can find in errors section. • [Dispute](https://developers.billink.nl/dispute.md): The Dispute section provides the basic functionality required to work with disputes. It allows you to retrieve the available dispute categories and to create a new dispute for a transaction when needed. • [Dispute Categories](https://developers.billink.nl/dispute/dispute-categories.md): The Dispute Categories endpoint allows to get a list of all available dispute categories and their ids. • [Dispute Create](https://developers.billink.nl/dispute/dispute-create.md): The Dispute Create endpoint allows merchants to initiate disputes related to customer invoices. It provides a structured way to handle issues such as product returns, damaged goods, or custom concerns. • [Reconciliation](https://developers.billink.nl/reconciliation.md): The Reconciliation section provides access to financial data used for matching and tracking client invoices . It currently supports: Retrieving a paginated list of invoices for a specified Billink client Downloading invoice data for further processing or reporting • [Invoices](https://developers.billink.nl/reconciliation/invoices.md): Retrieves a paginated list of invoices for a given Billink client. Supports optional filtering by date range and returns invoice amounts, numbers, and related reconciliation identifiers. All available errors for this endpoint you can find in errors section. • [Invoice Download](https://developers.billink.nl/reconciliation/invoice-download.md): This endpoint allows clients to download all available invoice documents as a ZIP archive. It requires a valid Billink client identifier, username, invoice year, and invoice number. On success, it returns a 200 status code with application/zip content type, triggering a ZIP file download. All available errors for this endpoint you can find in errors section. • [Webhooks](https://developers.billink.nl/webhooks-v3.md): The Order Webhook v3 adds HMAC signature verification and three new event types on top of all existing events. The current webhook continues to work unchanged — v3 is opt-in. NOTE: "v3" refers to the webhook version, not the API version. All Webhook v3 endpoints use the /v2/ prefix. Every v3 webhook includes three security headers: Title Description Header Purpose X-Billink-Signature HMAC-SHA256 signature (hex-encoded) X-Billink-Timestamp Unix timestamp (seconds) — reject if older than 5 min X-Billink-Webhook-Id Unique delivery ID — stable across retries, use for deduplication Signature formula: HMAC-SHA256(timestamp + raw_body, secret) — output is lowercase hex, no prefix. Must hash raw HTTP body — never parse and re-serialize JSON before verification. Signature verification Retries Billink retries failed deliveries up to 3 times with exponential backoff. Each retry carries the same X-Billink-Webhook-Id . After 3 consecutive failures an email notification is sent. Quick Start: Step 1: Generate a signing secret CURL POST https://api-staging.billink.nl/v2/client/webhook-v3/secret/generate Body: Plain text { "billinkUsername": "your_username", "billinkID": "your_billink_id" } Response: Plain text { "status": "success", "message": "Webhook V3 secret is generated successfully", "secret": "npHiAuRps5S+nTsDL2L663zmm9gfiP3wtmMDgbQNDLg=" } Save this secret securely — you'll need it to verify webhook signatures. The secret is a base64-encoded string. One secret is used for all v3 webhooks (both session and order). Step 2: Register your v3 webhook URLs Order webhook: CURL POST https://api-staging.billink.nl/v2/client/webhook-v3/set Body: Plain text { "billinkUsername": "your_username", "billinkID": "your_billink_id", "url": "https://your-domain.com/webhook/order" } Session webhook: CURL POST https://api-staging.billink.nl/v2/session/webhook-v3/set Body: Plain text { "billinkUsername": "your_username", "billinkID": "your_billink_id", "url": "https://your-domain.com/webhook/session" } Response (both): Plain text { "status": "success", "message": "Webhook has been set" } Step 3: Implement signature verification Every v3 webhook includes three headers: Signature construction: HMAC-SHA256(timestamp + payload, secret) where timestamp is the Unix timestamp string and payload is the raw request body bytes , concatenated directly (no separator). Output is lowercase hex, no sha256= prefix. Important: You must hash the raw HTTP request body exactly as received — do not parse and re-serialize JSON. Different languages serialize JSON differently (e.g. Node.js doesn't escape / , PHP does), which will break the signature. Step 4: Disable old webhooks (optional) Note: You can run both old and v3 webhooks simultaneously during testing. Events will be sent twice if both are enabled. Order webhook: Plain text POST https://api-staging.billink.nl/v2/client/webhook/disable POST https://api-staging.billink.nl/v2/client/webhook/disable Session webhook: Plain text POST https://api-staging.billink.nl/v2/session/webhook/disable POST https://api-staging.billink.nl/v2/session/webhook/disable Body (both): Plain text { "billinkUsername": "your_username", "billinkID": "your_billink_id" } Signature Verification — Code Examples PHP PHP <?php $secret = 'npHiAuRps5S+nTsDL2L663zmm9gfiP3wtmMDgbQNDLg='; // from Step 1 // Read RAW body — do NOT use $_POST or json_decode before verification $payload = file_get_contents('php://input'); $signature = $_SERVER['HTTP_X_BILLINK_SIGNATURE'] ?? ''; $timestamp = $_SERVER['HTTP_X_BILLINK_TIMESTAMP'] ?? ''; // 1. Reject requests older than 5 minutes (replay protection) if (abs(time() - (int)$timestamp) > 300) { http_response_code(403); exit('Timestamp too old'); } // 2. Verify signature $expected = hash_hmac('sha256', $timestamp . $payload, $secret); if (!hash_equals($expected, $signature)) { http_response_code(403); exit('Invalid signature'); } // 3. Webhook verified — now you can parse $event = json_decode($payload, true); http_response_code(200); Node.js (Express) JavaScript const crypto = require('crypto'); const express = require('express'); const app = express(); const SECRET = 'npHiAuRps5S+nTsDL2L663zmm9gfiP3wtmMDgbQNDLg='; // IMPORTANT: use express.raw — NOT express.json() — // so req.body is a Buffer with the original bytes. app.post('/webhook/order', express.raw({ type: 'application/json' }), (req, res) => { const signature = req.headers['x-billink-signature'] || ''; const timestamp = req.headers['x-billink-timestamp'] || ''; // 1. Replay protection if (Math.abs(Date.now() / 1000 - parseInt(timestamp, 10)) > 300) { return res.status(403).send('Timestamp too old'); } // 2. Verify signature against RAW body bytes const rawBody = req.body.toString('utf8'); const expected = crypto .createHmac('sha256', SECRET) .update(timestamp + rawBody) .digest('hex'); const sigBuf = Buffer.from(signature, 'utf8'); const expBuf = Buffer.from(expected, 'utf8'); if (sigBuf.length !== expBuf.length || !crypto.timingSafeEqual(sigBuf, expBuf)) { return res.status(403).send('Invalid signature'); } // 3. Parse only after verification const event = JSON.parse(rawBody); res.status(200).end(); } ); app.listen(3000); Python Python import hmac, hashlib, time, json SECRET = 'npHiAuRps5S+nTsDL2L663zmm9gfiP3wtmMDgbQNDLg=' def verify_billink_webhook(raw_body: str, headers: dict, secret: str): signature = headers.get('X-Billink-Signature', '') timestamp = headers.get('X-Billink-Timestamp', '') # 1. Replay protection if abs(time.time() - int(timestamp)) > 300: raise ValueError('Timestamp too old') # 2. Verify signature expected = hmac.new( secret.encode(), f'{timestamp}{raw_body}'.encode(), hashlib.sha256 ).hexdigest() if not hmac.compare_digest(expected, signature): raise ValueError('Invalid signature') Flask usage: Python from flask import Flask, request, abort app = Flask(__name__) @app.post('/webhook/order') def webhook(): raw_body = request.get_data(as_text=True) # RAW body, not request.json try: verify_billink_webhook(raw_body, dict(request.headers), SECRET) except ValueError as e: abort(403, str(e)) event = json.loads(raw_body) return '', 200 FastAPI usage: Python from fastapi import FastAPI, Request, HTTPException app = FastAPI() @app.post('/webhook/order') async def webhook(request: Request): raw_body = (await request.body()).decode('utf-8') # RAW body try: verify_billink_webhook(raw_body, dict(request.headers), SECRET) except ValueError as e: raise HTTPException(status_code=403, detail=str(e)) event = json.loads(raw_body) return {} All Event Types Order events Title Description Title Event Description Typical Use Case order_placed Customer successfully placed an order. Mark order as created. order_workflow_started The order entered internal processing workflow. Order can be shown as started. partial_payment_added A partial payment for the order was received. Get the new order details to adjust the outstanding amount. order_paid The order has been fully paid. Mark order as paid. partial_credit_added A partial credit or refund was applied to the order. Get the new order details to adjust the outstanding amount. order_fully_accredited A full credit or refund was applied to the order. Mark order as fully accredited in system. customer_fully_paid The customer has cleared all outstanding balances. Mark order as paid. order_on_hold The order is temporarily on hold (e.g. pending review, dispute process). Mark order as paused. dispute_created *new v3 event A dispute has been opened for the order (e.g. the customer contests a charge). Pause fulfillment and track the dispute status. dispute_resolved *new v3 event A previously opened dispute has been resolved. Resume normal order processing. retrocession_credit_applied *new v3 event A retrocession credit has been applied to the order (credit returned to the merchant by Billink). Adjust the order balance and update accounting record Session events Session webhooks are fired only on status changes of an existing session . Creating a new session does not emit a webhook — the first event you receive will correspond to the first status transition (e.g. order_created when the buyer completes checkout, or cancelled if the session is cancelled). Title Description Title Status Description Typical Use Case session_active The session was successfully initialized and is currently active. The session has started and the customer interacts with the payment flow. cancelled The customer cancelled the session manually or closed the checkout. Stop tracking the session and mark it as cancelled. failed The session failed due to a technical or validation error (e.g. payment method unavailable, invalid data). Display a failure message or log the error for retry. session_expired The session expired automatically after a timeout (1 hour) without completing checkout. Mark session as expired and cancel related pending processes. order_created Checkout was successfully completed and an order has been created. Confirm the order and trigger fulfillment in your system. Webhook Payload Formats Order webhook payload All order events use the same payload structure (unchanged from current webhook): Plain text { "order_id": 12345, "invoice_number": "INV-2026-001", "invoice_number_clean": "INV2026001", "workflow_id": 67, "event": "order_paid", "timestamp": "2026-04-07 10:00:00" } Title Description Title Field Type Description order_id integer Billink order ID invoice_number string Invoice number invoice_number_clean string Invoice number without special characters workflow_id integer Workflow instance ID event string Event type (see event table above) timestamp string Event timestamp (Y-m-d H:i:s) Session webhook payload This format is the same for both v2 and v3 session webhooks. Session webhooks use a different payload structure: Plain text { "transactionId": "d290f1ee-6c54-4b01-90e6-d701748f0851", "billinkInvoiceNumber": "INV-2026-001", "invoiceNumber": "ORDER-2026-001", "status": "order_created" } Title Description Title Field Type Description transactionId string Session transaction ID billinkInvoiceNumber string Billink invoice number invoiceNumber string Merchant order number status string Session status (see session events table above) • [Generate Signing Secret](https://developers.billink.nl/webhooks-v3/new-section.md): Generates or rotates the HMAC-SHA256 signing secret shared by both order and session v3 webhooks. Rotating the secret immediately invalidates the previous one — update your verification logic before rotating. The generated secret is also visible in the Billink merchant portal settings page. • [Order Webhook](https://developers.billink.nl/webhooks-v3/order-webhook.md): The Order Webhook notifies your system about important events in the order lifecycle. This allows your platform to react in real time — for example, when an order is placed, partially paid, fully paid, credited, or put on hold. You can also read how to set or disable the Order Webhook : Order Webhook Set | Order Webhook Disable Billink signs every delivery with HMAC-SHA256 using the shared secret. The following order events will be sent to the configured URL: order_placed partial_payment_added order_paid partial_credit_added order_fully_accredited customer_fully_paid order_workflow_started order_on_hold dispute_created dispute_resolved retrocession_credit_applied • [Set Order Webhook URL](https://developers.billink.nl/webhooks-v3/order-webhook/set-order-webhook-url.md): Configures or updates the v3 order webhook URL for the merchant. A signing secret must be generated first via the /v2/client/webhook-v3/secret/generate endpoint. • [Disable Order Webhook](https://developers.billink.nl/webhooks-v3/order-webhook/disable-order-webhook.md): Removes the configured v3 order webhook URL for the merchant. No order events will be sent after disabling. The signing secret is preserved and can be reused when the webhook is re-enabled. • [Session Webhook](https://developers.billink.nl/webhooks-v3/session-webhook.md): The Session Webhook notifies your system whenever a payment session changes its state. This enables your platform to react in real time — for example, when a session becomes active, fails or expires. You can also read how to set or disable the Session Webhook: Session Webhook Set | Session Webhook Disable The following session events will be sent to the configured URL: order_created — an order was created from the session session_expired — the session has expired session_active — the session has become active failed — the session has failed cancelled — the session has been cancelled Note: Webhooks fire only on status changes. Creating a new session does not emit a webhook. • [Set Session Webhook URL](https://developers.billink.nl/webhooks-v3/session-webhook/set-session-webhook-url.md): Configures or updates the v3 session webhook URL for the merchant. Uses the same shared signing secret as the order webhook — generate it via /v2/client/webhook-v3/secret/generate if you haven't already. • [Disable Session Webhook](https://developers.billink.nl/webhooks-v3/session-webhook/disable-session-webhook.md): Removes the configured v3 session webhook URL for the merchant. No session events will be sent after disabling. The signing secret is preserved and can be reused when the webhook is re-enabled. • [Errors](https://developers.billink.nl/errors.md): In Billink API , error responses follow a consistent format. All errors are returned with an HTTP status code 200 , which indicates the request was processed but there was an issue with the operation. The format of the error is as follows: JSON { "code": "000", "description": "Error message", "result": "error" } Code : A unique error code representing the specific issue. Description: A detailed description of the error. Result: Short informative status These errors might indicate a variety of issues including but not limited to problems with API versioning, client authentication, missing or incorrect parameters, data format issues, and restrictions on actions (such as workflow limitations or invalid operations). Common Issues: Client Identification : Errors related to missing or incorrect client username, client id, or API version. Invoice and Workflow Management : Missing or incorrect invoice numbers or workflow data. Order Management : Trying to perform actions on orders that are not allowed or are already processed. Request Limitations : Exceeding request limits (e.g., number of invoices, action frequency). Parameter Validation : Incorrect or unsupported parameters in requests. This helps you to easily handle and debug issues by following the provided error code descriptions across all API endpoints. In the next subsections, you will see errors specific to each endpoint. Each of these subsections includes a list of error codes and their corresponding descriptions to help you understand and resolve issues effectively. • [Client API Errors](https://developers.billink.nl/errors/client-api-errors.md): Summary of Client Error Codes The Client error codes mainly address issues related to client identification, parent-child client relationships, and validation of client-related data fields. Common problems include: Unknown or invalid client username or client id. Issues with parent client relationships, such as clients being their own parent or invalid parent ids. Validation errors for company and personal data fields, including company name, first and last name, IBAN, BIC, contact information, and address details. Errors related to uniqueness constraints, like duplicate usernames or emails. Missing or invalid platform or reseller information. Code Message 101 Unknown client username or client id 102 Unknown client username or client id 103 Client with username “%message%” is not allowed to access api/create-client 104 Unknown parent client username 105 The client can’t be it’s own parent 106 The passed parent client id is not in a reseller clients list 401 Missing or invalid company name. Company name must be between 2 and 100 characters long 402 Missing or invalid first name. First name must be between 2 and 255 characters long 403 Missing or invalid last name. Last name must be between 2 and 255 characters long 404 Missing IBAN 405 Please provide valid iban/bank account number. 406 Missing BIC number or invalid format. See ISO 9362 407 Missing or invalid city name. City name should contain only letters, spaces, - . and ’ signs 408 Missing or invalid COC number. It should be 8 digits length 409 Missing contact email or wrong contact email format 410 Incorrect country code 411 Missing or invalid contact phone. Phone number should be between 9-18 characters, it can contain only digits, spaces, ‘+’, ‘()’ and ‘-’ signs 412 Missing email or wrong email format 413 Missing house number 414 Wrong house number format 417 Could not save logo image 418 Missing or invalid phone number. Phone number should be between 9-18 characters, it can contain only digits, spaces, ‘+’, ‘()’ and ‘-’ signs 419 Missing or invalid postcode 420 Missing or invalid street name. Street name may contain letters, numbers, spaces, - ’ . 421 Bankholder is missing 422 Missing VAT number or wrong VAT number format 423 Missing web site URL or invalid URL format. Example format: www.example.com 424 Missing or invalid method. Method should be numeric 425 Missing or invalid user name. User name must be between 4 and 50 characters long 426 Missing country code 427 Client with username “%message%” already exists 428 Client with email “%message%” already exists 429 Please provide platform id 430 Platform with such id doesn’t exist 431 Missing parent client username 432 Missing parent client id • [Session Status Errors](https://developers.billink.nl/errors/session-status.md): Summary of Session Status Error Codes The Session Status error codes primarily address issues related to user input validation, access permissions, session existence, and unexpected server errors. Common problems include: Missing required form data, such as a blank username field. Access denial due to insufficient permissions. Sessions that cannot be found or have expired. General server errors indicating unexpected failures. Code Message 400 The form contains the following errors: 1) billinkUsername: This value should not be blank. 403 Access denied 404 Session not found 500 Something went wrong • [Create Session Submerchant Errors](https://developers.billink.nl/errors/create-session.md): Summary of Create Session Error Codes The Create Session error codes mainly cover validation issues with client data, access permissions, and general server errors. Common problems include: Missing required client fields such as billinkUsername, billinkID, and workflowNumber. Access denial due to insufficient permissions. Client not found errors when billinkID or billinkUsername do not match any records. Unexpected server errors causing failure during session creation. Code Message 400 The form contains the following errors: 1) client.billinkUsername: This value should not be blank. 2) client.billinkID: This value should not be blank. 3) client.workflowNumber: This value should not be blank. 403 Access denied 404 No client found with such billinkID or billinkUsername 500 Something went wrong • [Start Workflow API Errors](https://developers.billink.nl/errors/start-workflow.md): Summary of Start Workflow Error Codes The Start Workflow error codes mainly focus on issues related to client identification , invoice validation , workflow management , and request limitations . Common problems include: Unknown details such as API version, client username, or client id. Invoice validation issues , such as missing or unknown invoice numbers. Workflow errors , such as trying to start a workflow when it's already been started or when you're not authorized to manage the order. Request limits , such as exceeding the maximum allowed invoices per request. All available error codes and messages for Start Workflow API : Code Message 101 Unknown client username or client id 102 Unknown client username or client id 103 Unknown action 603 Redirect Billink API error 704 Unknown invoice number 705 No invoices provided 706 You are not allowed to manage this order 707 Order workflow is already started 708 Maximum 10 invoices per request allowed • [Credit API Errors](https://developers.billink.nl/errors/credit.md): Summary of Credit Error Codes The error codes for the Credit focus on workflow issues , order validation , and invoice management . Common problems include: Unknown details such as API version, client username, or client id. Workflow errors related to missing or incorrect workflow numbers. Order errors like trying to apply credit to an order that already exists or cannot be managed at the current stage. Invalid data for example: missing invoices. Access control issues , such as being unable to manage an order or apply credit at a certain stage. All available error codes and messages for Credit : Code Message 101 Unknown client username or client id 102 Unknown client username or client id 103 Unknown action 402 Workflow with number %number% does not exist 404 Order with number %number% already exists 603 Redirect Billink API error 705 No invoices provided 706 You are not allowed to manage this order 707 Credit cannot be applied at this stage 708 Credit cannot be applied at this stage(0) • [Payment API Errors](https://developers.billink.nl/errors/payment.md): Summary of Payment Error Codes The Payment error codes mainly address issues related to client identification , invoice management , and order status . Common problems include: Unknown details such as API version, client username, or client id. Invoice-related errors , such as missing or unknown invoice numbers. Order management issues , including trying to manage an order you are not authorized to manage or attempting to pay an order that's already paid. Description length errors , such as exceeding the character limit for payment descriptions. All available error codes and messages for Payment API : Code Message 101 Unknown client username or client id 102 Unknown client username or client id 103 Unknown action 402 Workflow with number %number% does not exist 420 Missing invoice numbers 603 Redirect Billink API error 704 Unknown invoice number 706 You are not allowed to manage this order 707 Order is already paid 708 Description is too long (max. 30 characters) • [On Hold API Errors](https://developers.billink.nl/errors/on-hold.md): Summary of On Hold Error Codes The On Hold API error codes mainly address issues related to client identification , invoice and workflow management , and order hold status . Common problems include: Unknown details such as API version, client username, or client id. Missing or incorrect invoice or workflow numbers . Hold period issues , such as exceeding the maximum allowed duration due to guaranteed payment restrictions. Order management errors , such as trying to set an order on hold when it's not possible or using unsupported parameters for resuming the order. All available error codes and messages for On Hold API : Code Message 101 Unknown client username or client id 103 Unknown action 104 Unsupported param for resume 401 Missing invoice number or workflow number 402 Unknown invoice number or workflow number 403 On hold period is too long, because of guaranteed payment (max 14 days) 603 Redirect Billink API error 701 Order cannot be set on hold • [Resume Order API Errors](https://developers.billink.nl/errors/resume-order.md): Summary of Resume Order Error Codes The Resume Order error codes mainly focus on data availability and order state validation. Common problems include: Missing or empty data sent in the request. Orders not found in the system. Orders that cannot be resumed due to their current status. Code Message 400 No data is send 400 No order found 400 Order cannot be resumed! • [Order Info](https://developers.billink.nl/errors/order-info.md): Summary of Order Info Error Codes The Order Info error codes mainly relate to form validation, access control, session management, and server errors. Common problems include: Missing required form fields like billinkUsername. Access denial due to insufficient permissions. Sessions that cannot be found or have expired. Unexpected server errors during processing. Code Message 400 The form contains the following errors: 1) billinkUsername: This value should not be blank. 403 Access denied 404 Session not found 500 Something went wrong • [Message API Errors Legacy](https://developers.billink.nl/errors/message.md): Summary of Message API Error Codes The Message error codes primarily relate to authentication, resource identification, and permission issues when interacting with the messaging system. Common problems include: Invalid or unknown client username or client ID. Referencing a non-existent workflow or invoice number. Using an incorrect HTTP method (e.g. using GET instead of POST). Attempting to perform actions (like logging a message) without proper authorization. All available error codes and messages for Message API: Title Description 101 Unknown client username or client id 401 Unknown workflow number 402 Unknown invoice number 603 Error request. Use method POST. 701 You are not allowed to add message to log, please contact • [Invoices](https://developers.billink.nl/errors/invoices.md): Summary of Invoices endpoint Error Codes The Invoices error codes are primarily related to validation, missing parameters, client authentication, and incorrect date formatting when retrieving invoice data. Common problems include: Missing or empty required fields such as billinkID or billinkUsername. Submitting data that is not a valid JSON array. Using incorrectly formatted dates (should be dd-mm-yyyy). Supplying invalid calendar dates. Referencing a non-existent client or master client. All available error codes and messages for the Invoices: Code Message 400 No data is sent 400 No array provided 400 Field billinkID is not provided 400 Field billinkUsername is not provided 404 Client is not found 404 Master client is not found 400 Field “date_from” does not match the pattern dd-mm-yyyy 400 Field “date_from” is not a valid date 400 Field “date_to” does not match the pattern dd-mm-yyyy 400 Field “date_to” is not a valid date • [Invoice Download](https://developers.billink.nl/errors/invoice-download.md): Summary of Download Endpoint Error Codes The Download endpoint error codes are mainly related to missing or invalid input data, client or master client lookup failures, and issues generating or retrieving the required PDF or ZIP files. Common problems include: Missing or empty required fields such as billinkID, billinkUsername, year, or number. Submitting data that is not a valid JSON array. Providing a billinkID or billinkUsername that does not correspond to an existing client. Master client not found when using grouped invoice logic. Invoice not found based on the given input. Required files (PDF or HTML) are missing or cannot be generated from HTML. All available error codes and messages for the Download endpoint: Code Message 400 No data is sent 400 No array provided 400 Field billinkID is not provided 400 Field billinkUsername is not provided 400 Field year is not provided 400 Field number is not provided 400 Invoice is not found 404 Client is not found 404 Master client is not found 404 Could not get or generate pdf file. Please, see error log file for details • [Billink brand assets](https://developers.billink.nl/brand-assets-billink/billink-brand-assets.md): Welcome to our brand Toolkit. Here you can find the logos that you can use in your webshop. Place the Billink logo where you also have the logos of other payment methods. The logos can be placed in the check-out, footer, and for example the productpage and the landingpages. Tip: Implement the badges and logos with direct link to the source file that we make available. Read more. • [Payment badges](https://developers.billink.nl/brand-assets-billink/payment-badges.md): The payment badges are aimed at implementation in the checkout. Below you can download the Billink badges in SVG (optimal for web implementation) and PNG format. The orange badge is our preferred badge. Below there are 2 alternative badges, white with orange and black with orange. The preferred orange badge ensures the greatest recognisability for consumers in the check-out and will be most often used by other web shops. Default badges: Preferred orange badge Download SVG ​ https://cdn.billink.nl/assets/paybadge/v2/SVG/billink-badge-orange.svg Download PNG https://cdn.billink.nl/assets/paybadge/v2/PNG/billink-badge-orange.png Preferred wide orange badge Download SVG https://cdn.billink.nl/assets/paybadge/v2/SVG/billink-badge-orange-wide.svg Download PNG https://cdn.billink.nl/assets/paybadge/v2/PNG/billink-badge-orange-wide.png When you have a good reason to not use the orange badge, there are two alternatives. The white with orange badge and the black with orange badge. When you want to use it, use the one with the highest contrast with the background. Alternative badge orange on white Download SVG https://cdn.billink.nl/assets/paybadge/v2/SVG/billink-badge-white.svg Download PNG https://cdn.billink.nl/assets/paybadge/v2/PNG/billink-badge-white.png Alternative wide badge orange on white Download SVG https://cdn.billink.nl/assets/paybadge/v2/SVG/billink-badge-white-wide.svg Download PNG https://cdn.billink.nl/assets/paybadge/v2/PNG/billink-badge-white-wide.png Alternative badge orange on black Download SVG https://cdn.billink.nl/assets/paybadge/v2/SVG/billink-badge-orangeonblack.svg Download PNG https://cdn.billink.nl/assets/paybadge/v2/PNG/billink-badge-orangeonblack.png Alternative wide badge orange on black Download SVG https://cdn.billink.nl/assets/paybadge/v2/SVG/billink-badge-orangeonblack-wide.svg Download PNG https://cdn.billink.nl/assets/paybadge/v2/PNG/billink-badge-orangeonblack-wide.png • [Logo lockups](https://developers.billink.nl/brand-assets-billink/logo-lockups.md): The logos are each offered in SVG (optimal for web implementation), AI, EPS, and 5 different sizes of PNG files. Default orange EPS / SVG / PNG / AI https://cdn.billink.nl/assets/Logov2/BILLINK_ORANGE_BILLINK_ORANGE.eps https://cdn.billink.nl/assets/Logov2/BILLINK_ORANGE.svg https://cdn.billink.nl/assets/Logov2/BILLINK_ORANGE.png https://cdn.billink.nl/assets/Logov2/BILLINK_ORANGE_BILLINK_ORANGE.ai Alternative white EPS / SVG / PNG / AI https://cdn.billink.nl/assets/Logov2/BILLINK_WHITE_BILLINK_WHITE.eps https://cdn.billink.nl/assets/Logov2/BILLINK_WHITE.svg https://cdn.billink.nl/assets/Logov2/BILLINK_WHITE.png https://cdn.billink.nl/assets/Logov2/BILLINK_WHITE_BILLINK_WHITE.ai Alternative black EPS / SVG / PNG / AI https://cdn.billink.nl/assets/Logov2/BILLINK_BLACK_BILLINK_BLACK.ai https://cdn.billink.nl/assets/Logov2/BILLINK_BLACK_BILLINK_BLACK.eps https://cdn.billink.nl/assets/Logov2/BILLINK_BLACK.png https://cdn.billink.nl/assets/Logov2/BILLINK_BLACK.svg Billink One SVG / PNG https://cdn.billink.nl/assets/Logov2/BILLINK_ONE.png https://cdn.billink.nl/assets/Logov2/BILLINK_ONE.svg • [Color codes](https://developers.billink.nl/brand-assets-billink/color-codes.md): Billink Primary #FF8D29 rgba(255,141,41) Billink Primary Light #FFEEDE rgba(255, 238, 222, 1) Billink Pastel Blue #9ABAE8 rgb(154, 186, 232) Billink Liliac #9577AD rgb(149, 119, 173) Billink Dark Taupe #16120D rgba(22, 18, 13) • [Implementation tips](https://developers.billink.nl/brand-assets-billink/implementation-tips.md): Refer directly to the source images that are shown above and are hosted on CDN.Billink.nl. Preferably make use of the SVG files regarding scalability. We recommend that you implement the logos with a direct link to the source image as we made available above. For this we have setup a so-called CDN (Content Delivery Network) to guarantee loading times of just a few milliseconds. The advantage of a link to the source files is that you are always guaranteed for the most current logos and badges in line with the final brand strategy of Billink. Billink Toolkit Page For a complete overview and detailed instructions on how to perfectly integrate Billink on your webshop, please visit the Billink Toolkit Page. This page contains everything you need, including all assets and guidelines, to ensure a seamless and consistent implementation. • [Billink in your checkout](https://developers.billink.nl/brand-assets-billink/billink-in-your-checkout.md): To clearly display Billink at checkout, it is important to mention that the customer can pay afterwards. This is central to how we communicate as a company. Always use the following text next to or behind the Billink logo: Pay afterwards with Billink Pay later with Billink Pay afterwards These formulations are clear and directly inform the customer about the possibility of paying afterwards via Billink. It is essential to always display these texts at checkout. Billink Toolkit For detailed guidance on how to best present Billink in your checkout, including all recommended texts and design elements, please visit the Billink Toolkit Page. This resource provides everything you need to ensure clear and consistent communication about paying afterwards with Billink. Example: • [Need a different format?](https://developers.billink.nl/brand-assets-billink/need-a-different-format.md): Do you need an alternative format which is not listed on this page or do you have a different question about the deployment of logos? Send an e-mail to marketing@billink.nl . • [Achteraf betalen brand assets](https://developers.billink.nl/achteraf-betalen/brand-assets.md): This toolkit contains the assets and guidelines required to implement Achteraf betalen consistently across your webshop. Display the payment badge alongside the other available payment methods in the checkout, so customers can easily identify the payment option. The badge can also be used at relevant touchpoints throughout the customer journey, such as product pages, landing pages and the footer. Implementation tips For optimal implementation, we recommend referencing the provided assets directly via the Billink CDN. Preferably use SVG for web implementation. Use the official CDN links to ensure the latest assets are used. Do not modify the provided files. Do not create custom versions or exports of the assets. Always maintain the original proportions and quality. Achteraf betalen Toolkit Visit the Achteraf betalen Toolkit for examples. • [Payment badges](https://developers.billink.nl/achteraf-betalen/payment-badges.md): The payment badges are designed for implementation in the checkout, alongside the other available payment methods. The badges are available in SVG and PNG-formats. For web implementation, we recommend using SVG for optimal scalability and sharp rendering across different screen sizes and resolutions. Preferred badge – default The payment badge with a black background is the default and preferred variant. Always use the standard version whenever possible to ensure a consistent and recognisable implementation. A wide variant is available for layouts where the standard badge does not fit optimally due to sizing or space constraints. Only use the wide variant when it provides a better fit within the available layout. Standard SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/SVG/achteraf-betalen-badge-default.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/PNG/achteraf-betalen-badge-default.png Wide SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/SVG/achteraf-betalen-badge-default-wide.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/PNG/achteraf-betalen-badge-default-wide.png Alternative badge – dark mode white For dark interfaces, an alternative badge with a solid white background is available. Use this variant when the default badge does not provide sufficient contrast against the background. Standard SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/SVG/achteraf-betalen-badge-white.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/PNG/achteraf-betalen-badge-white.png Wide SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/SVG/achteraf-betalen-badge-white-wide.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/PNG/achteraf-betalen-badge-white-wide.png Alternative badge – dark mode transparent A transparent variant is also available for dark interfaces. This version uses white outlines to ensure visibility against dark backgrounds. Only use this variant on backgrounds that provide sufficient contrast. Standard SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/SVG/achteraf-betalen-badge-transparent.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/PNG/achteraf-betalen-badge-transparent.png Wide SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/SVG/achteraf-betalen-badge-transparent-wide.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/badge/PNG/achteraf-betalen-badge-transparent-wide.png Light & dark mode In light mode, use the default badge with the black background. In dark mode, use one of the provided dark mode variants. Select the variant that provides sufficient contrast against the interface background. Only use the officially provided variants. Do not create custom light or dark mode versions. Dimensions & proportions Always scale the payment badge proportionally and maintain its original aspect ratio. Do not stretch, crop, rotate or alter the proportions of the badge. Colour usage The colours and visual appearance of the payment badges are fixed and must not be modified. Always use one of the officially provided assets. Do not: Change the background, text, outline or brand colours. Adapt the badge to match your own brand identity. Add gradients, effects or transparency. Change the opacity. Remove or modify individual elements. Distort, rotate or crop the badge. Create custom colour variants. • [Logo lockups](https://developers.billink.nl/achteraf-betalen/logo-lockups.md): Logo lockups are intended for brand and content applications, such as FAQ pages, landing pages and informational content. For checkout implementation, always use the payment badges. Available in SVG, AI, EPS and PNG. For web use, SVG is recommended. Preferred – default SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/SVG/achteraf-betalen-default.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/PNG/achteraf-betalen-default.png AI ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/AI/achteraf-betalen-default.ai EPS ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/EPS/achteraf-betalen-default.eps Alternative logo – dark mode white SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/SVG/achteraf-betalen-alternative-white.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/PNG/achteraf-betalen-alternative-white.png AI ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/AI/achteraf-betalen-alternative-white.ai EPS ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/EPS/achteraf-betalen-alternative-white.eps Alternative logo – dark mode transparent SVG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/SVG/achteraf-betalen-alternative-transparent.svg PNG ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/PNG/achteraf-betalen-alternative-transparent.png AI ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/AI/achteraf-betalen-alternative-transparent.ai EPS ​ — https://cdn.billink.nl/assets/achterafbetalen/v1/logo/EPS/achteraf-betalen-alternative-transparent.eps • [Colour codes & typography](https://developers.billink.nl/achteraf-betalen/color-codes-typography.md): Only use the provided colour specifications. Colours used within the Achteraf betalen assets must not be modified or replaced. Title Description Title Colour HEX RGB ​Dark Taupe​ #16120B R22 G18 B11 Dark Grey #373737 R55 G55 B55 Checkout typography For text displayed next to the payment badge, we recommend using the existing sans-serif font of the checkout or webshop. This ensures that the payment method is visually consistent with the other available payment methods. If a separate font needs to be specified, use a neutral and legible sans-serif font, such as: Arial Helvetica Roboto Open Sans Inter Do not use decorative, handwritten or unconventional fonts. • [Achteraf betalen in your checkout](https://developers.billink.nl/achteraf-betalen/in-your-checkout.md): The payment method name displayed to the customer must match the language of the webshop or checkout. Use only the following approved terminology: Dutch (NL) ​ - Achteraf betalen English (EN) ​ - Pay later German (DE) ​ - Später bezahlen Where localisation is supported, the displayed payment method name should dynamically follow the language setting of the webshop or checkout. • [Need a different format?](https://developers.billink.nl/achteraf-betalen/need-a-different-format.md): Do you need an alternative format which is not listed on this page or do you have a different question about the deployment of the Achteraf betalen assets? Send an e-mail to marketing@billink.nl . • [Contact information](https://developers.billink.nl/our-contacts.md): We look forward to a successful collaboration. If you need help with the integration, we are happy to assist you. You can reach us on weekdays at support@billink.nl or by phone at 010 - 414 14 73. If you still have questions, you can find answers here