{"title":"Linkly","slug":"linkly-payment-provider","url":"https://support.storeconnect.com/articles/linkly-payment-provider","url_markdown":"https://support.storeconnect.com/articles/linkly-payment-provider.md","subtitle":null,"summary":"Linkly is an Australia-based payments platform. Configure Linkly Cloud for integrated EFTPOS card payments and refunds at the POS, including terminal pairing, per-register credentials, and crash recovery.","type":"Help_Documentation","video_url":"","keywords":"linkly, eftpos, integrated card payments, payment provider, terminal pairing, linkly cloud, pos payments, card payments, crash recovery, refunds, payment surcharge, australia payments, token refresh, auto-refresh","last_modified":"2026-08-21T07:12:35+0000","body_markdown":"Linkly is an Australia-based integrated EFTPOS payment solution for StoreConnect POS, enabling card payments and refunds directly through Linkly-connected terminals. Linkly is a POS-only payment method — it does not support online checkout. \n\n## Supported features\n\n-   POS card payments (integrated EFTPOS)\n-   POS refunds\n-   Surcharge support\n-   Crash recovery for incomplete transactions\n\n## What you need\n\n-   A Linkly Cloud account with API credentials (one set per register)\n-   Linkly-compatible EFTPOS terminal(s) connected to Linkly Cloud. Some major banks (including NAB, Westpac) can provide hardware that integrates with Linkly.\n-   Outlets configured in StoreConnect\n\n:::note\nEach register requires its own Linkly Cloud API credentials (API key and API secret). Contact your Linkly account manager to obtain credentials for each register you intend to use.\n:::\n\n## Configure Linkly in StoreConnect\n\n### Add the payment provider\n\n1.  In StoreConnect, go to **Settings \u003e Payments \u003e Payment providers**.\n2.  Select **New**. Complete the fields as follows, then **Save**.\n\n| StoreConnect field | Value                |\n|--------------------|----------------------|\n| Name               | Linkly               |\n| Provider           | Linkly               |\n| API Mode           | sandbox / production |\n\n### Add API credentials\n\nEach register uses its own API credential pair, drawn from a pool you define on the payment provider record. You must add one credential pair to the pool for every register that will use Linkly.\n\nAdd the following to the **API Options** field, with one entry per register:\n\n```yaml\n\nunclaimed_api_creds:\n  - api_key: \"YOUR_API_KEY\"\n    api_secret: \"YOUR_API_SECRET\"\n```\n\nFor multiple registers, add one entry per register:\n\n```yaml\n\nunclaimed_api_creds:\n  - api_key: \"REGISTER_1_API_KEY\"\n    api_secret: \"REGISTER_1_API_SECRET\"\n  - api_key: \"REGISTER_2_API_KEY\"\n    api_secret: \"REGISTER_2_API_SECRET\"\n```\n\nWhen a register pairs its terminal, a credential is automatically claimed from this pool and assigned to that register. If pairing fails, the credential is returned to the pool.\n\n### Configure outlets\n\nTo enable Linkly at specific outlets, add the outlet SFIDs to the **API Options** field:\n\n```yaml\n\npos_outlets:\n  \"YOUR_OUTLET_SFID\": true\n```\n\nTo find an outlet SFID, open the outlet record in StoreConnect. The SFID appears in the browser URL, for example: `a24ao000001lE6zAAE`.\n\n### Enable Linkly as a store variable\n\n1.  In StoreConnect, go to your store and open the **Store Variables** section.\n2.  Select **New**.\n3.  Enter the following values, then **Save**.\n\n| Field | Value                                                |\n|-------|------------------------------------------------------|\n| Name  | POS: Linkly payments                                 |\n| Key   | pos.payment\\_options.card\\_linkly\\_integrated.enabled |\n| Value | true                                                 |\n\n## Pair your terminal\n\nEach register must pair with a Linkly EFTPOS terminal before taking payments. Pairing assigns a unique credential from the pool to the register.\n\n1.  On your EFTPOS terminal, generate a 6-digit pair code. The exact steps vary by terminal model — refer to your terminal documentation or contact Linkly support. On many terminals, you can access this via **Func \u003e 7410 \u003e Terminal Setup \u003e Cloud Comms**.\n2.  In the POS, go to **Settings \u003e Linkly**.\n3.  Enter the 6-digit pair code.\n4.  Select **Pair terminal**.\n5.  When the status shows **Paired \u0026 Connected**, the terminal is ready to use.\n\n:::note\nThe pair code expires after a short time. If pairing fails, generate a new code on the terminal and try again.\n:::\n\n### Terminal connection states\n\n| Status              | Meaning                                                              |\n|---------------------|----------------------------------------------------------------------|\n| Paired \u0026 Connected  | Terminal is paired and the session token is active                   |\n| Disconnected        | Terminal is paired but the session token has expired — select **Reconnect** |\n| Pairing in progress | Pairing request sent, waiting for terminal confirmation              |\n| No setup            | Terminal has not been paired on this register                        |\n\nLinkly bearer tokens refresh automatically in the background 15 minutes before they expire. This prevents the daily timeout that previously required cashiers to re-pair their terminal after overnight inactivity. If a token does expire before the automatic refresh completes, select **Reconnect** to restore the session without re-pairing.\n\nTo disconnect a terminal from a register, select **Unpair** in POS Settings. The register's credential is returned to the unclaimed pool and can be used by another register.\n\n## Take a payment\n\n1.  Add items to the cart and proceed to checkout.\n2.  Select **Linkly** as the payment method.\n3.  Confirm the payment amount.\n4.  Select **Take payment**.\n5.  The EFTPOS terminal prompts the customer to tap, insert, or swipe their card.\n6.  The POS polls the terminal automatically until the transaction completes.\n7.  On success, the payment is recorded and the order is finalised.\n\nYou can select **Cancel transaction** at any point while waiting for the terminal.\n\n## Process a refund\n\n1.  Open the original order and initiate a return.\n2.  Select **Refund** and choose Linkly as the payment method.\n3.  Confirm the refund amount.\n4.  The terminal prompts the customer to present their card.\n5.  On success, the refund is recorded against the original order.\n\n## Crash recovery\n\nIf the POS closes or crashes during a Linkly transaction, a recovery prompt appears the next time the POS is opened on that register. The recovery process automatically checks the transaction status with Linkly Cloud:\n\n-   If the transaction completed on the terminal, the payment is recorded and the order is finalised.\n-   If the transaction did not complete, it is cleared and no payment is recorded.\n\nThis prevents duplicate charges and ensures the order record remains accurate.\n\n## Surcharge\n\nTo apply a surcharge for Linkly card payments, configure a surcharge product on the payment provider record. See [Passing payment surcharges to customers](payment-surcharges) for details."}