You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/payments/billpay/api-integration/apis.mdx
+3Lines changed: 3 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -30,6 +30,9 @@ For e.g., if your customer wants to pay their phone bill for Vodafone Postpaid,
30
30
</li>
31
31
</ul>
32
32
33
+
Optionally, you can also registration the customer with this biller simultaneously to receive future bills as and when they are generated (See [UPMS Integration Guide](upms.mdx)).
|`mobile`|`string` (6, 10 and 20 digits) | Customer Mobile Number |
57
+
|`billParameters`|`{ name: string, value: string}[]`| Bill Parameters used for standard bill fetch/payment. The parameters to send is found in the biller details API. |
58
+
|`billParameters[].name`|`string`| Name of the bill parameter. name should match the parameter in biller details API. |
59
+
|`billParameters[].value`|`string`| Value of the bill parameter. Value is validate according to the regex found in the biller details. |
60
+
61
+
## CustomerV2
62
+
63
+
CustomerV2 object holds the customer mobile number and the customer bill parameters. This is a new object introduced in the V2 API.
|`mobile`|`string` (6, 10 and 20 digits) | Customer Mobile Number |
68
+
|`customerParams`|`{ name: string, value: string}[]`| Customer Parameters used for standard bill fetch/payment. The parameters to send is found in the biller details API. |
69
+
|`customerParams[].name`|`string`| Name of the customer parameter. name should match the parameter in biller details API. |
70
+
|`customerParams[].value`|`string`| Value of the customer parameter. Value is validate according to the regex found in the biller details. |
71
+
|`name`|`string` (Optional) | Customer's name as registered with the biller. Only present in UPMS registration callbacks if provided by the biller's system. |
72
+
73
+
Note: `customerParams` is a new field introduced in the V2 API in place of `billParameters`.
60
74
61
75
## Biller
62
76
@@ -125,6 +139,17 @@ Details pertaining to the Agent which initiates the transaction. Values of the f
125
139
| message |`string`| Error code description |
126
140
| type |`FUND_TRANSFER` or `BBPS` or `APP`| Error Type. BBPS errors are due to BBPS, and code and message field contain the actual BBPS error. |
127
141
142
+
## Error Object (Generic)
143
+
144
+
A standard structure for representing errors in API responses or callbacks.
|`code`|`string`| A short code identifying the error category (e.g., `validation-error`, `biller-registration-failed`). |
149
+
|`message`|`string`| A human-readable description of the error. |
150
+
151
+
**Note:** In some asynchronous UPMS callbacks (e.g., for failed registration/update/cancel), the field names might appear as `Code` and `Message` (PascalCase) instead of `code` and `message`. Your callback handler should accommodate this potential difference.
152
+
128
153
## Payment Details
129
154
130
155
| parameter | type | description |
@@ -189,6 +214,93 @@ The Payment Bill object contains information about a specific bill to be paid.
|`registrationType`|[UPMS Registration Type](#upms-registration-type) (Mandatory) |`VIEW_N_PAY` or `AUTO_PAY`. |
266
+
|`billPeriod`|[Bill Period](#bill-period) (Conditional) | Frequency of expected bills (e.g., `MONTHLY`, `ASPRESENTED`). Mandatory for some billers. |
267
+
|`toDate`|`string` (YYYY-MM-DD) (Optional) | Expiry date of the registration. |
268
+
|`debitInfo`|[UPMS Debit Info](#upms-debit-info) (Optional) | Required only if `registrationType` is `AUTO_PAY`. Contains auto-debit parameters. |
269
+
|`billerParams`|`{ name: string, value: string}[]` (Optional) | Additional parameters specific to the biller for the mandate (e.g., "Low Balance Threshold"). Structure matches `billParameters`. |
270
+
271
+
## UPMSRegistration
272
+
273
+
Represents the complete details of a UPMS registration, typically received in webhook callbacks.
|`refId`|`string` (Mandatory) | The unique reference ID for this specific UPMS registration instance. |
278
+
|`status`|[UPMS Registration Status](#upms-registration-status) (Mandatory) | The current status of the registration (e.g., `PENDING`, `SUCCESS`, `FAILED`, `CANCELLED`, `DEACTIVATED`). |
279
+
|`biller`|[Biller](#biller) (Mandatory) | Object containing the `id` of the associated biller. |
280
+
|`customer`|[CustomerV2](#customerv2) (Mandatory) | Object containing customer details (`customerParams`, `mobile`, optionally `name`) used for registration. |
281
+
|`mandate`|[UPMS Mandate](#upms-mandate) (Mandatory) | The mandate details associated with this registration. |
282
+
|`createdAt`|`string` (ISO 8601 datetime) (Mandatory) | Timestamp when the registration was created. |
283
+
|`updatedAt`|`string` (ISO 8601 datetime) (Mandatory) | Timestamp when the registration was last updated (status change, modification, cancellation). |
284
+
285
+
## UPMS Duplicate Info
286
+
287
+
Indicates that a UPMS registration attempt was a duplicate of an existing one. Received within the `data` object of a `CREATE_UPMS_REGISTRATION` callback.
|`code`|`string`| Code indicating the duplicate situation (e.g., `duplicate-upms-registration`). |
292
+
|`message`|`string`| Description of the duplicate situation. |
293
+
|`refId`|`string`| The reference ID (`refId`) of the *existing* successful/pending registration. |
294
+
295
+
## Skip Payment Data
296
+
297
+
Contains details about a bill payment that was skipped because it was paid via an external channel. Received within the `data` object of a `SKIP_PAYMENT` callback.
0 commit comments