← Back to Knowledge Hub

Carbon Drop 1: Faster Payments, New Methods, Smarter Receipts

We're starting October strong. Today, we're releasing Single API for Payments → order and payment in one call, reducing latency from 700ms to 100ms. Alternative Payment Methods → Swish E-com, Swish M-com, and B2B Invoices. Self-hosted Digital Receipts → host, style, and serve receipts under your own control

October 3, 2025 Surfboard Payments
carbon

Single API for Payments

The new createOrder API combines order creation and payment initiation. One call, one callback, faster checkout.

Before: Create order → Create payment → Check status

Now: One call with our new initiatePaymentOptions object.

{
  "orderLines": [
    { "id": "TERM123NAL", "name": "Adidas shoes", "quantity": 1 }
  ],
  "controlFunctions": {
    "orderLineLevelCalculation": false,
    "initiatePaymentOptions": {
      "paymentMethod": "CARD",
      "amount": "",
      "currency": "SEK"
    }
  },
  "callBackUrl": "https://merchant.com/callback",
  "throwErrorIfTerminalInactiveFor": 500000
}
→ Impact: Faster payments mean happier customers at checkout, and partners who feel the payments are finally keeping up with them.

Alternative Payment Methods

Payments aren’t just about cards. Merchants expect local methods, and customers demand them.

Carbon now supports:

  • Klarna, Vipps, MobilePay, Dankort, BankAxept
  • Swish E-com and Swish M-com
  • Pay by Bank (ACC2ACC, as we call it internally)
  • B2B Invoice

That’s on top of traditional card flows.

Example: Invoice distribution inside createOrder

{
  "initiatePaymentOptions": {
    "paymentMethod": "B2BINV",
    "paymentMethodParams": {
      "invoice": {
        "invoiceDistribution": "NONE | EMAIL | EINVOICE | PRINT",
        "contractReference": "",
        "debtCollectionEnabled": true,
        "dueDate": "30d",
        "reminder": true,
        "invoicePaymentMethods": ["CARD", "ACC2ACC", "KLARNA" ...]
      }
    }
  }
}

Or selecting the Swish method. ECOM uses the enter your phone number flow while MCOM creates a scannable Swish QR code.

{
  "initiatePaymentOptions": {
    "paymentMethod": "NSWISH",
    "paymentMethodParams": {
      "swishMode": "MCOM"
    }
  }
}

Self-hosted Digital Receipts

This one sounds small, but it’s big. Digital receipts can now be hosted on your own domain while displayed on our terminal post-purchase.

Create the experience your way

❣️ Attach smart logic like coupons, tickets, or loyalty triggers

🤝 Keep the customer connection inside your ecosystem

{
  "receipt": {
    "autoPrintReceipt": true,
    "receiptRedirectURL": "https://merchant.com/receipt/ORD-1001",
    "autoSendReceiptIfEmailAvailable": true,
    "promotionsToDisplay": ["PROMO-1891"]
  }
}

Additions: In addition to hosting your own under receiptRedirectURL you can now auto send the receipts to the receiver if we can match the payment with an existing email address, and show promotions. More on that later this month…

New Order API Features

Carbon brings breaking changes inside createOrder. Let’s dig out some awesome features here.

Sequential Split Payments serialSplitPaymentsMode

This is new and powerful: one order can now trigger multiple payments in sequence.

🎯 Define the split in the order call

🔂 The terminal keeps on accepting payments continuously until all are completed

👉 Webhooks fire per step: PARTIAL_PAYMENT_COMPLETED after each part and PAYMENT_COMPLETED after the last one

Example: Split SEK 600 into three sequential payments. Restaurants, shared purchases, and events can now handle multiple payers on one order without hacks.

{
  "serialSplitPaymentsMode": [100, 200, 300]
}

No more order type

Purchases and returns in the same order. Finally. Controlled by the line item quantity. Positive for purchase, negative for returns.

{
  "orderLines": [
    { "id": "TERM123NAL", "name": "Adidas shoes", "quantity": 1 },
    { "id": "TERM123NAL", "name": "Nike shoes", "quantity": -1 }
  ]
}

Your own callback callBackUrl

No need for predefined webhook setup, just provide a callback url.

{
  "callBackUrl": "https://merchant.com/payment/callback"
}

New round-up feature tipsMode

Now possible to choose between round-ups or normal tips.

{
  "tipsMode": "STANDARD | ROUNDUP | NONE"
}

You can now also bring the lockToPaymentMethod from online to in-store terminals. All your merchants’ alternative payment methods will be available on every terminal; with this, you can lock them down for certain use-cases.

{
  "lockToPaymentMethods": ["CARD"]
}

Our 10 Carbon releases: Carbon Drop 1: Faster payments, Carbon Drop 2: Customers, Carbon Drop 3: Real-time events and webhooks, Carbon Drop 4: SFTP Reports and Notifications, Carbon Drop 5: Account Creation APIs, Carbon Drop 6: New terminals, Carbon Drop 7: Multi-Cloud for In-Person Payments, Carbon Drop 8: Billing, Onboarding, and Better Charges, Carbon Drop 9: Subscription orders, Carbon Drop 10: Offline payments.

Get in touch to learn more

Get in touch with us to learn more

By submitting this form, you consent to allow Surfboard Payments to store and process the personal information above to provide you with the content requested.