For the complete documentation index, see llms.txt. This page is also available as Markdown.

Generate QR Code

RKFL system provides API to generate transaction and in response provides transaction id and qrString which can be useful for merchant.

API endpoint: POST /purchase/qr/generate

// Headers
Authorization: "Bearer" + merchant access token
x-transaction-source: qr-code-api
// Here is the sample of the request payload. 
POST /purchase/qr/generate
{
    "amount":"1.00",
    "currency":"USD",
    "cryptoCurrency":"ETH",
    "orderId":"ABCD123",
    "cart":[
        {
            "id":"1",                   //Required
            "name":"Bag",          //Required
            "price":1,                  //Required
            "quantity":1,               //Required
            //only add the below, if the product is a subscription item.
            "isSubscription": "",            //Optional
            "frequency": "",                 //Optional
            "subscriptionPeriod":""          //Optional
            "merchantSubscriptionId": ""     //Optional
        }
    ],
    "customerInfo": {
        name: required (string)
        email: required (string)
        phone: optional (string)
        address: optional (string)
    },
    //"customParameter" is optional field
    "customParameter": {
        "returnMethod": "POST/GET",
        "params": [
          {
            "name": "var",
            "value": "1302*6649c8793fa687fe708618ae52344e26*1685*2*1*128*76"
          },
          {
              "name": "custom",
              "value": "1302|6649c8793fa687fe708618ae52344e26|2|1|128|2|1685"
          }
        ]
    }
}

// isSubscription: true/false 
// subscriptionPeriod: [number][period] - for example 1y, 2m, 3w
// frequency: weekly/monthly/quarterly/half-yearly/yearly
// merchantSubscriptionId: Subscription id for merchant system. This key will use to communicate the recurring payment status.

Payment Status

  • 10 = QR code/receiving wallet address generated for shopper

  • 0 = pending

  • 1/2/3/4 = successful

  • -1 = failed

  • 101 = partial

  • 19 = timedout

Last updated

Was this helpful?