Home

Visma eAccounting

Format: Visma eAccounting Invoice

{

  "bookedInvoiceIndicator": true,

  "cancelledInvoiceIndicator": null,

  "creditInvoiceIndicator": "VEE:IsCreditInvoice",

  "financialDimensions": [],

  "id": "VEE:Id",

  "invoiceId": "VEE:InvoiceNumber", // Invoice number. An identifier for this document, assigned by the sender.

  "issueDate": "VEE:InvoiceDate",

  "dueDate": "VEE:DueDate", // The date on which Invoice is due.

  "note": [
    {
      "text": null,
      "languageId": null
    }
  ],

  "buyerReference": "VEE:YourReference", // A reference provided by the buyer used for internal routing of the document.

  "orderReference": {
    "buyerOrderId": "VEE:BuyersOrderReference", // An identifier for this order reference, assigned by the buyer.
    "sellerOrderId": null // An identifier for this order reference, assigned by the seller.
  },

  "documentCurrencyCode": "VEE:CurrencyCode", // A code signifying the default currency for this document.

  "accountingCustomerParty": {

    "supplierAssignedAccountId": {
      "id": "VEE:CustomerId", // An identifier for the customer's account, assigned by the supplier.
      "schemeId": null // The identification of the identification scheme.
    },

    "party": {

      "partyIdentification": {
        "id": null,
        "schemeId": null
      },

      "partyName": { // A name for this party.
        "name": "VEE:InvoiceCustomerName", // The name of the party.
        "languageId": null // The identifier of the language used in the content component.
      },

      "postalAddress": {
        "buildingNumber": null,
        "streetName": "VEE:InvoiceAddress1",
        "additionalStreetName": "VEE:InvoiceAddress2",
        "cityName": "VEE:InvoiceCity",
        "postalZone": "VEE:InvoicePostalCode",
        "country": {
          "identificationCode": "VEE:InvoiceCountryCode",
          "name": null
        }
      },

      "partyLegalEntity": {
        "registrationName": "VEE:InvoiceCustomerName",
        "companyId": {
          "id": null,
          "schemeId": null
        }
      }

    }
  },

  "invoicePeriod": {
    "startDate": null,
    "endDate": null
  },

  "accountingSupplierParty": { // !!! dont implement this object

    "party": {

      "partyIdentification ": {
        "id": null,
        "schemeId": null
      },

      "partyName": { // A name for this party.
        "name": null, // The name of the party.
        "languageId": null // The identifier of the language used in the content component.
      },

      "postalAddress": {
        "buildingNumber": null,
        "streetName": null,
        "additionalStreetName": null,
        "cityName": null,
        "postalZone": null,
        "country": {
          "identificationCode": null,
          "name": null
        }
      },

      "partyLegalEntity": {
        "registrationName": null,
        "companyId": {
          "id": null,
          "schemeId": null
        }
      }

    }
  },

  "delivery": {

    "deliveryParty": {
      "partyName": {
        "name": "VEE:DeliveryCustomerName", // The party to whom the goods are delivered.
        "languageId": null
      }
    },

    "carrierParty": {
      "partyName": {
        "name": "VEE:DeliveryMethodName", // The party responsible for delivering the goods.
        "languageId": null
      }
    },

    "actualDeliveryDate": "VEE:DeliveryDate", // The actual date of delivery.

    "deliveryAddress": { // The delivery address.
      "buildingNumber": null,
      "streetName": "VEE:DeliveryAddress1",
      "additionalStreetName": "VEE:DeliveryAddress2",
      "cityName": "VEE:DeliveryCity",
      "postalZone": "VEE:DeliveryPostalCode",
      "country": {
        "identificationCode": "VEE:DeliveryCountryCode",
        "name": null
      }
    }

  },

  "deliveryTerms": {
    "deliveryTermsId": {
      "id": "VEE:DeliveryTermCode",
      "schemeId": null
    },
    "specialTerms": {
      "text": null,
      "languageId": null
    }
  },

  "paymentTerms": {
    "paymentTermsId": {
      "id": null,
      "schemeId": null
    }
  },

  "paymentMeans": [

    {
      "paymentChannelCode": null,
      "paymentDueDate": "VEE:DueDate",
      "paymentId": [
        {
          "id": null,
          "schemeId": "OCR"
        },
        {
          "id": "VEE:InvoiceNumber",
          "schemeId": "InvoiceId"
        }
      ]
    }

  ],

  "allowanceCharge": [],

  "taxTotal": [ // The total amount of a specific type of tax.
    {
      "taxAmount": {
        "amount": "VEE:TotalVatAmount",
        "currencyId": "VEE:CurrencyCode"
      },
      "taxIncludedIndicator": "VEE:IncludesVat" // An indicator that tax is included in the calculation (true) or not (false).
    }
  ],

  "legalMonetaryTotal": {
    "taxInclusiveAmount": { // The monetary amount including taxes; the sum of payable amount and prepaid amount.
      "amount": "VEE:TotalAmount",
      "currencyId": "VEE:CurrencyCode"
    },
    "payableRoundingAmount": {
      "amount": "VEE:TotalRoundings",
      "currencyId": "VEE:CurrencyCode"
    },
    "payableAmount": { // The amount of the monetary total to be paid.
      "amount": "VEE:RemainingAmount",
      "currencyId": "VEE:CurrencyCode"
    }
  },

  "invoiceLine": [
    {

      "financialDimensions": [
        {
          "id": "VEE:Rows.ProjectId",
          "financialDimensionId": null,
          "type": "project"
        },
        {
          "id": "VEE:Rows.CostCenterItemId1",
          "financialDimensionId": null,
          "type": "costCode"
        },
        {
          "id": "VEE:Rows.CostCenterItemId2",
          "financialDimensionId": null,
          "type": "costCode"
        },
        {
          "id": "VEE:Rows.CostCenterItemId3",
          "financialDimensionId": null,
          "type": "costCode"
        }
      ],

      "id": "VEE:Rows.LineNumber", // An identifier for this invoice line.

      "invoicedQuantity": {
        "quantity": "VEE:Rows.Quantity",
        "unitCode": "VEE:Rows.UnitAbbreviation"
      },

      "lineExtensionAmount": { // The total amount for this invoice line, including allowance charges but net of taxes.
        "amount": "VEE:Rows.AmountNoVat",
        "currencyId": "VEE:CurrencyCode"
      },

      "item": {

        "name": "VEE:Rows.Text",

        "description": "VEE:Rows.Text",

        "sellersItemIdentification": {
          "id": "VEE:Rows.ArticleNumber",
          "extendedId": null, // An extended identifier for the item that identifies the item with specific properties, e.g., Item 123 = Chair / Item 123 Ext 45 = brown chair. Two chairs can have the same item number, but one is brown. The other is white.
          "barcodeSymbologyId": null
        },

        "classifiedTaxCategory": [ // A tax category applicable to this item.
          {
            "percent": "VEE:Rows.PercentVat", // format eg "25" not "0.2500"
            "taxScheme": {
              "taxSchemeId": {
                "id": "VAT", // An identifier for this taxation scheme.
                "schemeId": "SE:VAT"
              }
            }
          }
        ]

      },

      "price": {

        "priceAmount": {
          "amount": "VEE:Rows.UnitPrice",
          "currencyId": "VEE:CurrencyCode" // eg "SEK"
        },

        "priceTypeCode": {
          "code": "ABE", // ABE - Retail price - excluding taxes - Retail price not including any applicable taxes. https://service.unece.org/trade/untdid/d00a/tred/tred5387.htm
          "listId": "5387"
        },

        "allowanceCharge": [
          {
            "allowanceChargeId": null,
            "chargeIndicator": false,
            "multiplierFactorNumeric": "VEE:Rows.DiscountPercentage", // eg. "0.1000" converts to => "10"
            "allowanceChargeReason": null,
            "allowanceChargeAmount": {
              "amount": null,
              "currencyId": null
            },
            "allowanceChargeBaseAmount": {
              "amount": "VEE:Rows.UnitPrice",
              "currencyId": "VEE:CurrencyCode"
            },
            "taxTotal": null
          }
        ]

      }

    }
  ]

}