Ideal offline access from online



    A typical payment process for a real
    -life order that I recently took away: (I requested No. Z from the seller / in the online store and provided everything I needed for a personal price.)

    - Hello. I want to pay and pick up order No.Z. - the client says and approaches the seller.
    - Just a moment. - says the seller. The seller opens the online store system, copies the data and prints a leaflet. - Now to the cashier and then back to me.
    The client goes to the checkout, admiring the assortment of the store.

    - Good day, what are we paying, amount? - asks the cashier from the cashier.
    - Here, according to these documents, the client answers.
    - Just a second. - says the cashier. The cashier and cashier are asking for help from the payment terminal and printer, - “Payment terminal - help make the payment.”
    - Dear Customer, provide a card and a pin. - payment terminal, appearing from the window.
    The client provided everything that the terminal requested.
    - Cash desk is all OK, money is blocked. - the payment terminal is counted in front of the cashier.
    - Hey printer, print a check! - Cashier requested, it is necessary to give to the Client.
    - Here's a check, thanks for paying. - the cashier answered politely from the cash desk.
    The customer goes to the seller.
    - Here, everything is paid, where is my long-awaited product? - asked the client.
    In the story further, I received the goods and related guarantees, but it was possible not to drive me around the hall.

    So, what is missing for going offline to online stores, and vice versa, from offline to online.

    One online store, with a small warehouse, moved to the first floor. I was asked to see which solution is suitable for accepting payments offline. The task is seemingly trivial. But all calculations of “prices” and “balances” must go through the online store system, otherwise it is a long and expensive cycle.

    Task - Speed ​​up manual mode .

    As quickly and cheaply as possible, open a pick-up / purchase point for an online store. All prices, promotions and loyalty programs must always be the same for the default online and offline.
    Find the fastest way for data from the store database to the terminal and receipt printer.

    So, we have systems, like actors in a dialogue:
    The client is the owner of the card.
    The seller is the one who has the right to use the online store system.
    Online store - knows everything about the order and can transfer this data to someone.
    Payment terminal - Accepts a customer card.
    Printer - Prints a check to a customer.
    Cashier and cashier - Transmits data to the terminal, printer and something else useful.

    We turn the actors into hardware and software. Let's look at ways to connect Applications in the Browser with Offline Iron. Consider the cost of implementation and support.

    The obvious solution was mPOS with the application / API on the tablet.

    Solution Concept - Automation

    All steps are similar, only instead of the client with documents the seller runs around the store and brings the terminal, or rather his faithful mobile assistant.
    The Seller has a link in the browser for working with the Cashier.

    kassа-api://payNow?callback=[ecommerce-system-url?{параметры ответа*}]&order={парамеры заказа}

    The cash desk instantly immediately transfers data to the payment terminal application:

    pay-api://payNow?callback=[kassа-api://paymentResult?{параметры ответа*}]&order={парамеры заказа}

    The client pays for the order through the Payment Terminal.

    The Payment Terminal returns control to the Cashier:

    kassа-api://paymentResult?{параметры ответа*}

    The cashier immediately transfers the data to the printer for payment:

    print-api://payNow?callback=[kassа-api://paymentResult?{параметры ответа*}]&order={парамеры заказа}

    The printer printed a check, did something else, and returned the control to Kassa:

    ecommerce-system-url?{параметры ответа*}

    * Among the parameters there may be security features.
    Everything has been invented for a long time, this is called a custom scheme.

    What is a custom scheme?

    This is the element that was laid down in the URI itself (Universal Resource Identifier).
    We are all used to http: //, https: //, ftp: //, sftp: // and others. This is already implemented on popular platforms.

    myapp: // path-to-file where myapp is the same circuit.

    For iOS
    For Android

    US solution

    Take Paypal Here and a compatible printer.
    It provides the desired API .

    Fortunately, the PayPal Here application accepts payments via mPOS Terminal and can print checks on a bluetooth printer.

    All in one application: Cashier, terminal and printer.

    For a week they screwed the necessary API in the admin panel of the online store and installed this thing on the iPad. Everything is great.

    Yes, this is slightly better than the same terminal that we cannot use in Russia.

    Return to the reality of Russia

    I did not find a single solution that could completely solve the issue as it did for a store in the United States.

    Let me assume the following:
    Please: Atol, Eutor, Cashier Module, Yandex.Kassa, 2Can, all those listed in the article , “Cashier I Don't Know,” add the Custom Scheme API to your application.

    If someone knows solutions for harsh reality, I will be glad to cooperate. Share your observations below in the comments.

    Only registered users can participate in the survey. Please come in.

    Are you ready to go offline in this way?

    • 61.5% Yes 8
    • 46.1% No 6
    • 0% Your answer 0

    Also popular now: