Skip to main content

Introduction

The objective of this guide is to walk you through the process of generating a simple PDF invoice you can send to your customers. This is valid for tax regimes that don’t require any electronic reporting or invoicing, and serves as a useful example from which to create your own workflows. Once completed, the workflow will work with any GOBL invoice produced for any country in the world.

Prerequisites

You’ll need the following data to issue basic PDF invoices:
  • Supplier details: fiscal details of the issuer.
  • Customer details: fiscal details of who is receiving for B2B invoices.
  • Items: list of products or services being sold, including quantities and prices.
  • Taxes & Rates: knowing how these apply to each item.
  • Series: a series is a counter with number formatting details to be able to generate a code.

Setup

Issuing PDF invoices with Invopop requires very little preparation. We assume that you already have access to the Invopop Console and know how to create a workflow.

Running

Use the following example GOBL Invoices inside the Invopop Console or via the API to create new silo entries. Once a silo entry has been stored, you can create a new job to run the “PDF Invoice” workflow you just created.
The following example demonstrates a simple invoice for a VAT registered supplier in the United Kingdom.
{
  "$schema": "https://gobl.org/draft-0/bill/invoice",
  "currency": "GBP",
  "series": "TEST",
  "supplier": {
    "tax_id": {
      "country": "GB",
      "code": "844281425"
    },
    "name": "BrightTech Solutions Ltd.",
    "emails": [
      {
        "addr": "billing@brighttech.co.uk"
      }
    ],
    "addresses": [
      {
        "num": "123",
        "street": "Innovation Park",
        "locality": "Cambridge",
        "code": "CB1 2AB",
        "country": "GB"
      }
    ]
  },
  "customer": {
    "tax_id": {
      "country": "GB",
      "code": "350983637"
    },
    "name": "GreenWave Energy Ltd.",
    "emails": [
      {
        "addr": "info@greenwave.co.uk"
      }
    ],
    "addresses": [
      {
        "num": "45",
        "street": "Riverside Business Park",
        "locality": "London",
        "code": "SW1A 1AA",
        "country": "GB"
      }
    ]
  },
  "lines": [
    {
      "quantity": 50,
      "item": {
        "name": "Thermal efficient mugs",
        "price": "16.00"
      },
      "taxes": [
        {
          "cat": "VAT",
          "rate": "standard"
        }
      ]
    }
  ]
}
The following example demonstrates a simple invoice for a VAT registered supplier in the United States.
{
  "$schema": "https://gobl.org/draft-0/bill/invoice",
  "series": "SAMPLE",
  "currency": "USD",
  "tax": {
    "prices_include": "ST"
  },
  "supplier": {
    "name": "Provide One Inc.",
    "tax_id": {
      "country": "US"
    },
    "addresses": [
      {
        "num": "16",
        "street": "Jessie Street",
        "locality": "San Francisco",
        "region": "CA",
        "code": "94105",
        "country": "US"
      }
    ],
    "emails": [
      {
        "addr": "billing@provideone.com"
      }
    ]
  },
  "customer": {
    "name": "Sample Consumer",
    "emails": [
      {
        "addr": "email@sample.com"
      }
    ]
  },
  "lines": [
    {
      "i": 1,
      "quantity": "20",
      "item": {
        "name": "Development services",
        "price": "90.00",
        "unit": "h"
      },
      "discounts": [
        {
          "percent": "10%",
          "reason": "Special discount"
        }
      ],
      "taxes": [
        {
          "cat": "ST",
          "percent": "8.5%"
        }
      ]
    }
  ]
}

FAQ

Generate PDF configuration
You can view all available customizations for the PDF in the configuration of the Generate PDF step.To add a logo to the invoice, you can either upload it directly in the Generate PDF step or include a URL for the logo in the invoice payload by adding the “logos” field to the supplier.