@inno-isw/react-native-rtp 0.2.0 → 0.3.0

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
@@ -55,7 +55,7 @@ interface RtpPayload {
55
55
  amount: number; // minor unit (e.g. kobo); integer, no floats
56
56
  currency: string; // ISO 4217, e.g. "NGN"
57
57
  payer: { name: string; accountNumber?: string; bank?: string; logoUrl?: string };
58
- payee: { name: string; accountNumber?: string; bank?: string; logoUrl?: string };
58
+ payee: { name: string; accountNumber?: string; bank?: string; bankCode?: string; logoUrl?: string };
59
59
  narration?: string;
60
60
  transactionRef?: string;
61
61
  orderNumber?: string; // merchant/issuer order no. (≠ transactionRef)
@@ -70,6 +70,9 @@ interface RtpPayload {
70
70
  > `payer` is the party being asked to pay (your customer); `payee` is the party
71
71
  > that receives the money (the merchant).
72
72
 
73
+ > `payee.bankCode` is the destination institution code (e.g. a NIP bank code).
74
+ > The host uses it to route the transfer; the SDK passes it through untouched.
75
+
73
76
  > Unknown fields are **ignored, not rejected**, so older SDKs keep working when
74
77
  > the backend adds fields.
75
78
 
@@ -86,22 +89,12 @@ payload.type === 'RTP' && typeof payload.rtpId === 'string';
86
89
 
87
90
  ## Quick start
88
91
 
89
- ### 1. Create the client (injected seams)
92
+ ### 1. Create the client (injected ports)
90
93
 
91
94
  ```ts
92
95
  import { createRtpClient } from '@inno-isw/react-native-rtp';
93
- import { api } from './api'; // your existing HTTP client / ky / axios instance
94
96
 
95
97
  export const rtpClient = createRtpClient({
96
- // (required) minimal HTTP contract — the SDK never imports a network lib
97
- transport: {
98
- post: (path, body, headers) => api.post(path, { json: body, headers }),
99
- get: (path, headers) => api.get(path, { headers }),
100
- },
101
-
102
- // (optional) auth headers, called per request so tokens/MACs stay fresh
103
- getAuthHeaders: async () => ({ Authorization: `Bearer ${await getToken()}` }),
104
-
105
98
  // (optional) drives the auth gate + recipient matching
106
99
  getCurrentUser: () => authStore.user?.email ?? null,
107
100
 
@@ -110,9 +103,27 @@ export const rtpClient = createRtpClient({
110
103
 
111
104
  // (optional) diagnostics sink
112
105
  logger: (...args) => console.log('[rtp]', ...args),
106
+ });
107
+ ```
108
+
109
+ **Transport-free by default.** With no `transport`, the client validates,
110
+ de-duplicates, expires and tracks the request, but performs **no network
111
+ calls** — `accept`/`decline` record the decision locally and `retrieve` reports
112
+ the details already held from the payload. This is the iteration-1 shape: the
113
+ host finalises the payment through its **own core banking**, not an RTP backend.
113
114
 
114
- // (optional) REST base path, default "/rtp"
115
- basePath: '/rtp',
115
+ Inject a `transport` only when your host has a real RTP service to talk to:
116
+
117
+ ```ts
118
+ import { api } from './api'; // your existing HTTP client / ky / axios instance
119
+
120
+ export const rtpClient = createRtpClient({
121
+ transport: {
122
+ post: (path, body, headers) => api.post(path, { json: body, headers }),
123
+ get: (path, headers) => api.get(path, { headers }),
124
+ },
125
+ basePath: '/rtp', // defaults to "/rtp"
126
+ getCurrentUser: () => authStore.user?.email ?? null,
116
127
  });
117
128
  ```
118
129
 
@@ -50,15 +50,11 @@ export function normalizeBackendStatus(raw) {
50
50
  export function createRtpClient(options) {
51
51
  const {
52
52
  transport,
53
- getAuthHeaders = async () => ({}),
54
53
  getCurrentUser = () => null,
55
54
  now = defaultNow,
56
55
  logger = noopLogger,
57
56
  basePath = '/rtp'
58
57
  } = options;
59
- if (!transport) {
60
- throw new Error('[react-native-rtp] `transport` is required');
61
- }
62
58
  const emitter = createEmitter();
63
59
  const entries = new Map();
64
60
 
@@ -219,9 +215,23 @@ export function createRtpClient(options) {
219
215
  status: entry.status
220
216
  };
221
217
  }
218
+
219
+ // Transport-free mode: there is no backend to fetch from, so the details
220
+ // already held from the payload are authoritative. This is the shape the
221
+ // client runs in when the host settles the payment through its own core
222
+ // banking rather than an RTP backend.
223
+ if (!transport) {
224
+ setStatus(id, RTP_STATUS.READY);
225
+ scheduleExpiry(entry);
226
+ emitter.emit(RTP_EVENT.REQUEST, entry.request);
227
+ return {
228
+ id,
229
+ status: RTP_STATUS.READY
230
+ };
231
+ }
222
232
  setStatus(id, RTP_STATUS.RETRIEVING);
223
233
  try {
224
- const headers = await getAuthHeaders();
234
+ const headers = {};
225
235
  const res = await transport.get(`${basePath}/${id}`, headers);
226
236
  const data = res?.data ?? {};
227
237
  const mapped = normalizeBackendStatus(data.status);
@@ -316,8 +326,17 @@ export function createRtpClient(options) {
316
326
  });
317
327
  }
318
328
  setStatus(id, RTP_STATUS.PROCESSING);
329
+
330
+ // Transport-free mode: acceptance is realised by the host's own payment
331
+ // flow; the client only records the decision locally.
332
+ if (!transport) {
333
+ return emitResult({
334
+ id,
335
+ status: RTP_STATUS.ACCEPTED
336
+ });
337
+ }
319
338
  try {
320
- const headers = await getAuthHeaders();
339
+ const headers = {};
321
340
  const res = await transport.post(`${basePath}/${id}/accept`, {
322
341
  credential
323
342
  }, headers);
@@ -351,8 +370,17 @@ export function createRtpClient(options) {
351
370
  return fail(id, RTP_ERROR.UNKNOWN);
352
371
  }
353
372
  setStatus(id, RTP_STATUS.PROCESSING);
373
+
374
+ // Transport-free mode: the decline is recorded locally; a host with a
375
+ // backend still posts it through `transport`.
376
+ if (!transport) {
377
+ return emitResult({
378
+ id,
379
+ status: RTP_STATUS.DECLINED
380
+ });
381
+ }
354
382
  try {
355
- const headers = await getAuthHeaders();
383
+ const headers = {};
356
384
  const res = await transport.post(`${basePath}/${id}/decline`, {
357
385
  reason
358
386
  }, headers);
@@ -1 +1 @@
1
- {"version":3,"names":["RTP_ERROR","RTP_EVENT","RTP_STATUS","createEmitter","defaultNow","noopLogger","findValidationErrors","isExpired","isRtpPayload","mergeRequest","toRequestPatch","toRtpRequest","TERMINAL_STATUSES","Set","ACCEPTED","DECLINED","EXPIRED","FAILED","normalizeBackendStatus","raw","undefined","toUpperCase","PENDING","createRtpClient","options","transport","getAuthHeaders","getCurrentUser","now","logger","basePath","Error","emitter","entries","Map","expiryTimer","expiryTimerId","clearExpiryTimer","clearTimeout","scheduleExpiry","entry","expiry","Date","request","expiresAt","getTime","Number","isNaN","id","setTimeout","current","get","has","status","emitResult","Math","max","handle","unref","setStatus","emit","STATE","result","RESULT","fail","error","receive","payload","handled","rtpId","existing","errors","length","join","INVALID_PAYLOAD","RECEIVED","set","currentUser","AWAITING_AUTH","recipient","RECIPIENT_MISMATCH","READY","REQUEST","retrieve","UNKNOWN","RETRIEVING","headers","res","data","mapped","BACKEND_REJECTED","incoming","err","RETRIEVE_FAILED","resumeAuth","accept","params","credential","PROCESSING","post","hasStatus","NETWORK_ERROR","decline","reason","isRtp","getStatus","getRequest","acknowledge","delete","on"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["RTP_ERROR","RTP_EVENT","RTP_STATUS","createEmitter","defaultNow","noopLogger","findValidationErrors","isExpired","isRtpPayload","mergeRequest","toRequestPatch","toRtpRequest","TERMINAL_STATUSES","Set","ACCEPTED","DECLINED","EXPIRED","FAILED","normalizeBackendStatus","raw","undefined","toUpperCase","PENDING","createRtpClient","options","transport","getCurrentUser","now","logger","basePath","emitter","entries","Map","expiryTimer","expiryTimerId","clearExpiryTimer","clearTimeout","scheduleExpiry","entry","expiry","Date","request","expiresAt","getTime","Number","isNaN","id","setTimeout","current","get","has","status","emitResult","Math","max","handle","unref","setStatus","emit","STATE","result","RESULT","fail","error","receive","payload","handled","rtpId","existing","errors","length","join","INVALID_PAYLOAD","RECEIVED","set","currentUser","AWAITING_AUTH","recipient","RECIPIENT_MISMATCH","READY","REQUEST","retrieve","UNKNOWN","RETRIEVING","headers","res","data","mapped","BACKEND_REJECTED","incoming","err","RETRIEVE_FAILED","resumeAuth","accept","params","credential","PROCESSING","post","hasStatus","NETWORK_ERROR","decline","reason","isRtp","getStatus","getRequest","acknowledge","delete","on"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,gBAAa,CAAC;AAUvD,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAMjB,MAAM,YAAS,CAAC;AAejB;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAwB1E;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAgWpE"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,gBAAa,CAAC;AAUvD,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAMjB,MAAM,YAAS,CAAC;AAejB;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAwB1E;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAkXpE"}
@@ -44,6 +44,12 @@ export interface RtpParty {
44
44
  name: string;
45
45
  accountNumber?: string;
46
46
  bank?: string;
47
+ /**
48
+ * Destination institution code (e.g. a NIP bank code) for the `payee`.
49
+ * The host uses it to route the resulting transfer to the right bank; the
50
+ * SDK never interprets it.
51
+ */
52
+ bankCode?: string;
47
53
  /** Optional display URL for a logo/avatar. */
48
54
  logoUrl?: string;
49
55
  }
@@ -103,13 +109,13 @@ export interface RtpStorage {
103
109
  removeItem: (key: string) => Promise<void> | void;
104
110
  }
105
111
  export interface RtpClientOptions {
106
- /** Injected HTTP client. */
107
- transport: RtpTransport;
108
112
  /**
109
- * Returns auth headers for an outgoing request. Called per request so the
110
- * host can refresh tokens / compute MACs.
113
+ * Injected HTTP client. Optional: when omitted the client runs
114
+ * transport-free — it validates and tracks the request but performs no
115
+ * network calls, which is the shape a host uses when the payment itself is
116
+ * settled through the host's own core banking rather than an RTP backend.
111
117
  */
112
- getAuthHeaders?: () => Promise<Record<string, string>> | Record<string, string>;
118
+ transport?: RtpTransport;
113
119
  /**
114
120
  * Returns the currently authenticated user's alias (phone/email), or null
115
121
  * when logged out. Used for the auth gate and recipient matching.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inno-isw/react-native-rtp",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Request to Pay SDK for React Native",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
package/src/client.ts CHANGED
@@ -76,17 +76,12 @@ export function normalizeBackendStatus(raw: unknown): RtpStatus | undefined {
76
76
  export function createRtpClient(options: RtpClientOptions): RtpClient {
77
77
  const {
78
78
  transport,
79
- getAuthHeaders = async () => ({}),
80
79
  getCurrentUser = () => null,
81
80
  now = defaultNow,
82
81
  logger = noopLogger,
83
82
  basePath = '/rtp',
84
83
  } = options;
85
84
 
86
- if (!transport) {
87
- throw new Error('[react-native-rtp] `transport` is required');
88
- }
89
-
90
85
  const emitter = createEmitter();
91
86
  const entries = new Map<string, Entry>();
92
87
 
@@ -230,10 +225,21 @@ export function createRtpClient(options: RtpClientOptions): RtpClient {
230
225
  return { id, status: entry.status };
231
226
  }
232
227
 
228
+ // Transport-free mode: there is no backend to fetch from, so the details
229
+ // already held from the payload are authoritative. This is the shape the
230
+ // client runs in when the host settles the payment through its own core
231
+ // banking rather than an RTP backend.
232
+ if (!transport) {
233
+ setStatus(id, RTP_STATUS.READY);
234
+ scheduleExpiry(entry);
235
+ emitter.emit(RTP_EVENT.REQUEST, entry.request);
236
+ return { id, status: RTP_STATUS.READY };
237
+ }
238
+
233
239
  setStatus(id, RTP_STATUS.RETRIEVING);
234
240
 
235
241
  try {
236
- const headers = await getAuthHeaders();
242
+ const headers = {};
237
243
  const res = await transport.get(`${basePath}/${id}`, headers);
238
244
  const data = (res?.data ?? {}) as Record<string, unknown>;
239
245
 
@@ -336,8 +342,14 @@ export function createRtpClient(options: RtpClientOptions): RtpClient {
336
342
 
337
343
  setStatus(id, RTP_STATUS.PROCESSING);
338
344
 
345
+ // Transport-free mode: acceptance is realised by the host's own payment
346
+ // flow; the client only records the decision locally.
347
+ if (!transport) {
348
+ return emitResult({ id, status: RTP_STATUS.ACCEPTED });
349
+ }
350
+
339
351
  try {
340
- const headers = await getAuthHeaders();
352
+ const headers = {};
341
353
  const res = await transport.post(
342
354
  `${basePath}/${id}/accept`,
343
355
  { credential },
@@ -380,8 +392,14 @@ export function createRtpClient(options: RtpClientOptions): RtpClient {
380
392
 
381
393
  setStatus(id, RTP_STATUS.PROCESSING);
382
394
 
395
+ // Transport-free mode: the decline is recorded locally; a host with a
396
+ // backend still posts it through `transport`.
397
+ if (!transport) {
398
+ return emitResult({ id, status: RTP_STATUS.DECLINED });
399
+ }
400
+
383
401
  try {
384
- const headers = await getAuthHeaders();
402
+ const headers = {};
385
403
  const res = await transport.post(
386
404
  `${basePath}/${id}/decline`,
387
405
  { reason },
package/src/types.ts CHANGED
@@ -46,6 +46,12 @@ export interface RtpParty {
46
46
  name: string;
47
47
  accountNumber?: string;
48
48
  bank?: string;
49
+ /**
50
+ * Destination institution code (e.g. a NIP bank code) for the `payee`.
51
+ * The host uses it to route the resulting transfer to the right bank; the
52
+ * SDK never interprets it.
53
+ */
54
+ bankCode?: string;
49
55
  /** Optional display URL for a logo/avatar. */
50
56
  logoUrl?: string;
51
57
  }
@@ -122,14 +128,13 @@ export interface RtpStorage {
122
128
  }
123
129
 
124
130
  export interface RtpClientOptions {
125
- /** Injected HTTP client. */
126
- transport: RtpTransport;
127
131
  /**
128
- * Returns auth headers for an outgoing request. Called per request so the
129
- * host can refresh tokens / compute MACs.
132
+ * Injected HTTP client. Optional: when omitted the client runs
133
+ * transport-free — it validates and tracks the request but performs no
134
+ * network calls, which is the shape a host uses when the payment itself is
135
+ * settled through the host's own core banking rather than an RTP backend.
130
136
  */
131
- getAuthHeaders?: () =>
132
- Promise<Record<string, string>> | Record<string, string>;
137
+ transport?: RtpTransport;
133
138
  /**
134
139
  * Returns the currently authenticated user's alias (phone/email), or null
135
140
  * when logged out. Used for the auth gate and recipient matching.