Autogiro direct debit

   FinDock native Autogiro direct debit processing is in beta.

FinDock supports native Autogiro direct debit payment processing. Through filed-based processes with Bankgirot, FinDock enables new payer setup, mandate management and recurring payment collection.

Pre-requisites

  • FinDock is installed and configured.
  • You have a contract with a Swedish bank to collect Autogiro direct debit payments
  • You have enabled file exchange with Bankgirot (contact FinDock Support for details)

Install Nordic extension

Follow the standard procedure for installing payment processors to add the Nordic Payments extension for Norway and Sweden. Activate the FinDock for Sweden processor and Autogiro payment method.

Check and assign the required permissions. If you are using custom permission set groups, ensure the Nordic permission sets are assigned.

Adjust mandate settings for Autogiro

Adjust the Core mandate settings as described below according to your specific Autogiro use case.

  • Mandate Reference: Not applicable. This prefix is appended to mandate reference for other direct debit methods. The mandate references for Autogiro are auto-generated to comply with Autogiro rules.
  • Reuse existing mandate: You can enable this setting to reuse an existing mandate for a given payer. However, we recommend not reusing mandates to ensure clarity between a recurring Autogiro payment and the related mandate.
  • Auto-create mandates: Enable (check) this setting to make FinDock automatically generate mandates for new recurring payment. If disabled, you need a custom workflow for creating the required Mandate records for Autogiro payments.

Add Autogiro targets

Autogiro payment collection is tied to a specific bank account. If both Bankgiro and PlusGiro account numbers are used, they need to be defined as separate targets.

The target includes key information needed to process Autogiro direct debits. In addition, the target defines the OCR format for auto-generated OCR payment references.

To add an Autogiro target:

  1. Launch the FinDock app and click the FinDock Setup tab.
  2. Go to Payment Processors & Methods.
  3. Under Installed Processors, click the Sweden processor entry.
  4. Click Add account.
  5. Add a name for the new target, select Target FinDock-for-Sweden and Type Bankgirot.
  6. Complete the settings according to your needs following the guidance below.
  7. Click Save.

Autogiro target settings

  • Append Length Digit To OCR Reference: Enable to make FinDock add the optional length digit to the generated OCR number
  • Associate charges to: For CAMT file processing, either select or create a Salesforce account record to store transaction charges, such as for reversals, and enter the Salesforce Id of the account here. Some banks include charges within transactions. These charges are stored automatically and matched against a particular account in Salesforce.
  • Bankgiro number: the account number at your Swedish bank (7-8 digits)
  • Copy to Chatter: Upload a copy of generated files to Chatter group for file exchanges
  • Duplicate protection: enable to ensure only unique Bankgirot files are processed; can be disabled for testing purposes
  • Enable file transfers with Bankgirot: When you are done testing and have whitelisted your account number with FinDock, enable this setting to allow automatic file transfers with Bankgirot.
  • Image Option: Files from Bankgirot may include images of payment slips. Use this setting to control the format. You can keep the original, convert to PNG for previewing, or both.
  • isTest: Enable if you are using the target for testing
  • OCR Reference Length: set the required length for generated OCR numbers (3-25 digits)
  • Supported Bank Statement format: Select which bank statement type will be used with this account, either camt.053 or camt.054.

   If you are using FinDock e-mandates, the Autogiro target has additional fields that are used to generate the digitally signed PDF. These fields provide the required payee (creditor) identification, such as organization name and address details.

Autogiro mandate signup options

Autogiro mandates, the agreement allowing you to debit a payer’s account, can be created through paper and digital channels, though digital signup options are dependent on your Bankgirot contract.

FinDock supports all signup options using Mandate records and mandate schedules. Mandate schedule runs result in bank files that adhere to Bankgirot requirements. These are sent to Bankgirot through an integrated SFTP account.

For more information on the mandate handling process, please see Introduction to mandate handling.

Signup via electronic form

For individuals, the electronic form option can be handled through FinDock using a web form integrated with the FinDock Payment API and E-mandate service. You can leverage FinDock Giving Pages, PayLinks, or create your own front-end web form. Support for this signup option depends on your Bankgirot contract.

At the end of the online signup process, FinDock stores the payer’s mandate agreement as a Mandate record that has the status Pending registration. These are automatically picked up through the next mandate schedule run for registration. The agreement signature itself needs to be coordinated with the payer and stored according to Bankgirot requirements.

Autogiro rules also allow businesses to sign up via the electronic form method. However, with FinDock, the online sign up solution is intended for individuals, with, for example, individual authentication via BankID. Autogiro mandates for businesses can be entered manually and follow the same handling process as with mandates from paper forms.

Signup via paper form

This is the standard signup method available to all Bankgirot customers. The form needs to follow the Autogiro guidelines and can use a payer’s account number or Bankgiro number. Mandates collected on paper can be manually entered into Salesforce.

Create new Mandate and Payment Profile records with the required fields for Autogiro, and then set the mandate status to Pending registration. These mandates are then automatically picked up through the next mandate schedule run for registration.

For mandate archiving purposes, you can also, for example, attach a PDF scan of the original signed paper form to the Mandate record in Salesforce.

Signup via Internet Bank

Some payers may be able to use their own bank to sign up for a new recurring Autogiro payment. This Internet Bank method results in new electronic mandates that you can approve or reject via the Autogiro Online web service. Availability of this signup option is also dependent on your Bankgirot contract.

When you use FinDock to manage your Autogiro mandates, new mandates via Internet Bank signup need to be added to FinDock manually. If you use the Autogiro Online web service to approve these new mandates, you need to create new Mandate and Payment Profile records with the required fields filled in, and then set the status of the mandate to Approved and mark it active (check the Active checkbox).

If you want to register new Internet Bank mandates with FinDock, create new Mandate and Payment Profile records with the required fields for Autogiro, and then set the status of the mandate to Pending registration. As with payment form mandates, these are automatically picked up through the next mandate schedule run for registration.

Signup via web page

The web page sign up option can only be used if the payer can fulfill certain requirements as outlined in the Bankgirot user manual.

The web page sign up form is created using the Autogiro Online service. Availability of this signup option depends on your Bankgirot contract.

Mandates created via this signup option are handled in FinDock the same way as the Internet Bank option explained above. Manually create new Mandate and Payment Profile records with the required fields for Autogiro, and then set the status of the mandate to Pending registration so they are picked up by the next mandate schedule run.

Autogiro with FinDock e-mandates

FinDock supports online digitally signing Autogiro mandates using the FinDock e-mandate service (optional paid feature). You can use FinDock Giving Pages or PayLinks which have the Autogiro mandate process built-in, or create your own front-end web form and integrate to the Payment API and e-mandate service.

Please refer to FinDock e-mandates for details.

Collecting Autogiro payments

The FinDock Autogiro direct debit solution is for recurring payments. Once a new mandate is active, installments for the recurring payment can be collected.

Before you start collecting payments, please keep in mind there are requirements that need to be handled through Salesforce customization. These include:

  • Payers need to be notified of the upcoming debit at least 8 bank days prior to the first collection due date. Notification of further recurring installment collection is not required.
  • Payment collection must be initiated no later than 2 bank days prior to the installment due date. We recommend using 3 bank days.

The payment collection process is handled through payment schedules. These can be run manually or fully automated. The overall process is illustrated below.

Autogiro direct debit payment collection with FinDock

  1. A payment schedule run selects or generate new installments that are ready to be collected based on the schedule parameters.
  2. The payment schedule run sends collected data to ProcessingHub for preparation.
  3. ProcessingHub builds a payment initiation file and sends it to the Bankgirot service.
  4. ProcesingHub regularly polls the Bankgirot service for new payment response or mandate advice files and uploads them to Chatter.
  5. ProcesingHub automatically picks up new uploads to Chatter and parses them into Inbound Report records.
  6. FinDock reconciles the inbound reports through out-of-the box Guided Matching rules and any custom rules you create.
  7. Installments and other payment data are updated according to the Guided Matching results.

Reconciliation of Autogiro direct debit payments

Reconciliation is the process of matching and updating Salesforce data with the latest information from Bankgirot. FinDock regularly polls the Bankgirot SFTP service for new files which are automatically fetched and uploaded to Chatter for processing.

Autogiro reconciliation

  1. FinDock regularly polls Bankgirot.
  2. FinDock fetches new files from the SFTP service.
  3. The new files are automatically uploaded to the Chatter file exchange group.
  4. FinDock parses and extracts files into into transactions or inbound reports.
  5. Inbound records are reconciled through Guided Matching.

Inbound payment data from Bankgirot can come at different times through different files as described below. For BGMax files, FinDock uses transaction sets and transactions to process the BGMax file content.

Swedish banks may also provide camt.053 files for reconciliation. To process these files, manually upload them to Chatter. For further information, please see processing camt.053 files.

Autogiro payment specification

When payment initiations are delivered to Bankgirot, payment specifications are returned. Each is parsed into an Inbound Report record with report type Autogiro Payment, Autogiro Refund or Autogiro Rejection and matched using the installment payment reference (Final Payment Reference).

There are three main types of payment responses: status, refund or rejection. FinDock processes matched inbound reports using managed Guided Matching rules and custom matching rules you can create to extend the matching logic.

The following table outlines the default processing rules for matched records. For ideas on additional Guided Matching rules, please see the detailed information on report content from Bankgirot.

Payment status entries

Status codeDescriptionFinDock handlingInbound Report typeSub-type
0Approved Payment ExecutedUpdate payment to collectedAutogiro Payment0 Payment approved
1Insufficient funds, payment not executedUpdate to failed, reason: insufficient fundsAutogiro Payment1 Insufficient funds
2No connection to autogiroUpdate to Failed: reason: No autogiro connection, check target settingsAutogiro Payment2 No autogiro service connection
9Renewed fundsLeave in pending processing, since there will be retries + last reason codeAutogiro Payment9 Renewed funds

Payment refund entries

Refund codeDescriptionFinDock handlingInbound Report typeSub-type
01Mandate has not been submitted to the payeeReverse the payment, set status reason to Code meaningAutogiro Refund01 Mandate not submitted to payee
02Mandate has been withdrawnReverse the payment, set status reason to Code meaningAutogiro Refund02 Mandate withdrawn
03Amount was not specified when the mandate was assigned and exceeds reasonable expectationsReverse the payment, set status reason to Code meaningAutogiro Refund03 Amount exceeds expectation

Payment rejection entries

Rejection codeDescriptionFinDock handlingInbound Report typeSub-type
01Omitted, No Mandate FoundFailed installment and deactivate mandateAutogiro Rejection01 No mandate found
02Omitted, Account not approved or ClosedFailed installment and deactivate mandateAutogiro Rejection02 Account closed or unapproved
03Incorrect Payer NumberFailed installmentAutogiro Rejection03 Incorrect payer number
06Incorrect Period CodeFailed installment (N/A)Autogiro Rejection-- Other rejection
07Incorrect number of recurring paymentsFailed installment (N/A)Autogiro Rejection-- Other rejection
08Amount non-numericFailed installmentAutogiro Rejection-- Other rejection
09Ban on outgoing paymentsFailed installmentAutogiro Rejection-- Other rejection
10Bankgiro number not found at BGCFailed installmentAutogiro Rejection-- Other rejection
12Incorrect Payment DateFailed installmentAutogiro Rejection-- Other rejection
13Payment date in the pastFailed installmentAutogiro Rejection-- Other rejection
15Payee's Bankgiro numbers in open record and transaction record are not the sameFailed installmentAutogiro Rejection-- Other rejection
24Amount exceeds Max AmountFailed installmentAutogiro Rejection-- Other rejection

Autogiro mandate advice

Mandate advice files are received daily through automatic polling of the Bankgirot service. Each mandate advice is parsed into an Inbound Report record with report type Autogiro Mandate and matched to installments.

FinDock processes matched inbound reports using managed Guided Matching rules and any additional custom rules. The default processing for matched records is outlined below.

Comment codeDescriptionFinDock handlingInbound Report typeSub-type
02Mandate cancelled on initiative of payer or payer's bank.Cancel mandate
Autogiro Mandate02 Mandate cancelled by payer / payer's bank
03Account type not approved for Autogiro.Fail mandate with status reasonAutogiro Mandate03 Account type not approved
04Mandate not found in Bankgirot's mandate directory.Fail mandate with status reasonAutogiro Mandate04 Mandate not found
05Incorrect bank account or personal details.Fail mandate with status reasonAutogiro Mandate05 Incorrect account or personal details
07Cancelled/removed due to unanswered account inquiry.Cancel mandateAutogiro Mandate07 Cancelled/removed, unanswered inquiry
09Payer Bankgiro number not found at Bankgirot.Fail mandate with status reasonAutogiro Mandate09 Payer Bankgiro number not found
10Mandate already registered in Bankgirot's directory or inquiry pending.Set status to ManualAutogiro Mandate10 Mandate already registered or pending
20Incorrect civic/company number or agreement on mandate based on Bankgiro number not found.Fail mandate with status reasonAutogiro Mandate20 Incorrect civic/co. nr. / no agreement found
21Incorrect payer number.Fail mandate with status reasonAutogiro Mandate21 Incorrect payer number
23Incorrect bank account number.Fail mandate with status reasonAutogiro Mandate23 Incorrect bank account number
29Incorrect payee Bankgiro numberFail mandate with status reasonAutogiro Mandate29 Incorrect payee Bankgiro number
30Deregistered payee Bankgiro numberCancel mandateAutogiro Mandate30 Deregistered payee Bankgiro number
32New mandate.Activate mandateAutogiro Mandate32 New mandate
33Cancelled.Cancel mandateAutogiro Mandate33 Cancelled
98Mandate cancelled due to cancelled payer Bankgiro number.Cancel mandateAutogiro Mandate98 Mandate cancelled, cancelled payer nr.

Migrating Autogiro mandates

When migrating Autogiro mandates, please start from the general payment data migration guidance. In addition to this guidance, it is important to ensure Autogiro mandate Id values follow the standard 16-digit format used by FinDock. Shorter Id values need to be filled with leading zeroes.

In addition to the Mandate record, some Autogiro mandate information is also found on the Payment Profile, such as account number. So, after migration, one Autogiro mandate is always represented by two records, a mandate and a payment profile.

Payment API

You can use the following messages with the Payment API to test your Autogiro configuration.

Recurring payment with mandate via paper signup

{
    "SuccessURL": "https://www.example.com/success",
    "FailureURL": "https://www.example.com/error",
    "Payer": {
        "Contact": {
            "SalesforceFields": {
                "FirstName": "Test",
                "LastName": "Payment",
                "Email": "testpayment@findock.com"
                },
            },
        "Account":null,
        },
    "Recurring": {
        "StartDate": "2024-09-27",
        "Frequency": "Monthly",
        "Amount":25,
        "CurrencyISOCode": "SEK"
        },
    "PaymentMethod": {
       "Name": "Autogiro",
       "Processor": "FinDock-for-Sweden",
       "Target" : "Default-Autogiro-account",
       "Parameters" : {
            "appDevice" : "paper",
            "branchCode": "5491",
            "bankAccount": "0000003",
            "ssn": "198112341234"
            },
        },
    "Settings": {
        "SourceConnector": "PaymentHub"
        },
}

One-time payment with mandate via digital signup

{
    "SuccessURL": "https://www.example.com/success",
    "FailureURL": "https://www.example.com/error",
    "Payer": {
        "Contact": {
            "SalesforceFields": {
               "FirstName": "Test",
               "LastName": "Payment",
               "Email": "testpayment@findock.com"
                },
            },
        "Account":null,
        },
    "OneTime": {
        "Amount": 24,
        "CurrencyISOCode": "SEK"
        },
   "PaymentMethod": {
       "Name": "Autogiro",
       "Processor": "FinDock-for-Sweden",
       "Target" : "Default-Autogiro-account",
       "Parameters" : {
            "appDevice" : "same-device",
            "branchCode": "5491",
            "bankAccount": "0000003",
            "ssn": "198112341234"
            }
        },
   "Settings": {
        "SourceConnector": "PaymentHub"
        }
}

Was this page helpful?