> ## Documentation Index
> Fetch the complete documentation index at: https://help.getposbridge.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Payment details on the printed receipt

> Recommended path: PosBridge → Terminals. Checkboxes, template and live preview — paste the generated code once in Shopify.

The recommended way to print tip, card and SumUp reference on the POS receipt is in the app: **PosBridge → Terminals → Payment details on the printed receipt**.

There you set the checkboxes, choose a template and check the live preview. Paste the generated Liquid `img` code once in Shopify. Liquid variables (`posbridge_*`) are optional — for merchants who edit the POS receipt template themselves.

*About once*

<Steps>
  <Step title="Open Terminals">
    Shopify admin → **PosBridge → Terminals**. Section **Payment details on the printed receipt**.
  </Step>

  <Step title="Show the block on the receipt">
    Enable **Show the block on the receipt**. Off: nothing is printed on the receipt.
  </Step>

  <Step title="Fields and template">
    Under **What should be printed?** choose the rows. Empty rows are left out. **Template** is a starting point — everything below stays editable.
  </Step>

  <Step title="Check the preview and save">
    The **Preview · 80 mm receipt paper** shows the block as it will print. Save — **Your code** appears afterwards.
  </Step>
</Steps>

### Paste the code in Shopify

After you save, the app generates an `img` block for the new receipt editor. Paste that same code into the printed receipt template — unchanged.

*about 1 minute*

<Steps>
  <Step title="Shopify admin → Point of Sale → Receipts → Printed receipts" />

  <Step title="Location: 'Default (all locations)'" />

  <Step title="Footer → Add block → Custom Liquid" />

  <Step title="Paste the code unchanged and save" />
</Steps>

```Liquid theme={null}
{% if order.id %}
  <img width="100%"
    src="https://<app-host>/receipt/sumup.svg?v=…&key=…&orderId={{ order.id }}&shop={{ shop.domain }}&country={{ location.country_code }}"
  />
{% endif %}
```

<Note>
  The app fills in the URL and key. Copy the finished block from **Your code** — do not rebuild it by hand. Changes to checkboxes, template or labels take effect after save, without pasting again.
</Note>

### Templates and fields

The template is a starting point. Appearance (divider lines, heading, text size, custom heading) stays editable below.

| Template | Look |
| - | - |
| Clear | Calm and official, like the rest of the receipt. |
| Classic | Receipt look: fixed columns, dotted lines. |
| Minimal | Just the rows, bold values, no frame. |

| Checkbox | Effect |
| - | - |
| Show the block on the receipt | Off: nothing is printed on the receipt. |
| Tip | Row when a tip was chosen on the terminal. |
| Card type (e.g. GIROCARD) | Card scheme, when SumUp returns it. |
| Last 4 digits of the card | Masked, e.g. \*\*\*\*5000. |
| SumUp transaction code | SumUp reference for the payment. |
| Internal payment reference | Internal POSBridge payment ID. |

Empty rows are left out. Leave labels empty = translated automatically.

<Warning>
  Without internet the area stays blank, the rest prints normally. Not shown on return or exchange receipts. Visible after about 1 minute. POS app 11.10 or later.
</Warning>

### Optional: Liquid variables

For merchants who edit the POS receipt template themselves. After a successful payment PosBridge writes cart properties onto the order (`order.note_attributes` / `order.attributes`). The keys come from the POS extension — do not invent additional keys.

Example:

```
{% assign pb_tx = order.note_attributes | where: "name", "posbridge_sumup_tx" | first %}
{% if pb_tx %}{{ pb_tx.value }}{% endif %}
```

| Variable | Contains | Example |
| - | - | - |
| *After a successful payment* | | |
| `posbridge_payment_id` | Internal POSBridge payment ID | pay\_a1b2c3d4 |
| `posbridge_sumup_tx` | SumUp transaction ID | T8F2…XA91 |
| `posbridge_charged_cents` | Charged amount in cents (excl. tip) | 1800 |
| `posbridge_charged_mode` | FULL or PARTIAL | FULL |
| *When SumUp returns card data* | | |
| `posbridge_card_type` | Card scheme / network | GIROCARD |
| `posbridge_card_last4` | Last 4 digits | \*\*\*\*5000 |
| *Only when a tip was chosen on the terminal* | | |
| `posbridge_tip_amount` | Tip (formatted) | 2.00 € |
| `posbridge_tip_subtotal` | Cart without tip (formatted) | 18.00 € |
| `posbridge_tip_total` | Total incl. tip (formatted) | 20.00 € |

Currency format of the formatted amounts: Settings → POS Extension → **Currency format on receipt**.

<Warning>
  `posbridge_charged_cents` is an integer in cents — not euros. 1800 = €18.00. The formatted tip fields are written only when a tip was chosen on the terminal.
</Warning>

<Tip>
  For tax questions about tips consult your tax advisor — treatment varies by country and business type.
</Tip>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.