Bead Developers
  • Introduction
  • Quick Start
  • Authentication
  • Payments
    • Create Payment
    • Payment Statuses
    • Payment Webhooks
    • Test Transactions - Crypto
    • Changelog
  • Entity Management
    • Onboarding
    • Merchant Management
    • Location Management
    • Terminal Management
      • Terminal Lifecycle (Concepts)
      • Create Terminal
      • Get Terminal
      • List Terminals
      • Update Terminal
      • Delete Terminal
      • Webhook Management
      • Changelog
  • Settlement
    • Batches
    • Settlement Details
  • Reporting
    • Payment History Concepts
      • Pagination and Sorting
    • Partner Payments
    • Merchant Payments
    • Terminal Payments
    • Changelog
  • Reference Guide
  • FAQs & Troubleshooting
    • Authentication FAQs
    • Payments FAQs
      • Resolving “403 Forbidden” When Creating Payments
    • Webhooks & Error Codes
    • Environment & Testing
      • How to Test Klarna Payments
      • How to Prepare for USDC Testing
Powered by GitBook
On this page
  • 1 – Prerequisites
  • 2 – Create the payment/crypto request
  • 3 – Launch the hosted payment page
  • 4 – Select Klarna & obtain the QR code
  • 5 – Complete Klarna sandbox checkout
  • 6 – Verify the result
  • 8 – Next steps
  1. FAQs & Troubleshooting
  2. Environment & Testing

How to Test Klarna Payments

This guide shows how to create a crypto payment request that launches Bead’s hosted checkout page, select Klarna within the UI, complete the sandbox checkout with Klarna’s test account, and verify the result.

1 – Prerequisites

Item
Notes

Klarna enabled for sandbox merchant

Contact developer support if Klarna is not yet activated.

Sandbox base URL

https://api.test.devs.beadpay.io

Webhook endpoint

Publicly reachable and registered in the Bead dashboard.


2 – Create the payment/crypto request

Send a POST /payments/crypto to load the hosted payment page.

POST /payments/crypto
Host: api.test.devs.beadpay.io
Authorization: Bearer YOUR_ACCESS_TOKEN
Content-Type: application/json

{
  "terminalId": "TERM-123",
  "merchantId": "MERCH-456",
  "requestedAmount": 35.00,
  "reference": "ORDER-0001",
  "redirectUrl": "https://merchant.example.com/return"
}

Example response

{
  "trackingId": "c10b29e3c...",
  "paymentUrls": [
    {
      "type": "web",
      "url": "https://checkout.test.beadpay.io/hosted-page/..."
    }
  ]
}

Use paymentUrls[0].url to launch the hosted checkout.

3 – Launch the hosted payment page

Option
Details

Redirect

Redirect the shopper’s browser to the hosted-page URL.

Embed

Load the URL in an iframe inside your site.

The shopper now sees Bead’s payment UI.

4 – Select Klarna & obtain the QR code

  1. In the Bead UI the shopper selects “Klarna” as the payment method.

  2. Bead displays a Klarna QR code linked to Klarna’s sandbox checkout.

How the tester can open checkout

Scan the QR code with a phone camera (opens Klarna in the default browser).

Click / tap the QR code (copies the Klarna checkout URL for pasting into any browser).

5 – Complete Klarna sandbox checkout

Field
Test value

Phone number

716-220-4669

PIN (if prompted)

123456

Follow Klarna’s prompts until the shopper is returned to your redirectUrl.

6 – Verify the result

  1. Webhook – A POST arrives at your webhook endpoint with "paymentStatus": "completed".

  2. API check (optional) –

    GET /payments/{trackingId}

    Response should show "status": "completed" and a non-zero settlementAmount.

8 – Next steps

  • Test higher amounts, cancellations, and expiry scenarios.

  • Move to production by switching to https://api.devs.beadpay.io and using live Klarna credentials.

PreviousEnvironment & TestingNextHow to Prepare for USDC Testing

Last updated 8 days ago