2356 lines
81 KiB
HTML
2356 lines
81 KiB
HTML
|
|
<!doctype html>
|
|
<html lang="en" class="no-js">
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
|
|
|
|
|
|
|
|
<link rel="prev" href="../mailboxes/">
|
|
|
|
|
|
<link rel="next" href="../print/">
|
|
|
|
|
|
|
|
|
|
|
|
<link rel="icon" href="../../assets/external/postalpoint.app/images/favicon-voxel.png">
|
|
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.1">
|
|
|
|
|
|
|
|
<title>Pos - PostalPoint Plugin Development</title>
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/stylesheets/main.484c7ddc.min.css">
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/stylesheets/palette.ab4e12ef.min.css">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/external/fonts.googleapis.com/css.49ea35f2.css">
|
|
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/styles.css">
|
|
|
|
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Matomo -->
|
|
<script>
|
|
var _paq = window._paq = window._paq || [];
|
|
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
|
_paq.push(['trackPageView']);
|
|
_paq.push(['enableLinkTracking']);
|
|
(function() {
|
|
var u="https://analytics.netsyms.net/";
|
|
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
|
_paq.push(['setSiteId', '57']);
|
|
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
|
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
|
})();
|
|
</script>
|
|
<!-- End Matomo Code -->
|
|
|
|
<script>"undefined"!=typeof __md_analytics&&__md_analytics()</script>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="blue" data-md-color-accent="indigo">
|
|
|
|
|
|
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
|
|
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
|
|
<label class="md-overlay" for="__drawer"></label>
|
|
<div data-md-component="skip">
|
|
|
|
|
|
<a href="#pos-object" class="md-skip">
|
|
Skip to content
|
|
</a>
|
|
|
|
</div>
|
|
<div data-md-component="announce">
|
|
|
|
</div>
|
|
|
|
<div data-md-color-scheme="default" data-md-component="outdated" hidden>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<header class="md-header md-header--shadow" data-md-component="header">
|
|
<nav class="md-header__inner md-grid" aria-label="Header">
|
|
<a href="https://postalpoint.app" title="PostalPoint Plugin Development" class="md-header__button md-logo" aria-label="PostalPoint Plugin Development" data-md-component="logo">
|
|
|
|
<img src="../../assets/logo.svg" alt="logo">
|
|
|
|
</a>
|
|
<label class="md-header__button md-icon" for="__drawer">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
|
|
</label>
|
|
<div class="md-header__title" data-md-component="header-title">
|
|
<div class="md-header__ellipsis">
|
|
<div class="md-header__topic">
|
|
<span class="md-ellipsis">
|
|
PostalPoint Plugin Development
|
|
</span>
|
|
</div>
|
|
<div class="md-header__topic" data-md-component="header-topic">
|
|
<span class="md-ellipsis">
|
|
|
|
Pos
|
|
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<label class="md-header__button md-icon" for="__search">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
|
</label>
|
|
<div class="md-search" data-md-component="search" role="dialog">
|
|
<label class="md-search__overlay" for="__search"></label>
|
|
<div class="md-search__inner" role="search">
|
|
<form class="md-search__form" name="search">
|
|
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
|
|
<label class="md-search__icon md-icon" for="__search">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
|
|
</label>
|
|
<nav class="md-search__options" aria-label="Search">
|
|
|
|
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
|
|
</button>
|
|
</nav>
|
|
|
|
</form>
|
|
<div class="md-search__output">
|
|
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
|
|
<div class="md-search-result" data-md-component="search-result">
|
|
<div class="md-search-result__meta">
|
|
Initializing search
|
|
</div>
|
|
<ol class="md-search-result__list" role="presentation"></ol>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
</nav>
|
|
|
|
</header>
|
|
|
|
<div class="md-container" data-md-component="container">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<main class="md-main" data-md-component="main">
|
|
<div class="md-main__inner md-grid">
|
|
|
|
|
|
|
|
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
|
<div class="md-sidebar__scrollwrap">
|
|
<div class="md-sidebar__inner">
|
|
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
|
|
<label class="md-nav__title" for="__drawer">
|
|
<a href="https://postalpoint.app" title="PostalPoint Plugin Development" class="md-nav__button md-logo" aria-label="PostalPoint Plugin Development" data-md-component="logo">
|
|
|
|
<img src="../../assets/logo.svg" alt="logo">
|
|
|
|
</a>
|
|
PostalPoint Plugin Development
|
|
</label>
|
|
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../.." class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Overview
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Docs
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
|
|
Docs
|
|
|
|
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/Address/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Address object
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/Carrier_Service/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
getCarrierName and getServiceName
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/Database/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Database Drivers
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/Events/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Event Bus
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/FormPS1583/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
FormPS1583 object
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/Parcel/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Parcel/Package Object
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/Receipt/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Receipt Objects
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/ReceiptPrinter/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Receipt Printer driver functions
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Docs/TrackingBarcode/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
TrackingBarcode class
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Examples
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
|
|
Examples
|
|
|
|
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Examples/01Minimal/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Minimal Plugin
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Examples/02Basic/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Basic Plugin
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Examples/03Shipping/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Shipping Plugin
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Examples/04CardProcessor/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Card Payments
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Examples/05CryptoProcessor/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Cryptocurrency Payments
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" checked>
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Plugin API
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="true">
|
|
<label class="md-nav__title" for="__nav_4">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
|
|
|
|
Plugin API
|
|
|
|
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../barcode/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Barcode
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../database/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Database
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../fs/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Fs
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../global%20functions/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Global functions
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../graphics/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Graphics
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../i18n/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
I18n
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../kiosk/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Kiosk
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../mailboxes/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Mailboxes
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--active">
|
|
|
|
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
|
|
|
|
|
|
|
|
<label class="md-nav__link md-nav__link--active" for="__toc">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Pos
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<a href="./" class="md-nav__link md-nav__link--active">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Pos
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__title" for="__toc">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Table of contents
|
|
</label>
|
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#pos-object" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos : object
|
|
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="pos : object">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posreceiptitem" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.ReceiptItem
|
|
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="pos.ReceiptItem">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#new-receiptitemid-label-text-priceeach-quantity-cost-taxrate-taxableamount" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
new ReceiptItem(id, label, text, priceEach, quantity, cost, taxrate, taxableAmount)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posreceiptpayment" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.ReceiptPayment
|
|
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="pos.ReceiptPayment">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#new-receiptpaymentamount-type-text" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
new ReceiptPayment(amount, type, text)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posaddreceiptitemitem" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.addReceiptItem(item)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posaddreceiptpaymentpayment" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.addReceiptPayment(payment)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posaddonscreenpaymentlogmsg" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.addOnscreenPaymentLog(msg)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posgetreceiptid-string" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.getReceiptID() ⇒ string
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posonreceiptchangef" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.onReceiptChange(f)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posontransactionfinishedf" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
~~pos.onTransactionFinished(f)~~
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posregistercardprocessorf" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.registerCardProcessor(f)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posregistercryptoprocessorf" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.registerCryptoProcessor(f)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posgetshippingsalestax-object" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.getShippingSalesTax() ⇒ Object
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../print/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Print
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../reports/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Reports
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../settings/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Settings
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../shipping/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Shipping
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../storage/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Storage
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../ui/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Ui
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../user/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
User
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../util/" class="md-nav__link">
|
|
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
|
|
Util
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
|
|
<div class="md-sidebar__scrollwrap">
|
|
<div class="md-sidebar__inner">
|
|
|
|
|
|
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__title" for="__toc">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Table of contents
|
|
</label>
|
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#pos-object" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos : object
|
|
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="pos : object">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posreceiptitem" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.ReceiptItem
|
|
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="pos.ReceiptItem">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#new-receiptitemid-label-text-priceeach-quantity-cost-taxrate-taxableamount" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
new ReceiptItem(id, label, text, priceEach, quantity, cost, taxrate, taxableAmount)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posreceiptpayment" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.ReceiptPayment
|
|
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="pos.ReceiptPayment">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#new-receiptpaymentamount-type-text" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
new ReceiptPayment(amount, type, text)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posaddreceiptitemitem" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.addReceiptItem(item)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posaddreceiptpaymentpayment" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.addReceiptPayment(payment)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posaddonscreenpaymentlogmsg" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.addOnscreenPaymentLog(msg)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posgetreceiptid-string" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.getReceiptID() ⇒ string
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posonreceiptchangef" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.onReceiptChange(f)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posontransactionfinishedf" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
~~pos.onTransactionFinished(f)~~
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posregistercardprocessorf" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.registerCardProcessor(f)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posregistercryptoprocessorf" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.registerCryptoProcessor(f)
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#posgetshippingsalestax-object" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
|
|
pos.getShippingSalesTax() ⇒ Object
|
|
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div class="md-content" data-md-component="content">
|
|
|
|
<article class="md-content__inner md-typeset">
|
|
|
|
|
|
|
|
|
|
|
|
<h1>Pos</h1>
|
|
|
|
<p><a name="pos"></a></p>
|
|
<h2 id="pos-object">pos : <code>object</code></h2>
|
|
<p>Point of Sale, transaction, and payment-related functionality.</p>
|
|
<p><strong>Kind</strong>: global namespace </p>
|
|
<ul>
|
|
<li><a href="#pos">pos</a> : <code>object</code><ul>
|
|
<li><a href="#pos.ReceiptItem">.ReceiptItem</a><ul>
|
|
<li><a href="#new_pos.ReceiptItem_new">new ReceiptItem(id, label, text, priceEach, quantity, cost, taxrate, taxableAmount)</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#pos.ReceiptPayment">.ReceiptPayment</a><ul>
|
|
<li><a href="#new_pos.ReceiptPayment_new">new ReceiptPayment(amount, type, text)</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#pos.addReceiptItem">.addReceiptItem(item)</a></li>
|
|
<li><a href="#pos.addReceiptPayment">.addReceiptPayment(payment)</a></li>
|
|
<li><a href="#pos.addOnscreenPaymentLog">.addOnscreenPaymentLog(msg)</a></li>
|
|
<li><a href="#pos.getReceiptID">.getReceiptID()</a> ⇒ <code>string</code></li>
|
|
<li><a href="#pos.onReceiptChange">.onReceiptChange(f)</a></li>
|
|
<li>~~<a href="#pos.onTransactionFinished">.onTransactionFinished(f)</a>~~</li>
|
|
<li><a href="#pos.registerCardProcessor">.registerCardProcessor(f)</a></li>
|
|
<li><a href="#pos.registerCryptoProcessor">.registerCryptoProcessor(f)</a></li>
|
|
<li><a href="#pos.getShippingSalesTax">.getShippingSalesTax()</a> ⇒ <code>Object</code></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<p><a name="pos.ReceiptItem"></a></p>
|
|
<h3 id="posreceiptitem">pos.ReceiptItem</h3>
|
|
<p><strong>Kind</strong>: static class of <a href="#pos"><code>pos</code></a><br />
|
|
<strong>Properties</strong></p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Type</th>
|
|
<th>Default</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>merch</td>
|
|
<td><code>boolean</code></td>
|
|
<td><code>false</code></td>
|
|
<td>True if merchandise, false if shipping.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>barcode</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>Item barcode, or tracking number if <code>merch = false</code>.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>qty</td>
|
|
<td><code>number</code></td>
|
|
<td><code>1</code></td>
|
|
<td>Item quantity.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>retailPrice</td>
|
|
<td><code>number</code></td>
|
|
<td></td>
|
|
<td>The calculated retail/markup price for a shipment, regardless of actual sale price. If unset, defaults to priceEach * qty.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>taxRate</td>
|
|
<td><code>number</code></td>
|
|
<td><code>0</code></td>
|
|
<td>Tax rate</td>
|
|
</tr>
|
|
<tr>
|
|
<td>toAddress</td>
|
|
<td><code>Address</code></td>
|
|
<td></td>
|
|
<td>Shipping destination address.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>fromAddress</td>
|
|
<td><code>Address</code></td>
|
|
<td></td>
|
|
<td>Shipping return address.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>carrier</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>Shipping carrier.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>service</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>Shipping service.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>category</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>Merchandise/item category.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>electronicReturnReceipt</td>
|
|
<td><code>boolean</code></td>
|
|
<td><code>false</code></td>
|
|
<td>If true, the customer's receipt will have instructions on retrieveing the return receipt from USPS.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>mailboxDays</td>
|
|
<td><code>number</code></td>
|
|
<td><code>0</code></td>
|
|
<td>Number of days this item adds to a mailbox's expiration date.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>mailboxMonths</td>
|
|
<td><code>number</code></td>
|
|
<td><code>0</code></td>
|
|
<td>Number of months this item adds to a mailbox's expiration date.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>mailboxNumber</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>Mailbox number to apply <code>mailboxDays</code> or <code>mailboxMonths</code> to after checkout.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>setCertifiedInfo()</td>
|
|
<td><code>function</code></td>
|
|
<td></td>
|
|
<td>Set Certified Mail receipt data. <code>setCertifiedInfo(trackingNumber, certfee, extrafees, postage, date, location, toaddress)</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td>toJSON()</td>
|
|
<td><code>function</code></td>
|
|
<td></td>
|
|
<td>Get the item as an object suitable for JSON encoding.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>fromJSON(json)</td>
|
|
<td><code>static_function</code></td>
|
|
<td></td>
|
|
<td>Returns a ReceiptItem created from the object returned by <code>item.toJSON()</code>.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="new_pos.ReceiptItem_new"></a></p>
|
|
<h4 id="new-receiptitemid-label-text-priceeach-quantity-cost-taxrate-taxableamount">new ReceiptItem(id, label, text, priceEach, quantity, cost, taxrate, taxableAmount)</h4>
|
|
<p>A class representing a sale item in the current transaction.</p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
<th>Default</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>id</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>Unique ID number for this item (UPC code, inventory number, etc). Used to deduplicate and merge line items on the receipt. Unique items (like shipping labels) should be a unique/random ID.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>label</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>One-line item information.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>text</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>Extra multi-line item information.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>priceEach</td>
|
|
<td><code>number</code></td>
|
|
<td></td>
|
|
<td>Sale price per unit.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>quantity</td>
|
|
<td><code>number</code></td>
|
|
<td></td>
|
|
<td>Number of units.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>cost</td>
|
|
<td><code>number</code></td>
|
|
<td></td>
|
|
<td>Cost per unit. Used for automatic expense tracking.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>taxrate</td>
|
|
<td><code>number</code></td>
|
|
<td><code>0.0</code></td>
|
|
<td>Examples: 0 (for 0%), 0.05 (for 5%), etc</td>
|
|
</tr>
|
|
<tr>
|
|
<td>taxableAmount</td>
|
|
<td><code>string</code></td>
|
|
<td></td>
|
|
<td>The part of the sale price that's taxable. "" for default (all), "markup" for only taxing profit.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="pos.ReceiptPayment"></a></p>
|
|
<h3 id="posreceiptpayment">pos.ReceiptPayment</h3>
|
|
<p><strong>Kind</strong>: static class of <a href="#pos"><code>pos</code></a><br />
|
|
<strong>Properties</strong></p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Type</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>label</td>
|
|
<td><code>string</code></td>
|
|
<td>(readonly) The human-readable string of the payment type.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>id</td>
|
|
<td><code>string</code></td>
|
|
<td>Automatically-generated unique ID for this payment.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>toJSON()</td>
|
|
<td><code>function</code></td>
|
|
<td>Get the payment as an object suitable for JSON encoding.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>fromJSON(json)</td>
|
|
<td><code>static_function</code></td>
|
|
<td>Returns a ReceiptPayment created from the object returned by <code>payment.toJSON()</code>.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="new_pos.ReceiptPayment_new"></a></p>
|
|
<h4 id="new-receiptpaymentamount-type-text">new ReceiptPayment(amount, type, text)</h4>
|
|
<p>A class representing a payment entry for the current transaction.</p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>amount</td>
|
|
<td><code>number</code></td>
|
|
<td>amount paid</td>
|
|
</tr>
|
|
<tr>
|
|
<td>type</td>
|
|
<td><code>string</code></td>
|
|
<td>payment type</td>
|
|
</tr>
|
|
<tr>
|
|
<td>text</td>
|
|
<td><code>string</code></td>
|
|
<td>extra data (credit card info, etc)</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="pos.addReceiptItem"></a></p>
|
|
<h3 id="posaddreceiptitemitem">pos.addReceiptItem(item)</h3>
|
|
<p>Add an item (shipment, merchandise, etc) to the current transaction.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a> </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>item</td>
|
|
<td><code>ReceiptItem</code></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="pos.addReceiptPayment"></a></p>
|
|
<h3 id="posaddreceiptpaymentpayment">pos.addReceiptPayment(payment)</h3>
|
|
<p>Add a payment to the current transaction/receipt.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a> </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>payment</td>
|
|
<td><code>ReceiptPayment</code></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="pos.addOnscreenPaymentLog"></a></p>
|
|
<h3 id="posaddonscreenpaymentlogmsg">pos.addOnscreenPaymentLog(msg)</h3>
|
|
<p>Append a line of text to the onscreen log displayed during credit card processing.
|
|
Not shown in kiosk mode.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a> </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>msg</td>
|
|
<td><code>string</code></td>
|
|
<td>Line of text to add to the log.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="pos.getReceiptID"></a></p>
|
|
<h3 id="posgetreceiptid-string">pos.getReceiptID() ⇒ <code>string</code></h3>
|
|
<p>Get the unique alphanumeric ID for the current transaction/receipt.
|
|
This is the same code printed on receipts and used in digital receipt URLs.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a><br />
|
|
<a name="pos.onReceiptChange"></a></p>
|
|
<h3 id="posonreceiptchangef">pos.onReceiptChange(f)</h3>
|
|
<p>Specify a function to be called whenever the transaction data/receipt is changed.
|
|
It is passed a single argument, a Receipt object containing the entire transaction so far.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a> </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>f</td>
|
|
<td><code>function</code></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="pos.onTransactionFinished"></a></p>
|
|
<h3 id="posontransactionfinishedf">~~pos.onTransactionFinished(f)~~</h3>
|
|
<p><strong><em>Deprecated</em></strong></p>
|
|
<p>The supplied function will be called when a transaction is finished.
|
|
It is passed a single argument, a Receipt object containing the entire transaction.
|
|
Recommended to listen for the <code>transactionFinished</code> event instead.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a> </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>f</td>
|
|
<td><code>function</code></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><a name="pos.registerCardProcessor"></a></p>
|
|
<h3 id="posregistercardprocessorf">pos.registerCardProcessor(f)</h3>
|
|
<p>Register as a card payment processor.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a> </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>f</td>
|
|
<td><code>Object</code></td>
|
|
<td>Payment processor functions</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><strong>Example</strong><br />
|
|
<div class="language-js highlight"><pre><span></span><code><span id="__span-0-1"><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">registerCardProcessor</span><span class="p">({</span>
|
|
</span><span id="__span-0-2"><a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="w"> </span><span class="nx">name</span><span class="o">:</span><span class="w"> </span><span class="s2">"Demo Card Processor"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Shown in PostalPoint settings menu</span>
|
|
</span><span id="__span-0-3"><a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a><span class="w"> </span><span class="nx">init</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-4"><a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a><span class="w"> </span><span class="c1">// This will run after PostalPoint launches</span>
|
|
</span><span id="__span-0-5"><a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a><span class="w"> </span><span class="c1">// and before any payments are processed.</span>
|
|
</span><span id="__span-0-6"><a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a><span class="w"> </span><span class="c1">// In some situations it might run multiple times in a session.</span>
|
|
</span><span id="__span-0-7"><a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-8"><a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a><span class="w"> </span><span class="nx">checkout</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">({</span><span class="nx">amount</span><span class="p">,</span><span class="w"> </span><span class="nx">capture</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">})</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-9"><a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a><span class="w"> </span><span class="c1">// Charge a credit card using a card reader device.</span>
|
|
</span><span id="__span-0-10"><a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a><span class="w"> </span><span class="c1">// amount is in pennies (or the equivalent base unit in the local currency).</span>
|
|
</span><span id="__span-0-11"><a id="__codelineno-0-11" name="__codelineno-0-11" href="#__codelineno-0-11"></a>
|
|
</span><span id="__span-0-12"><a id="__codelineno-0-12" name="__codelineno-0-12" href="#__codelineno-0-12"></a><span class="w"> </span><span class="c1">// Add a payment to the receipt with the total amount paid, card details, etc.</span>
|
|
</span><span id="__span-0-13"><a id="__codelineno-0-13" name="__codelineno-0-13" href="#__codelineno-0-13"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">addReceiptPayment</span><span class="p">(</span>
|
|
</span><span id="__span-0-14"><a id="__codelineno-0-14" name="__codelineno-0-14" href="#__codelineno-0-14"></a><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">ReceiptPayment</span><span class="p">(</span>
|
|
</span><span id="__span-0-15"><a id="__codelineno-0-15" name="__codelineno-0-15" href="#__codelineno-0-15"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">i18n</span><span class="p">.</span><span class="nx">currencyMinorToMajor</span><span class="p">(</span><span class="nx">amount</span><span class="p">),</span>
|
|
</span><span id="__span-0-16"><a id="__codelineno-0-16" name="__codelineno-0-16" href="#__codelineno-0-16"></a><span class="w"> </span><span class="s2">"card"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Payment type. Accepted values are card, ach, crypto, cash,</span>
|
|
</span><span id="__span-0-17"><a id="__codelineno-0-17" name="__codelineno-0-17" href="#__codelineno-0-17"></a><span class="w"> </span><span class="c1">// check, account, and free. Other types will be displayed as-is.</span>
|
|
</span><span id="__span-0-18"><a id="__codelineno-0-18" name="__codelineno-0-18" href="#__codelineno-0-18"></a><span class="w"> </span><span class="s2">"Demo Card\nCardholder Name, etc\nMore info for receipt"</span><span class="w"> </span><span class="c1">// Additional text for receipt</span>
|
|
</span><span id="__span-0-19"><a id="__codelineno-0-19" name="__codelineno-0-19" href="#__codelineno-0-19"></a><span class="w"> </span><span class="p">)</span>
|
|
</span><span id="__span-0-20"><a id="__codelineno-0-20" name="__codelineno-0-20" href="#__codelineno-0-20"></a><span class="w"> </span><span class="p">);</span>
|
|
</span><span id="__span-0-21"><a id="__codelineno-0-21" name="__codelineno-0-21" href="#__codelineno-0-21"></a>
|
|
</span><span id="__span-0-22"><a id="__codelineno-0-22" name="__codelineno-0-22" href="#__codelineno-0-22"></a>
|
|
</span><span id="__span-0-23"><a id="__codelineno-0-23" name="__codelineno-0-23" href="#__codelineno-0-23"></a><span class="w"> </span><span class="c1">// Must return boolean false if the payment failed.</span>
|
|
</span><span id="__span-0-24"><a id="__codelineno-0-24" name="__codelineno-0-24" href="#__codelineno-0-24"></a><span class="w"> </span><span class="c1">// Otherwise it will be assumed it succeeded.</span>
|
|
</span><span id="__span-0-25"><a id="__codelineno-0-25" name="__codelineno-0-25" href="#__codelineno-0-25"></a><span class="w"> </span><span class="c1">// If an error is encountered, handle it and return false.</span>
|
|
</span><span id="__span-0-26"><a id="__codelineno-0-26" name="__codelineno-0-26" href="#__codelineno-0-26"></a><span class="w"> </span><span class="c1">// It's recommended to display a short "payment failed" error</span>
|
|
</span><span id="__span-0-27"><a id="__codelineno-0-27" name="__codelineno-0-27" href="#__codelineno-0-27"></a><span class="w"> </span><span class="c1">// message via global.apis.alert, and outputting more details</span>
|
|
</span><span id="__span-0-28"><a id="__codelineno-0-28" name="__codelineno-0-28" href="#__codelineno-0-28"></a><span class="w"> </span><span class="c1">// via global.apis.pos.addOnscreenPaymentLog.</span>
|
|
</span><span id="__span-0-29"><a id="__codelineno-0-29" name="__codelineno-0-29" href="#__codelineno-0-29"></a>
|
|
</span><span id="__span-0-30"><a id="__codelineno-0-30" name="__codelineno-0-30" href="#__codelineno-0-30"></a><span class="w"> </span><span class="c1">// If capture is false, perform an authorization but don't capture,</span>
|
|
</span><span id="__span-0-31"><a id="__codelineno-0-31" name="__codelineno-0-31" href="#__codelineno-0-31"></a><span class="w"> </span><span class="c1">// and return a value you can use to identify the authorization later</span>
|
|
</span><span id="__span-0-32"><a id="__codelineno-0-32" name="__codelineno-0-32" href="#__codelineno-0-32"></a><span class="w"> </span><span class="c1">// and complete it. The value will be passed back to finishPayment, below.</span>
|
|
</span><span id="__span-0-33"><a id="__codelineno-0-33" name="__codelineno-0-33" href="#__codelineno-0-33"></a><span class="w"> </span><span class="c1">// This is used mainly for the self-serve kiosk mode, in case the label fails</span>
|
|
</span><span id="__span-0-34"><a id="__codelineno-0-34" name="__codelineno-0-34" href="#__codelineno-0-34"></a><span class="w"> </span><span class="c1">// to be purchased/generated by the carrier.</span>
|
|
</span><span id="__span-0-35"><a id="__codelineno-0-35" name="__codelineno-0-35" href="#__codelineno-0-35"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-36"><a id="__codelineno-0-36" name="__codelineno-0-36" href="#__codelineno-0-36"></a><span class="w"> </span><span class="nx">cancelCheckout</span><span class="o">:</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-37"><a id="__codelineno-0-37" name="__codelineno-0-37" href="#__codelineno-0-37"></a><span class="w"> </span><span class="c1">// The user has requested the card transaction be canceled before it completes.</span>
|
|
</span><span id="__span-0-38"><a id="__codelineno-0-38" name="__codelineno-0-38" href="#__codelineno-0-38"></a><span class="w"> </span><span class="c1">// Reset the terminal to its resting state, clear its screen, etc.</span>
|
|
</span><span id="__span-0-39"><a id="__codelineno-0-39" name="__codelineno-0-39" href="#__codelineno-0-39"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-40"><a id="__codelineno-0-40" name="__codelineno-0-40" href="#__codelineno-0-40"></a><span class="w"> </span><span class="nx">finishPayment</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">({</span><span class="nx">checkoutResponse</span><span class="p">})</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-41"><a id="__codelineno-0-41" name="__codelineno-0-41" href="#__codelineno-0-41"></a><span class="w"> </span><span class="c1">// Finish a payment that was authorized but not captured</span>
|
|
</span><span id="__span-0-42"><a id="__codelineno-0-42" name="__codelineno-0-42" href="#__codelineno-0-42"></a><span class="w"> </span><span class="c1">// because checkout() was called with capture = false.</span>
|
|
</span><span id="__span-0-43"><a id="__codelineno-0-43" name="__codelineno-0-43" href="#__codelineno-0-43"></a><span class="w"> </span><span class="c1">// If payment was already captured and added</span>
|
|
</span><span id="__span-0-44"><a id="__codelineno-0-44" name="__codelineno-0-44" href="#__codelineno-0-44"></a><span class="w"> </span><span class="c1">// to the receipt, just return true.</span>
|
|
</span><span id="__span-0-45"><a id="__codelineno-0-45" name="__codelineno-0-45" href="#__codelineno-0-45"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">addReceiptPayment</span><span class="p">(</span>
|
|
</span><span id="__span-0-46"><a id="__codelineno-0-46" name="__codelineno-0-46" href="#__codelineno-0-46"></a><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">ReceiptPayment</span><span class="p">(</span>
|
|
</span><span id="__span-0-47"><a id="__codelineno-0-47" name="__codelineno-0-47" href="#__codelineno-0-47"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">i18n</span><span class="p">.</span><span class="nx">currencyMinorToMajor</span><span class="p">(</span><span class="nx">amount</span><span class="p">),</span>
|
|
</span><span id="__span-0-48"><a id="__codelineno-0-48" name="__codelineno-0-48" href="#__codelineno-0-48"></a><span class="w"> </span><span class="s2">"card"</span><span class="p">,</span>
|
|
</span><span id="__span-0-49"><a id="__codelineno-0-49" name="__codelineno-0-49" href="#__codelineno-0-49"></a><span class="w"> </span><span class="s2">"Demo Card\nCardholder Name, etc\nMore info for receipt"</span>
|
|
</span><span id="__span-0-50"><a id="__codelineno-0-50" name="__codelineno-0-50" href="#__codelineno-0-50"></a><span class="w"> </span><span class="p">)</span>
|
|
</span><span id="__span-0-51"><a id="__codelineno-0-51" name="__codelineno-0-51" href="#__codelineno-0-51"></a><span class="w"> </span><span class="p">);</span>
|
|
</span><span id="__span-0-52"><a id="__codelineno-0-52" name="__codelineno-0-52" href="#__codelineno-0-52"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-53"><a id="__codelineno-0-53" name="__codelineno-0-53" href="#__codelineno-0-53"></a><span class="w"> </span><span class="nx">updateCartDisplay</span><span class="o">:</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">(</span><span class="nx">receipt</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-54"><a id="__codelineno-0-54" name="__codelineno-0-54" href="#__codelineno-0-54"></a><span class="w"> </span><span class="c1">// Show transaction data on the card reader display.</span>
|
|
</span><span id="__span-0-55"><a id="__codelineno-0-55" name="__codelineno-0-55" href="#__codelineno-0-55"></a><span class="w"> </span><span class="c1">// This function is called when the "cart" or total changes.</span>
|
|
</span><span id="__span-0-56"><a id="__codelineno-0-56" name="__codelineno-0-56" href="#__codelineno-0-56"></a><span class="w"> </span><span class="c1">// `receipt` is a receipt object, see docs for details.</span>
|
|
</span><span id="__span-0-57"><a id="__codelineno-0-57" name="__codelineno-0-57" href="#__codelineno-0-57"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-58"><a id="__codelineno-0-58" name="__codelineno-0-58" href="#__codelineno-0-58"></a><span class="w"> </span><span class="nx">checkoutSavedMethod</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">({</span><span class="nx">customerID</span><span class="p">,</span><span class="w"> </span><span class="nx">paymentMethodID</span><span class="p">,</span><span class="w"> </span><span class="nx">amount</span><span class="p">})</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-59"><a id="__codelineno-0-59" name="__codelineno-0-59" href="#__codelineno-0-59"></a><span class="w"> </span><span class="c1">// Same as checkout() except using a payment method already on file.</span>
|
|
</span><span id="__span-0-60"><a id="__codelineno-0-60" name="__codelineno-0-60" href="#__codelineno-0-60"></a><span class="w"> </span><span class="c1">// customerID and paymentMethodID are provided by getSavedPaymentMethods below.</span>
|
|
</span><span id="__span-0-61"><a id="__codelineno-0-61" name="__codelineno-0-61" href="#__codelineno-0-61"></a>
|
|
</span><span id="__span-0-62"><a id="__codelineno-0-62" name="__codelineno-0-62" href="#__codelineno-0-62"></a><span class="w"> </span><span class="c1">// Must return true upon success.</span>
|
|
</span><span id="__span-0-63"><a id="__codelineno-0-63" name="__codelineno-0-63" href="#__codelineno-0-63"></a><span class="w"> </span><span class="c1">// If the payment is not successful, and you didn't throw an Error to show the user,</span>
|
|
</span><span id="__span-0-64"><a id="__codelineno-0-64" name="__codelineno-0-64" href="#__codelineno-0-64"></a><span class="w"> </span><span class="c1">// then `return false` instead and it'll appear that the user's action to start the payment did nothing.</span>
|
|
</span><span id="__span-0-65"><a id="__codelineno-0-65" name="__codelineno-0-65" href="#__codelineno-0-65"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
|
|
</span><span id="__span-0-66"><a id="__codelineno-0-66" name="__codelineno-0-66" href="#__codelineno-0-66"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-67"><a id="__codelineno-0-67" name="__codelineno-0-67" href="#__codelineno-0-67"></a><span class="w"> </span><span class="nx">saveCardForOfflineUse</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">({</span><span class="nx">statusCallback</span><span class="p">,</span><span class="w"> </span><span class="nx">customerUUID</span><span class="p">,</span><span class="w"> </span><span class="nx">name</span><span class="p">,</span>
|
|
</span><span id="__span-0-68"><a id="__codelineno-0-68" name="__codelineno-0-68" href="#__codelineno-0-68"></a><span class="w"> </span><span class="nx">company</span><span class="p">,</span><span class="w"> </span><span class="nx">street1</span><span class="p">,</span><span class="w"> </span><span class="nx">street2</span><span class="p">,</span><span class="w"> </span><span class="nx">city</span><span class="p">,</span><span class="w"> </span><span class="nx">state</span><span class="p">,</span><span class="w"> </span><span class="nx">zip</span><span class="p">,</span><span class="w"> </span><span class="nx">country</span><span class="p">,</span><span class="w"> </span><span class="nx">email</span><span class="p">,</span><span class="w"> </span><span class="nx">phone</span><span class="p">})</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-69"><a id="__codelineno-0-69" name="__codelineno-0-69" href="#__codelineno-0-69"></a><span class="w"> </span><span class="c1">// Use the card reader to capture an in-person card and save it for offline use.</span>
|
|
</span><span id="__span-0-70"><a id="__codelineno-0-70" name="__codelineno-0-70" href="#__codelineno-0-70"></a><span class="w"> </span><span class="c1">// Provided details are the customer's info, which might be empty strings except for the customerUUID.</span>
|
|
</span><span id="__span-0-71"><a id="__codelineno-0-71" name="__codelineno-0-71" href="#__codelineno-0-71"></a><span class="w"> </span><span class="c1">// Saved card details must be tied to the customerUUID, as that's how saved cards are looked up.</span>
|
|
</span><span id="__span-0-72"><a id="__codelineno-0-72" name="__codelineno-0-72" href="#__codelineno-0-72"></a>
|
|
</span><span id="__span-0-73"><a id="__codelineno-0-73" name="__codelineno-0-73" href="#__codelineno-0-73"></a><span class="w"> </span><span class="c1">// statusCallback(string, boolean) updates the progress message on the cashier's screen.</span>
|
|
</span><span id="__span-0-74"><a id="__codelineno-0-74" name="__codelineno-0-74" href="#__codelineno-0-74"></a><span class="w"> </span><span class="c1">// If the boolean is true, the progress message is replaced with a confirmation message.</span>
|
|
</span><span id="__span-0-75"><a id="__codelineno-0-75" name="__codelineno-0-75" href="#__codelineno-0-75"></a><span class="w"> </span><span class="nx">statusCallback</span><span class="p">(</span><span class="s2">"Saving card details..."</span><span class="p">,</span><span class="w"> </span><span class="kc">false</span><span class="p">);</span>
|
|
</span><span id="__span-0-76"><a id="__codelineno-0-76" name="__codelineno-0-76" href="#__codelineno-0-76"></a>
|
|
</span><span id="__span-0-77"><a id="__codelineno-0-77" name="__codelineno-0-77" href="#__codelineno-0-77"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span><span class="w"> </span><span class="c1">// Card saved to customer</span>
|
|
</span><span id="__span-0-78"><a id="__codelineno-0-78" name="__codelineno-0-78" href="#__codelineno-0-78"></a><span class="w"> </span><span class="c1">// If an error occurred, you can throw it and the error</span>
|
|
</span><span id="__span-0-79"><a id="__codelineno-0-79" name="__codelineno-0-79" href="#__codelineno-0-79"></a><span class="w"> </span><span class="c1">// message will be displayed to the cashier.</span>
|
|
</span><span id="__span-0-80"><a id="__codelineno-0-80" name="__codelineno-0-80" href="#__codelineno-0-80"></a><span class="w"> </span><span class="c1">// Alternatively, return boolean false and display the error</span>
|
|
</span><span id="__span-0-81"><a id="__codelineno-0-81" name="__codelineno-0-81" href="#__codelineno-0-81"></a><span class="w"> </span><span class="c1">// yourself with global.apis.alert(message, title) or something.</span>
|
|
</span><span id="__span-0-82"><a id="__codelineno-0-82" name="__codelineno-0-82" href="#__codelineno-0-82"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-83"><a id="__codelineno-0-83" name="__codelineno-0-83" href="#__codelineno-0-83"></a><span class="w"> </span><span class="nx">cancelSaveCardForOfflineUse</span><span class="o">:</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-84"><a id="__codelineno-0-84" name="__codelineno-0-84" href="#__codelineno-0-84"></a><span class="w"> </span><span class="c1">// Cancel the process running in saveCardForOfflineUse() at the user/cashier's request.</span>
|
|
</span><span id="__span-0-85"><a id="__codelineno-0-85" name="__codelineno-0-85" href="#__codelineno-0-85"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-86"><a id="__codelineno-0-86" name="__codelineno-0-86" href="#__codelineno-0-86"></a><span class="w"> </span><span class="nx">getSavedPaymentMethods</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">({</span><span class="nx">customerUUID</span><span class="p">})</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-87"><a id="__codelineno-0-87" name="__codelineno-0-87" href="#__codelineno-0-87"></a><span class="w"> </span><span class="c1">// Return all saved payment methods tied to the provided customer UUID.</span>
|
|
</span><span id="__span-0-88"><a id="__codelineno-0-88" name="__codelineno-0-88" href="#__codelineno-0-88"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="p">[{</span>
|
|
</span><span id="__span-0-89"><a id="__codelineno-0-89" name="__codelineno-0-89" href="#__codelineno-0-89"></a><span class="w"> </span><span class="nx">customer</span><span class="o">:</span><span class="w"> </span><span class="s2">"<internal string referencing the customer>"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Passed to checkoutSavedMethod as customerID</span>
|
|
</span><span id="__span-0-90"><a id="__codelineno-0-90" name="__codelineno-0-90" href="#__codelineno-0-90"></a><span class="w"> </span><span class="nx">customer_uuid</span><span class="o">:</span><span class="w"> </span><span class="nx">customerUUID</span><span class="p">,</span>
|
|
</span><span id="__span-0-91"><a id="__codelineno-0-91" name="__codelineno-0-91" href="#__codelineno-0-91"></a><span class="w"> </span><span class="nx">id</span><span class="o">:</span><span class="w"> </span><span class="s2">"<card/payment method identifier>"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Passed to checkoutSavedMethod as paymentMethodID</span>
|
|
</span><span id="__span-0-92"><a id="__codelineno-0-92" name="__codelineno-0-92" href="#__codelineno-0-92"></a><span class="w"> </span><span class="nx">type</span><span class="o">:</span><span class="w"> </span><span class="s2">"card"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Payment type. Accepted values are card, ach, crypto, cash, check, account, and free.</span>
|
|
</span><span id="__span-0-93"><a id="__codelineno-0-93" name="__codelineno-0-93" href="#__codelineno-0-93"></a><span class="w"> </span><span class="nx">label</span><span class="o">:</span><span class="w"> </span><span class="s2">"Visa debit x1234 (exp. 12/29)"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Label for payment method</span>
|
|
</span><span id="__span-0-94"><a id="__codelineno-0-94" name="__codelineno-0-94" href="#__codelineno-0-94"></a><span class="w"> </span><span class="nx">label_short</span><span class="o">:</span><span class="w"> </span><span class="s2">"Visa debit x1234"</span><span class="w"> </span><span class="c1">// Abbreviated label for payment method</span>
|
|
</span><span id="__span-0-95"><a id="__codelineno-0-95" name="__codelineno-0-95" href="#__codelineno-0-95"></a><span class="w"> </span><span class="p">}];</span>
|
|
</span><span id="__span-0-96"><a id="__codelineno-0-96" name="__codelineno-0-96" href="#__codelineno-0-96"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-0-97"><a id="__codelineno-0-97" name="__codelineno-0-97" href="#__codelineno-0-97"></a><span class="w"> </span><span class="nx">deleteSavedPaymentMethod</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">({</span><span class="nx">customerUUID</span><span class="p">,</span><span class="w"> </span><span class="nx">customerID</span><span class="p">,</span><span class="w"> </span><span class="nx">paymentMethodID</span><span class="p">})</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-0-98"><a id="__codelineno-0-98" name="__codelineno-0-98" href="#__codelineno-0-98"></a><span class="w"> </span><span class="c1">// Delete the payment method identified by paymentMethodID</span>
|
|
</span><span id="__span-0-99"><a id="__codelineno-0-99" name="__codelineno-0-99" href="#__codelineno-0-99"></a><span class="w"> </span><span class="c1">// and tied to the PostalPoint customerUUID and the card processor customerID.</span>
|
|
</span><span id="__span-0-100"><a id="__codelineno-0-100" name="__codelineno-0-100" href="#__codelineno-0-100"></a><span class="w"> </span><span class="c1">// If unable to delete, throw an error and the error message</span>
|
|
</span><span id="__span-0-101"><a id="__codelineno-0-101" name="__codelineno-0-101" href="#__codelineno-0-101"></a><span class="w"> </span><span class="c1">// will be displayed to the cashier.</span>
|
|
</span><span id="__span-0-102"><a id="__codelineno-0-102" name="__codelineno-0-102" href="#__codelineno-0-102"></a><span class="w"> </span><span class="p">}</span>
|
|
</span><span id="__span-0-103"><a id="__codelineno-0-103" name="__codelineno-0-103" href="#__codelineno-0-103"></a><span class="p">});</span>
|
|
</span></code></pre></div>
|
|
<a name="pos.registerCryptoProcessor"></a></p>
|
|
<h3 id="posregistercryptoprocessorf">pos.registerCryptoProcessor(f)</h3>
|
|
<p>Register as a cryptocurrency payment processor.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a> </p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Param</th>
|
|
<th>Type</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>f</td>
|
|
<td><code>Object</code></td>
|
|
<td>Payment processor functions</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p><strong>Example</strong><br />
|
|
<div class="language-js highlight"><pre><span></span><code><span id="__span-1-1"><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">registerCryptoProcessor</span><span class="p">({</span>
|
|
</span><span id="__span-1-2"><a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="w"> </span><span class="nx">name</span><span class="o">:</span><span class="w"> </span><span class="s2">"Demo Crypto"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Shown in PostalPoint settings menu</span>
|
|
</span><span id="__span-1-3"><a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a><span class="w"> </span><span class="nx">init</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-1-4"><a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="w"> </span><span class="c1">// This is run after PostalPoint starts,</span>
|
|
</span><span id="__span-1-5"><a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="w"> </span><span class="c1">// and before any other crypto functions are called.</span>
|
|
</span><span id="__span-1-6"><a id="__codelineno-1-6" name="__codelineno-1-6" href="#__codelineno-1-6"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-1-7"><a id="__codelineno-1-7" name="__codelineno-1-7" href="#__codelineno-1-7"></a><span class="w"> </span><span class="nx">checkout</span><span class="o">:</span><span class="w"> </span><span class="k">async</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">({</span><span class="nx">amount</span><span class="p">})</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-1-8"><a id="__codelineno-1-8" name="__codelineno-1-8" href="#__codelineno-1-8"></a><span class="w"> </span><span class="c1">// Run the checkout process.</span>
|
|
</span><span id="__span-1-9"><a id="__codelineno-1-9" name="__codelineno-1-9" href="#__codelineno-1-9"></a><span class="w"> </span><span class="c1">// amount is the amount of fiat currency to collect,</span>
|
|
</span><span id="__span-1-10"><a id="__codelineno-1-10" name="__codelineno-1-10" href="#__codelineno-1-10"></a><span class="w"> </span><span class="c1">// in pennies (or the local equivalent).</span>
|
|
</span><span id="__span-1-11"><a id="__codelineno-1-11" name="__codelineno-1-11" href="#__codelineno-1-11"></a>
|
|
</span><span id="__span-1-12"><a id="__codelineno-1-12" name="__codelineno-1-12" href="#__codelineno-1-12"></a><span class="w"> </span><span class="c1">// If an error is encountered during processing,</span>
|
|
</span><span id="__span-1-13"><a id="__codelineno-1-13" name="__codelineno-1-13" href="#__codelineno-1-13"></a><span class="w"> </span><span class="c1">// display an error message in a dialog and return boolean false.</span>
|
|
</span><span id="__span-1-14"><a id="__codelineno-1-14" name="__codelineno-1-14" href="#__codelineno-1-14"></a><span class="w"> </span><span class="c1">// If this function returns anything except false or undefined,</span>
|
|
</span><span id="__span-1-15"><a id="__codelineno-1-15" name="__codelineno-1-15" href="#__codelineno-1-15"></a><span class="w"> </span><span class="c1">// and doesn't throw an error,</span>
|
|
</span><span id="__span-1-16"><a id="__codelineno-1-16" name="__codelineno-1-16" href="#__codelineno-1-16"></a><span class="w"> </span><span class="c1">// it is assumed the payment was successful.</span>
|
|
</span><span id="__span-1-17"><a id="__codelineno-1-17" name="__codelineno-1-17" href="#__codelineno-1-17"></a>
|
|
</span><span id="__span-1-18"><a id="__codelineno-1-18" name="__codelineno-1-18" href="#__codelineno-1-18"></a><span class="w"> </span><span class="c1">// Adds a line of text visible to the cashier</span>
|
|
</span><span id="__span-1-19"><a id="__codelineno-1-19" name="__codelineno-1-19" href="#__codelineno-1-19"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">addOnscreenPaymentLog</span><span class="p">(</span><span class="s2">"Getting crypto payment..."</span><span class="p">);</span>
|
|
</span><span id="__span-1-20"><a id="__codelineno-1-20" name="__codelineno-1-20" href="#__codelineno-1-20"></a>
|
|
</span><span id="__span-1-21"><a id="__codelineno-1-21" name="__codelineno-1-21" href="#__codelineno-1-21"></a><span class="w"> </span><span class="c1">// Display a web page (i.e. with a payment QR code)</span>
|
|
</span><span id="__span-1-22"><a id="__codelineno-1-22" name="__codelineno-1-22" href="#__codelineno-1-22"></a><span class="w"> </span><span class="c1">// to the customer on the customer-facing display.</span>
|
|
</span><span id="__span-1-23"><a id="__codelineno-1-23" name="__codelineno-1-23" href="#__codelineno-1-23"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">ui</span><span class="p">.</span><span class="nx">setCustomerScreen</span><span class="p">(</span><span class="s2">"<html></html>"</span><span class="p">,</span><span class="w"> </span><span class="s2">"html"</span><span class="p">);</span>
|
|
</span><span id="__span-1-24"><a id="__codelineno-1-24" name="__codelineno-1-24" href="#__codelineno-1-24"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">ui</span><span class="p">.</span><span class="nx">setCustomerScreen</span><span class="p">(</span><span class="s2">"https://postalpoint.app"</span><span class="p">,</span><span class="w"> </span><span class="s2">"raw"</span><span class="p">);</span>
|
|
</span><span id="__span-1-25"><a id="__codelineno-1-25" name="__codelineno-1-25" href="#__codelineno-1-25"></a>
|
|
</span><span id="__span-1-26"><a id="__codelineno-1-26" name="__codelineno-1-26" href="#__codelineno-1-26"></a><span class="w"> </span><span class="c1">// Poll the status of the crypto transaction</span>
|
|
</span><span id="__span-1-27"><a id="__codelineno-1-27" name="__codelineno-1-27" href="#__codelineno-1-27"></a><span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nx">paymentComplete</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">false</span><span class="p">;</span>
|
|
</span><span id="__span-1-28"><a id="__codelineno-1-28" name="__codelineno-1-28" href="#__codelineno-1-28"></a><span class="w"> </span><span class="k">do</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-1-29"><a id="__codelineno-1-29" name="__codelineno-1-29" href="#__codelineno-1-29"></a><span class="w"> </span><span class="k">await</span><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">delay</span><span class="p">(</span><span class="mf">1000</span><span class="p">);</span>
|
|
</span><span id="__span-1-30"><a id="__codelineno-1-30" name="__codelineno-1-30" href="#__codelineno-1-30"></a><span class="w"> </span><span class="nx">paymentComplete</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
|
|
</span><span id="__span-1-31"><a id="__codelineno-1-31" name="__codelineno-1-31" href="#__codelineno-1-31"></a><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="nx">paymentComplete</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="kc">true</span><span class="p">);</span>
|
|
</span><span id="__span-1-32"><a id="__codelineno-1-32" name="__codelineno-1-32" href="#__codelineno-1-32"></a>
|
|
</span><span id="__span-1-33"><a id="__codelineno-1-33" name="__codelineno-1-33" href="#__codelineno-1-33"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">addReceiptPayment</span><span class="p">(</span>
|
|
</span><span id="__span-1-34"><a id="__codelineno-1-34" name="__codelineno-1-34" href="#__codelineno-1-34"></a><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">ReceiptPayment</span><span class="p">(</span>
|
|
</span><span id="__span-1-35"><a id="__codelineno-1-35" name="__codelineno-1-35" href="#__codelineno-1-35"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">i18n</span><span class="p">.</span><span class="nx">currencyMinorToMajor</span><span class="p">(</span><span class="nx">amount</span><span class="p">),</span>
|
|
</span><span id="__span-1-36"><a id="__codelineno-1-36" name="__codelineno-1-36" href="#__codelineno-1-36"></a><span class="w"> </span><span class="s2">"crypto"</span><span class="p">,</span><span class="w"> </span><span class="c1">// Payment type.</span>
|
|
</span><span id="__span-1-37"><a id="__codelineno-1-37" name="__codelineno-1-37" href="#__codelineno-1-37"></a><span class="w"> </span><span class="s2">"Bitcoin\n0.00001234 BTC"</span><span class="w"> </span><span class="c1">// Additional text for receipt</span>
|
|
</span><span id="__span-1-38"><a id="__codelineno-1-38" name="__codelineno-1-38" href="#__codelineno-1-38"></a><span class="w"> </span><span class="p">)</span>
|
|
</span><span id="__span-1-39"><a id="__codelineno-1-39" name="__codelineno-1-39" href="#__codelineno-1-39"></a><span class="w"> </span><span class="p">);</span>
|
|
</span><span id="__span-1-40"><a id="__codelineno-1-40" name="__codelineno-1-40" href="#__codelineno-1-40"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">pos</span><span class="p">.</span><span class="nx">addOnscreenPaymentLog</span><span class="p">(</span><span class="s2">"Payment successful!"</span><span class="p">);</span>
|
|
</span><span id="__span-1-41"><a id="__codelineno-1-41" name="__codelineno-1-41" href="#__codelineno-1-41"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">ui</span><span class="p">.</span><span class="nx">clearCustomerScreen</span><span class="p">();</span>
|
|
</span><span id="__span-1-42"><a id="__codelineno-1-42" name="__codelineno-1-42" href="#__codelineno-1-42"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-1-43"><a id="__codelineno-1-43" name="__codelineno-1-43" href="#__codelineno-1-43"></a><span class="w"> </span><span class="nx">cancelCheckout</span><span class="o">:</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-1-44"><a id="__codelineno-1-44" name="__codelineno-1-44" href="#__codelineno-1-44"></a><span class="w"> </span><span class="c1">// The user requested to cancel the payment.</span>
|
|
</span><span id="__span-1-45"><a id="__codelineno-1-45" name="__codelineno-1-45" href="#__codelineno-1-45"></a><span class="w"> </span><span class="c1">// Reset things accordingly.</span>
|
|
</span><span id="__span-1-46"><a id="__codelineno-1-46" name="__codelineno-1-46" href="#__codelineno-1-46"></a><span class="w"> </span><span class="nb">global</span><span class="p">.</span><span class="nx">apis</span><span class="p">.</span><span class="nx">ui</span><span class="p">.</span><span class="nx">clearCustomerScreen</span><span class="p">();</span>
|
|
</span><span id="__span-1-47"><a id="__codelineno-1-47" name="__codelineno-1-47" href="#__codelineno-1-47"></a><span class="w"> </span><span class="p">},</span>
|
|
</span><span id="__span-1-48"><a id="__codelineno-1-48" name="__codelineno-1-48" href="#__codelineno-1-48"></a><span class="w"> </span><span class="nx">isConfigured</span><span class="o">:</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
|
|
</span><span id="__span-1-49"><a id="__codelineno-1-49" name="__codelineno-1-49" href="#__codelineno-1-49"></a><span class="w"> </span><span class="c1">// Is this plugin properly setup</span>
|
|
</span><span id="__span-1-50"><a id="__codelineno-1-50" name="__codelineno-1-50" href="#__codelineno-1-50"></a><span class="w"> </span><span class="c1">// and able to process payments?</span>
|
|
</span><span id="__span-1-51"><a id="__codelineno-1-51" name="__codelineno-1-51" href="#__codelineno-1-51"></a><span class="w"> </span><span class="c1">// If not, return false.</span>
|
|
</span><span id="__span-1-52"><a id="__codelineno-1-52" name="__codelineno-1-52" href="#__codelineno-1-52"></a><span class="w"> </span><span class="c1">// This determines if the crypto payment method button will be shown.</span>
|
|
</span><span id="__span-1-53"><a id="__codelineno-1-53" name="__codelineno-1-53" href="#__codelineno-1-53"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
|
|
</span><span id="__span-1-54"><a id="__codelineno-1-54" name="__codelineno-1-54" href="#__codelineno-1-54"></a><span class="w"> </span><span class="p">}</span>
|
|
</span><span id="__span-1-55"><a id="__codelineno-1-55" name="__codelineno-1-55" href="#__codelineno-1-55"></a><span class="p">});</span>
|
|
</span></code></pre></div>
|
|
<a name="pos.getShippingSalesTax"></a></p>
|
|
<h3 id="posgetshippingsalestax-object">pos.getShippingSalesTax() ⇒ <code>Object</code></h3>
|
|
<p>Get the sales tax percentage to charge on a shipping service ReceiptItem.</p>
|
|
<p><strong>Kind</strong>: static method of <a href="#pos"><code>pos</code></a><br />
|
|
<strong>Returns</strong>: <code>Object</code> - <code>{type: "", percent: 0.15}</code>
|
|
<code>type</code> is an empty string for taxing the entire price, or "markup" for only adding tax to the markup amount.
|
|
<code>percent</code> is the tax percentage. A value of 0.15 means a 15% tax. </p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</article>
|
|
</div>
|
|
|
|
|
|
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
|
|
</div>
|
|
|
|
</main>
|
|
|
|
<footer class="md-footer">
|
|
|
|
<div class="md-footer-meta md-typeset">
|
|
<div class="md-footer-meta__inner md-grid">
|
|
<div class="md-copyright">
|
|
|
|
|
|
Made with
|
|
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
|
|
Material for MkDocs
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
|
|
</div>
|
|
<div class="md-dialog" data-md-component="dialog">
|
|
<div class="md-dialog__inner md-typeset"></div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<script id="__config" type="application/json">{"annotate": null, "base": "../..", "features": ["content.code.copy"], "search": "../../assets/javascripts/workers/search.2c215733.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"alias": true, "provider": "mike"}}</script>
|
|
|
|
|
|
<script src="../../assets/javascripts/bundle.79ae519e.min.js"></script>
|
|
|
|
<script src="../../assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js"></script>
|
|
|
|
|
|
</body>
|
|
</html> |