Statements

Usage Statement Template

Dashboard-style usage statement with metric cards, period information, usage rows, and summary bar.

usage-statementsubscriptionbillingmetricsstatement

Template JSON

rev_20260529_v2_usage_statement
{
  "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": "#FFFFFF",
              "opacity": 1
            }
          },
          {
            "type": "rect",
            "x": 0,
            "y": 0,
            "width": 210,
            "height": 56,
            "z_index": 0,
            "fill": {
              "color": "#0F172A",
              "opacity": 1
            }
          },
          {
            "type": "text",
            "x": 18,
            "y": 18,
            "frame": {
              "width": 92
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Usage Statement"
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 22,
                "color": "#FFFFFF",
                "font_weight": "bold"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 132,
            "y": 18,
            "frame": {
              "width": 56
            },
            "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": "#CBD5E1"
              }
            },
            "z_index": 0
          },
          {
            "type": "rect",
            "x": 18,
            "y": 72,
            "width": 52,
            "height": 34,
            "z_index": 0,
            "fill": {
              "color": "#EFF6FF",
              "opacity": 1
            },
            "stroke": {
              "color": "#BFDBFE",
              "width": 0.25
            }
          },
          {
            "type": "rect",
            "x": 79,
            "y": 72,
            "width": 52,
            "height": 34,
            "z_index": 0,
            "fill": {
              "color": "#ECFDF5",
              "opacity": 1
            },
            "stroke": {
              "color": "#99F6E4",
              "width": 0.25
            }
          },
          {
            "type": "rect",
            "x": 140,
            "y": 72,
            "width": 52,
            "height": 34,
            "z_index": 0,
            "fill": {
              "color": "#FEF3C7",
              "opacity": 1
            },
            "stroke": {
              "color": "#FDE68A",
              "width": 0.25
            }
          },
          {
            "type": "text",
            "x": 24,
            "y": 80,
            "frame": {
              "width": 40
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Pages"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "text",
                      "text": "2,400",
                      "style": {
                        "font_weight": "bold"
                      }
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 8,
                "color": "#1E3A8A"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 85,
            "y": 80,
            "frame": {
              "width": 40
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Batches"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "text",
                      "text": "64",
                      "style": {
                        "font_weight": "bold"
                      }
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 8,
                "color": "#065F46"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 146,
            "y": 80,
            "frame": {
              "width": 40
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "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": 8,
                "color": "#92400E"
              }
            },
            "z_index": 0
          },
          {
            "type": "text",
            "x": 18,
            "y": 123,
            "frame": {
              "width": 88
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Account"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "recipient_name",
                      "style": {
                        "font_weight": "bold"
                      }
                    },
                    {
                      "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": 123,
            "frame": {
              "width": 60
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "text",
                      "text": "Period"
                    },
                    {
                      "type": "line_break"
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "document_date"
                    },
                    {
                      "type": "text",
                      "text": " to "
                    },
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "due_date"
                    }
                  ]
                }
              ]
            },
            "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": "table",
            "x": 18,
            "y": 156,
            "width": 164,
            "columns": [
              {
                "key": "description",
                "header": "Description",
                "width": {
                  "mode": "fixed",
                  "value": 86
                }
              },
              {
                "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": "#0F172A"
                },
                "text": {
                  "color": "#FFFFFF",
                  "font_size": 6.8,
                  "font_weight": "bold"
                }
              }
            },
            "cell": {
              "padding": {
                "x": 1.4,
                "y": 2
              },
              "text": {
                "color": "#1F2937",
                "font_size": 6.5
              }
            },
            "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": 18,
            "y": 236,
            "width": 92,
            "height": 5,
            "z_index": 0,
            "fill": {
              "color": "#E5E7EB",
              "opacity": 1
            }
          },
          {
            "type": "rect",
            "x": 18,
            "y": 236,
            "width": 68,
            "height": 5,
            "z_index": 0,
            "fill": {
              "color": "#2563EB",
              "opacity": 1
            }
          },
          {
            "type": "text",
            "x": 18,
            "y": 247,
            "frame": {
              "width": 120
            },
            "content": {
              "blocks": [
                {
                  "type": "paragraph",
                  "inlines": [
                    {
                      "type": "variable",
                      "scope": "binding",
                      "name": "notes"
                    }
                  ]
                }
              ]
            },
            "defaults": {
              "paragraph": {
                "line_height": 1.18
              },
              "run": {
                "font_family": "NotoSans-Regular",
                "font_mode": "prefer",
                "font_size": 6.4,
                "color": "#64748B"
              }
            },
            "z_index": 0
          },
          {
            "type": "barcode",
            "format": "qrcode",
            "content": "{{qr_payload}}",
            "x": 164,
            "y": 232,
            "width": 22,
            "height": 22,
            "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": "USG-2026-0529",
  "document_date": "2026-05-29",
  "due_date": "2026-06-12",
  "status": "Current",
  "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/usage-statement-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