@using BTCPayServer.Services.Apps @addTagHelper *, BundlerMinifier.TagHelpers @model UpdatePointOfSaleViewModel @{ ViewData.SetActivePage(AppsNavPages.Update, "Update Point of Sale", Model.Id); }

@ViewData["Title"]

Appearance

Choose the point of sale style for your customers.

Discounts

Not recommended for customer self-checkout.

Custom Payments

Tips

Additional Options

You can host point of sale buttons in an external website with the following code.

@if (Model.Example1 != null) { For anything with a custom amount
@Model.Example1
} @if (Model.Example2 != null) { For a specific item of your template
@Model.Example2
}

You can embed this POS via an iframe. @{ var iframe = $""; }
@iframe

A POST callback will be sent to notification with the following form will be sent to notificationUrl once the enough is paid and once again once there is enough confirmations to the payment:

@Model.ExampleCallback

Never trust anything but id, ignore the other fields completely, an attacker can spoof those, they are present only for backward compatibility reason:

  • Send a GET request to https://btcpay.example.com/invoices/{invoiceId} with Content-Type: application/json; Authorization: Basic YourLegacyAPIkey", Legacy API key can be created with Access Tokens in Store settings
  • Verify that the orderId is from your backend, that the price is correct and that status is settled
  • You can then ship your order

Other Actions

Delete this app
@section PageHeadContent { } @section PageFootContent { }