---
title: "Create QR Code"
method: POST
path: "/api/v2/meezaPayment/image/base64"
---

# Create QR Code

`POST /api/v2/meezaPayment/image/base64`

## Request body

- object
  - `merchantPublicKey` string, required — The unique identifier for the session given added by the merchant. Must be a valid UUID.
  - `sessionId` string, required — A session ID, is a unique identifier that a server generates as part of the create session API call and assigns to a merchant transaction for the duration of the session (15 min).
  - `customerEmail` string — Email of customer. Must be a valid email.
  - `merchantReferenceId` string — The unique identifier for the session given added by the merchant. Must be a valid UUID.
  - `BillingAddressCountryCode` string — Country Code for billing address. Must be valid ISO-3-Alpha code
  - `BillingAddressCity` string — Name of city in billing address
  - `BillingAddressStreetAndNumber` string — Name of street in billing address
  - `BillingAddressPostalCode` string — Postal Code in billing address
  - `ShippingAddressCountryCode` string — Country Code for shipping address. Must be valid ISO-3-Alpha code
  - `ShippingAddressCity` string — Name of city in shipping address
  - `ShippingAddressStreetAndNumber` string — Name of street in shipping address
  - `ShippingAddressPostalCode` string — Postal code in shipping address
  - `PlatformIntegrationType` string — Type of integration
  - `PlatformName` string
  - `PlatformVersion` string
  - `PlatformPluginVersion` string
  - `PlatformPartnerId` string
  - `StatementDescriptorName` string — An object that contains the statement descriptor information for the payment. This information will appear on the customer's bank statement. This contains the customer name.
  - `StatementDescriptorPhone` string — An object that contains the statement descriptor information for the payment. This information will appear on the customer's bank statement. This contains the phone number.
  - `language` 'en' | 'ar' — Language for Hosted Payment Page
  - `custom` string — This object allows you to attach any custom parameter to the payment. The value that you provide in the metadata.custom parameter will be returned to you after the payment in the callback.
  - `callbackUrl` string — The URL where the payment gateway should send the callback after the transaction is completed. It must have a valid SSL certificate and start with 'https://'
  - `customerReferenceId` string — Identification Number, assigned to the Customer for the purposes of identifying the Customer when the Customer accesses the payment service.
  - `createCustomer` boolean — If this is set to true, a customer account is created on Geidea platform. This must be set to false, when customer ID is not null. When this is set to true, customerReferenceId must not be passed.
  - `orderId` string — This is a unique identifier for this order to discern it from others order you created. If orderId is not sent with the request, an orderId is created by the server and returned in the response. The orderid can be used to refer to this order in subsequent transactions and in retrieving meta data about the order. The orderId must always be unique for every order created under your merchant profile. This must be a valid GUID. You can pass `null` if you do not wish to pass any value.
  - `deviceIdentification` object — Device on which transaction is initiated
    - `language` 'en' | 'ar' — The language to be used on the checkout page.
    - `userAgent` string — A computer program such as a browser in a Web context.
  - `customerPhoneNumber` string — Customer's phone number eg: "511111111". If phoneCountryCode is passed, phoneNumber must be passed. One of email or phoneNumber must be present.
  - `customerPhoneCountryCode` string — Country code of customer's phone number eg: "+971". If phoneNumber is passed, phoneCountryCode must be passed.
  - `source` 'HPP' | 'Internet' — Source of capturing the transaction, like, HPP

## Response `200`

200

- object
  - `image` string
  - `type` string
  - `message` string
  - `paymentIntentId` string
  - `responseMessage` string
  - `detailedResponseMessage` string
  - `language` string
  - `responseCode` string
  - `detailedResponseCode` string

## Other responses

- `400` — 400

---

[API](https://skmtc.dev/geidea/apis/checkout-v2.md) · [All operations](https://skmtc.dev/geidea/apis/checkout-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/geidea/checkout-v2/revisions/873e534eeb01/schema)
