Solutions QR-code API manual

2. Payment flows

2. Payment flows

2.1 Swish C2B flow with QR code

The C2B flow with Swish QR code can be used by companies with the wish to facilitate the payment flow for their consumers and to make sure that the correct information, such as reference number, is included in the payment information. A company contacts Swish to get a QR code which they show their consumer to initiate a Swish-payment. The consumer scans the code using the QR-code function in the Swish app and the information is prefilled on the ”Pay-page” in the app. He/she approves the payment by pressing “Pay” and then signs the payment using Mobile BankID.

The QR code specification, see part 6 of the document, is relevant for companies willing to replace steps 1 and 2 by generating the Swish QR code themselves.

  1. The company backend calls the Swish QR code generator API (see the dedicated QR code generator API, separate document).
  2. The company backend receives a QR code.
  3. The QR code is displayed to the consumer.
  4. The consumer opens the Swish app and scans the QR code. The prefilled payment is displayed in the Swish app.
  5. The consumer presses the “Pay” button.
  6. A signing session is initiated with Mobile BankId.
  7. Swish answers the Swish app.
  8. The Swish app switches to the BankId app.
  9. The consumer signs in BankId app.
  10. The BankId app switches back to the Swish app.
  11. The Swish app contacts Swish to execute the payment.
  12. Swish checks the outcome of the signing with BankID. The money is then transferred, in real time, from the consumer’s account to the company’s account.
  13. The consumer see that the payment was performed successfully in the Swish app.

The consumer can view the payment in the events section “Händelser” as a sent payment in the Swish app.