• Credit

    US flag
  • Credit

    US flag

Jane holds a credit card provided by XYZ fintech in partnership with ABC Bank. Before the payment due date, Jane wants to see the balances in her credit card account and repay an amount of her choice. She wants to see the following balances:

Jane logs in to XYZ fintech’s mobile app and selects her credit card account to see the balances.

In this cookbook, we will see how the VBO fetches the balances and records the repayment made by Jane.

This API returns the billed summary. In the response, totalAmountDue represents the total billed outstanding as per the previous statement and minimumAmountDue represents the minimum due amount payable before the due date in order to avoid any penalty.

GET{rubyurl}/tenants/{tenantID}/products/{productID}/accounts/{accountID}/billedSummaries
cURL sample
Switch Theme
Expand More
Copy
curl --location --request GET 'https://ruby.internal.mum1-pp.zetaapps.in/ruby/tenants/140793/products/1683010215313818563/accounts/ecf65152-c27e-4c7b-b084-82ef61b00097/billedSummaries?endDate={{endDate}}&startDate={{startDate}}' --http1.1 --header 'Content-Type: application/json' --header 'X-Zeta-Authtoken: {{authToken}}'
Code Copied
JSON sample
Switch Theme
Expand More
Copy
[
  {
    "accountID": "ecf65152-c27e-4c7b-b084-82ef61b00097",
    "statementID": "21262ac2-1b7d-4bf7-9829-9d720f08047e",
    "statementDate": "2021-10-21",
    "cycleID": 3064541892431457000,
    "periodID": 3633891484646372400,
    "openingBalance": {
      "cashBalance": 0,
      "totalBalance": 0,
      "retailBalance": 0
    },
    "paymentsWithinLastDueDate": 0,
    "totalPaymentsReceived": 0,
    "closingBalance": {
      "cashBalance": 0,
      "totalBalance": 0,
      "retailBalance": 36415
    },
    "totalAmountDue": 36415,
    "minimumAmountDue": 1821,
    "paymentDueDate": "2021-08-02",
    "graceDate": "2021-08-02",
    "previousBalance": 0,
    "totalPurchase": 36222,
    "totalCashWithdrawal": 0,
    "totalFees": 0,
    "totalInterest": 193,
    "creditLimit": 200000,
    "debitAllowance": 163585,
    "cashLimit": 80000,
    "availableCash": 80000,
    "nextStatementDate": "2021-09-30",
    "overLimitUsage": 0,
    "moreThanThreeMonthsDue": 0,
    "twoMonthsDue": 0,
    "oneMonthDue": 0,
    "currency": "USD"
  }
]
Code Copied

This API returns the credit account balances. In the response, totalOutstandingBalance represents the total outstanding balance including the unbilled transactions.

GET{rubyurl}/tenants/{tenantID}/products/{productID}/accounts/{accountID}/balances
cURL sample
Switch Theme
Expand More
Copy
curl --location --request GET 'https://ruby.internal.mum1-pp.zetaapps.in/ruby/tenants/140793/products/1683010215313818563/accounts/ecf65152-c27e-4c7b-b084-82ef61b00097/balances?balanceTypes={{balanceTypes}}' --http1.1 --header 'Content-Type: application/json' --header 'X-Zeta-Authtoken: {{authToken}}'
Code Copied
JSON sample
Switch Theme
Expand More
Copy
{
  "availableCash": 80000,
  "cashBalance": 0,
  "cashLimit": 80000,
  "debitAllowance": 158795,
  "otbAllowance": 168795,
  "overlimitUsage": 0,
  "creditLimit": 200000,
  "totalOutstandingBalance": 0
}
Code Copied

Jane decided to repay the minimum due amount of $18.21. The VBO records the repayment transaction using Jane’s account ID. When the repayment is posted, the VBO’s funding account gets debited with the repayment amount.

POST/ruby/tenants/{tenantId}/products/{productId}/accounts/{accountId}/payments
cURL sample
Switch Theme
Expand More
Copy
curl --location --request POST 'http://ruby.internal.mum1-pp.zetaapps.in/ruby/tenants/140793/products/1683010215313818563/accounts/ecf65152-c27e-4c7b-b084-82ef61b00097/payments' \
--header 'Content-Type: application/json' \
--header 'X-Zeta-Authtoken: {{token}}' \
--data-raw '{
    "requestID": "string1",
    "paymentDate": "2021-08-01T14:15:22Z",
    "amountPaid": {
        "currency": "USD",
        "amount": 1821
    },
    "attributes": [
        {
            "mode": "workerAdjusted"
        }
    ],
    "bookTime": 1635092524000,
    "valueTime": 1635092524000
}'
Code Copied
JSON sample
Switch Theme
Expand More
Copy
{
    "requestId": "string1",
    "paymentDate": "Sat Aug 01 19:45:22 IST 2021",
    "amountPaid": {
        "currency": "USD",
        "amount": 1821
    },
    "attributes": [
        {}
    ],
    "delinquencyStatus": "DC_09",
    "appropriationDetails": [
        {
            "recordType": "CREDIT",
            "categories": [
                {
                    "categoryCode": "InterestFreeUnbilled",
                    "recordType": "CREDIT",
                    "value": 1821
                },
                {
                    "categoryCode": "ExcessPayment",
                    "recordType": "CREDIT",
                    "value": 1821
                }
            ]
        },
        {
            "recordType": "META",
            "categories": [
                {
                    "categoryCode": "minimumAmountDue",
                    "recordType": "CREDIT",
                    "value": 1821
                },
                {
                    "categoryCode": "rePayments",
                    "recordType": "CREDIT",
                    "value": 1821
                }
            ]
        }
    ]
}
Code Copied