Enter your credentials to Maventa testing environment, to authenticate and try things out with the Swagger UI. This will fetch a Bearer token using OAuth2 with the endpoint POST https://ax-stage.maventa.com/oauth2/token. The token is stored in your browser's session storage (cleared when you close the tab) and used in Swagger calls done from this documentation website. The token is valid for 1 hour.

Never use your production credentials here. This is only for testing the Maventa test environment in the Swagger UI.
All None
eui global company lookup document:receive document:send invoice:receive invoice:send company:read company:write validate receivables:assignments analysis billing:reports partner:invoice_delivery_actions partner:lookups partner:takeovers partner:lyanthe_scan_service fi_bank_message:send fi_bank_message:receive
Cancel Sign In
Search
Debt collection and reminder services Amili Kassavirta Amili Perintä Other Mass Printing Service Detect Supplier Activation Maventa Connector Embeddable User Interface

Amili Perintä

Amili Perintä enables you to outsource the time-consuming tasks of sending reminders and managing the debt collection process to Visma Amili Oy. The service allows you to choose specific invoices for Visma Amili to handle. By using Amili Perintä, you can also monitor the progress of reminder and collection activities through our APIs (and UI). The service is included in the Maventa service with no additional costs for using it. Only costs there might be are related to the debt collection process in later phases and if assignments are cancelled. Service contract and price list.

Opening the Amili Perintä service

To open the Amili Perintä service use REST API method PUT /v2/services/amili/receivables to initiate the activation process. GET /v2/services/amili/receivables method is used to follow up when the service get activated.

To complete the activation process, a person authorized to act on behalf of the company must fill and sign an electronic agreement with Visma Amili. This authorization can be based on the individual’s position within the company or a provided power of attorney, which must be attached to the form if applicable. Personal online banking credentials or a Mobile ID are required to fill out the form. According to the Money Laundering Act, we must ensure that we know our customers and their activities.

The authentication and signing process is facilitated by our partner, Netvisor KYC.

There are two options for handling the Know Your Customer (KYC) part from the ERP:

  1. By providing an email address in the “authorization_email” parameter, an email containing a link to the Netvisor KYC service is sent to the specified address. If the “authorization_email” parameter is left empty, no email will be sent

  2. The GET /v2/services/amili/receivables method will return a link in “activation_url” parameter to the Netvisor KYC service. Customers can be guided there directly from the ERP. When displaying the link, it is advisable to keep the “authorization_email” parameter blank

Note! If the KYC process is not completed within a week, a reminder email with a link will be sent to the contact person’s email address.

Parameters for the PUT /v2/services/amili/receivables call

Parameter Description
iban Account information (IBAN) that Visma Amili will use when they pay the money they get from the customer. There can only be one account.
bic Bank identification code e.g. DABAFIHH
bank Name of your bank
contact_person Contact person name
contact_email Email for possible problem cases and contacting
contact_phone_number Phone number for the contact person
authorization_email Email for sending the request to sign the electronic agreement. If left blank, email is not sent
accountable_party Should be set as “vfsfi” (default) or left out. Does not apply to Amili Perintä service
service_type Service type needs to be set us “express”. if left empty it will use the default value “full” which means the full Receivables management service aka Reskontravahti Auto
customer_service_email This email will be shown on the factoring clause that Visma Amili will add to the invoices routed through them
customer_service_phone_number This phone number will be shown on the factoring clause that Visma Amili will add to the invoices routed through them
billing_address Billing address for possible service costs related to the debt collection processes in the later phase. Price list
postal_address Company’s postal address

When agreement is signed and verified by Amili the service gets activated. This happens usually within 1-2 workdays.

Use GET /v2/services/amili/receivables to fetch the status of the activation to see when the service is activated. Or register a webhook to get a request from Maventa when the service gets activated (or rejected).

Amili Perintä can also be activated through our user interface.

Transferring invoices to a reminder and collection process

Due invoice can be transferred to the Amili Perintä service via the following API methods:

Transfer invoice: POST /v1/invoices/{id}/assignment

As an input you will need to provide the invoice id (uuid) for an over due invoice, and the preferred collection type

reminder_and_collection - transfer the invoice to a full reminder and debt collection process collection - transfer invoice directly to the collection process as you have already handled the reminder sending yourself

Possible errors:

If the due date of the invoice is not in the past, the API returns the following error as only invoices having due date in past can be transferred to the Amili Perintä service:

Error: response status is 400

{
  "code": "invalid_parameters",
  "message": "Request parameters are invalid",
  "details": [
    "Invoice not expired"
  ]
}

See the status of the transfer: GET /v1/invoices/{id}/assignment

Pending - Waiting for the transfer Sent - Transfer successful and an assignment is created. Response will also contain a link to the newly created assignment Error - Trasfer failed (Most common reason is invalid XML file, or missing receiver’s address details) Note! API does not return the error reason

When invoice due date is in past, a button to transfer invoice to Amili Perintä will appear on UI under the sent invoice details.

Invoice content requirements

  • Only invoices with currency EUR are accepted.
  • Valid XML file. Service does not support the following invoice XMLs: OIOXML, WoodX, BGC, Axflow, Facturae, PX, UBL, Facturae.
  • Full receiver’s address information is given: If there is something missing from the receiver’s address details your invoice will not be successfully forwarded for the Amili Perintä service.
  • Duplicate invoice numbers are not allowed in most cases. Ensure that each invoice number is unique, avoiding any reuse. However, there are few exceptions to this rule:
    • If a new invoice has a different invoice date than an existing assignment (open or closed), a new assignment with the same invoice number is created.
    • If a new invoice has the same invoice date as an existing closed assignment with no associated payments or credit notes (manually closed or canceled by the sender), a new assignment with the same invoice number is created.
    • If a new invoice has the same invoice date as an existing open assignment with no associated payments or credit notes, and the invoice connected to that assignment is in an error state, the existing assignment is closed, and a new assignment with the same invoice number is created.
  • Sum of lines must equal the total sum of the invoice

Possibility to create assignment manually for an invoice not sent through Maventa

There is a possibility to transfer invoices, that have not been sent through Maventa, for the Amili Perintä service. This means adding an assignment manually to the service.

Adding assignments manually can be done with the POST ​/v1​/invoices by setting the prevent_routing parameter to true. Setting the parameter true will mark the invoice immediately as SENT state without actually sending it anywhere. After the invoice is created, above mentioned Amili Perintä APIs can be used to transfer the invoice to the reminder and/or debt collection process.

Creating assignments manually will have a debit action and it will be billed according to the existing price lists.

Reminder and debt collection schedule

When invoice is transferred to Amili Perintä service for reminder and collection process Visma Amili will send out the first reminder 10 days after the due date of the invoice for B2B invoices, and 14 days after due date for consumer invoices (B2C). In case invoice is transferred directly to the collection process, payment demand is the first thing to send out. See the detailed reminder and collection process from the dropdowns below.

Reminders and payment demands are always sent through the normal post (letters won’t be sent during weekends or public holidays which will then in some cases add few additional days to the schedule). Language of the reminders and debt collection letters is based on the customer’s language code defined in the original invoice (Finvoice InvoiceRecipientLanguageCode). Default language is Finnish.

Receivables management process

Receivables management process

Close

Schedule for reminder and debt collection process (In Finnish)

Receivables management process

Assignments

Out of all the invoices transferred to Amili Perintä, an assignment is created. Assignment is something through which the company can follow up the process on the Visma Amili side. Assignment is also used for all the communication between the sender company and Visma Amili. To link the sent invoice and assignment together, there is parameters reference_ids and invoice_id in the assignment having the invoice uuid of the sent invoice. There are 3 different statuses the assingment can have:

  1. Open - The assignment is open and Visma Amili will handle the reminder sending and debt collection process depending on the chosen collection type.
  2. Partially closed - The assignment has been paid but the customer still has open charges which Visma Amili will continue to collect.
  3. Closed - The assignment is closed. The assignment has been paid and no charges are open. Visma Amili has transferred the money to company’s account.

Assignment content

Parameter Description
id Assignment id
status Open (unpaid) / closed (paid or cancelled) / partially_closed (Invoice is paid but not the reminder or collection charges)
collection_status Tells the collection status of the assignment. Set based on event added by the agency. Values can be “unknown” (default value until reminder is sent/collection process starts), “reminder_sent”, “debt_collection”, “legal_collection”, “recovery_proceedings”, “debt_surveillance”, “lack_of_means”, “payment_plan”
service_level default (normal process) / premium / vip, Note! Does not apply to Amili Perintä
debtor “name”: Name of customer (receiver of the invoice) and “bid”: customer’s bid
due_date due date from the original invoice
issued_at Invoice date from the original invoice
number Invoice number from the original invoice
sum Total sum of the invoice
paid Amount that is paid or credited
currency Currency from the original invoice
created_at When assignment was created
updated_at When assignment was updated last time (e.g. when paid sum was updated)
partially_closed_at When assignment was partially closed by Amili
closed_at When assignment was closed by Amili
reference_ids Contains three ids: “agency_id” = Visma Amili id, “invoice_id” = id of the original invoice (invoice uuid), “number” = Reference number from the original invoice

Json example of assignment and its event

[
  {
    "id": "fa9781ba-20d1-4677-a125-f04bff7bbac0",
    "status": "open",
    "collection_status": "reminder_sent",
    "service_level": "default",
    "debtor": {
      "name": "Test receiver Oy"
    },
    "due_date": "2020-04-20",
    "issued_at": "2020-04-01",
    "number": "64488",
    "sum": 12.3,
    "paid": 10,
    "currency": "EUR",
    "created_at": "2020-04-15T05:47:07Z",
    "partially_closed_at": null,
    "updated_at": "2020-04-15T21:01:18Z",
    "closed_at": null,
    "reference_ids": [
      {
        "type": "agency_id",
        "value": "078dbb88-ef8e-4115-8260-c8a542aaa87c"
      },
      {
        "type": "invoice_id",
        "value": "f6dcf18d-a1bd-4e72-bb8a-80908527b6c8"
      },
      {
        "type": "number",
        "value": "356241887794"
      }
    ],
    "events": [
      {
        "id": "c0c56722-a28b-49d1-aa87-1c4d7f3cf1af",
        "type": "paid",
        "data": {
          "sum_paid": 10,
          "booked_at": "2020-04-16",
          "archive_number": "12345"
        },
        "party_id": "938fc79f-9c00-47af-8507-cdf15838aa96",
        "seens": [
          {
            "seen_at": "2020-04-15T22:00:06Z",
            "seen_by": "Amili Oy FI"
          }
        ],
        "created_at": "2020-04-15T21:01:18Z",
        "happened_at": "2020-04-16T00:00:00Z"
      }
    ]
  }
]

REST API for assignment handling.

Collection status of the assignment

collection_status Events that sets the collection status
unknown default value until reminder is sent or collection activities are started
reminder_sent reminder_sent / second_reminder_sent
debt_collection collection_started (first payment demand is sent) / second_demand_sent / tratta
legal_collection legal_collection_started
recovery_proceedings application_for_enforcement
debt_surveillance credit_loss_suggestion Note! credit_loss event does not change the collection status
lack_of_means lack_of_means
payment_plan payment_plan

Events

Parties connected to an assignment (sender company and Visma Amili) can add events to communicate changes to the assignment. Events describe what has happened to the assignment for example when the remainder is paid Visma Amili will add an Paid event to the assignment. Events can also be used to update assignment information from the sender side like informing direct payments. Events can be considered as a communication channel between Visma Amili and sender company.

We highly advice to automate these events as far as it is possible from the ERP. At least paid and credit_note events for making sure these will be commnunicated always to the Visma Amili without needing to rely end user to remember to do these through our UI.

REST API for event handling.

What can be done using the events

Comment or question

comment - Add a comment or question. With this event you can add a comment or ask a question from Visma Amili related to the assignment in question. Amili will also use this event for sending comments or questions to your company.

NOTE! There is a new improved messaging functionality available now to handle the communication better. More information from the message functionality

Both company and Visma Amili can send this event.

Handling payments

paid - This event is used for notifying when assignment gets paid by the customer, for informing direct payment and for marking credit note as used.

  • Notifying when assignment gets paid by the customer: Amili Oy will use this event to notify when the customer has paid the assignment either fully or partly. If the customer pays the whole sum Amili Oy marks the assignment as closed (close event is added). If the customer pays more than the invoice sum is the extra money is returned to the customer. So there is no way of paying more than one invoice at a time. Amili Oy won’t save the money to upcoming payments. In account statement (for example SEPA) all the payments done by Amili Oy have VISMA AMILI as a payer’s name abbreviation (name could be shorter or longer depending on bank). This information can be used to identify direct payments which will then have something else as payer’s name.
  • Inform direct payments: With this event you can inform Amili Oy if the customer has made a direct payment to your company’s account. Amount paid can be either full or partial payment. Use a comment event if you want to give some additional information related to the payment. If assignment is fully paid Amili Oy will close the assignment afterwards (close event is added). It is really important to use this event to inform the direct payments in order for Amili Oy to know to update the sum that is still open or to close the assignment. We highly advice to automate this event from the ERP when direct payments happens.
  • Mark credit note as used: When credit note is sent and connected to an assignment (credit_note event is used) credit note is also needed to be marked as used and that can be done using this event for the credit note and giving the paid sum as negative value. In this way Amili Oy will get the information to also mark the credit note as closed (close event is added). (When connecting a credit note to an assignment through our UI the credit note is marked automatically as used.)

Paid event will update the parameter “paid” in the assignment. the assignment “sum” does not get updated.

{
"type": "paid",
"data": {
    "sum_paid": 200.5,
    "booked_at": "2019-01-04",
    "archive_number": "12345"
}
}

Both company and Visma Amili can send this event.

Assignment is closed

close - This event is used by Amili Oy to mark the assignment as closed. Assignment gets closed when it is fully paid by the customer, marked as fully paid by the sender or if the sender has cancelled the assignment.

Only Visma Amili can send this event.

Assignment is partially closed

partially_closed - This event is used by Amili Oy to mark the assignment as partially closed. This is used when invoice sum is fully paid but customer did not pay reminder or collection charges. This means that from the mandator’s perspective the assignment is closed, but the customer still needs to pay more money to the Amili Oy. When assignment gets this event it’s status changes to ‘partially_closed’. When customer eventually pays the remining reminder or collection charges Amili Oy will add the close event and the assignment status changes to ‘Closed’

Only Visma Amili can send this event.

Connect a credit note to an assignment

credit_note - You can connect a credit note to an assignment by giving the credit note number and credit sum with this event. This event is added for the assignment in question you want to connect the credit note to. Give the credit note sum as positive value in the request. If assignment is fully credited Amili Oy will close the assignment (close event is added). If the credit note is sent through Maventa you will also need to mark the credit note as used and connected by adding a paid event to the credit note assignment and give the paid sum as negative value. If the credit note is not sent through Maventa you should still use this event to inform Amili Oy for crediting the assignment so that they know to close the assignment, or if only part of the assignment is credited they will continue payment monitoring and possible debt collection process with a different sum.

If whole assignment is credited with the credit note:

  • Assignment gets credit_note event with credit sum given as positive value
  • Credit note gets paid event with paid sum as negative value

We highly advice to automate this event in the ERP side to always create credit_note event to an assignment when user creates credit notes in the ERP.

Only company can send this event.

Cancel the whole receivable management for the assignment

cancel - You can cancel the whole receivable process for the assignment. Please note that this will close the assignment (close event is added) and the closing cannot be reversed or modified afterwards. Amili Oy will not monitor the assignment or take actions to collect the debt. Company is then responsible for monitoring the assignment. Do not use this for reporting a credit loss. Note! If reminder or collection actions have already been initiated, Amili Oy will charge the client a cancellation fee.

Only company can send this event.

Temporary suspension of debt collection - Request and update

freeze - You can request to suspend the debt collection process for the assignment in question until the specified date. Please note that once the suspension has been set, Amili Oy will not monitor the assignment or take actions to collect the debt. Company is then responsible for monitoring the assignment. The suspension can be requested until the legal collection has started or the enforcement authority has found the customer insolvant. The debt collection will automatically continue after the expiration date. You can request an update to the debt collection suspension expiration date by choosing a new date or you can end the suspension by setting today as the expiration date.

Set the parameter “frozen” to true

{
"type": "freeze",
"data": {
    "frozen": true,
    "end_date": "2019-01-04"
}
}

Only company can send this event.

Temporary suspension of debt collection - confirmation

freeze_confirmed - This event is added by Amili Oy as a confirmation when the Temporary suspension of debt collection has been set to an assignment.

{
"type": "freeze_confirmed",
"data": {
    "happened_at": "2019-01-04",
    "end_date": "2019-02-15"
}
}

Only Visma Amili can send this event.

Temporary suspension of debt collection - Termination

unfreezed - The Temporary suspension of debt collection has been terminated and the debt collection of the assignment will continue.

{
"type": "unfreezed",
"data": {
    "happened_at": "2019-01-04"
}
}

Only Visma Amili can send this event.

Information for interest payments

interest_paid - With this event Visma Amili will inform if there was interest paid for an assignment and what was the interest amount. This event is usually received at the same time than the paid event. Interest will be paid daily as one payment that contains all the interests from the same day. Message in the account statement is “Korkotilitys PVM”.

Interest in this matter is the one defined by the sender for their invoices if the receiver does not pay on time. Note! Interest needs to be defined on the invoice XML. It is not enough to have it only on the invoice image.

Only Visma Amili can send this event.

Cash discount used

cash_discount - With this event Amili Oy informs if the customer used cash discount on the payment and how much was the cash discount amount.

paid sum + cash_discount sum = assignment’s sum

This event is usually received at the same time than the paid event.

Only Visma Amili can send this event.

Notification when the first reminder is sent to the customer

reminder_sent - This event is added by Amili Oy when a first payment reminder has been sent of an unpaid invoice. This event will set the “collection_status” of an assignment to reminder_sent if it is not already set.

Only Visma Amili can send this event.

Notification when the second reminder is sent to the customer

second_reminder_sent - This event is added by Amili Oy when a second payment reminder has been sent of an unpaid invoice. This event will set the “collection_status” of an assignment to reminder_sent if it is not already set.

Only visma Amili can send this event.

Notification when the first payment demand is sent to the customer

collection_started - This event is added by Amili Oy when a first payment demand has been sent of an unpaid invoice. This event will set the “collection_status” of an assignment to debt_collection if it is not already set.

Only Visma Amili can send this event.

Notification when the second payment demand is sent to the customer

second_demand_sent - This event is added by Amili Oy when a second payment demand has been sent of an unpaid invoice. This event will set the “collection_status” of an assignment to debt_collection if it is not already set.

Only Visma Amili can send this event.

Tratta is sent

tratta_sent - A tratta has been sent of an unpaid invoice. This event will set the “collection_status” of an assignment to debt_collection if it is not already set.

Only Visma Amili can send this event.

Legal collection is started

legal_collection_started - A summons application has been sent and legal collection of the assignment has started. This event will set the “collection_status” of an assignment to legal_collection.

Only Visma Amili can send this event.

An application for enforcement is sent

application_for_enforcement - An application for enforcement has been sent and the assignment has been transferred to the enforcement authority. This event will set the “collection_status” of an assignment to recovery_proceedings.

Only Visma Amili can send this event.

The enforcement authority has found the debtor insolvent

lack_of_means - The enforcement authority has found the debtor insolvent. This event will set the “collection_status” of an assignment to lack_of_means.

Only Visma Amili can send this event.

A payment plan has been agreed on the invoice

payment_plan - A payment plan has been agreed on the invoice. This event will set the “collection_status” of an assignment to payment_plan.

Only Visma Amili can send this event.

A recommendation to mark the assignment as credit loss

credit_loss_suggestion - A recommendation from Amili Oy to mark the assignment as credit loss. This event will set the “collection_status” of an assignment to debt_surveillance.

Only Visma Amili can send this event.

Mark the assignment as a credit loss

credit_loss - You can mark a credit loss on assignment in question. Reporting a credit loss is only done for the accounting purposes and has no impact on the payment control and monitoring. Amili Oy will continue the collection process. Amili Oy will suggest that the sender marks the assignment as credit loss if they know the customer won’t pay it. Note! After posting, the credit loss cannot be reversed or modified.

Only company can send this event.

Other events (not applicable for Amili Perintä service)

Following events exists but are not applicable when using the Amili Perintä service. Useful when Reskontravahti Auto is in use.

delivery_status service_level_changed - This event is created by Amili Oy if the customer of the invoice (receiver) is either on the VIP or PREMIUM service level group. If the service level group is changed, there will be a new event added. This event will set the “service_level” of an assignment to default / vip / premium based on the choosen service level group. Service levels are working with the Amili Perintä service, but there is really no need to use them. due_date_changed - This is an event that will be received when due date change request is approved by Amili Oy. This will update the assignment’s due date. Note! This won’t update the original invoice in question. due_date_change_request - Request a due date change. If there is a need to update the due date of an assignment, you can request the change. Visma Financial Solution Oy will either accept or reject the request depending on the new due date and how far in the collection process the assignment already is. If the debt collection process has been started, due date change will be rejected. When a due date change request is accepted you will receive a confirmation event (due_date_changed event is added) about the acceptance and due date is updated accordingly for the assignment (parameter due_date gets a new value).

Reporting tool

Receivables reporting tool has been designed to give customers a better insight into their receivables and collections activity. Reports can be downloaded for a selected date range (up to 365 days). Two report types are currently available:

Both reports are available in PDF and Excel formats, customers can choose the one that suits their needs, whether it’s for quick viewing or deeper data analysis.

REST API

Message functionality

Messaging functionality is used for the communication between Visma Amili and the customer. Customer can add a comment or question related to the assignments or Visma Amili can contact customer regarding some important information related to the assignments. It is highly recommended to add this functionality as part of the integration to make sure both parties have a functional discussion connection and important messages do not get lost.

REST API for message handling.

Testing the service

When testing the Amili Perintä integration in our stage environment, please note that the activation step does not work automatically. To complete the activation flow during testing, you’ll need to contact our support team (support@maventa.com), as it requires a manual configuration on Amili’s side. Once activated, the rest of the functionality can be tested as usual. This manual step is only necessary in the test environment, production handles activation automatically.

Closing the service

Amili Perintä can be closed by calling DELETE /v2/services/amili/receivables or then by closing the service through the user interface. Visma Amili will still handle the open assignments.

NOTE! Even though the user closes the service, it might still be necessary to allow the use of the APIs in order for the user to continue following up the remaining open assignments and to perform events if necessary.

Reopening the service

Reopening the service needs manual handling and therefore contact with our support.

Back to top