Customize Invoicing
DocsCurrentLast updated: April 6th 2022, @ 4:06:12 pm
The Invoicing REST API supports search, refunds, templates, reminders, and more.
This page describes a few ways you can customize an invoice. Refer to the Invoicing API reference to see everything you can do with the Invoicing API.
You can also make test calls to the Invoicing API with the PayPal API Executor.
Create QR code
When a buyer uses a mobile device to scan the QR code, they're redirected to the PayPal mobile payment flow to view the invoice and pay online with PayPal or another payment type.
Eligibility
You can create and associate invoice QR codes for the following countries:
- France
- Italy
- Spain
- United Kingdom
- United States
1. Create codes
To generate a QR code, first create and send an invoice.
If you prefer to send a QR code instead of an invoice notification email when you create an invoice, set send_to_recipient
in the Send invoice request to false
. This parameter updates the invoice status to UNPAID
and doesn't send an email notification.
Copy the invoice ID returned when you create the invoice.
To create a QR code for your invoice, copy the following code and modify it.
Sample request
API endpoint used: Generate QR code
1curl -v -X POST https://api-m.sandbox.paypal.com/v2/invoicing/invoices/INVOICE-ID/generate-qr-code \2 -H 'Content-Type: application/json' \3 -H 'Authorization: Bearer ACCESS-TOKEN'
Modify code
After you copy the code in the sample request, modify the following:
- Change
ACCESS-TOKEN
to your access token. - Change
INVOICE-ID
to the invoice ID that was returned when you created the invoice.
Step result
A successful response results in:
- A return status code of HTTP
200 OK
. - A JSON response body that shows the QR code as an encoded Base64 image, such as:
1--2e4a1c93-9ec0-448b-8c6e-c2a691240f2f2 Content-Disposition: form-data; name="image"3 Content-Type: application/json \45 iVBORw0KGgoAAAANSUhEUgAAAJYAAACWAQAAAAAUekxPAAAByElEQVR42u2WsW30MAyFabhQ51tAgNdQp5XsBXy+BeyV1GkNAVrA7lQIYp4ucf4L/kZMEaSIoeorKPGRjzTxf1+mP/ZTLBCFQcUz6ckQWRGLnMIt9YX6M3ERstXER4oPlxcTBjELM9OiEO8bjNmPzPpLvDbGKR4UOsdfcmti0C9u5v28aNrEaqkWmzsX7q+1bGJhIT5dPAweoq87Ghk/fB4ATCZLi4zFHZ1CiKQHG08WMSRBM0KquDv9oX0rYzTLptAyXNSnfo0sTHbcXf/g0PlYhOzuIl40WGgQL+0bWTwsbybUuiV96dfIYKwKnsHGVcZ4rxKOT09ffdrKYEeaCNnToGq7SRgkD7NHPFpovO5oZHGjEXU7kZAPJGN59nRzz3i2LzIWJpNvrDumwaL+Isargpt1lzAYxkPG4GZC3SD8Vu0lYjV1ZLDZfE/0oX0r48NgFMFVsGbPQnaynr2GOdiNu4yhSfui4qryQp++bGRcx4nDREE2YZExJJHvKJqBhPHfbmxidd4XUxfFZONqZQz7DXN3JS5EN5Yy3mzdrpPRk5WyPGFHeZSuP1nGEKnzYcCOsjgiVvdbUXlm/E287rwW9ve/9ovYG2Y/Iq/A3o7lAAAAAElFTkSuQmCC6 --2e4a1c93-9ec0-448b-8c6e-c2a691240f2f--
2. Test QR code
To test your QR code, complete these steps:
- Use your preferred programming language or online tool to decode the Base64-encoded value to an image.
- Scan the QR code to open the invoice.
Add tips
To include a field that enables the customer to add a tip as a flat amount or percent of the total due, set the allow_tip parameter to true
.
Note: If the customer adds a tip, it shows up on the invoice and in the payment notification email.
Enable partial and minimum due payments
To enable the customer to make a partial payment, set the allow_partial_payment parameter to true
.
You can also set the minimum_amount_due
parameter to the minimum amount due value if you have partial payments set up.