Invoices template
Create and update BigCommerce B2B Edition invoices using Shift.
Quick start
The best way to get started is to run an export and use the file as a guide to the format required.
If you are creating invoices, follow the creating invoices guide or download the minimal invoice creation example.
To see the fields included on export, download the full invoice export example.
By default, BigCommerce B2B Edition emails the buyer when a new invoice is created. To stop this email, disable it in the B2B app under Settings > Emails > Templates for Buyer > New Invoice before running your import.
Import & export columns
Basic columns
| Column | Description |
|---|---|
| Mode | The import mode for this row. See import modes for more information. |
| ID | The unique identifier for the invoice. Use this to update or delete an existing invoice. This field is read-only. |
| Invoice Number | The invoice number. This field is required when creating an invoice. |
| Type | The invoice type. |
| Due Date | The invoice due date. |
| Status | The invoice status. Allowed values: Open, Partially paid, Completed, 0, 1, 2. |
| Order Number | The related order number. |
| Purchase Order Number | The related purchase order number. |
| Original Balance Currency | The currency code for the original invoice balance, e.g. GBP or USD. This field is required when creating an invoice. |
| Original Balance Amount | The original invoice balance amount. This field is required when creating an invoice. |
| Open Balance Currency | The currency code for the open invoice balance, e.g. GBP or USD. This field is required when creating an invoice. |
| Open Balance Amount | The open invoice balance amount. This field is required when creating an invoice. |
| Issued At | The date and time when the invoice was issued. On import, this is sent as the invoice header order date. |
| Source | The invoice source. Allowed values: B2B Edition, External, 0, 1. |
| Customer Name | The customer name. This field is provided for information on exports. |
| Company ID | The B2B company ID that this invoice belongs to. This field is required when creating an invoice. Company IDs are not shown in the BigCommerce admin area, so export Companies from Shift to find the correct ID. |
| Customer BC ID | The BigCommerce customer ID. This field is provided for information on exports. |
| Customer BC Group Name | The BigCommerce customer group name. This field is provided for information on exports. |
| External ID | An external invoice ID, such as an ID from an ERP or another external system. This field is required when creating an invoice. When creating invoices, Shift uses this field to match invoice rows across the sheets in the import file. Updates use ID to identify the invoice. |
| External Customer ID | An external customer ID, such as an ID from an ERP or another external system. |
| Channel ID | The channel ID linked to the invoice. |
| Channel Name | The channel name linked to the invoice. This field is provided for information on exports. |
| Pending Payment Count | The number of pending payments for this invoice. This field is provided for information on exports. |
| Not Allowed Pay | Whether the invoice is not allowed to be paid. This field is provided for information on exports. |
| BC ID | The related BigCommerce ID. This field is provided for information on exports. |
| BC Group Name | The related BigCommerce group name. This field is provided for information on exports. |
| External PDF URL | A URL for an externally hosted invoice PDF. |
| Terms & Conditions | The invoice terms and conditions. |
| Created At | The date and time when the invoice was created. This field is read-only. |
| Updated At | The date and time when the invoice was last updated. This field is read-only. |
Billing address columns
| Column | Description |
|---|---|
| Invoice ID | The invoice ID used to match this row to an existing invoice. |
| Invoice External ID | The invoice external ID used to match this row to a new invoice when importing a multi-sheet creation file. |
| Billing Address First Name | The first name on the billing address. |
| Billing Address Last Name | The last name on the billing address. |
| Billing Address Street 1 | The first line of the billing address. |
| Billing Address Street 2 | The second line of the billing address. |
| Billing Address City | The billing address city. |
| Billing Address State | The billing address state, county, or region. |
| Billing Address Zip Code | The billing address zip or postal code. |
| Billing Address Country | The billing address country. |
| Billing Address Custom Fields | Billing address custom fields as JSON. |
Cost line columns
Cost lines are imported as rows on the Cost Lines sheet. An invoice can have multiple cost line rows, such as Subtotal, Discount, Freight, or Sales Tax.
| Column | Description |
|---|---|
| Invoice ID | The invoice ID used to match this row to an existing invoice. |
| Invoice External ID | The invoice external ID used to match this row to a new invoice when importing a multi-sheet creation file. |
| Currency Code | The currency code for this cost line. |
| Amount | The amount for this cost line. |
| Description | The description for this cost line, such as Subtotal, Discount, Freight, or Sales Tax. |
Shipping address columns
Shipping addresses are imported as numbered columns. Increase the number for each additional shipping address.
| Column | Description |
|---|---|
| Invoice ID | The invoice ID used to match this row to an existing invoice. |
| Invoice External ID | The invoice external ID used to match this row to a new invoice when importing a multi-sheet creation file. |
| Shipping Address 1 First Name | The first name on the shipping address. |
| Shipping Address 1 Last Name | The last name on the shipping address. |
| Shipping Address 1 Street 1 | The first line of the shipping address. |
| Shipping Address 1 Street 2 | The second line of the shipping address. |
| Shipping Address 1 City | The shipping address city. |
| Shipping Address 1 State | The shipping address state, county, or region. |
| Shipping Address 1 Zip Code | The shipping address zip or postal code. |
| Shipping Address 1 Country | The shipping address country. |
| Shipping Address 1 Custom Fields | Shipping address custom fields as JSON. |
Shipment columns
Shipments are imported as numbered columns. Increase the number for each additional shipment.
| Column | Description |
|---|---|
| Invoice ID | The invoice ID used to match this row to an existing invoice. |
| Invoice External ID | The invoice external ID used to match this row to a new invoice when importing a multi-sheet creation file. |
| Shipment 1 Address Index | The index of the shipping address this shipment belongs to. |
| Shipment 1 Ship Date | The shipment date. |
| Shipment 1 Ship Via | The shipping carrier or service. |
| Shipment 1 Tracking Number | The shipment tracking number. |
| Shipment 1 Comments | Shipment comments. |
Line item columns
Line items are imported as numbered columns. Increase the number for each additional line item.
| Column | Description |
|---|---|
| Invoice ID | The invoice ID used to match this row to an existing invoice. |
| Invoice External ID | The invoice external ID used to match this row to a new invoice when importing a multi-sheet creation file. |
| Line Item 1 Product ID | The BigCommerce product ID for this line item. |
| Line Item 1 SKU | The product SKU for this line item. |
| Line Item 1 Type | The line item type. |
| Line Item 1 Comments | Comments for this line item. |
| Line Item 1 Quantity | The quantity for this line item. |
| Line Item 1 Unit Price Currency | The currency code for the unit price. |
| Line Item 1 Unit Price | The unit price amount. |
| Line Item 1 Description | The line item description. |
| Line Item 1 Custom Fields | Line item custom fields as JSON. |
| Line Item 1 Unit Discount Currency | The currency code for the unit discount. |
| Line Item 1 Unit Discount | The unit discount amount. |
Extra field columns
Invoice extra fields are dynamic. Add one column for each configured extra field.
| Column | Description |
|---|---|
| Invoice ID | The invoice ID used to match this row to an existing invoice. |
| Invoice External ID | The invoice external ID used to match this row to a new invoice when importing a multi-sheet creation file. |
Extra Field {field name} | The value for a B2B invoice extra field. Replace {field name} with the exact extra field name configured in BigCommerce B2B Edition. |
Billing addresses, cost lines, shipping addresses, shipments, line items, and extra fields are merged into the invoice request on import. They are not imported as standalone resources.
BigCommerce does not allow partially paid invoices to be deleted. If an import uses Replace mode on a partially paid invoice, the delete step can fail before the replacement invoice is created.
Import modes
Use Import modes to control the import behaviour.
The Mode column on import is used to determine what kind of update action is performed for each row.
| Mode | Action |
|---|---|
Merge | Existing items are updated. New items are created. Missing columns or empty column values are ignored. This is the default mode. |
Update | Existing items are updated. New items are ignored. Missing columns or empty column values are ignored |
Create | New items are created. Existing items are ignored. |
Replace | Existing items are deleted and recreated. New items are created. This is the same as a Delete followed by a Merge. |
Delete | Existing items are deleted. |
Skip | This item is ignored |
Export filters
You can filter invoice exports by:
- External Customer ID
- Invoice
- Order
- Purchase Order Number
- Status
- Created