Mondu Async Orders API

Leverage Mondu's Async Orders API for orders without immediate buyer interaction

Introduction

Usually, using Mondu's payment methods relies on buyer interaction in a synchronous checkout environment. But what if you want to enable Mondu payments through a non-Ecommerce interface like ERP, CRM or other systems? That's where our Async Order API shines.

Using the Async Orders API, you can create an order from any backend system, let Mondu assess the order asynchronously, and send out a order authorization link to your customer, so they can consent to Mondu's payment terms and confirm the order.

👍

Good to know

Don't need an API integration? Try MonduSell, our Multichannel Sales App through Mondu's Merchant Portal.

Prerequisites

The building blocks for successful async orders are these Mondu APIs:

Create an Async Order

Since Mondu assesses an async order without buyer input, you're required to send over as much identifying data as possible in your Create Async Order request.

{
  "currency": "EUR",
  "payment_method": "invoice",
  "language": "en",
  "net_term": 30,
  "billing_address": {
    "country_code": "DE",
    "city": "Berlin",
    "zip_code": "10179",
    "address_line1": "Alexanderstr 36"
  },
  "shipping_address": {
    "country_code": "DE",
    "city": "Berlin",
    "zip_code": "10179",
    "address_line1": "Alexanderstr 36"
  },
  "buyer": {
    "email": "[email protected]",
    "first_name": "Max",
    "last_name": "Mustermensch",
    "company_name": "Mondu GmbH",
    "legal_form_category": "kapital_und_personen_gesellschaft",
    "legal_form": "GmbH",
    "vat_number": "DE346168540"
  },
  "owners": [
    {
      "first_name": "Max",
      "last_name": "Mustermensch"
    }
  ],
  "external_reference_id": "order-01",
  "gross_amount_cents": 10000,
  "lines": [
    {
      "line_items": [
        {
          "quantity": 1,
          "external_reference_id": "product-01",
          "title": "My Product",
          "net_price_per_item_cents": 8403,
          "tax_cents": 1597
        }
      ]
    }
  ]
}
{
  "order": {
    "uuid": "12345667-890a-bcde-f123-34567890abcd",
    "state": "processing",
    "external_reference_id": "order-01"
  }
}

Depending on the outcome of the assessment by Mondu, the order can be declined (declined), approved (created) or in pending status.

If an order is in the pendingstate, Mondu will check the order manually and approve or decline. This process can take up to 24 hours.

Customer Order Authorization

After creation of the order via API and approval by Mondu, your customer will receive an email from Mondu to authorize the order. Within the email we are sending a link which opens a page hosted by Mondu presenting the order and payment details to the customer. The customer has to confirm the order and by that also agree to our payment terms. After successful authorization of the customer, the order transitions to the authorized state. Mondu then transitions the order to confirmed and invoices can be issued for the order.

In case the customer is not authorizing the order, we are sending a reminder email after 2 and 5 days. The confirmation link expires after 30 days.

We are also sending the order authorization link via Webhooks in case you want to inform the customer as well.

Async Order Webhooks

Mondu is informing you via webhook about the status update of the order (declined, pending and authorized by the customer).

More details about Webhooks

{
    "topic": "order/authorized",
    "order_uuid": "66e8d234-23b5-1125-9592-d7390f20g01c",
    "order_state": "authorized",
    "confirmation_link": "orders.mondu.ai/xxxx",
    "external_reference_id": "order-01",
    "buyer": {
        "uuid": "da696603-deb4-4b5c-8bb3-5cbdb39c3d2c",
        "name": "Max Mustermensch",
        "legal_form": "GmbH"
    },
    "payment_method": "invoice",
    "payment_terms": 30,
    "bank_account": {
        "account_holder": "Mondu Capital S.à r.l.",
        "bank": "UniCredit Bank - HypoVereinsbank",
        "bic": "HYVEDEMME40",
        "iban": "DE45500105178996759861"
    }
}

Shipment and Invoicing

If an async order has been confirmed by the buyer, order state will switch to confirmed and you will receive a standard order/confirmed webhook.

From here on, the order behaves as any Mondu order and can be shipped and invoiced with the usual Create Invoice Endpoint.