JIT Funding API

JIT (Just-In-time) funding is a method of automatically funding a prepaid wallet in real time during a transaction. With JIT funding, prepaid accounts do not need to carry a balance. Instead, the Pine Labs platform automatically moves funds from your funding source or credit line into the appropriate wallet at the time of transaction.

The JIT Funding API is used to,

  • assign preapproved credit limit for the loan account of the cardholder.
  • increase or decrease the credit limit of the loan account of the cardholder.
  • zeroize the credit limit of the loan account if the cardholder wants to close the loan account.

This API also supports transaction reversals. While raising the reversal request, you must ensure that the rrn parameter value passed is similar to the original transaction. Only full amount reversals are allowed. It is applicable for prepaid products issued on Pine Labs platform

HTTP Status and Response Status Matrix

  • HTTP Code: This is the response status code issued by a server in response to a client's request made to the server.
  • Error Code: This is the error code returned by Credit+ Issuing application in the ‘code’ field of the response message indicating if the request was processed successfully or failed.
  • Description: This is the description of the error code returned by Credit+ Issuing application.
  • Details: This is the detailed description of the error code returned by Credit+ Issuing application
HTTP CodeReason CodeDescriptionDetails
200OKThe server has successfully processed your request.
400INVALID_FIELD_VALUE'type' field value '' is invalid'type' field value must be one of ['TOPUP','DEBIT','TOPUP_REVERSAL','DEBIT_REVERSAL']
400INVALID_FIELD_VALUE'traceAuditNumber' field value '' must match '[0-9]*'
400INVALID_FIELD_VALUE'remarks' field value '' must match '[a-zA-Z0-9 ,&.'-]*'
400INVALID_FIELD_VALUE'currency' field value '' is invalid
400INVALID_FIELD_VALUE'amount' field value '' must be greater than or equal to 1 and less than or equal to 9999999999.99999
400INVALID_FIELD_VALUE'timestamp' field value '' must match 'YYYY-MM-DDThh:mm:ss[.sss]Z' or 'YYYY-MM-DDThh:mm:ss[.sss]±hh:mm'
400INVALID_FIELD_VALUE'originalTraceAuditNumber' field value '' must match '[0-9]*'
400INVALID_FIELD_VALUE'originalTransactionTimestamp' field value '' must match 'YYYY-MM-DDThh:mm:ss[.sss]Z' or 'YYYY-MM-DDThh:mm:ss[.sss]±hh:mm'
400INVALID_FIELD_VALUE'rrn' field value '' must match '[0-9]*'
400INVALID_FIELD_VALUE'X-MC-Source' field value '' is invalid
400INVALID_FIELD_VALUE'X-MC-Channel' field value '' is invalid
400INVALID_FIELD_VALUE'originalTraceAuditNumber' field value must be empty/blank or field must be absent in the request'originalTraceAuditNumber' field value must be blank or absent for TOPUP and DEBIT transactions.
400INVALID_FIELD_VALUE'originalTransactionTimestamp' field value must be empty/blank or field must be absent in the request'originalTransactionTimestamp' field value must be blank or absent for TOPUP and DEBIT transactions.
400INVALID_FIELD_VALUE'Card Number Alias' field value 'Invalid Card Number Alias
400INVALID_FIELD_VALUE'Card Number Alias' field value 'Card Number Alias should belong to Primary Card
400INVALID_FIELD_VALUE'Card Number Alias' field value 'Credit Line is not created for this Card Number Alias
400INVALID_FIELD_VALUE'currency' field value 'Transaction currency should be same as program currency.
400INVALID_FIELD_VALUE'amount' field value 'Credit Line available balance is less than Requested Debit amount.
400INVALID_FIELD_VALUE'amount' field value 'Full amount reversal allowed.
400INVALID_FIELD_VALUE'rrn' field value 'Reference number should be same as original reference number.
400INVALID_FIELD_LENGTH'rrn' field value length must be 12 characters.
400INVALID_FIELD_LENGTH'traceAuditNumber' field value length must be 6 characters.
400INVALID_FIELD_LENGTH'currency' field value length must be 3 characters.
400INVALID_FIELD_LENGTH'originalTraceAuditNumber' field value length must be 6 characters.
400INVALID_FIELD_LENGTH'remarks' field value length must be less than equal to 100 characters.
400MISSING_REQUIRED_FIELDMissing Required Field 'type'.
400MISSING_REQUIRED_FIELDMissing Required Field 'rrn'
400MISSING_REQUIRED_FIELDMissing Required Field 'traceAuditNumber'.
400MISSING_REQUIRED_FIELDMissing Required Field 'currency'.
400MISSING_REQUIRED_FIELDMissing Required Field 'amount'.
400MISSING_REQUIRED_FIELDMissing Required Field 'timestamp'.
400MISSING_REQUIRED_FIELDMissing Required Field 'originalTraceAuditNumber'.'originalTraceAuditNumber' field value is mandatory for DEBIT_REVERSAL and TOPUP_REVERSAL transactions.
400MISSING_REQUIRED_FIELDMissing Required Field 'originalTransactionTimestamp'.'originalTransactionTimestamp' field value is mandatory for DEBIT_REVERSAL and TOPUP_REVERSAL transactions.
400RECORD_NOT_FOUNDRecord not found for given search criteria(s).Unable to Track the Original Transaction Details.
403AUTHORIZATION_ERRORUser is not authorized to access requested resource
409CONFLICTThe API request cannot be completed because the requested operation would conflict with an existing item/record.Reversal already processed for requested details.
409CONFLICTThe API request cannot be completed because the requested operation would conflict with an existing item/record.Duplicate Request
500SYSTEM_ERRORAn unexpected error has occurred with the service you have requested
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required

API consumer must share card_id as a path parameter for API requests. It is a unique identifier of the card. Currently only CNA (Card Number Alias) is considered as the card_id. The Card Number Alias is equivalent to the funding source on Credit+ Issuing system.

Body Params
string
enum
required

Type of transaction. Valid values: TOPUP (Credits the loan account with the transaction amount), DEBIT (Debits the loan account with the transaction amount), TOPUP_REVERSAL (Indicates the reversal of TOPUP transaction that was processed, only full amount reversals are allowed), DEBIT_REVERSAL (Indicates the reversal of DEBIT transaction that was processed, only full amount reversals are allowed).

Allowed:
string
required
length between 12 and 12
^[0-9]+$

Retrieval Reference Number. It is a mandatory unique authorization reference number. For reversals, RRN of original transactions are sent and matched with the data present in the transactions of funding source or credit line to fetch the original transaction.

string
required
length between 6 and 6
^[0-9]+$

A number assigned by the originator of a transaction to uniquely identify a transaction. The System Trace Audit Number (STAN) is a unique value for initiating original and reversal transactions within each UTC (Universal Time Coordinated) day. This STAN value will be different for original and reversal transactions.

number
required
1 to 9999999999.99999

Transaction amount. Amount should comply with the exponent (digits post decimal) supported by the currency. The amount would be rounded up or down based on the currency exponent. This is required for TOPUP and DEBIT transactions. For reversals, amount of original transaction is sent and matched with the data present in the transactions of funding source or credit line to fetch the original transaction.

string
length between 6 and 6
^[0-9]+$

System Trace Audit Number (STAN) of original transaction. This number is matched with the data present in the transactions for funding source or credit line to fetch the original transactions. Required for TOPUP_REVERSAL and DEBIT_REVERSAL transactions.

date-time
length between 20 and 29

Date and time of original transaction. This is matched with the data in the transactions of funding source or credit line to fetch the original transaction. It is expressed in ISO 8601 extended format. Must be either YYYY-MM-DDThh:mm:ss[.sss]Z or YYYY-MM-DDThh:mm:ss[.sss]±hh:mm, where: Z indicates the UTC time zone, ± indicates addition or reduction of hours and minutes, [.sss] millisecond can contain 1 to 3 digits and is optional. Required for TOPUP_REVERSAL and DEBIT_REVERSAL transactions.

date-time
required
length between 20 and 29

Date and time of current transaction as per the timezone of the institution. It is expressed in ISO 8601 extended format. Must be either YYYY-MM-DDThh:mm:ss[.sss]Z or YYYY-MM-DDThh:mm:ss[.sss]±hh:mm, where: Z indicates the UTC time zone, ± indicates addition or reduction of hours and minutes, [.sss] millisecond can contain 1 to 3 digits and is optional.

string
length between 1 and 100
^[a-zA-Z0-9,.&'\- ]+$

User remarks or comments for the transaction. Remarks can include details such as reason for reversal, funding request info, and so on.

Headers
string
^[a-zA-Z0-9-]{1,36}$

API consumer can share unique X-MC-Correlation-ID in HTTP header for each API request. It is recommended to generate UUID (maximum length: 36 alphanumeric characters.) that is compliant with RFC 4122. If it is not shared, then the system generates a unique value for each request. For example, ac97d177-9345-4934-8343-0f91a7a02836

string
enum

API consumer can share X-MC-Channel in HTTP header for API requests. It is the network or channel through which request is routed. The only available value for Channel is API.

Allowed:
string

API consumer can share X-MC-Source in HTTP header for API requests. It identifies the request originators application. For the list of source values, see the Pre-conditions for HTTP Header of REST API topic in the Pre-requisite for Rest API section.

string
length ≤ 50

API consumer can share X-MC-Client-Application-User-ID in HTTP header for API requests. This parameter is a unique identifier to track actual user performing action at the client's end. This field is used only for logging purpose. The maximum length is 50.

string
^[a-zA-Z0-9-]{1,36}$

API consumer can share X-MC-Idempotency-Key in HTTP header for API requests. It is a unique value that is generated by a client and sent to an API along with a request. If a request fails partway through, the client retries with the same idempotency key value, and the server uses it to look up the state of request and continue from where it left off. During this time, the response of the earlier request will be returned if it is before the threshold time of 15 minutes. After this, the request will be processed as a new request and the response of the new request will be returned. It is recommended to generate UUID (maximum length: 36) that is compliant with RFC 4122. For example, bc57d177-4593-3449-8343-0d81a7a02947

Response

Language
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json