# Axis BBPS approach document
## Get bill API
### Request
```json=
{
"customerId": "10935351"
}
```
__Note: customerId can be as per business usecase__
### Response
#### Success
```json=
{
"status": "SUCCESS",
"customerName": "Ashok Kumar",
"amountDue": "1290.20",
"dueDate": "21-12-2020"
"additionalInfo":{"name1": "value1", "name2": "value2"}
}
```
__Note:__
* customerName and amountDue are required fields
* "additionalInfo" can be sent to show details about the bill. Maximum of 4.
#### Failure - Customer not found
```json=
{
"status": "FAILURE",
"error": "customer-not-found"
}
```
## Payment API
### Request
```json=
{
"customerId": "10935351",
"amountPaid": "900",
"transactionId": "AX09812J812",
"paymentMode": "UPI"
}
```
#### Success
```json=
{
"status": "SUCCESS",
"acknowledgementId": "1AJI1344"
}
```
#### Failure - Can not process payment
```json=
{
"status": "FAILURE",
"error": "cannot-process-payment"
}
```
### Security considerations
1. The API should work from only whitelisted IPs (on production)
2. HTTPS is mandatory
1. * 3. Authentication mechanism is required. Ex. API key