karibou-wallet 2.9.14 → 2.9.91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,13 +4,24 @@
4
4
 
5
5
  ## Main usage
6
6
 
7
- The purpose of this project is to provide a simple and intiutive API to handle a simple Wallet manager for your e-commerce. It has bean designed to work on server side.
7
+ The purpose of this project is to provide a simple and intuitive API to handle a simple Wallet manager for our karibou.ch marketplace. It has bean designed to work on server side and it's usefull for,
8
+ * Stripe payment (card, SEPA, ...)
9
+ * Simple debit balance account
10
+ * Simple credit balance account (for invoice)
11
+ * Two step payment (authorization, capture, refund)
12
+ * Subscription (weekly, monthly)
13
+ * Customer management (security, sensible data)
14
+ * email and name
15
+ * phones
16
+ * addresses
17
+ * payment methods
18
+ * Simple signin verification (OTP) with SMS
8
19
 
9
20
  ## Prerequisites
10
- install node.js with [NVM](https://github.com/creationix/nvm) (required).
21
+ install node.js with [NVM](https://github.com/nvm-sh/nvm#installing-and-updating) (required).
11
22
 
12
- nvm install v6.9.5
13
- nvm use v6.9.5
23
+ nvm install v18.x
24
+ nvm use v8.x
14
25
 
15
26
  ## Installation
16
27
  From github,
@@ -36,25 +47,12 @@ sandbox.
36
47
  ## Wallet specification 1.0
37
48
  * [specifications of our wallet with Stripe](../../wiki/Wallet-1.0-Specifications-(Stripe-backend))
38
49
 
39
- ### Overview
40
- When using the karibou-wallet api, you basically deal with 3 separate concepts:
41
- - wallet (the container of an amount of money),
42
- - transaction (helper to manage charges)
43
- - smartcontract (multiple destinations)
44
- - transfer information
45
-
46
-
47
- ## Authors & spcial thanks :heart:
48
-
49
- - David Pate, https://github.com/patedavid
50
- - Evalet Olivier, https://github.com/evaletolab
51
- - Noria Foukia Enseignante en mathématiques @HEPIA
52
50
 
53
51
 
54
52
  ## License
55
53
  The API is available under AGPL V3 to protect the long term interests of the community – you are free to use it with no restrictions but if you change the server code, then those code changes must be contributed back.
56
54
 
57
- > Copyright (c) 2014 Olivier Evalet (http://evaletolab.ch/)<br/>
55
+ > Copyright (c) 2014 Olivier Evalet (https://karibou.ch/)<br/>
58
56
  > <br/><br/>
59
57
  > Permission is hereby granted, free of charge, to any person obtaining a copy
60
58
  > of this software and associated documentation files (the “Software”), to deal
package/dist/config.js CHANGED
@@ -43,6 +43,7 @@ class Config {
43
43
  Config.settings[option] = value;
44
44
  break;
45
45
  case 'allowMaxAmount':
46
+ case 'allowMaxCredit':
46
47
  case 'reservedAmount':
47
48
  Config.settings[option] = parseFloat(value);
48
49
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../lib/config.ts"],"names":[],"mappings":";;AASA,MAAqB,MAAM;IAIzB,YAAoB,IAAI;QAEtB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAS,GAAG;YACpC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;IACtC,CAAC;IAID,MAAM,CAAC,KAAK;QACV,IAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAE,MAAM,EAAC;YAC9B,MAAM,CAAC,QAAQ,CAAC,sBAAsB,GAAC,IAAI,CAAC;SAC7C;;YACI,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IACpD,CAAC;IAID,MAAM,CAAC,SAAS,CAAC,IAAS;QACxB,IAAG,MAAM,CAAC,QAAQ,EAAE;YAClB,OAAO,MAAM,CAAC,QAAQ,CAAC;SACxB;QAED,MAAM,CAAC,QAAQ,GAAG,EAAE,YAAY,EAAG,KAAK,EAAE,CAAC;QAG3C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAKD,MAAM,CAAC,MAAM,CAAC,MAAa,EAAE,KAAM;QACjC,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAGhC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAG;gBAC1E,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;aAC/C;YAED,QAAQ,MAAM,EAAE;gBACd,KAAK,kBAAkB,CAAC;gBACxB,KAAK,kBAAkB,CAAC;gBACxB,KAAK,aAAa,CAAC;gBACnB,KAAK,eAAe,CAAC;gBACrB,KAAK,eAAe,CAAC;gBACrB,KAAK,QAAQ,CAAC;gBACd,KAAK,UAAU,CAAC;gBAChB,KAAK,UAAU,CAAC;gBAChB,KAAK,QAAQ,CAAC;gBACd,KAAK,WAAW;oBACd,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;oBAAA,MAAM;gBACxC,KAAK,gBAAgB,CAAC;gBACtB,KAAK,gBAAgB;oBACjB,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;oBAAA,MAAM;gBACtD,KAAK,SAAS,CAAC;gBACf,KAAK,OAAO,CAAC;gBACb,KAAK,wBAAwB;oBAC3B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;oBAAA,MAAM;gBACjD,KAAK,mBAAmB;oBACtB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;qBACxD;oBACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;wBAC/C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;qBACtC;oBACD,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;oBAChC,MAAM;gBACR;oBAEE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACxD;SACF;QACD,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAA,CAAC;CAEH;AArFD,yBAqFC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../lib/config.ts"],"names":[],"mappings":";;AASA,MAAqB,MAAM;IAIzB,YAAoB,IAAI;QAEtB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAS,GAAG;YACpC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;IACtC,CAAC;IAID,MAAM,CAAC,KAAK;QACV,IAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAE,MAAM,EAAC;YAC9B,MAAM,CAAC,QAAQ,CAAC,sBAAsB,GAAC,IAAI,CAAC;SAC7C;;YACI,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IACpD,CAAC;IAID,MAAM,CAAC,SAAS,CAAC,IAAS;QACxB,IAAG,MAAM,CAAC,QAAQ,EAAE;YAClB,OAAO,MAAM,CAAC,QAAQ,CAAC;SACxB;QAED,MAAM,CAAC,QAAQ,GAAG,EAAE,YAAY,EAAG,KAAK,EAAE,CAAC;QAG3C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAKD,MAAM,CAAC,MAAM,CAAC,MAAa,EAAE,KAAM;QACjC,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAGhC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAG;gBAC1E,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;aAC/C;YAED,QAAQ,MAAM,EAAE;gBACd,KAAK,kBAAkB,CAAC;gBACxB,KAAK,kBAAkB,CAAC;gBACxB,KAAK,aAAa,CAAC;gBACnB,KAAK,eAAe,CAAC;gBACrB,KAAK,eAAe,CAAC;gBACrB,KAAK,QAAQ,CAAC;gBACd,KAAK,UAAU,CAAC;gBAChB,KAAK,UAAU,CAAC;gBAChB,KAAK,QAAQ,CAAC;gBACd,KAAK,WAAW;oBACd,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;oBAAA,MAAM;gBACxC,KAAK,gBAAgB,CAAC;gBACtB,KAAK,gBAAgB,CAAC;gBACtB,KAAK,gBAAgB;oBACjB,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;oBAAA,MAAM;gBACtD,KAAK,SAAS,CAAC;gBACf,KAAK,OAAO,CAAC;gBACb,KAAK,wBAAwB;oBAC3B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;oBAAA,MAAM;gBACjD,KAAK,mBAAmB;oBACtB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;qBACxD;oBACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;wBAC/C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;qBACtC;oBACD,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;oBAChC,MAAM;gBACR;oBAEE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACxD;SACF;QACD,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAA,CAAC;CAEH;AAtFD,yBAsFC"}
@@ -1,6 +1,6 @@
1
1
  import Stripe from 'stripe';
2
2
  import { Customer } from './customer';
3
- import { Address, Card } from './payments';
3
+ import { KngPaymentAddress, KngCard } from './payments';
4
4
  export type Interval = Stripe.Plan.Interval;
5
5
  export interface SubscriptionMetaItem {
6
6
  sku: string | number;
@@ -34,7 +34,7 @@ export declare enum SchedulerItemFrequency {
34
34
  RECURRENT_2WEEKS = 3,
35
35
  RECURRENT_MONTH = 4
36
36
  }
37
- export interface SubscriptionAddress extends Address {
37
+ export interface SubscriptionAddress extends KngPaymentAddress {
38
38
  price: number;
39
39
  dayOfWeek?: number;
40
40
  }
@@ -67,8 +67,8 @@ export declare class SubscriptionContract {
67
67
  updateItemsAndPrice(cardTtems: any): Promise<void>;
68
68
  pause(to: Date): Promise<void>;
69
69
  resumeManualy(): Promise<void>;
70
- updatePaymentMethod(card: Card): Promise<this>;
71
- static create(customer: Customer, card: Card, interval: Interval, start_from: any, shipping: SubscriptionAddress, cartItems: any, dayOfWeek: any, fees: any): Promise<SubscriptionContract>;
70
+ updatePaymentMethod(card: KngCard): Promise<this>;
71
+ static create(customer: Customer, card: KngCard, interval: Interval, start_from: any, shipping: SubscriptionAddress, cartItems: any, dayOfWeek: any, fees: any): Promise<SubscriptionContract>;
72
72
  static get(id: any): Promise<SubscriptionContract>;
73
73
  static list(customer: Customer): Promise<SubscriptionContract[]>;
74
74
  static listAll(options: any): Promise<SubscriptionContract[]>;
@@ -110,8 +110,8 @@ class SubscriptionContract {
110
110
  resumeManualy() {
111
111
  return __awaiter(this, void 0, void 0, function* () {
112
112
  const metadata = this._subscription.metadata;
113
- metadata.from = undefined;
114
- metadata.to = undefined;
113
+ metadata.from = null;
114
+ metadata.to = null;
115
115
  this._subscription = yield payments_1.$stripe.subscriptions.update(this._subscription.id, { pause_collection: '', metadata });
116
116
  });
117
117
  }
@@ -129,6 +129,9 @@ class SubscriptionContract {
129
129
  (0, assert_1.strict)(shipping.price);
130
130
  (0, assert_1.strict)(shipping.lat);
131
131
  (0, assert_1.strict)(shipping.lng);
132
+ if (card.issuer == "invoice") {
133
+ throw new Error("Le paiement par facture n'est pas disponible pour la souscription");
134
+ }
132
135
  for (let item of cartItems) {
133
136
  item.product = yield findOrCreateProductFromItem(item);
134
137
  }
@@ -224,6 +227,9 @@ function createItemsFromCart(cartItems, fees) {
224
227
  };
225
228
  return { metadata, quantity: item.quantity, price_data: instance };
226
229
  };
230
+ if (fees > 1) {
231
+ throw new Error("Incorrect params");
232
+ }
227
233
  const week = cartItems.filter(item => item.frequency == SchedulerItemFrequency.RECURRENT_WEEK).map(i => itemCreation(i, 'week'));
228
234
  const month = cartItems.filter(item => item.frequency == SchedulerItemFrequency.RECURRENT_MONTH).map(i => itemCreation(i, 'month'));
229
235
  return { week, month };
@@ -1 +1 @@
1
- {"version":3,"file":"contract.subscription.js","sourceRoot":"","sources":["../lib/contract.subscription.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAA0C;AAE1C,yCAAsC;AACtC,yCAAgE;AAChE,qCAA8B;AA0B9B,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,yDAAU,CAAA;IAAE,yDAAM,CAAA;IAAE,2DAAO,CAAA;IAAE,yDAAM,CAAA;AACrC,CAAC,EAFW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAE1B;AAGD,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,uFAAuB,CAAA;IACvB,qFAAuB,CAAA;IACvB,uFAAuB,CAAA;IACvB,2FAAuB,CAAA;IACvB,yFAAuB,CAAA;AACzB,CAAC,EANW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAMjC;AAcD,MAAa,oBAAoB;IAQ/B,YAAoB,IAAwB;QAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QAChE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IAC9E,CAAC;IAED,IAAI,EAAE,KAAM,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAA,CAAC,CAAC;IAC1C,IAAI,QAAQ;QACV,OAAO;YACL,KAAK,EAAC,IAAI,CAAC,oBAAoB;YAC/B,IAAI,EAAE,IAAI,CAAC,SAAS;YACpB,KAAK,EAAC,IAAI,CAAC,eAAe;SAC3B,CAAA;IACH,CAAC;IAID,IAAI,MAAM;QACR,IAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE;YACtC,OAAO,QAAQ,CAAC;SACjB;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAA;IAClC,CAAC;IACD,IAAI,WAAW,KAAM,OAAQ,IAAI,CAAC,aAAqB,CAAC,WAAW,CAAA,CAAC,CAAC;IAErE,IAAI,WAAW;QACb,IAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,IAAI,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,UAAU,EAAE;YACxF,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SAC9D;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAA,cAAG,EAAC,IAAI,CAAC,aAAa,CAAC,sBAAgC,CAAC,CAAC;IAClE,CAAC;IAKD,IAAI,oBAAoB;QACtB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,oBAAoB,GAAG,IAAI,CAAE,CAAC;IACnE,CAAC;IAED,IAAI,KAAK;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAID,iBAAiB;QACf,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,GAAE,YAAY,CAAC,OAAO,EAAE,CAAC,CAAA,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAC,CAAC,CAAA,CAAC,CAAA,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC7F,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAC,KAAK,EAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3E,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAC,CAAC;IACxD,CAAC;IAYK,QAAQ;;YACZ,OAAO,mBAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnD,CAAC;KAAA;IAMK,MAAM;;YAEV,IAAI,CAAC,aAAa,GAAG,MAAM,kBAAO,CAAC,aAAa,CAAC,MAAM,CACrD,IAAI,CAAC,aAAa,CAAC,EAAE,EAAC,EAAC,oBAAoB,EAAE,IAAI,EAAC,CACnD,CAAC;QACJ,CAAC;KAAA;IAKK,mBAAmB,CAAC,SAAS;;QAEnC,CAAC;KAAA;IAOK,KAAK,CAAC,EAAO;;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAkB,CAAC;YACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAI7C,MAAM,QAAQ,GAAM;gBAClB,QAAQ,EAAE,MAAM;aACjB,CAAA;YAGD,IAAI,EAAE,EAAC;gBACL,IAAG,CAAC,EAAE,CAAC,YAAY;oBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBACjE,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,GAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,UAAU,GAAC,EAAE,CAAC,OAAO,EAAE,CAAC;aAClC;YAED,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAC,EAAE,CAAC;YAE9B,IAAI,CAAC,aAAa,GAAG,MAAM,kBAAO,CAAC,aAAa,CAAC,MAAM,CACrD,IAAI,CAAC,aAAa,CAAC,EAAE,EACrB,EAAC,gBAAgB,EAAE,QAAQ,EAAC,CAC7B,CAAC;QACJ,CAAC;KAAA;IAGK,aAAa;;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC7C,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC;YAC1B,QAAQ,CAAC,EAAE,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,MAAM,kBAAO,CAAC,aAAa,CAAC,MAAM,CACrD,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAC,gBAAgB,EAAE,EAAE,EAAE,QAAQ,EAAC,CACxD,CAAC;QAGJ,CAAC;KAAA;IAKK,mBAAmB,CAAC,IAAS;;YACjC,IAAI,CAAC,aAAa,GAAG,MAAM,kBAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE;gBAC/D,sBAAsB,EAAE,IAAA,gBAAK,EAAC,IAAI,CAAC,EAAE,CAAC;aACvC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAiBD,MAAM,CAAO,MAAM,CAAC,QAAiB,EAAE,IAAS,EAAE,QAAiB,EAAE,UAAU,EAAE,QAA4B,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI;;YAGvI,IAAA,eAAM,EAAC,UAAU,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;YAC9C,IAAA,eAAM,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACvB,IAAA,eAAM,EAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACrB,IAAA,eAAM,EAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAGrB,KAAI,IAAI,IAAI,IAAI,SAAS,EAAE;gBACzB,IAAI,CAAC,OAAO,GAAG,MAAM,2BAA2B,CAAC,IAAI,CAAC,CAAC;aACxD;YAED,MAAM,KAAK,GAAG,mBAAmB,CAAC,SAAS,EAAC,IAAI,CAAC,CAAC;YAKlD,MAAM,QAAQ,GAAG,EAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAC,IAAI,EAAC,CAAC,CAAC,EAAC,SAAS,EAAC,CAAC;YAEtE,MAAM,WAAW,GAAG,YAAY,GAAG,QAAQ,CAAC;YAM5C,MAAM,OAAO,GAAG;gBACd,QAAQ,EAAE,QAAQ,CAAC,EAAE;gBACrB,gBAAgB,EAAC,kBAAkB;gBACnC,sBAAsB,EAAC,IAAA,gBAAK,EAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,WAAW,EAAC,IAAI;gBAChB,WAAW;gBACX,oBAAoB,EAAE,UAAU;gBAChC,KAAK,EAAC,KAAK,CAAC,QAAQ,CAAC;gBACrB,QAAQ;aAC0B,CAAC;YACrC,IAAG;gBAED,MAAM,YAAY,GAAG,MAAM,kBAAO,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjE,OAAO,IAAI,oBAAoB,CAAC,YAAY,CAAC,CAAC;aAC/C;YAAA,OAAM,GAAG,EAAE;gBACV,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;aACvB;QACH,CAAC;KAAA;IAMA,MAAM,CAAO,GAAG,CAAC,EAAE;;YAClB,IAAG;gBACD,MAAM,MAAM,GAAG,MAAM,kBAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAQ,CAAC;gBAC/D,MAAM,YAAY,GAAG,IAAI,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBACtD,OAAO,YAAY,CAAC;aACrB;YAAA,OAAM,GAAG,EAAE;gBACV,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;aACvB;QACH,CAAC;KAAA;IAoBD,MAAM,CAAO,IAAI,CAAC,QAAiB;;YAGjC,MAAM,aAAa,GAAuC,MAAM,kBAAO,CAAC,aAAa,CAAC,IAAI,CAAC;gBACzF,QAAQ,EAAC,QAAQ,CAAC,EAAE;aACrB,CAAC,CAAC;YAIH,OAAO,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAA;QACrE,CAAC;KAAA;IAID,MAAM,CAAO,OAAO,CAAC,OAAO;;YAC1B,IAAG,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBAC/E,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;aACnD;YAED,MAAM,aAAa,GAAuC,MAAM,kBAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAIpG,OAAO,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAA;QAErE,CAAC;KAAA;CACF;AAlRD,oDAkRC;AAID,SAAe,2BAA2B,CAAC,IAAI;;QAC7C,MAAM,OAAO,GAAG,MAAM,kBAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC5C,KAAK,EAAC,0BAA0B,GAAC,IAAI,CAAC,GAAG,GAAC,GAAG,EAAE,KAAK,EAAC,CAAC;SACvD,CAAC,CAAA;QACF,IAAG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE;YACjC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3B;QAED,MAAM,OAAO,GAAG,MAAM,kBAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC5C,IAAI,EAAE,IAAI,CAAC,GAAG;YACd,WAAW,EAAC,IAAI,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG;SAC/C,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,EAAE,CAAC;IACpB,CAAC;CAAA;AAKD,SAAS,mBAAmB,CAAC,SAAS,EAAE,IAAI;IAC1C,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAG,EAAE;QACvC,MAAM,cAAc,GAAG;YACrB,MAAM,EAAC,CAAC;YACR,OAAO,EAAC,CAAC;SACV,CAAA;QACD,MAAM,QAAQ,GAAuB;YACnC,GAAG,EAAG,IAAI,CAAC,GAAG;YACd,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAG,IAAI,CAAC,KAAK;YAClB,IAAI,EAAG,IAAI,CAAC,IAAI;YAChB,GAAG,EAAG,IAAI,CAAC,GAAG;YACd,IAAI,EAAG,IAAI,CAAC,IAAI;YAChB,IAAI;SACL,CAAA;QAED,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAIzD,MAAM,QAAQ,GAAoB;YAChC,QAAQ,EAAG,KAAK;YAChB,WAAW,EAAG,QAAQ,CAAC,KAAK,CAAC;YAC7B,OAAO,EAAG,IAAI,CAAC,OAAO;YACtB,SAAS,EAAG,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE;SACnE,CAAC;QAEF,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,CAAC;IACjE,CAAC,CAAA;IAID,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,sBAAsB,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAC,MAAM,CAAC,CAAC,CAAC;IAChI,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,sBAAsB,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAC,OAAO,CAAC,CAAC,CAAC;IAEnI,OAAO,EAAC,IAAI,EAAC,KAAK,EAAC,CAAC;AACtB,CAAC;AAKD,SAAS,SAAS,CAAC,IAA6B;IAC9C,OAAO;QACL,WAAW,EAAC,IAAI,CAAC,KAAK,CAAC,WAAW;QAClC,QAAQ,EAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;QAC5B,QAAQ,EAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACxB,SAAS,EAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC3C,IAAI,EAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACnC,GAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,GAAG;QACrB,IAAI,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI;QACvB,IAAI,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI;QACvB,GAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,GAAG;QACrB,KAAK,EAAC,IAAI,CAAC,QAAQ,CAAC,KAAK;KAC1B,CAAA;AACH,CAAC;AAID,SAAS,aAAa,CAAC,QAAQ;IAC7B,IAAG;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAwB,CAAC;QACvE,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAA;QACnD,OAAO,OAAO,CAAC;KAChB;IAAA,OAAM,GAAG,EAAC;QACT,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,GAAG,CAAC;KACX;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAAG;IACrB,gBAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAC,GAAG,CAAC,CAAC;IAC5D,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"contract.subscription.js","sourceRoot":"","sources":["../lib/contract.subscription.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import Stripe from 'stripe';
2
- import { Address, Card, CashBalance } from './payments';
2
+ import { KngPaymentAddress, KngCard, CashBalance, CreditBalance, KngPaymentSource } from './payments';
3
3
  export declare class Customer {
4
- private _available;
5
4
  private _sources;
6
5
  private _id;
7
6
  private _metadata;
8
7
  private _cashbalance;
8
+ private _balance;
9
9
  private _email;
10
10
  private _phone;
11
11
  private _fname;
@@ -15,20 +15,23 @@ export declare class Customer {
15
15
  private constructor();
16
16
  get id(): string;
17
17
  get email(): string;
18
+ get balance(): number;
18
19
  get phone(): string;
19
20
  get name(): {
20
21
  familyName: string;
21
22
  givenName: string;
22
23
  };
23
24
  get uid(): string;
24
- get addresses(): Address[];
25
+ get addresses(): KngPaymentAddress[];
25
26
  get methods(): any;
26
27
  get cashbalance(): any;
28
+ static allWithActiveCreditbalance(): Promise<void>;
29
+ static search(query: any): Promise<void>;
27
30
  static create(email: string, fname: string, lname: string, phone: string, uid: string): Promise<Customer>;
28
31
  static get(id: any): Promise<Customer>;
29
- addressAdd(address: Address): Promise<void>;
30
- addressRemove(address: Address): Promise<void>;
31
- addressUpdate(address: Address): Promise<void>;
32
+ addressAdd(address: KngPaymentAddress): Promise<void>;
33
+ addressRemove(address: KngPaymentAddress): Promise<void>;
34
+ addressUpdate(address: KngPaymentAddress): Promise<void>;
32
35
  addMethodIntent(): Promise<Stripe.Response<Stripe.SetupIntent>>;
33
36
  addMethod(token: string): Promise<{
34
37
  type: number;
@@ -43,10 +46,14 @@ export declare class Customer {
43
46
  updated: number;
44
47
  provider: string;
45
48
  }>;
46
- createCashBalance(month: string, year: string, credit?: number): Promise<CashBalance>;
49
+ checkMethods(methods: KngPaymentSource[]): Promise<void>;
50
+ allowCredit(allow: boolean): Promise<CreditBalance>;
51
+ updateCredit(amount: number): Promise<void>;
52
+ createCashBalance(month: string, year: string): Promise<CashBalance>;
47
53
  listBankTransfer(): Promise<any>;
48
54
  listMethods(): Promise<any>;
49
- removeMethod(method: Card): Promise<void>;
55
+ removeMethod(method: KngCard): Promise<void>;
56
+ allowedCredit(): boolean;
50
57
  findMethodByID(id: any): any;
51
58
  findMethodByAlias(alias: any): any;
52
59
  }
package/dist/customer.js CHANGED
@@ -15,13 +15,14 @@ const stripe_1 = require("stripe");
15
15
  const payments_1 = require("./payments");
16
16
  const config_1 = require("./config");
17
17
  class Customer {
18
- constructor(id, email, phone, cashbalance, metadata) {
18
+ constructor(id, email, phone, cashbalance, balance, metadata) {
19
19
  (0, assert_1.strict)(id);
20
20
  (0, assert_1.strict)(email);
21
21
  (0, assert_1.strict)(phone);
22
22
  (0, assert_1.strict)(metadata.uid);
23
23
  (0, assert_1.strict)(metadata.fname);
24
24
  (0, assert_1.strict)(metadata.lname);
25
+ this._balance = balance;
25
26
  this._email = email;
26
27
  this._phone = phone;
27
28
  this._fname = metadata.fname;
@@ -39,6 +40,9 @@ class Customer {
39
40
  get email() {
40
41
  return this._email;
41
42
  }
43
+ get balance() {
44
+ return this._balance / 100;
45
+ }
42
46
  get phone() {
43
47
  return this._phone;
44
48
  }
@@ -70,17 +74,32 @@ class Customer {
70
74
  }
71
75
  return this._cashbalance;
72
76
  }
77
+ static allWithActiveCreditbalance() {
78
+ return __awaiter(this, void 0, void 0, function* () {
79
+ const customer = yield payments_1.$stripe.customers.search({
80
+ query: "-metadata['creditbalance']:null",
81
+ });
82
+ });
83
+ }
84
+ static search(query) {
85
+ return __awaiter(this, void 0, void 0, function* () {
86
+ const customer = yield payments_1.$stripe.customers.search({
87
+ query: `name~'${query}' OR email~'${query}'`
88
+ });
89
+ });
90
+ }
73
91
  static create(email, fname, lname, phone, uid) {
74
92
  return __awaiter(this, void 0, void 0, function* () {
75
93
  try {
76
94
  const customer = yield payments_1.$stripe.customers.create({
77
95
  description: fname + ' ' + lname + ' id:' + uid,
78
96
  email: email,
97
+ name: fname + ' ' + lname,
79
98
  phone,
80
99
  metadata: { uid, fname, lname },
81
100
  expand: ['cash_balance']
82
101
  });
83
- return new Customer(customer.id, email, phone, customer.cash_balance, customer.metadata);
102
+ return new Customer(customer.id, email, phone, customer.cash_balance, 0, customer.metadata);
84
103
  }
85
104
  catch (err) {
86
105
  throw parseError(err);
@@ -91,7 +110,7 @@ class Customer {
91
110
  return __awaiter(this, void 0, void 0, function* () {
92
111
  try {
93
112
  const stripe = yield payments_1.$stripe.customers.retrieve(id, { expand: ['cash_balance'] });
94
- const customer = new Customer(stripe.id, stripe.email, stripe.phone, stripe.cash_balance, stripe.metadata);
113
+ const customer = new Customer(stripe.id, stripe.email, stripe.phone, stripe.cash_balance, stripe.balance, stripe.metadata);
95
114
  yield customer.listMethods();
96
115
  return customer;
97
116
  }
@@ -179,19 +198,82 @@ class Customer {
179
198
  }
180
199
  });
181
200
  }
182
- createCashBalance(month, year, credit) {
201
+ checkMethods(methods) {
202
+ return __awaiter(this, void 0, void 0, function* () {
203
+ yield this.listMethods();
204
+ for (const method of methods) {
205
+ const id = (0, payments_1.xor)(method.id);
206
+ const alias = (0, payments_1.xor)(method.alias);
207
+ if (!id || !alias) {
208
+ throw new Error("La référence de la carte n'est pas compatible avec le service de paiement");
209
+ }
210
+ if (!this.findMethodByAlias(_method => _method.alias == method.alias)) {
211
+ throw new Error("La référence de la carte n'est pas compatible avec le service de paiement");
212
+ }
213
+ }
214
+ });
215
+ }
216
+ allowCredit(allow) {
183
217
  return __awaiter(this, void 0, void 0, function* () {
184
- credit = credit || 0;
185
218
  const fingerprint = (0, payments_1.crypto_fingerprint)(this.id + this.uid + 'invoice');
186
219
  const id = (0, payments_1.crypto_randomToken)();
220
+ let creditbalance;
221
+ if (allow) {
222
+ creditbalance = {
223
+ type: payments_1.KngPayment.credit,
224
+ id: (0, payments_1.xor)(id),
225
+ alias: (fingerprint),
226
+ expiry: '12/30',
227
+ funding: 'credit',
228
+ issuer: 'invoice',
229
+ limit: config_1.default.option('allowMaxCredit')
230
+ };
231
+ this._metadata['creditbalance'] = JSON.stringify(creditbalance, null, 0);
232
+ this._metadata['allowCredit'] = fingerprint;
233
+ }
234
+ else {
235
+ this._metadata['allowCredit'] = null;
236
+ this._metadata['creditbalance'] = null;
237
+ const index = this._sources.findIndex(src => src.issuer == 'invoice');
238
+ if (index > -1) {
239
+ this._sources.splice(index, 1);
240
+ }
241
+ }
242
+ const customer = yield payments_1.$stripe.customers.update(this._id, { metadata: this._metadata });
243
+ return creditbalance;
244
+ });
245
+ }
246
+ updateCredit(amount) {
247
+ return __awaiter(this, void 0, void 0, function* () {
248
+ if ((this.balance + amount) < 0) {
249
+ if (!this.allowedCredit()) {
250
+ throw new Error("Credit must be a positive number");
251
+ }
252
+ const maxcredit = config_1.default.option('allowMaxCredit') / 100;
253
+ if ((this.balance + amount) < (-maxcredit)) {
254
+ throw new Error("Negative credit exceed limitation of " + maxcredit);
255
+ }
256
+ }
257
+ const maxamount = config_1.default.option('allowMaxAmount') / 100;
258
+ if ((this.balance + amount) > maxamount) {
259
+ throw new Error("Credit exceed limitation of " + maxamount);
260
+ }
261
+ const balance = Math.round((amount + this.balance) * 100);
262
+ const customer = yield payments_1.$stripe.customers.update(this._id, { balance });
263
+ this._balance = balance;
264
+ });
265
+ }
266
+ createCashBalance(month, year) {
267
+ return __awaiter(this, void 0, void 0, function* () {
268
+ const fingerprint = (0, payments_1.crypto_fingerprint)(this.id + this.uid + 'cash');
269
+ const id = (0, payments_1.crypto_randomToken)();
187
270
  const cashbalance = {
188
- type: payments_1.Payment.balance,
271
+ type: payments_1.KngPayment.balance,
189
272
  id: (0, payments_1.xor)(id),
190
273
  alias: (fingerprint),
191
274
  expiry: month + '/' + year,
192
- funding: credit ? 'credit' : 'debit',
193
- limit: credit,
194
- issuer: 'invoice'
275
+ funding: 'debit',
276
+ issuer: 'cash'
195
277
  };
196
278
  this._metadata['cashbalance'] = JSON.stringify(cashbalance, null, 0);
197
279
  const customer = yield payments_1.$stripe.customers.update(this._id, { metadata: this._metadata, expand: ['cash_balance'] });
@@ -224,6 +306,11 @@ class Customer {
224
306
  const cashbalance = this._metadata['cashbalance'];
225
307
  if (cashbalance) {
226
308
  const payment = JSON.parse(cashbalance);
309
+ this._sources.push(payment);
310
+ }
311
+ const creditbalance = this._metadata['creditbalance'];
312
+ if (creditbalance) {
313
+ const payment = JSON.parse(creditbalance);
227
314
  payment.limit = payment.limit ? parseFloat(payment.limit + '') : 0;
228
315
  this._sources.push(payment);
229
316
  }
@@ -237,6 +324,9 @@ class Customer {
237
324
  removeMethod(method) {
238
325
  return __awaiter(this, void 0, void 0, function* () {
239
326
  try {
327
+ if (!method || !method.id) {
328
+ throw new Error("La méthode de paiement n'est pas valide");
329
+ }
240
330
  const index = this._sources.findIndex(src => src.id == method.id);
241
331
  if (index == -1) {
242
332
  throw new Error("Source ID not found:" + method.id);
@@ -247,9 +337,14 @@ class Customer {
247
337
  });
248
338
  const payment_used = subs.data.some(sub => sub.default_payment_method = card_id);
249
339
  if (payment_used) {
250
- throw new Error("Impossible de supprimer une méthode paiement utilisée par une souscription");
340
+ throw new Error("Impossible de supprimer une méthode de paiement utilisée par une souscription");
251
341
  }
252
342
  if (this._sources[index].issuer == 'invoice') {
343
+ this._metadata['creditbalance'] = null;
344
+ this._metadata['allowCredit'] = null;
345
+ const customer = yield payments_1.$stripe.customers.update(this._id, { metadata: this._metadata });
346
+ }
347
+ if (this._sources[index].issuer == 'cash') {
253
348
  this._metadata['cashbalance'] = null;
254
349
  const customer = yield payments_1.$stripe.customers.update(this._id, { metadata: this._metadata });
255
350
  this._sources.splice(index, 1);
@@ -271,6 +366,10 @@ class Customer {
271
366
  }
272
367
  });
273
368
  }
369
+ allowedCredit() {
370
+ const fingerprint = (0, payments_1.crypto_fingerprint)(this.id + this.uid + 'invoice');
371
+ return this._metadata['allowCredit'] == fingerprint;
372
+ }
274
373
  findMethodByID(id) {
275
374
  return this._sources.find(card => card.id == id);
276
375
  }
@@ -1 +1 @@
1
- {"version":3,"file":"customer.js","sourceRoot":"","sources":["../lib/customer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"customer.js","sourceRoot":"","sources":["../lib/customer.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,65 @@
1
1
  import Stripe from 'stripe';
2
- export declare enum Payment {
2
+ export declare enum KngPayment {
3
3
  card = 1,
4
4
  sepa = 2,
5
5
  balance = 3,
6
- bitcoin = 4
6
+ credit = 4,
7
+ bitcoin = 5
7
8
  }
8
- export interface Source {
9
- type: Payment;
9
+ export type KngPaymentStatus = "pending" | "authorized" | "partially_paid" | "invoice" | "invoice_paid" | "paid" | "partially_refunded" | "refunded" | "voided";
10
+ export type KngPaymentExendedStatus = "refunded" | "prepaid" | "invoice";
11
+ export interface KngOrderPayment {
12
+ transaction: string;
13
+ alias: string;
14
+ issuer: string;
15
+ status: KngPaymentStatus;
16
+ handle?: string;
17
+ provider: string;
18
+ hub_refund: number;
19
+ logs: [string];
20
+ fees: {
21
+ charge: number;
22
+ shipping: number;
23
+ };
24
+ number?: string;
25
+ expiry?: string;
26
+ }
27
+ export interface KngPaymentInvoice {
10
28
  id: string;
29
+ metadata: {
30
+ order: string;
31
+ customer_credit?: string;
32
+ exended_status?: KngPaymentExendedStatus;
33
+ refund: string;
34
+ };
35
+ status: string;
36
+ client_secret: string;
37
+ payment_method: "invoice";
38
+ customer: string;
39
+ amount_received?: number;
40
+ amount: number;
41
+ transfer_group?: string;
42
+ currency: string;
43
+ description: string;
11
44
  }
12
- export interface Card extends Source {
45
+ export interface KngPaymentAddress {
46
+ id: string;
47
+ name: string;
48
+ note: string;
49
+ floor: string;
50
+ streetAddress: string;
51
+ region: string;
52
+ postalCode: string;
53
+ lat: number;
54
+ lng: number;
55
+ }
56
+ export interface KngPaymentSource {
57
+ type: KngPayment;
58
+ id: string;
13
59
  alias: string;
60
+ issuer: string;
61
+ }
62
+ export interface KngCard extends KngPaymentSource {
14
63
  country: string;
15
64
  last4: string;
16
65
  issuer: string;
@@ -19,25 +68,18 @@ export interface Card extends Source {
19
68
  expiry: string;
20
69
  brand: string;
21
70
  }
22
- export interface CashBalance extends Source {
23
- alias: string;
71
+ export interface CashBalance extends KngPaymentSource {
72
+ issuer: "cash";
73
+ funding: string;
74
+ expiry: string;
75
+ }
76
+ export interface CreditBalance extends KngPaymentSource {
24
77
  issuer: "invoice";
25
78
  funding: string;
26
79
  expiry: string;
27
80
  limit: number;
28
81
  }
29
82
  export declare const $stripe: Stripe;
30
- export interface Address {
31
- id: string;
32
- name: string;
33
- note: string;
34
- floor: string;
35
- streetAddress: string;
36
- region: string;
37
- postalCode: string;
38
- lat: number;
39
- lng: number;
40
- }
41
83
  export declare const parseYear: (year: any) => any;
42
84
  export declare const normalizeYear: (order: any, year: any) => any;
43
85
  export declare const readExpiry: (expiryStr: any) => any[];
@@ -48,8 +90,9 @@ export declare const crypto_fingerprint: (input: any) => string;
48
90
  export declare const crypto_randomToken: () => string;
49
91
  export declare const crypto_sha256: (input: string, output: any) => string;
50
92
  export declare function stripeParseError(err: any): any;
51
- export declare const card_mastercard_prepaid: Card;
52
- export declare const card_authenticationRequired: Card;
53
- export declare const card_visa_chargeDeclined: Card;
54
- export declare const card_visa_chargeDeclinedLostCard: Card;
55
- export declare const pm_card_chargeDeclinedProcessingError: Card;
93
+ export declare const card_mastercard_prepaid: KngCard;
94
+ export declare const card_authenticationRequired: KngCard;
95
+ export declare const card_visa_chargeDeclined: KngCard;
96
+ export declare const card_visa_chargeDeclinedLostCard: KngCard;
97
+ export declare const card_chargeDeclinedProcessingError: KngCard;
98
+ export declare const default_card_invoice: KngCard;