Endless Aisle / Staff Order

There are situations where products are not available in local stores or a home delivery is preferred. In order to offer customers this kind of flexibility it is possible to make an online order for products that are out of stock of for products where a home delivery is preferred. This use case is called Endless Aisle or Staff Order. The PAYONE Commerce Platform supports you with a simple integration for the Checkout via self service or after consultation in the local store.

Process flow

High-level summary:

  • Customer selects products in the local store.
  • Relevant data (shipping address, contact details) are submitted from the merchant system to the Commerce Platform.
  • Payment can be done e.g. via payment link, PAYONE Secured Direct Debit, PAYONE Secured Invoice etc.
  • No payment required at the cash register/terminal.
  • No integration of a card terminal necessary (but also possible).
  • Payment status is visible in the Commerce Platform and Commerce Portal.
  • All relevant information for delivery can be retrieved from the Commerce Platform or Commerce Portal.
  • If the products are ready for delivery, the deliver / capture can be done. 

Create a commerce case with checkout from a local store

POST Commerce Case

---end

Request
/v1/{merchantId}/commerce-cases
{
    "merchantReference": "Sample Commerce Case",
    "customer": {
        "companyInformation": {
            "name": "Mustermann GmbH"
        },
        "billingAddress": {
            "additionalInfo": "Etage 2",
            "city": "Musterstadt",
            "countryCode": "DE",
            "houseNumber": "1",
            "state": "SH",
            "street": "Musterstraße",
            "zip": "12345"
        },
        "merchantCustomerId": "Test-Customer",
        "contactDetails": {
            "emailAddress": "max@mustermann.de",
            "phoneNumber": "+1234567890"
        },
        "businessRelation": "B2C",
        "locale": "de",
        "personalInformation": {
            "gender": "MALE",
            "name": {
                "firstName": "Max",
                "surname": "Mustermann"
            },
            "dateOfBirth": "19900111"
        }
    },
    "checkout": {
        "amountOfMoney": {
            "amount": 79900,
            "currencyCode": "EUR"
        },
        "references": {
            "merchantReference": "EndlessAisle12345",
            "merchantShopReference": "Local Store, 12345 Teststadt"
        },
        "shipping": {
            "address": {
            "additionalInfo": "Etage 2",
            "city": "Musterstadt",
            "countryCode": "DE",
            "houseNumber": "1",
            "state": "SH",
            "street": "Musterstraße",
            "zip": "12345",
                "name": {
                    "firstName": "Max",
                    "surname": "Mustermann"
                }
            }
        },
        "shoppingCart": {
            "items": [
                {
                    "amountOfMoney": {
                        "amount": 79900,
                        "currencyCode": "EUR"
                    },
                    "invoiceData": {
                        "description": "Gamer Chair"
                    },
                    "orderLineDetails": {
                        "productCode": "RZR-353",
                        "productPrice": 79900,
                        "productType": "GOODS",
                        "quantity": 1,
                        "taxAmount": 19
                    }
                }
            ]
        }
    }
}

---end

create an order for the checkout (hosted checkout)

POST Order

---end

Request
/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkout/{checkoutId}/order
{
    "orderType": "FULL",
    "orderReferences": {
        "merchantReference": "Endless12345"
    },
    "paymentMethodSpecificInput": {
        "financingPaymentMethodSpecificInput": {
            "paymentProductId": 3392,
            "requiresApproval": true,
            "paymentProduct3392SpecificInput": {
                "bankAccountInformation": {
                    "iban": "DE52940594210000082271",
                    "accountHolder": "Max Mustermann"
                }
            }
        },
        "paymentChannel": "ECOMMERCE"
    }
}

---end

Response
{
    "createPaymentResponse": {
        "payment": {
            "paymentOutput": {
                "amountOfMoney": {
                    "amount": 79900,
                    "currencyCode": "EUR"
                },
                "references": {
                    "merchantReference": "Endless12345"
                },
                "paymentMethod": "financing",
                "financingPaymentMethodSpecificOutput": {
                    "paymentProductId": 3392
                }
            },
            "status": "PENDING_CAPTURE",
            "statusOutput": {
                "isCancellable": true,
                "statusCategory": "PENDING_MERCHANT",
                "isAuthorized": true,
                "isRefundable": false
            },
            "id": "PP2AADCPMBGCKCZQ"
        },
        "paymentExecutionId": "b301b571-dd43-42f7-b208-6640c8f9dd4c"
    },
    "shoppingCart": {
        "items": [
            {
                "amountOfMoney": {
                    "amount": 79900,
                    "currencyCode": "EUR"
                },
                "invoiceData": {
                    "description": "Gamer Chair"
                },
                "orderLineDetails": {
                    "id": "b049edf9-4779-43fc-9c69-968e86dad106",
                    "status": [
                        {
                            "cartItemStatus": "ORDERED",
                            "quantity": 1
                        }
                    ],
                    "productCode": "RZR-353",
                    "productPrice": 79900,
                    "productType": "GOODS",
                    "quantity": 1,
                    "taxAmount": 19
                }
            }
        ]
    }
}

---end

checkout status in the commerce portal after payment

After the payment was completed, the Checkout and all relevant information can be retrieved: 

Once the product is ready for delivery, the Deliver can be done to capture the amount and mark the item as delivered:

After the Deliver has been done, the amount will automatically be captured and the item status will be updated:
The displayed steps can be performed within the Commerce Portal or directly from your system using the respective endpoints from the Commerce Platform.

---end