Purchase Orders

Purchase Order Template

Procurement-oriented purchase order with vertical title rail, vendor and ship-to areas, and approval summary.

purchase-orderprocurementvendorline-itemsapproval

Template JSON

rev_20260529_v2_purchase_order
{
  "schema": {
    "fields": [
      {
        "key": "issuer_name",
        "type": "string",
        "required": true,
        "label": "Issuer name",
        "default_value": "gPdf Operations"
      },
      {
        "key": "issuer_line",
        "type": "string",
        "required": true,
        "label": "Issuer address",
        "default_value": "210 Market Street, San Francisco, CA"
      },
      {
        "key": "recipient_name",
        "type": "string",
        "required": true,
        "label": "Recipient name",
        "default_value": "Northstar Labs"
      },
      {
        "key": "recipient_line",
        "type": "string",
        "required": true,
        "label": "Recipient address",
        "default_value": "88 Harbor Way, Oakland, CA"
      },
      {
        "key": "document_number",
        "type": "string",
        "required": true,
        "label": "Document number",
        "default_value": "DOC-2026-0529"
      },
      {
        "key": "document_date",
        "type": "string",
        "required": true,
        "label": "Document date",
        "default_value": "2026-05-29"
      },
      {
        "key": "due_date",
        "type": "string",
        "required": false,
        "label": "Due date",
        "default_value": "2026-06-12"
      },
      {
        "key": "status",
        "type": "string",
        "required": true,
        "label": "Status",
        "default_value": "Ready"
      },
      {
        "key": "subtotal",
        "type": "string",
        "required": true,
        "label": "Subtotal",
        "default_value": "$1,240.00"
      },
      {
        "key": "tax",
        "type": "string",
        "required": true,
        "label": "Tax",
        "default_value": "$108.50"
      },
      {
        "key": "total",
        "type": "string",
        "required": true,
        "label": "Total",
        "default_value": "$1,348.50"
      },
      {
        "key": "notes",
        "type": "string",
        "required": true,
        "label": "Notes",
        "default_value": "Generated from a gPdf source JSON template."
      },
      {
        "key": "qr_payload",
        "type": "string",
        "required": true,
        "label": "QR payload",
        "default_value": "https://gpdf.com/templates"
      },
      {
        "key": "items",
        "type": "array",
        "required": true,
        "label": "Line items",
        "items": [
          {
            "key": "description",
            "type": "string",
            "required": true,
            "label": "Description",
            "default_value": "Professional API usage"
          },
          {
            "key": "qty",
            "type": "number",
            "required": true,
            "label": "Quantity",
            "default_value": 1
          },
          {
            "key": "unit_price",
            "type": "string",
            "required": true,
            "label": "Unit price",
            "default_value": "$120.00"
          },
          {
            "key": "amount",
            "type": "string",
            "required": true,
            "label": "Amount",
            "default_value": "$120.00"
          }
        ]
      }
    ]
  },
  "layout": {
    "pages": [
      {
        "width": 210,
        "height": 297,
        "elements": [
          {
            "type": "rect",
            "x": 0,
            "y": 0,
            "width": 210,
            "height": 297,
            "z_index": 0,
            "fill": {
              "color": "#F9FAFB",
              "opacity": 1
            }
          },
          {
            "type": "rect",
            "x": 14,
            "y": 14,
            "width": 182,
            "height": 269,
            "z_index": 0,
            "fill": {
              "color": "#FFFFFF",
              "opacity": 1
            },
            "stroke": {
              "color": "#D1D5DB",
              "width": 0.3
            }
          },
          {
            "type": "rect",
            "x": 14,
            "y": 14,
            "width": 38,
            "height": 269,
            "z_index": 0,
            "fill": {
              "color": "#0F766E",
              "opacity": 1
            }
          },
          {
            "type": "text",
            "x": 22,
            "y": 32,
            "frame": {
              "width": 20
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "PURCHASE"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "text",
                      "text": "ORDER"
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18,
                "align": "center"
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 11,
                "color": "#FFFFFF",
                "font_weight": "bold"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 62,
            "y": 24,
            "frame": {
              "width": 82
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "issuer_name",
                      "style": {
                        "font_weight": "bold"
                      }
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "issuer_line"
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 7,
                "color": "#374151"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 142,
            "y": 24,
            "frame": {
              "width": 42
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "document_number",
                      "style": {
                        "font_weight": "bold"
                      }
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "document_date"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "status"
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18,
                "align": "right"
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 7,
                "color": "#374151"
              }
            },
            "z_index": 0
          },
          {
            "type": "line",
            "x1": 62,
            "y1": 55,
            "x2": 184,
            "y2": 55,
            "stroke": {
              "color": "#D1D5DB",
              "width": 0.25
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 62,
            "y": 68,
            "frame": {
              "width": 54
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Vendor",
                      "style": {
                        "font_weight": "bold"
                      }
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "recipient_name"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "recipient_line"
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 7,
                "color": "#374151"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 126,
            "y": 68,
            "frame": {
              "width": 54
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Ship to",
                      "style": {
                        "font_weight": "bold"
                      }
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "issuer_name"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "issuer_line"
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 7,
                "color": "#374151"
              }
            },
            "z_index": 0
          },
          {
            "type": "table",
            "x": 62,
            "y": 112,
            "width": 128,
            "columns": [
              {
                "key": "description",
                "header": "Description",
                "width": {
                  "mode": "fixed",
                  "value": 50
                }
              },
              {
                "key": "qty",
                "header": "Qty",
                "width": {
                  "mode": "fixed",
                  "value": 16
                },
                "cell": {
                  "text": {
                    "text_align": "right"
                  }
                },
                "header_cell": {
                  "text": {
                    "text_align": "right"
                  }
                }
              },
              {
                "key": "unit_price",
                "header": "Unit",
                "width": {
                  "mode": "fixed",
                  "value": 28
                },
                "cell": {
                  "text": {
                    "text_align": "right"
                  }
                },
                "header_cell": {
                  "text": {
                    "text_align": "right"
                  }
                }
              },
              {
                "key": "amount",
                "header": "Amount",
                "width": {
                  "mode": "fixed",
                  "value": 34
                },
                "cell": {
                  "text": {
                    "text_align": "right"
                  }
                },
                "header_cell": {
                  "text": {
                    "text_align": "right"
                  }
                }
              }
            ],
            "rows": "{{#each items}}",
            "header": {
              "show": true,
              "repeat_on_page_break": true,
              "cell": {
                "fill": {
                  "color": "#0F766E"
                },
                "text": {
                  "color": "#FFFFFF",
                  "font_size": 6.8,
                  "font_weight": "bold"
                }
              }
            },
            "cell": {
              "padding": {
                "x": 1.4,
                "y": 2
              },
              "text": {
                "color": "#1F2937",
                "font_size": 6.3
              }
            },
            "body": {
              "alternate_fill": {
                "color": "#F8FAFC"
              }
            },
            "grid": {
              "top": {
                "color": "#CBD5E1",
                "width": 0.2
              },
              "bottom": {
                "color": "#CBD5E1",
                "width": 0.2
              },
              "horizontal": {
                "color": "#E5E7EB",
                "width": 0.18
              },
              "left": {
                "color": "#E5E7EB",
                "width": 0.18
              },
              "right": {
                "color": "#E5E7EB",
                "width": 0.18
              }
            },
            "z_index": 0
          },
          {
            "type": "rect",
            "x": 62,
            "y": 225,
            "width": 58,
            "height": 28,
            "z_index": 0,
            "fill": {
              "color": "#ECFDF5",
              "opacity": 1
            },
            "stroke": {
              "color": "#99F6E4",
              "width": 0.25
            }
          },
          {
            "type": "rect",
            "x": 126,
            "y": 225,
            "width": 58,
            "height": 28,
            "z_index": 0,
            "fill": {
              "color": "#F8FAFC",
              "opacity": 1
            },
            "stroke": {
              "color": "#CBD5E1",
              "width": 0.25
            }
          },
          {
            "type": "text",
            "x": 66,
            "y": 231,
            "frame": {
              "width": 48
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Approval"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "status",
                      "style": {
                        "font_weight": "bold"
                      }
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 7,
                "color": "#0F766E"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 130,
            "y": 231,
            "frame": {
              "width": 48
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Order total"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "total",
                      "style": {
                        "font_weight": "bold"
                      }
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 7,
                "color": "#111827"
              }
            },
            "z_index": 0
          },
          {
            "type": "barcode",
            "format": "qrcode",
            "content": "{{qr_payload}}",
            "x": 24,
            "y": 236,
            "width": 18,
            "height": 18,
            "barcode_text": {
              "enabled": false,
              "position": "bottom"
            },
            "z_index": 0
          }
        ]
      }
    ]
  }
}
Sample data
{
  "issuer_name": "gPdf Operations",
  "issuer_line": "210 Market Street, San Francisco, CA 94105",
  "recipient_name": "Northstar Labs",
  "recipient_line": "88 Harbor Way, Oakland, CA 94607",
  "document_number": "PO-2026-5521",
  "document_date": "2026-05-29",
  "due_date": "2026-06-12",
  "status": "Approved",
  "subtotal": "$1,240.00",
  "tax": "$108.50",
  "total": "$1,348.50",
  "notes": "Structured PDF template with dynamic fields, production sample data, and default gPdf metadata.",
  "qr_payload": "https://gpdf.com/templates/purchase-order-template",
  "items": [
    {
      "description": "Template render pages",
      "qty": 2400,
      "unit_price": "$0.018",
      "amount": "$43.20"
    },
    {
      "description": "Hosted PDF workflow support",
      "qty": 1,
      "unit_price": "$120.00",
      "amount": "$120.00"
    },
    {
      "description": "Batch validation window",
      "qty": 6,
      "unit_price": "$18.00",
      "amount": "$108.00"
    },
    {
      "description": "Archive delivery package",
      "qty": 1,
      "unit_price": "$95.00",
      "amount": "$95.00"
    }
  ]
}

Rendered PDF

PDF