Skip to content

Creating a Qplus Invoice

Returns a payment link and a QR code for payment via Qplus.

For scenario using this method, please see “Payment via Qplus“

Request

POST /payin/v1/sites/{siteId}/qplus/invoices

Path Parameters

Parameter Required Type Description
siteId Yes string Merchant site identifier

Headers

Header Required Type Description
Authorization Yes string API access key. Bearer [access-token]
Content-type Yes string Request content. application/json
Accept No string Response content. application/json

Body Parameters

Parameter Required Type Description
invoiceUid Yes string Unique identifier of the invoice in the Merchant’s information system. Unique means that it must differ from all invoices of the method within the same siteUid merchant site
amount Yes object Information about the amount of the operation
merchantRedirectUrl Yes string(1000) URL for the client redirect after payment
qplusPhoneNumber Yes string The phone number to which the client’s QPlus is registered. 11 digits starting with 79. Example: 79851234567
ttl No number The parameter determines the time during which the user can use the payment link. The time is specified in seconds. The minimum time is 180 seconds. The maximum time is 86400 seconds. The default time is 1800 seconds
comment No string(1000) Invoice comment
qrCodeImageParams No object QR code image parameters

QR Code Image Parameters

QR code image parameters are passed in the qrCodeImageParams object of the request body.

Parameter Required Type Description
size No number Image size in pixels. An integer in the range 200–1000. The default size is 300
format No string Image format. Accepted values: PNG, JPEG. The default format is PNG

Request Example

Creating a Qplus Invoice
POST /partner/payin/v1/sites/test-01/qplus/invoices HTTP/1.1
Accept: application/json
Authorization: Bearer 5c4b25xx93aa435d9cb8cd17480356f9
Content-type: application/json
Host: b2b-api.qiwi.com

{
  "invoiceUid" : "Test012",
  "amount" : {
    "value" : "6.00",
    "currency" : "RUB"
  },
  "merchantRedirectUrl": "https://example.com/redirectUrl",
  "qplusPhoneNumber": "79851234567",
  "ttl": 180,
  "comment": "Order payment",
  "qrCodeImageParams": {
    "size": 300,
    "format": "PNG"
  }
}

Response

See also HTTP error codes

Successful Response Parameters

Parameter Required Type Description
invoiceUid Yes string Qplus invoice creation request identifier
invoiceStatus Yes string Qplus invoice status
amount Yes object Operation amount info
paymentUrl Yes string URL of the payment link of the Qplus invoice
qrCode Yes string QR code in base64 format for the Qplus payment form
createdOn Yes string Date and time of creation of the Qplus invoice in ISO8601 format

Error Parameters

Parameter Required Type Description
serviceName Yes string Name of the service that produced the error
errorCode Yes string Error code
description Yes string Error description for the merchant
userMessage Yes string Error description for the customer
dateTime Yes string Error date and time
traceId Yes string Error Log unique ID

Response Examples

{
  "invoiceUid" : "Test012",
  "invoiceStatus": "CREATED",
  "amount": {
    "currency": "RUB",
    "value": "6.00"
  },
  "paymentUrl": "https://example.com/qplus/pay/testtest",
  "qrCode": "iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAA",
  "createdOn": "2026-02-03T15:09:47+03:00"
}
{
  "serviceName" : "payin-core",
  "errorCode" : "validation.error",
  "description" : "Validation error",
  "userMessage" : "Validation error",
  "dateTime" : "2022-03-05T11:49:59.166+03:00",
  "traceId" : "fd0e2a08c63ace83"
}
{
  "serviceName":"payin-core",
  "errorCode":"internal.error",
  "userMessage":"Internal error",
  "description":"Internal error",
  "traceId":"3fb3420ee1795dcf",
  "dateTime":"2020-02-12T21:28:01.813+03:00"
}