{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-vas/vas.sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Bill payment for POS","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"bill-payment-for-pos"},"children":["Bill payment for POS"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Bill payment transactions require ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/vas/public/advanced-topics/dual-and-single-messaging"},"children":["dual message"]}," processing. The different transaction legs are as follows."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["bill payment authorisation"]}," determines whether the requested payment can be made. It is a mandatory step even when an account lookup has been performed."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The originating system sends a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["bill payment confirmation"]}," to the service provider to advise that the tender was successful and that the transaction should be completed. A customer's bill payment will only take effect upon confirmation. Confirmation messages do not require consumer involvement and can take place after the consumer has been notified of the transaction outcome."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["bill payment reversal"]}," message is used to reverse or undo a bill payment that is in progress but has not yet been completed. Reversal messages do not require consumer involvement and can take place after the consumer has been notified of the transaction outcome."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Important"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For HelloPaisa transactions, confirmation messages are only accepted up to one hour after the original bill payment authorisation messaging was completed. This may lead to some reconciliation exceptions that must be handled between the originating system and HelloPaisa."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"operations-and-messages"},"children":["Operations and Messages"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The table below lists the operations and message payloads supported for the various legs of a bill payment transaction. For more detail, refer to the ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger"},"children":["Account Payments Service Interface"]}," specification. Example message payloads are available ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/vas/public/bill-payments/integrate-your-channel/message-payload-samples"},"children":["here"]},"."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Bill Type"},"children":["Bill Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Operation"},"children":["Operation"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"API calls"},"children":["API calls"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bill payment authorisation: standard bill"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createaccountpayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createAccountPayment"]}]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /payments/{paymentId}"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Request payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/paymentrequest"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PaymentRequest"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Response payload:",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/paymentresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PaymentResponse"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Error payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/errordetail"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ErrorDetail"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bill payment authorisation: traffic fine"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createtrafficfinepayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createTrafficFinePayment"]}]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /payments/traffic{paymentId}"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Request payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/trafficfinepaymentrequest"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TrafficFinePaymentRequest"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Response payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/trafficfinepaymentresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TrafficFinePaymentResponse"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Error payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/errordetail"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ErrorDetail"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bill payment confirmation"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/confirmpayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["confirmPayment"]}]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /payments/{paymentId}/confirmations/{adviceId}"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Request payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/tenderadvice"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TenderAdvice"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Response payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/basicadviceresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BasicAdviceResponse"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Error payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/errordetail"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ErrorDetail"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bill payment reversal"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/reversepayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["reversePayment"]}]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /payments/{paymentId}/reversals/{adviceId}"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Request payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/basicreversal"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BasicReversal"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Response payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/basicadviceresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BasicAdviceResponse"]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Error payload: ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/errordetail"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ErrorDetail"]}]}]}]}]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Note"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When creating an account payment in Billpay, the originating system use the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["balanceAmount"]}," field instead of the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["requestAmount"]},"field."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Important"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You should not attempt transaction lookups until after the initial processing period concludes (after Electrum has received and processed the transaction outcome)."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"message-flows"},"children":["Message Flows"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The sections below describe the message flows for successful bill payments and error scenarios during bill payment transactions."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"successful-bill-or-traffic-fine-payment"},"children":["Successful Bill or Traffic Fine Payment"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The originating system captures the payment request information and sends a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," call to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/{paymentId}"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/traffic/{paymentId}"]}," API endpoint (",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createaccountpayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createAccountPayment"]}]}," or ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createtrafficfinepayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createTrafficFinePayment"]}]}," operation)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Electrum responds with a ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/paymentresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PaymentResponse"]}]}," or ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/trafficfinepaymentresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TrafficFinePaymentResponse"]}]}," message, depending on the nature of the payment request."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The consumer tenders for the payment."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The originating system sends a POST call to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/{paymentId}/confirmations/{adviceId}"]}," API endpoint (",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/confirmpayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["confirmPayment"]}]}," operation)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Electrum responds with a ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/basicadviceresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BasicAdviceResponse"]}]}," message payload."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Electrum sends a confirmation message to the provider via a ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/vas/public/advanced-topics/store-and-forward-queues"},"children":["store-and-forward queue"]},", and repeats the message until a response is received from upstream."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/successful-bill-payment-1.ea38c3950f59c993ea22136d829b8b9abd6a8b85340434cf404b1fb5da38f650.45baa1d1.png","alt":"alt text"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"error-at-originating-system"},"children":["Error at Originating System"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The originating system captures the payment request information and sends a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," call to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/{paymentId}"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/traffic/{paymentId}"]}," API endpoint (",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createaccountpayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createAccountPayment"]}]}," or ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createtrafficfinepayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createTrafficFinePayment"]}]}," operation)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["An error occurs at the originating system, or a timeout occurs when the originating system does not receive a response."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The originating system sends a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," call to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/{paymentId}/reversals/{adviceId}"]}," API endpoint (",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/reversepayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["reversePayment"]}]}," operation)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Electrum responds immediately with a ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/basicadviceresponse"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BasicAdviceResponse"]}]}," message."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Electrum sends a reversal message to the provider via a ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/vas/public/advanced-topics/store-and-forward-queues"},"children":["store-and-forward queue"]},", and repeats the message until a response is received from upstream."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/error-at-os-during-bill-payment.ae594f923a64b20d4664fbbbd3b1cb04304f30226ae7250a357208be9a1d662d.45baa1d1.png","alt":"alt text"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"error-at-electrum-or-service-provider"},"children":["Error at Electrum or Service Provider"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The originating system captures the payment request information and sends a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," call to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/{paymentId}"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/payments/traffic/{paymentId}"]}," API endpoint (",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createaccountpayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createAccountPayment"]}]}," or ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/other/createtrafficfinepayment"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createTrafficFinePayment"]}]}," operation)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["An error occurs at Electrum or the service provider."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Electrum responds to the originating system with an HTTP status of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["500"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["503"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["504"]},", and an ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.electrumsoftware.com/openapi/billpay/swagger/schema/errordetail"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ErrorDetail"]}]}," message payload."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If necessary, Electrum sends a reversal message to the service provider and repeats the message until a response is received."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/error-at-sp-during-bill-payment.f2ecab688bb165f5b5f91ea4251d596952957dbb698835d7ccb9cfdecdb4cb77.45baa1d1.png","alt":"alt text"},"children":[]}]}]},"headings":[{"value":"Bill payment for POS","id":"bill-payment-for-pos","depth":1},{"value":"Operations and Messages","id":"operations-and-messages","depth":2},{"value":"Message Flows","id":"message-flows","depth":2},{"value":"Successful Bill or Traffic Fine Payment","id":"successful-bill-or-traffic-fine-payment","depth":2},{"value":"Error at Originating System","id":"error-at-originating-system","depth":2},{"value":"Error at Electrum or Service Provider","id":"error-at-electrum-or-service-provider","depth":2}],"frontmatter":{"seo":{"title":"Bill payment for POS"}},"lastModified":"2026-01-28T10:41:29.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/vas/public/bill-payments/integrate-your-channel/bill-payment/bill-payment-for-pos","userData":{"isAuthenticated":false,"teams":["anonymous"]}}