Skip to main content

Get Started with Your Own Webshop or System

H
Written by Hayko

Get Started with Your Own Webshop or System

This guide is for merchants who sell on a webshop other than Shopify (for example WooCommerce, Magento, Lightspeed or a custom shop) or who run their own order system, and who want QrX Payment on Delivery and shipping labels. Your system sends orders to QrX through the QrX Public API, or you import them from a spreadsheet. The customer checks out without paying, scans the QrX QR code on the parcel at the door and pays through your own payment provider.

In PortalX this is the setup path I sell on another webshop or my own system in the Get Started guide (Settings > Business > Get started).

1. Set Up Your Business

  1. Complete your company details. QrX keeps the company name, address and VAT or Chamber of Commerce number from your signup. If something is missing or changed, click Ask QrX in the step and QrX completes it for you. The step ticks when all details are known.

  2. Add your warehouse as sender address in Settings > Operations > Addresses. Give it a short code: your system uses that code in API calls.

  3. Connect your payment provider (Stripe, Mollie or MultiSafePay) in the channel's Payments tab.

2. Set Up Shipping

  1. Connect a carrier in Settings > Operations > Shipping Providers and add method profiles. Each method profile has a code for API calls.

  2. Connect your label printer in Settings > Preferences > Printing (PrintNode), or let your own system print the labels QrX returns.

  3. Create a shipping rule in Settings > Operations > Shipping Rules. For API orders you can choose to apply rules.

3. Connect Your System With the API

  1. Copy your channel's API key. Settings > Business > Merchant Channels, open the channel, Settings tab, Regenerate API Key. QrX stores the key hashed, so it is shown in full only once: store it on your server, never in a browser or app. Click Mark as done in the step when you have it.

  2. Get an access token. POST /api/v1/auth/token with the header QrX-MerchantChannel-API-Key. The token is valid for 3600 seconds.

  3. Create your first test transaction. POST /api/v1/transactions with the amount, order details and, if you want a label in the same call, a parcel block with your method and sender codes. Use test mode first. HTTP 201 means QrX accepted the order, not that it is paid.

  4. Subscribe to webhooks. Settings > Advanced > Webhooks, or POST /api/v1/webhooks. At least transaction paid, cancelled and shipment shipped. Verify the X-QrX-Signature header on every delivery.

  5. Receive your first webhook. Use Send Test in the webhook editor and check the Delivery Logs.

The full reference with code samples is at qrx.eu/api. See also "Developer Quickstart: QrX Public API and Webhooks".

Create Your Orders Without a Developer

This path also shows the steps to create orders in PortalX, useful for testing or when you have no developer yet:

  • Create a transaction by hand: Transactions > Create Transaction.

  • Import orders from a spreadsheet: on Transactions, use the Import menu with a CSV or Excel export from your shop. Shipping rules run on imported orders.

  • Add your products to Products > Catalog so order lines fill in faster (optional).

4. Keep Your Customers Informed

  • Brand your Track and Trace page: Settings > Operations > Track & Trace.

  • Customise your customer messages: Settings > Operations > Templates.

  • Turn on SMS delivery updates (optional, paid, off by default): Merchant Channels, open the channel, Settings tab, SMS.

  • Open your Message Centre: Settings > Operations > Message Centre.

5. Get Paid at the Door

  1. Make a test payment at the door by scanning the QR code on a test label. It costs nothing.

  2. Optionally require a PIN on the payment page.

  3. Ask QrX to go live through Chat with QrX.

  4. Your first live payment at the door ticks the last step.

Tips for a Clean Integration

  • Send your own shop order id so you can find orders back in both systems.

  • Treat webhooks as the source of truth for paid and cancelled; payment can complete long after your create call returned.

  • Use the reference endpoints (/api/v1/reference/carriers, shipping-methods, senders) instead of hard-coded ids.

  • Keep one merchant channel per webshop: each channel has its own API key, payment provider and branding.

When to Contact Our Support Team

Contact QrX support when token requests keep failing with a valid key, when webhooks are disabled after repeated failures and you cannot find the cause, or when you are ready to go live.

Did this answer your question?