Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

With this service, the calling apps can get available balance for a given source. If authorisation details are required by a provider, apps will have to provide this. OnePipe will in turn forward to the provider’s dedicated implementation. It’s also possible that some providers will require extended authorization information (like an OTP), if needed, providers need to prompt for this. Upon the correct details being provided, the provider will respond with account/wallet balance information.

Info

Before you proceed: Please read this.

...

  1. App calls /transact with the right auth details

  2. Provider responds with WaitingForOTP or PendingValidation as may be required

  3. App calls /transact/validate to supply OTP if needed

  4. Provider responds with any of the completion codes Successful or Failed.

  5. To query the status of a transaction, the app can call /transact/query

  6. Where the provider supports it, the app can call /transact/reverse to request a reversal

Gliffy
imageAttachmentId

...

att1025015887
baseUrlhttps://onepipe.atlassian.net/wiki
macroId

...

b16a635f-

...

1b18-

...

4dc5-

...

a6ba-

...

c297e795102a
name

...

v2 Service Standard
diagramAttachmentIdatt1025015882
pageid

...

174817370
containerId

...

174817370
timestamp

...

1609582797016

INTERFACE SPECIFICATION (APP → ONEPIPE)

...

Code Block
languagejson
{
  "request_ref":"{{request_ref}}", 
  "request_type":"get_balance",
  "auth": {
    "type": "bank.account | card | wallet | msisdn", 
    "secure": "{{encrypted(bank account number | card details | wallet | msisdn)}}",
    "auth_provider": "Beeceptor",
    "route_mode": null
  },
  "transaction": {
    "mock_mode": "live", 
    "transaction_ref": "{{transaction_ref}}", 
    "transaction_desc": "A random transaction", 
    "transaction_ref_parent": null, 
    "amount": 0,
    "customer":{
    	"customer_ref": "{{customer_id}}",
    	"firstname": "Uju",
  		      "surname": "Usmanu",
    	"email": "ujuusmanu@gmail.com",
    	"mobile_no": "234802343132"
    },
    "meta":{
    	"a_key":"a_meta_value_1",
    	"another_key":"a_meta_value_2"
    },
    "details": null
  }
}

...

Code Block
languagejson
{
    "status": "Successful",
    "message": "Transaction processed successfully",
    "data": {
        "provider_response_code": "00",
        "provider": "Beeceptor",
        "errors": null,
        "error": null,
        "provider_response": {
            "account_id": "50617644717007",
            "cardaccount_type": "VerveCurrent",
            "account_number": "6200000766",
            "avialableavailable_balance": 2077099,
            "ledger_balance": 2077099,
            "minimum_balance": 0,
            "account_class": "STFCUR",
            "account_status": "ACCOUNT OPEN",
            "currency": "NGN",
            "reference": "000022200225154318222333334432",
            "meta":{
              "field_key":"field_value",
              "field_key":"field_value"
            }
        }
    }
}

Request (validate with otp)

...