Settlement Reconciliation over beckn protocol #304
venkatramanm
started this conversation in
Ideas
Replies: 2 comments 5 replies
-
Can we list down all payment use cases before concluding that a new API is needed? We cannot be adding new APIs without stress testing the current protocol. And if it has been stress tested, there has to be a explicit report that says, "these use cases are not supported by the current protocol, and even modification of the current APIs does not seem to help, hence we need a new API." In a larger context, we should formalize this process as part of the protocol governance. |
Beta Was this translation helpful? Give feedback.
5 replies
-
Usecases attempted to be addressed
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Settlement Model 1 - Bap collects money. (Prepaid)
/on_init sends the payment details of the account to be settled on the protocol.
with Payment Txn Details and amount.
For all other payment models
Protocol today allows only transmitting bpp's payment details to bap as part of /on_init. BAP's and GW bank details are not sent via protocol today. So Settlerment information are not symmetrically available for any one to be able to collect settle.
Reconciling ledgers via beckn
Beckn Protocol changes
Skip Sending payment info of bpp in /on_init
/get_payment_info
/payment_info
So the collecting entity
Calls /get_payment_info on all other entities party to a transacation ( bg, bpp, bap )
Based on the order_amount as part of confirm, computations of commissions / fees are done based on network policy for each participant and inserted into a table,
then the collected party, calls
/paid
Passing Payment Transaction Details Array
Indicates payment made by caller to receiver.
/on_paid
The other party checks bank account with api or manually verifies based on expected entry with the payment transaction_id across all listed transactions and breakup, Calls on the calling party and informs error or success.
Once each pair of parties sign off, the entry in the table is marked as Settled:"Y" against the respecting records making it ready for next day's process.
similarly the party calling /on_paid may maintain receivable information which will be squashed after sending /on_paid api.
Beta Was this translation helpful? Give feedback.
All reactions