Overview

GetBill can retrieve debt files deposited on an agreed SFTP server and, when enabled, upload scheduled exports to an outbound folder. Outbound exports are optional and independent of the synchronization profile. They are required neither for full_sync nor for status_sync when your system already provides GetBill with the expected balances and statuses, particularly when payments are collected and reconciled on your side. Enable them if you want to retrieve information produced by GetBill in your system, such as follow-ups, interactions, or payment plans. An inbound integration has two independent business choices:
  1. synchronization behavior, which determines what a missing reference means;
  2. balance granularity, which determines what each row represents.
CSV and XLSX are two technical formats for the same contract. They do not change synchronization behavior or balance granularity. The outbound format is selected independently.
Authoritative synchronization (full_sync) treats every successfully processed file as the complete active campaign perimeter. A known debt missing from the file is settled outside GetBill. Never submit a partial extract with this profile.
A campaign scope is not a fixed list. A new stable reference can create a debt during any synchronization. The debt is attached to the campaign for tracking and, if its status allows collection actions, added to the configured collection timeline. In full_sync, the file describes the complete active scope after synchronization, including new debts. In status_sync, it contains only the creations and updates to apply.
The Campaign Snapshots API supports only full_sync. The SFTP integration supports both full_sync and status_sync. The configured campaign remains the source of truth. Costly phone destinations are configured by GetBill per bridge-managed campaign and default to disabled. The SFTP partner cannot change that choice in a file; campaigns using the same timeline remain independent.

Identify your profile

Choose in three questions

  1. Can your source export the complete active perimeter on every run?
    • Yes: choose full_sync.
    • No, it emits only changes: choose status_sync.
  2. Does your source know each invoice’s unpaid balance?
    • Yes: choose invoice granularity.
    • No: choose debtor/account granularity.
  3. Which format can your source produce reliably?
    • Choose CSV or XLSX; this choice has no business effect.
status_sync means incremental updates, not a file limited to status changes. It can create a debt, change its balance, or change its status.

Understand both behaviors

Authoritative synchronization (full_sync)

  • a new stable reference creates a debt;
  • a known reference updates its debt;
  • a known debt missing from the file is settled outside GetBill and leaves the active perimeter;
  • a rejected file applies no update and settles no debt by omission.

Incremental updates (status_sync)

  • a new stable reference creates a debt;
  • a known reference can update its balance, status, or other supported fields;
  • a missing debt remains unchanged.
In status_sync, each file contains creations and changes that GetBill has not yet applied. When a debt changes status in your system, send it at least once with the new value, such as Soldé or Repris manuel. After that update is processed successfully, you may omit the debt from later files: GetBill retains the applied status. A later omission never instructs GetBill to change or reset that status. If the file fails, send the update again because it was not applied. The Statut column is optional in both behaviors: on an existing debt, a blank cell preserves its status; on a new debt, a blank cell applies the default En cours status.

Choose the granularity

Montant always represents the current unpaid balance, never the historical original amount. Montant is required on the first import of a debt and must then be strictly positive.
  • Invoice: one row per invoice, identified by Référence facture.
  • Debtor or account: one global-balance row with a blank Référence facture, a stable ID interne, and a Référence débiteur.
ID interne is the balance’s stable technical reference. Référence débiteur remains its business reference and does not replace ID interne for upsert. Never mix both granularities in one flow.

Download the templates

Complete SFTP pack

Templates, exports, and all four J1/J2 examples in CSV and XLSX.

Invoices — XLSX

One row per invoice.

Invoices — CSV

The same contract with UTF-8 BOM and semicolon delimiter.

Debtor/account balances — XLSX

One row per debtor or account.

Debtor/account balances — CSV

The same global-balance contract in CSV.

Export example — XLSX

Complete integration example.

Export example — CSV

Simplified flat example.

Continue the integration

Legacy SFTP guide anchors redirect to this page. Use the paths below to open the new specialized page.

Configure the connection

Network, SSH keys, pinning, and responsibilities.

Prepare inbound files

Naming, formats, columns, and business effects.

Verify the integration

J1/J2 examples, limits, and pre-activation checks.

Consume outbound exports

Outbound formats, follow-ups, and payment plans.