Google has a QR Code API that its free and easy to use, E.X:

Official Google Docs

https://chart.googleapis.com/chart?chs=150x150&cht=qr&chl=Hello%20world&choe=UTF-8

this url will return this image

qr code

The main url is https://chart.googleapis.com/chart?
it is followed by the size specification which is required
chs=150x150&
and the specification that is a QR code (which is also required)
cht=qr&

it is required for the QR code to have a kind of data to display E.X:
chl=data
chl=Hello%20world
chl=https://youtu.be/dQw4w9WgXcQ

The data to encode. Data can be digits, alphanumeric characters, binary bytes of data, or Kanji. You cannot mix data types within a QR code. The data must be UTF-8 URL-encoded.

Note that URLs have a 2K maximum length, so if you want to encode more than 2K bytes (minus the other URL characters), you will have to send your data using POST.

(optional)next option in the url is the encoding which can be:
choe=UTF-8
choe=Shift_JIS
choe=ISO-8859-1


(optional)The last option is error correction which can be:
L - [Default] Allows recovery of up to 7% data loss
M - Allows recovery of up to 15% data loss
Q - Allows recovery of up to 25% data loss
H - Allows recovery of up to 30% data loss