Príručka
Úvod
Ľavý postranný panel obsahuje odkazy na príslušné sekcie:
- Meno používateľa - odkazy na osobný profil.
- Nástenka - zobraziť aktuálny stav vo forme grafov a grafikonov.
- Aplikácie - správa aplikácie.
- Odomknúť kódy - odblokovacie kódy generované automaticky alebo stiahnuté vami.
- Platby - história prichádzajúcich platieb používateľov.
- Príručka - aktuálny používateľský manuál.
Nástenka
Môžete nastaviť bežné filtre pre všetky widgety na palubnej doske:
- Mena - mena, do ktorej budú na palubnej doske konvertované prichádzajúce a odchádzajúce sumy.
- Období - je časové obdobie, počas ktorého sa údaje zobrazujú v grafikónoch a tabuľkách na palubnej doske. Určuje interval, počas ktorého sa analyzujú a zobrazujú informácie a štatistiky o platbách, aplikáciách a iných parametroch.
Zostatok
Bilancia zahŕňa nasledujúce sumy:
- Hrubá suma - celková suma všetkých platieb používateľov za zvolené obdobie s výnimkou poplatkov platobných systémov a PayToUse.
- Čistá suma - celková suma všetkých platieb za zvolené obdobie mínus poplatky platobných systémov a PayToUse.
- Čakajúca suma - celková suma všetkých platieb za uvedené obdobie mínus poplatky systémov platby a PayToUse čakajúce na výber na účet vývojára. Platba bude možná na výber 7 dní po jej prijatí.
- Dostupná suma - celková suma všetkých platieb za všetky časy mínus poplatky systémov platby a PayToUse, dostupné na výber na účet vývojára.
Platby
Prvok platby obsahuje tabuľku platieb zoskupených podľa aplikácie pre zvolené obdobie.
Stĺpce tabuľky:
- Aplikácia - aplikácia. V tabuľke sú zobrazené iba aplikácie, pre ktoré boli v zvolenom období uskutočnené platby.
- Platby - počet platieb.
- Hrubá suma - celková suma všetkých platieb používateľov za zvolené obdobie s výnimkou poplatkov platobných systémov a PayToUse.
- Čistá suma - celková suma všetkých platieb za zvolené obdobie mínus poplatky platobných systémov a PayToUse.
Graf zobrazuje dynamiku hodnôt Čistá suma a Hrubá suma podľa dní.
Noví používatelia
Graf nových používateľov zobrazuje dve hodnoty v dynamike podľa dní:
- Noví používatelia - počet nových volaní API. Prístupy k API sú zaznamenané iba v prípade, že sa parameter device - jedinečný identifikátor zariadenia - prenesie pri odosielaní požiadavky na API. Tento parameter musí byť skutočne jedinečný pre zariadenie. (pozri Posielanie požiadavky)
- Platby - počet platieb za rovnaké obdobie podľa dní.
Konverzia
Metrika konverzie sa týka hodnotenia efektívnosti vašich predajov na premenu Noví používatelia na Platby.
Graf zobrazuje pomer počtu Platby k počtu Noví používatelia, v percentách.
Aplikácie
Pri vstúpení do tejto časti sa zobrazí zoznam vašich aplikácií.
Zoznam stĺpcov v tabuľke aplikácií:
- # - jedinečný identifikátor aplikácie. Používa sa pri overovaní kódu aplikácie alebo zobrazovaní formulára platby.
- Názov - názov aplikácie. Názov sa zobrazuje len vám v správach a na nástenke. Kliknutím na názov aplikácie sa otvorí stránka úpravy aplikácie.
- Stav - aktuálny stav aplikácie. Môže to byť:
- Vytvorené - Aplikácia bola práve vytvorená, ešte nie je nastavená.
- Uvoľnené - aplikácia beží.
- Vytvorené - dátum vytvorenia aplikácie.
- Dodatočné ovládacie tlačidlá:
- Odstrániť - odstrániť aplikáciu zo zoznamu.
Vytváranie alebo úprava aplikácie
Ak chcete prijímať platby, musíte sústavne vyplniť všetky potrebné údaje aplikácie a aktivovať aplikáciu.
Tlačidlo na vytvorenie novej aplikácie sa nachádza v paneli názvu zoznamu aplikácií.
Aplikácia
Polia dostupné pri vytváraní aplikácie:
- Názov - názov aplikácie, ktorý vidíte iba vo vašich správach alebo na nástenke. Názov sa zobrazí v hlavičke stránky uloženej aplikácie. Pokiaľ aplikácia nie je uložená, namiesto názvu sa zobrazuje „Nová aplikácia“. Pole je povinné na vyplnenie.
- Kontaktný e-mail - e-mailová adresa, na ktorú sa budú posielať kópie správ odoslaných používateľom. Táto adresa je tiež špecifikovaná v poli „Odpovedať na“ a používa sa na odpoveď používateľa na prijatý e-mail s kódom. Pole je povinné na vyplnenie. Základne je pole vyplnené hodnotou z profilu vývojára. Hodnota sa môže zmeniť na inú hodnotu.
- Typ aplikácie - typ aplikácie. Ak vyberiete skupinový typ aplikácie, zobrazí sa zoznam aplikácií pre zoskupenie. V zozname sú dostupné iba jednotlivé aplikácie, pre ktoré sú generované odomykacie kódy.
- Povoliť spätnú väzbu k platbe - pridáva pole do platobného formulára, do ktorého môžu používatelia vložiť voľný text. Spätná väzba sa pridá do kópie e-mailu pre vývojára. Spätnú väzbu je možné vidieť aj v podrobnostiach o platbe.
Začnite písať, meniť hodnoty a tlačidlo Uložiť sa zobrazí. Tlačidlo Uložiť umožňuje uložiť zmeny bez prechodu na ďalšiu stránku. Tlačidlo Ďalšie uloží zmeny a prejde na ďalšiu stránku. Vždy sa môžete vrátiť a urobiť zmeny neskôr.
V hlavičke stránky sú dostupné iba stránky uloženej aplikácie na navigáciu. Môžete kliknúť na ďalšie alebo prejsť na časť v hlavičke stránky.
Popis
Vyberte jazyk zo zoznamu a kliknite na Pridať.
Zobrazí sa karta s lokalizovanými textami aplikácie pre vybraný jazyk.
Dostupné jazyky:
- Nemecký
- Anglický
- Francúzsky
- Španielsky
- Ruský
- Čínština (zjednodušená)
Polia v popise sa používajú na zobrazenie informácií v platobnom formulári a v odpovednej správe používateľovi:
- Názov - názov aplikácie pre vybraný jazyk. Zobrazuje sa na platobnom formulári a v e-maile s upozornením na platbu. Pri pridaní jazyka sa vloží predvolený názov aplikácie. Pre každý jazyk môžete nastaviť iný názov. Požadované pole.
- Popis - stručný popis aplikácie. Zobrazuje sa na platobnom formulári pod názvom aplikácie. Voliteľné pole. Môžete ho nechať prázdne, ak nechcete zobraziť žiadny popis.
- Odpoveď - dodatočné informácie, ktoré sa po úspešnej platbe odošlú používateľovi e-mailom. Text odpovede sa pridá na koniec e-mailu po štandardnej odpovedi.
Na uloženie a prejdenie na ďalšiu stránku musí byť pridaný aspoň jeden jazyk.
Jazyk zobrazený v platobnom formulári sa automaticky určuje na základe preferencií používateľa zadaných v jeho nastaveniach prehliadača. Jazyk aplikácie môžete uložiť pre aplikáciu.
Začnite písať alebo meniť hodnoty a tlačidlo Uložiť sa zobrazí. Tlačidlo Uložiť vám umožňuje uložiť zmeny bez prechodu na ďalšiu stránku. Tlačidlo Ďalšie uloží zmeny a prejde na ďalšiu stránku. Vždy sa môžete vrátiť a urobiť zmeny neskôr.
V hlavičke stránky sú dostupné iba stránky uloženej aplikácie na navigáciu. Môžete kliknúť na ďalšie alebo prejsť na časť v hlavičke stránky.
Cena
Stránka obsahuje zoznam cien a polí súvisiacich s platbou:
- Skúšobná doba - dĺžka skúšobného obdobia.
- Časová jednotka - časová jednotka skúšobného obdobia. Napríklad, ak zadáte 7 dní, znamená to, že po 7 dňoch od prvého volania API aplikácie vráti odpoveď, že skúšobné obdobie vypršalo. Čas prvého volania zariadenia je uložený.
- Metóda výpočtu ceny - Metóda výpočtu ceny zo zoznamu:
- Výpočet ceny v závislosti od obdobia - Na platobnom formulári používateľ špecifikuje aktivačné obdobie kódu a cena sa automaticky vypočíta podľa tabuľky nižšie. Používateľ dostane automaticky generovaný kód na odomknutie v odpovednom e-maile.
- Výpočet obdobia v závislosti od ceny - Na platobnom formulári používateľ vyberie cenu zo zoznamu alebo zadá svoju vlastnú hodnotu ceny a obdobie sa automaticky vypočíta podľa tabuľky nižšie. Používateľ dostane automaticky generovaný kód v odpovedi.
- Trvalý kód - Na platobnom formulári používateľ vyberie cenu zo zoznamu alebo zadá svoju vlastnú hodnotu ceny. Po platbe dostane kód zo zoznamu nižšie, ktorý zodpovedá vybranej cene, v odpovedi e-mailom.
- Dar - Na platobnom formulári používateľ vyberie cenu zo zoznamu alebo zadá svoju vlastnú hodnotu ceny. Pre aplikácie typu darovaní nie je generovaný kód na odomknutie.
Cena je nastavená v amerických dolároch. Minimálna cena je 1 americký dolár.
Začnite písať alebo meniť hodnoty a tlačidlo Uložiť sa zobrazí. Tlačidlo Uložiť vám umožňuje uložiť zmeny bez prechodu na ďalšiu stránku. Tlačidlo Ďalšie uloží zmeny a prejde na ďalšiu stránku. Vždy sa môžete vrátiť a urobiť zmeny neskôr.
V hlavičke stránky sú dostupné iba stránky uloženej aplikácie na navigáciu. Môžete kliknúť na ďalšie alebo prejsť na časť v hlavičke stránky.
Náhľad
Táto stránka nastavuje hodnoty:
- Dĺžka kódu - dĺžka generovaného kódu, ak je to vhodné.
- Znaková sada kódu - sada znakov, z ktorých je kód generovaný:
- Číselný kód - kód je generovaný použitím iba číslic 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Vedúce nuly môžu byť zahrnuté v kóde. Vedúce nuly sú významné pri overovaní kódu.
- Alfanumerický kód - kód je generovaný použitím znakov 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, G, H, I, G, K, L, M, N, P, Q, R, S, T, U, V, X, Y, Z. Kód je vygenerovaný a odoslaný používateľovi pomocou veľkých písmen. Veľkosť písmen nie je dôležitá pri overovaní kódu.
- Odkaz na overenie kódu - príklad odkazu, ktorý sa má použiť na overenie kódu.
- Odkaz na platbu - platobný odkaz. Odkaz môžete skopírovať a vložiť do popisu aplikácie na webovej stránke, kde je aplikácia zverejnená. Prechádzajúce parametre:
- app - jedinečný identifikátor aplikácie. Požadovaný parameter.
- amount - suma, ktorá bude uvedená v poli ceny pri nákupe. Predvolená cena je ignorovaná. Suma však nemôže byť menšia ako minimálna cena a nemôže byť nižšia ako minimálna cena stanovená pre aplikáciu. Voliteľný parameter.
Na začatie prijímania platieb je potrebné aktivovať aplikáciu pomocou tlačidla Spustiť. Pred aktiváciou aplikácie sa uistite, že všetky zadané údaje sú správne. Kľúče vygenerované aplikáciou nie je možné zmeniť.
Overenie kódu
Overenie kódu na odomknutie aplikácie sa vykonáva v 3 krokoch:
- Zápis a odoslanie požiadavky na overenie kódu
- Kontroly na strane API
- Prijímanie a spracovanie odpovede API
Posielanie požiadavky
Na overenie kódu musí používateľ vašej aplikácie zadať kód do poľa v nastaveniach aplikácie.
<properties>
<property id="UnlockCode" type="string"></property>
<property id="UnlockResult" type="string">Checking...</property>
...
<properties>
<settings>
<setting propertyKey="@Properties.UnlockCode" title="@Strings.UnlockCode">
<settingConfig type="alphaNumeric" maxLength="12"/>
</setting>
<setting propertyKey="@Properties.UnlockResult" title="@Strings.UnlockResult">
<settingConfig type="alphaNumeric" readonly="true"/>
</setting>
...
</settings>
Potom musíte odoslať požiadavku na server API Pay-to-use:
function onTemporalEvent() as Void {
var ds = System.getDeviceSettings();
return Toybox.Communications.makeWebRequest(
"https://api.pay-to-use.com", // URL API
{
"device" => ds.uniqueIdentifier, // jedinečný identifikátor zariadenia
"app" => "6", // váš identifikátor aplikácie
"model" => ds.partNumber, // device part number
"code" => Application.Properties.getValue("UnlockCode") // hodnota kódu na odomknutie vo vašej aplikácii
},
{
:method => Communications.HTTP_REQUEST_METHOD_POST,
:headers => { "Content-Type" => Communications.REQUEST_CONTENT_TYPE_JSON },
:responseType => Communications.HTTP_RESPONSE_CONTENT_TYPE_JSON
},
method(:onReceive)
);
}
Parametre požiadavky API:
- url - https://api.pay-to-use.com. Using HTTPS is mandatory.
- Telu požiadavky (prenášané hodnoty). Slovník kľúčov a hodnôt:
- device - jedinečný identifikátor zariadenia.
- app - jedinečný identifikátor vašej aplikácie.
- model - device model identifier. Optional parameter. Data is used to display statistics for new devices.
- code - kód na odomknutie, ktorý zadal používateľ vo vašich nastaveniach aplikácie.
- Možnosti požiadavky:
- :method - API podporuje metódy požiadaviek GET a POST.
- :headers - pre metódu POST je potrebné prenášať parametre vo formáte JSON.
- :responseType - odpoveď je vrátená vo formáte JSON.
- responseCallback - odkaz na spätnú metódu, ktorá by mala prijať dva argumenty:
- responseCode - kód hlavičky odpovede servera.
- data - obsah, ak bola požiadavka úspešná, alebo null.
Kontroly na strane API
Ak sa API neprenášajú žiadne parametre, API vráti hlavičku HTTP/1.1 404 Not Found.
Ak sa aspoň jeden parameter prenesie do API, API vráti hlavičku HTTP/1.1 200 OK.
Odpoveď servera pozostáva z:
- response - kód odpovede
- msg - textový popis odpovede
- expires - časová pečiatka UNIXTIME (ak je to možné)
Vykoná sa kontrola, aby sa zabezpečilo, že identifikátor aplikácie prenášaný je správny. Aplikácia musí mať v čase platby stav Uvoľnené. V prípade chyby je vrátený kód odpovede 301.
Ak sa prenáša jedinečný identifikátor zariadenia, vyhľadá sa a uloží sa. Ak pri kontrole alebo ukladaní dochádza k chybám, vráti sa chybový kód 402. Ak sa nájde takýto návratový kód, ihneď napíšte na podporu na [email protected]
Ak je kód prenesený, pre aplikácie s metódami výpočtu Výpočet ceny v závislosti od obdobia a Výpočet obdobia v závislosti od ceny sa vykonajú nasledujúce kroky:
- Ak je prenesený prázdny kód, odpojí sa od jedinečného identifikátora zariadenia definovaného v predchádzajúcich krokoch.
- Ak sa prenesie neprázdny kód a nie je aktivovaný, kód sa aktivuje v závislosti na podmienkach ceny uvedenej pri nákupe kódu, bez ohľadu na dátum aktivácie.
- Ak nebol prenesený žiadny kód alebo ak sa prenesený kód nenašiel, vráti sa chybový kód 201.
- Aktivovaný kód sa skontroluje proti zariadeniu a ak bol počas aktivácie prenesený jedinečný identifikátor zariadenia iný ako uložený, vráti sa chybový kód 202.
- Ak prenesený kód nemá dátum expirácie a všetky predchádzajúce kontroly boli úspešné, vráti sa kód 101.
- Ak je kód časovo obmedzený, vykoná sa kontrola. Ak kľúč nie je expirovaný, vráti sa kód 101. Ak kód expiroval, vráti sa chybový kód 203.
- Tento typ aplikácie vyžaduje, aby bol kód viazaný na zariadenie. Ak sa neprenesie jedinečný identifikátor zariadenia, vráti sa chybový kód 304.
Pre aplikáciu s Trvalý kód sa kontroluje iba dostupnosť kódu v čase nákupu. Ak sa nájde kód, vráti sa kód 101. Ak sa žiadny kód nenájde, vráti sa chybový kód 201.
Pre aplikáciu s metódou výpočtu Dar sa kód nekontroluje. Vráti sa vždy kód 101.
Ak predchádzajúce kontroly neboli úspešné, skontroluje sa testovacie obdobie. Ak uplynulo viac času od prvotného kontaktu so zariadením než je aktuálna konfigurácia aplikácie, vráti sa chybový kód 204. Ak skúšobné obdobie ešte neuplynulo, vráti sa chybový kód 102.
Ak sa prenáša iba identifikátor aplikácie a neprenesie sa ani kľúč na odomknutie ani jedinečný identifikátor zariadenia, vráti sa chybový kód 303.
Ak vrátená odpoveď je 500, mali by ste napísať na podporu na [email protected]
Nižšie je tabuľka všetkých vrátených kódov:
Návrat | Správa |
---|---|
101 |
Výpočet ceny v závislosti od obdobia a Výpočet obdobia v závislosti od ceny metódy výpočtu:
|
| |
Trvalý kód:
| |
Dar:
| |
102 |
|
201 |
|
202 |
|
203 |
|
204 |
|
301 |
|
302 |
|
303 |
|
304 |
|
401 |
|
402 |
|
500 |
|
Kontrola odpovede
Potom by ste mali skontrolovať odpoveď zo servera Pay-to-use API:
function onReceive(responseHeader, data) as Void {
if (responseHeader == 200) { Toybox.Background.exit(data); }
}
Môžete skontrolovať všetky záhlavia a kódy, môžete zobraziť vlastné správy pre pohodlie používateľa, ale v najjednoduchšej forme bude overenie vyzerať niečo ako toto:
function onBackgroundData(data) as Void {
if (data.hasKey("response")) {
if (data.hasKey("msg")) {
// Môžete zobraziť data["msg"] v poli vlastností s názvom "UnlockResult".
Application.Properties.setValue("UnlockResult", data["msg"]);
}
if (data["response"].toString().substring(0, 1).equals("2")) {
// Overenie kódu zlyhalo
// Platené funkcie NIE sú k dispozícii
...
} else {
// Kontrola kódu bola úspešná alebo chyba je vaša vina alebo vina API
// Platené funkcie sú k dispozícii
...
}
}
}
Odomknúť kódy
Po prejdení na túto sekciu sa otvorí zoznam odblokovacích kódov.
Zoznam kódov na odomknutie
Môžete vyhľadávať v poli e-mailu alebo kódu v hornej vyhľadávacej lište. Nájdené kódy budú zobrazené v zozname. Môžete použiť celý alebo časť e-mailu alebo kódu ako kritérium vyhľadávania. Zhody budú zvýraznené farbou. Vyhľadávanie a filtre fungujú súčasne a nevylučujú sa navzájom.
Posledný použitý filter je uložený pre používateľa. To znamená, že pri ďalšej návšteve stránky sa posledný použitý filter automaticky aplikuje. Filtry sú k dispozícii pre zoznam odblokovacích kódov:
- Stĺpce - vyberte stĺpce tabuľky, ktoré sa majú zobraziť v zozname odblokovacích kódov.
- Aplikácia - zobraziť len odblokovacie kódy pre vybrané aplikácie.
- Stav - zobraziť len odblokovacie kódy, ktoré sú vo vybraných stavoch.
Zoznam stĺpcov v tabuľke odblokovacích kódov:
- Aplikácia - vaša aplikácia. Môžete kliknúť na odkaz, aby ste upravili jej nastavenia.
- Kód - odblokovací kód.
- Email - e-mailová adresa spojená s registráciou odblokovacieho kódu. Táto adresa sa používa na vyhľadávanie odblokovacích kódov klienta v Moje nákupy časti webovej stránky. Táto časť je prístupná používateľom.
- Obdobie - obdobie platnosti odoslaného kódu (špecifikované v nastaveniach aplikácie). Platnosť je nastavená pre kód v súlade s podmienkami nastavení aplikácie v čase jeho vytvorenia.
- Stav - stav odblokovacieho kódu. (pozri Stav odblokovacieho kódu)
- Vytvorené - dátum vytvorenia odblokovacieho kódu.
- Aktivované - dátum aktivácie kódu. Je nastavený v momente, keď sa toto konkrétne zariadenie používateľa prvýkrát pripojí k službe PayToUse API a odošle tento kód. Stav kódu sa zmení na Aktivované. Len neaktívny kód môže byť aktivovaný. Ak aktívny kód odosia zariadenie s odlišným identifikátorom, API vráti chybu 202. Len jedno zariadenie môže byť prepojené s jediným kódom.
- Vypršanie - dátum, kedy vyprší platnosť aktivácie kódu. Nastavuje sa pre kódy, ktoré majú obmedzenú platnosť pri aktivácii kódu. Pre kódy s neobmedzeným vypršaním platnosti je dátum nevyplnený.
- Odstránené - dátum vymazania kódu. Po vymazaní je stav kódu nastavený na Neznáme.
- Platba # - jedinečné poradové číslo platby. Kliknutím na odkaz môžete zobraziť podrobnosti platby.
- Tlačidlá pre akcie s odblokovacími kódmi. Napríklad vymazanie.
Stav odblokovacieho kódu
Počas svojho životného cyklu odblokovací kód prechádza rôznymi stavmi, ktoré môžu byť sledované pomocou stavu kódu.
Stav | Popis |
---|---|
Dostupné | Stav je priradený odblokovacieho kódu, pre ktorý neboli vykonané žiadne akcie, alebo ak je pre kód resetované prepojenie zariadenia. |
Aktivované | Stav je nastavený pre kód s nastaveným dátumom aktivácie. Dátum aktivácie sa nastavuje, keď zariadenie úspešne získa prístup k službe PayToUse API po prvýkrát. Okrem toho, pri aktivácii kódu sa nastaví aj dátum expirácie kódu. |
Vypršala | Stav je nastavený pre vypršaný kód. Odpojenie kódu zariadením neresetuje dátum expirácie kódu. Overenie kódu s týmto stavom vráti chybu 203. (pozri Kontroly na strane API) |
Neznáme | Stav je nastavený, keď je kód vymazaný. Overenie kódu s týmto stavom vráti chybu 201. (pozri Kontroly na strane API) |
Platby
Pri prechode do tejto sekcie sa zobrazí zoznam platieb používateľa.
Na prijímanie platieb sa používajú nasledujúce platobné systémy:
Po zaplatení poplatkov platobného systému PayToUse účtuje poplatok vo výške 13%. Neustále pracujeme na znižovaní poplatkov.
Ak vzniknú v platobnom systéme akékoľvek spory alebo vrátenia, sankcie platobného systému sú znovu vystavené vývojárovi. Preto by ste nemali povoliť, aby sa takéto situácie vyskytli. Poplatok PayToUse sa neúčtuje v sporných situáciách.
Zoznam platieb
Môžete vyhľadávať v poli e-mailu alebo odoslaného kódu v hornej vyhľadávacej lište. Nájdené platby sa zobrazia v zozname. Môžete použiť celý alebo časť e-mailu alebo odoslaného kódu ako kritérium vyhľadávania. Zhody sa zvýraznia farebne. Vyhľadávanie a filtre fungujú súčasne a nevylučujú sa navzájom.
Posledný použitý filter sa ukladá pre používateľa. To znamená, že pri nasledujúcej návšteve stránky sa posledný použitý filter automaticky aplikuje. Filtre sú k dispozícii pre zoznam platieb:
- Stĺpce - vyberte stĺpce tabuľky, ktoré chcete zobraziť v zozname platieb.
- Aplikácia - zobrazovanie platieb iba pre vybrané aplikácie.
- Systém - zobraziť platby iba z vybraných platobných systémov.
- Stav - zobraziť platby iba s vybranými stavmi.
Zoznam stĺpcov v tabuľke platieb:
- Aplikácia - vaša aplikácia. Môžete kliknúť na odkaz, aby ste upravili jej nastavenia.
- # - jedinečné poradové číslo platby. Automaticky sa priradí k platbe, keď používateľ prejde z formulára platby na stránku platby v platobnom systéme. Kliknite na odkaz, aby ste zobrazili podrobnosti platby.
- Komentáre - správa od používateľa zadaná do formulára platby.
- Systém - platobný systém vybraný používateľom.
- Stav - stav platby. (pozri Stav platby)
- Email - e-mail používateľa uvedený vo formulári platby.
- Obdobie - platnosť odoslaného kódu (určená v nastaveniach aplikácie).
- Vytvorené - dátum vytvorenia platby.
- Čiastka faktúry - suma platby účtovanej používateľovi. Špecifikovaná vo formulári platby v závislosti na nastaveniach aplikácie.
- Dátum platby - dátum platby.
- Čiastka platby - suma platby potvrdená platobným systémom.
- Odoslaný kód - kód odoslaný používateľovi.
- Dostupná suma - dostupná čiastka na výber.
- Čiastka výberu - čiastka vybratých prostriedkov za platbu.
Nie je možné meniť platbu.
Stav platby
Počas svojho životného cyklu platba prechádza rôznymi stavmi, ktoré možno sledovať podľa stavu platby.
Stav | Popis |
---|---|
Neúplné | Stav je priradený platbám, pre ktoré neboli vykonané žiadne akcie. Platba sa vytvorí ihneď, ako používateľ prejde z formulára platby na formulár platobného systému. Platbe je priradené jedinečné sériové číslo, ako aj základné atribúty platby: čiastka, platobný systém, dátum. |
Úspešné | Stav je priradený platbám, ktoré dostali pozitívnu odpoveď od platobného systému. Ďalším krokom je odoslanie e-mailu používateľovi obsahujúceho vygenerovaný kód alebo iné údaje v závislosti na nastaveniach aplikácie. Ak platba zostane v tomto stave, je potrebné venovať mu osobitnú pozornosť, pretože nasledujúce kroky neboli vykonané. |
Chyba | Stav je priradený platbám, pre ktoré je prijatá negatívna odpoveď od platobného systému. Nesledujú sa žiadne ďalšie kroky. Je potrebné venovať tejto platbe osobitnú pozornosť, pretože stav na strane platobného systému môže byť spracovaný s oneskorením. |
Pendiente | Stav je priradený platbám, pre ktoré je prijatá pozitívna odpoveď od platobného systému a všetky následné kroky boli úspešne dokončené. Výber pre platby s týmto stavom nie je k dispozícii. Platby sa automaticky presúvajú do nasledujúceho stavu o 7 dní. |
Dostupné | Výber je k dispozícii pre platby v tomto stave. |
Odosielanie | Stav je povolený pre platby zahrnuté v nasledujúcom výbere. Ak je výber zrušený alebo odmietnutý, stav platby sa vráti na Dostupné. |
Odoslané | Stav je povolený pre platby, pre ktoré je vykonaný výber. Čaká sa potvrdenie o prijatí finančných prostriedkov. |
Dokončené | Stav je povolený pre platby s úspešnými výbermi. Stav môžete manuálne nastaviť potvrdením výberu v príslušnej sekcii. Stav sa tiež automaticky zmení o 14 dní po vykonaní výberu platby. |
Vrátené | Platby, pre ktoré bol vydaný refundácia, sú prevedené do tohto stavu. Pri vydávaní refundácie sa účtuje poplatok za refundáciu. Poplatok sa odpočíta z čiastky výberu. |
Výbery
Po prejdení do tejto sekcie sa zobrazí zoznam vašich výberov.
Zoznam výberov
Posledné použité filtre sa ukladajú pre používateľa. To znamená, že pri ďalšej návšteve stránky sa posledný použitý filter automaticky aplikuje. Filtre sú k dispozícii pre zoznam výberov:
- Stĺpce - zobraziť iba vybrané stĺpce v zozname výberov.
- Stav - zobraziť iba výbery, ktoré sú vo vybraných stavoch.
Zoznam stĺpcov v tabuľke výberov:
- # - jedinečné poradové číslo výberu. Priradí sa výberu automaticky pri jeho uložení. Kliknite na odkaz pre zobrazenie detailov výberu.
- Stav - stav výberu. (pozri Stav výberu)
- Vytvorené - dátum požiadavky na výber.
- Suma - suma výberu.
- Výber - dátum odoslania výberu.
- Tlačidlá pre akcie s výbermi. Napríklad potvrdenie.
Výber môžete potvrdiť, keď je vo stav Odoslané.
Stav výberu
Počas svojho životného cyklu sa výber dostane do rôznych stavov, ktoré možno sledovať podľa stavu výberu.
Stav | Popis |
---|---|
Pendiente | Stav sa priradí k výberom pri vytvorení, pre ktoré neboli vykonané žiadne akcie. |
Cancelado | Stav sa priradí k zrušeným výberom. Zrušenia môžu byť vykonané z rôznych dôvodov. Napríklad nie je uvedená metóda prijatia finančných prostriedkov. Všetky platby z tohto výberu prejdú do stavu Dostupné a sú opäť k dispozícii na výber. |
Odoslané | Stav je nastavený pre výber finančných prostriedkov, keď sú odoslané. |
Dokončené | Stav sa nastaví pre ručný výber, keď ho vývojár prijme na potvrdenie príjmu. Alebo automaticky po 14 dňoch od odoslania. |
Rechazado | Stav sa nastaví pre výber, keď banka alebo platobný systém vráti finančné prostriedky po odoslaní. Všetky platby z tohto výberu prejdú do stavu Dostupné a sú opäť k dispozícii na výber. |
API
Overview
API PayToUse performs the following functions:
- Checks the activation status of an unlock code and activates it if necessary.
- Retrieves blood glucose data from the NightScout app.
- Retrieves current weather data for a specified location.
All information can be requested and returned in a single request.
API Endpoints
You can use one of the following endpoints:
- https://api.pay-to-use.com
- https://api.p2u.io
Both endpoints handle GET and POST requests.
Request Parameters
- device: string (required) — unique device identifier
- app: integer (required) — your Application ID
- model: string (optional) — device model code, needed for collecting and displaying statistics for devices using the app
- code: string (optional) — unlock code
- bg: associative array (optional) — data for requesting blood glucose levels from the NightScout app
- url: string (optional) — address of the NightScout app
- weather: associative array (optional) — data for requesting current weather
- appid: string (optional) — weather API access key
- lat: float (optional) — latitude
- lon: float (optional) — longitude
- provider: integer (optional) — weather provider
List of Supported Weather Providers
1. OpenWeatherMap
- Description: OpenWeatherMap provides global weather data, including real-time weather, historical data, and 16-day forecasts. With wide geographic coverage and frequent updates, OpenWeatherMap is a popular choice for applications requiring both current weather and extended forecasts.
- Data Provided: Real-time temperature, humidity, wind speed, air quality, precipitation probability, and more. Offers both current and forecast data, including minute-by-minute weather data for select locations.
- Provider Selection: Include provider = 1 in the weather section of your request to select OpenWeatherMap as the weather provider.
- Usage Notes: Offers free and paid tiers, with data accessible via API key authentication. Advanced data layers and premium features are available in paid plans.
- API Documentation: Available here.
2. QWeather
- Description: QWeather, also known as HeWeather, provides comprehensive weather data focused on China but includes international data as well. It offers extensive details such as real-time weather, forecasts, air quality information, and alerts.
- Data Provided: Current temperature, humidity, UV index, pollution levels, daily and hourly forecasts, as well as warnings for severe weather conditions. Known for its granular air quality data and its real-time updates on changing weather conditions.
- Provider Selection: Include provider = 2 in the weather section of your request to select QWeather as the weather provider.
- Usage Notes: QWeather offers API access with free and premium tiers. The free tier provides limited data, while premium options expand to cover additional data points and locations.
- API Documentation: Available here.
3. MET Weather (MET Norway)
- Description: The MET Weather API, provided by MET Norway, gives access to a variety of open meteorological data, including forecasts, historical data, and specific data for Norway and the Nordic regions. Known for its accuracy and transparency, MET Weather is ideal for applications in need of highly reliable weather data.
- Data Provided: Current weather conditions, forecasts, precipitation, temperature, wind data, and UV index. MET Weather offers specialized data for the Nordic regions but also supports global weather information.
- Provider Selection: Include provider = 3 in the weather section of your request to select MET Weather as the weather provider.
- Usage Notes: All data provided by MET Weather is freely available for use under a Creative Commons license, allowing both non-commercial and commercial applications without cost. MET Norway is renowned for its environmental data, making it a trusted provider, particularly in Europe.
- API Documentation: Available here.
Example Request
function onTemporalEvent() as Void {
var ds = System.getDeviceSettings();
if (!ds.phoneConnected) { // Checks that the device is connected to the phone for sending the request
return;
}
var id = ds.uniqueIdentifier;
if (id == null) { // Verifies that the device has been assigned a unique identifier
return;
}
var request = {};
var lockCheck = Application.Storage.getValue("LastCodeCheckTimestamp");
if (lockCheck == null || lockCheck <= Time.now().value()) { // Sends the code if necessary
request.put("code", Application.Properties.getValue("UnlockCode"));
}
var ns_url = Application.Properties.getValue("NS");
if (!ns_url.equals("")) { // Sends the NightScout app URL if needed
request.put("bg", { "url" => ns_url });
}
var wP = Application.Properties.getValue("Weather");
if (wP != 0) { // Sends weather request parameters if needed
var lat = Application.Properties.getValue("latitude");
var lon = Application.Properties.getValue("longitude");
if (!lat.equals("") && !lon.equals("")) {
request.put("weather", {
"appid" => Application.Properties.getValue("appID"),
"lat" => lat,
"lon" => lon,
"provider" => wP
});
}
}
if (!request.isEmpty()) {
// Fills in the required request parameters
request.put("device", id);
request.put("app", p2uAppID); // váš identifikátor aplikácie
request.put("model", ds.partNumber);
Toybox.Communications.makeWebRequest(
"https://api.p2u.io", // API Endpoint
request,
{
:method => 3, // Communications.HTTP_REQUEST_METHOD_POST
:headers => {
"Content-Type" => 1 // Communications.REQUEST_CONTENT_TYPE_JSON
},
:responseType => 0 // Communications.HTTP_RESPONSE_CONTENT_TYPE_JSON
},
method(:onReceive)
);
}
}
API Response
The API returns a JSON object with information on unlock status, glucose level, and weather.
Response Parameters
Unlock Code Verification Results (if a request was sent):
- response: integer — return code
- msg: string — message about the verification result
- expires: integer — expiration timestamp of the code in UNIXTIMESTAMP format
- qr: array — QR code for purchase or serial number verification, if applicable
NightScout App Response (if a request was sent):
- bg: associative array — formatted response from the NightScout app
- value: integer — blood glucose level in mg/dL
- date: integer — timestamp of the code expiration in UNIXTIMESTAMP format
- direction: string — trend in blood glucose level change
Weather API Response (if a request was sent):
- weather: associative array — formatted response from the Weather API
- provider: integer — weather provider identifier
- weather: array — current weather conditions. May return one or two values; if two values are returned, they represent day and night conditions
- temp: float — current temperature in Celsius
- feels_like: float — feels-like temperature in Celsius
- pressure: integer — atmospheric pressure in hPa
- humidity: integer — humidity in %
- precipitation: integer — precipitation probability in %
- wind: integer — wind direction in degrees
- wind_speed: float — wind speed in m/s
- temp_low: float — today’s low temperature in Celsius
- temp_high: float — today’s high temperature in Celsius
- sunrise_today: integer — today’s sunrise timestamp in UNIXTIMESTAMP format
- sunset_today: integer — today’s sunset timestamp in UNIXTIMESTAMP format
- sunrise_tomorrow: integer — tomorrow’s sunrise timestamp in UNIXTIMESTAMP format
- sunset_tomorrow: integer — tomorrow’s sunset timestamp in UNIXTIMESTAMP format
- aqi: associative array — air quality index
- level: integer — air quality index level
- value: integer — air quality index value
Example Response
{
"response": 103,
"msg": "Free for beta tester",
"expires": 0,
"qr": [
"11111110111011010110101111111",
"10000010111001001101001000001",
"10111010101100110110101011101",
"10111010110101000001001011101",
"10111010000001010100001011101",
"10000010100110001101001000001",
"11111110101010101010101111111",
"00000000010010110111100000000",
"11001110000100100100100101111",
"11111100011011011010011111111",
"01111011100111111100101000001",
"01111100101100110111011011011",
"00110110101010100101110000010",
"11001000010001011000001011111",
"01101010001001110100000001101",
"10111101100010100101100110011",
"01010111111100110100100100010",
"10000100111011011000101111011",
"00000110110110110100100000101",
"00111100011100001100101100011",
"11110111110010100111111111001",
"00000000111001011101100010001",
"11111110010001011111101011101",
"10000010100010100111100010010",
"10111010101101100111111111001",
"10111010010010110000010000001",
"10111010001111111110000001111",
"10000010111101011111101101011",
"11111110100011011110110010010"
],
"bg": {
"value": -102,
"date": 1730546101,
"direction": ""
},
"weather": {
"provider": 1,
"weather": [
89
],
"temp": 0.27,
"feels_like": -3.14,
"pressure": 999,
"humidity": 78,
"precipitation": 0,
"wind": 120,
"wind_speed": 2.96,
"temp_low": -3.8,
"temp_high": 0.27,
"sunrise_today": 1730527969,
"sunset_today": 1730551770,
"sunrise_tomorrow": 1730614492,
"sunset_tomorrow": 1730638051,
"aqi": {
"level": 1,
"value": 38
}
}
}
Notes
- Requests with bg require a connection to the NightScout app.
- For every request with a code, the API automatically checks the code status and activates it if inactive.
- Please note that API parameters may be updated or modified over time to improve functionality, compatibility, and security. It is recommended to periodically review the API documentation for any changes that might affect integration or usage.
Garmin
Project-Id-Version: PayToUse
Report-Msgid-Bugs-To:
PO-Revision-Date: 2024-06-26 18:43+0300
Last-Translator: VeshchiyOleg
ID | Popis | Day | Night |
---|---|---|---|
0 | Vymazať |
0x53 |
0x54 |
40 | Fair | ||
23 | Mostly clear |
0x55 |
0x56 |
1 | Partly cloudy |
0x57 |
0x58 |
22 | Partly clear | ||
2 | Mostly cloudy |
0x59 |
|
52 | Thin clouds | ||
20 | Cloudy |
0x5A |
|
45 | Cloudy chance of rain | ||
31 | Drizzle |
0x3E |
|
14 | Light rain |
0x42 |
|
24 | Light showers | ||
3 | Rain |
0x43 |
|
25 | Showers | ||
27 | Chance of showers |
0x46 |
|
11 | Scattered showers | ||
15 | Heavy rain | ||
26 | Heavy showers | ||
28 | Chance of thunderstorms |
0x36 |
0x37 |
12 | Scattered thunderstorms |
0x38 |
|
6 | Thunderstorms |
0x39 |
|
8 | Fog |
0x4E |
|
9 | Hazy | ||
29 | Mist | ||
39 | Haze | ||
30 | Dust |
0x4F |
|
35 | Sand | ||
33 | Smoke | ||
38 | Volcanic ash | ||
37 | Sandstorm | ||
13 | Unknown precipitation | ||
5 | Windy |
0x52 |
|
36 | Squall | ||
48 | Flurries | ||
32 | Tornado |
0x50 |
|
41 | Hurricane | ||
42 | Tropical storm | ||
50 | Sleet |
0x45 |
|
7 | Wintry mix | ||
18 | Light rain snow | ||
19 | Heavy rain snow | ||
21 | Rain snow | ||
49 | Freezing rain | ||
44 | Chance of rain snow | ||
47 | Cloudy chance of rain snow | ||
34 | Ice | ||
51 | Ice snow | ||
43 | Chance of snow |
0x4C |
0x4D |
16 | Light snow | ||
46 | Cloudy chance of snow |
0x4A |
|
4 | Snow | ||
17 | Heavy snow |
0x4B |
|
10 | Hail |
0x3A |
Open Weather Map
Project-Id-Version: PayToUse
Report-Msgid-Bugs-To:
PO-Revision-Date: 2024-06-26 18:43+0300
Last-Translator: VeshchiyOleg
ID | Popis | Day | Night |
---|---|---|---|
2xx | Thunderstorm | ||
200 | Thunderstorm with light rain |
0x36 |
0x37 |
201 | Thunderstorm with rain |
0x38 |
|
202 | Thunderstorm with heavy rain | ||
210 | Light thunderstorm | ||
211 | Thunderstorm |
0x39 |
|
212 | Heavy thunderstorm |
0x3B |
|
221 | Ragged thunderstorm | ||
230 | Thunderstorm with light drizzle |
0x3A |
|
231 | Thunderstorm with drizzle | ||
232 | Thunderstorm with heavy drizzle | ||
3xx | Drizzle | ||
300 | Light intensity drizzle |
0x3C |
0x3D |
301 | Drizzle |
0x3E |
|
302 | Heavy intensity drizzle |
0x3F |
|
310 | Light intensity drizzle rain |
0x40 |
|
311 | Drizzle rain | ||
312 | Heavy intensity drizzle rain |
0x41 |
|
313 | Shower rain and drizzle | ||
314 | Heavy shower rain and drizzle | ||
321 | Shower drizzle | ||
5xx | Rain | ||
500 | Light rain |
0x42 |
|
501 | Moderate rain |
0x43 |
|
502 | Heavy intensity rain |
0x44 |
|
503 | Very heavy rain | ||
504 | Extreme rain | ||
511 | Freezing rain |
0x45 |
|
520 | Light intensity shower rain |
0x46 |
|
521 | Shower rain | ||
522 | Heavy intensity shower rain | ||
531 | Ragged shower rain | ||
6xx | Snow | ||
600 | Light snow |
0x4C |
0x4D |
601 | Snow |
0x4A |
|
602 | Heavy snow | ||
611 | Sleet |
0x45 |
|
612 | Light shower sleet | ||
613 | Shower sleet | ||
615 | Light rain and snow | ||
616 | Rain and snow | ||
620 | Light shower snow |
0x4B |
|
621 | Shower snow | ||
622 | Heavy shower snow | ||
7xx | Atmosphere | ||
701 | Mist |
0x4E |
|
711 | Smoke |
0x4F |
|
721 | Haze | ||
731 | Sand/ dust whirls | ||
741 | Fog | ||
751 | Sand |
0x4F |
|
761 | Dust | ||
762 | Volcanic ash | ||
771 | Squalls |
0x52 |
|
781 | Tornado |
0x50 |
|
800 | Vymazať | ||
800 | Clear sky |
0x53 |
0x54 |
80x | Clouds | ||
801 | Few clouds 11-25% |
0x55 |
0x56 |
802 | Scattered clouds 25-50% |
0x57 |
0x58 |
803 | Broken clouds 51-84% |
0x59 |
|
804 | Overcast clouds 85-100% |
0x5A |
QWeather
You can check out the original set of weather icons by clicking here
ID | Popis | Day | Night |
---|---|---|---|
302 | Thundershower |
0x36 |
0x37 |
303 | Heavy Thunderstorm |
0x38 |
|
310 | Rainstorm |
0x39 |
|
317 | Rainstorm to Heavy Rainstorm | ||
304 | Hail |
0x3A |
|
311 | Heavy Rainstorm |
0x3B |
|
312 | Severe Rainstorm | ||
318 | Heavy to Severe Rainstorm | ||
309 | Drizzle Rain |
0x3C |
0x3D |
404 | Sleet |
0x3E |
|
305 | Light Rain |
0x42 |
|
314 | Light to Moderate Rain | ||
306 | Moderate Rain |
0x43 |
|
315 | Moderate to Heavy Rain | ||
399 | Rain | ||
308 | Extreme Rain |
0x44 |
|
316 | Heavy Rain to Rainstorm | ||
313 | Freezing Rain |
0x45 |
|
405 | Rain and Snow | ||
300 | Shower Rain |
0x46 |
|
301 | Heavy Shower Rain | ||
307 | Heavy Rain | ||
350 | Shower Rain | ||
351 | Heavy Shower Rain | ||
400 | Light Snow |
0x4C |
0x4D |
408 | Light to Moderate Snow | ||
499 | Snow | ||
401 | Moderate Snow |
0x4A |
|
402 | Heavy Snow | ||
409 | Moderate to Heavy Snow | ||
410 | Heavy Snow to Snowstorm | ||
403 | Snowstorm |
0x4B |
|
406 | Shower Rain and Snow | ||
407 | Snow Flurry | ||
456 | Shower Rain and Snow | ||
457 | Snow Flurry | ||
503 | Sand |
0x4E |
|
504 | Dust | ||
507 | Duststorm | ||
508 | Sandstorm | ||
511 | Moderate Haze | ||
512 | Heavy Haze | ||
513 | Severe Haze | ||
500 | Mist |
0x4F |
|
501 | Fog | ||
502 | Haze | ||
509 | Dense Fog | ||
510 | Strong Fog | ||
514 | Heavy Fog | ||
515 | Extra Heavy Fog | ||
100 | Sunny |
0x53 |
0x54 |
150 | Vymazať | ||
101 | Cloudy |
0x55 |
0x56 |
151 | Cloudy | ||
102 | Few Clouds |
0x57 |
0x58 |
152 | Few Clouds | ||
103 | Partly Cloudy |
0x59 |
|
153 | Partly Cloudy | ||
104 | Overcast |
0x5A |
MET Weather
Project-Id-Version: PayToUse
Report-Msgid-Bugs-To:
PO-Revision-Date: 2024-06-26 18:43+0300
Last-Translator: VeshchiyOleg
ID | Popis | Day | Night |
---|---|---|---|
lightrainshowers | Light rain showers |
0x36 |
0x37 |
lightrainshowersandthunder | Light rain showers and thunder | ||
rainshowersandthunder | Rain showers and thunder | ||
heavyrainshowersandthunder | Heavy rain showers and thunder | ||
heavyrainandthunder | Heavy rain and thunder |
0x38 |
|
rainandthunder | Rain and thunder | ||
lightrainandthunder | Light rain and thunder |
0x39 |
|
heavysleetandthunder | Heavy sleet and thunder |
0x3B |
|
lightsleetandthunder | Light sleet and thunder |
0x3A |
|
lightssleetshowersandthunder | Light sleet showers and thunder | ||
sleetandthunder | Sleet and thunder | ||
lightsleetshowers | Light sleet showers |
0x3C |
0x3D |
sleetshowers | Sleet showers | ||
sleetshowersandthunder | Sleet showers and thunder | ||
heavysleetshowers | Heavy sleet showers | ||
heavysleetshowersandthunder | Heavy sleet showers and thunder | ||
lightsleet | Light sleet |
0x3E |
|
sleet | Sleet |
0x3F |
|
heavysleet | Heavy sleet |
0x45 |
|
lightrain | Light rain |
0x42 |
|
rain | Rain |
0x43 |
|
heavyrain | Heavy rain |
0x44 |
|
rainshowers | Rain showers |
0x46 |
|
heavyrainshowers | Heavy rain showers | ||
heavysnow | Heavy snow |
0x4B |
|
heavysnowandthunder | Heavy snow and thunder | ||
snow | Snow | ||
snowandthunder | Snow and thunder | ||
lightsnowshowers | Light snow showers |
0x4C |
0x4D |
lightssnowshowersandthunder | Light snow showers and thunder | ||
snowshowers | Snow showers | ||
snowshowersandthunder | Snow showers and thunder | ||
heavysnowshowers | Heavy snow showers | ||
heavysnowshowersandthunder | Heavy snow showers and thunder | ||
lightsnow | Light snow |
0x4A |
|
lightsnowandthunder | Light snow and thunder | ||
fog | Fog |
0x4F |
|
clearsky | Clear sky |
0x53 |
0x54 |
fair | Fair |
0x55 |
0x56 |
partlycloudy | Partly cloudy |
0x57 |
0x58 |
cloudy | Cloudy |
0x59 |