Versions Compared

Key

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

...

Info

All calls to OnePipe support for authorization details to be passed in where required in the auth.secure element.

A note on the secure element

  • Once it's cardWhen auth.type is ‘card’, it should be: TripleDES.encrypt("{card.Pan};{card.Cvv};{card.Expdate};{card.Pin}",secretKey)

  • Once it's bank.account When auth.type is ‘bank.account’ , it shd be: TripleDES.encrypt("{accountNumber};{bankCBNCode}",secretKey)

  • Once it's wallet When auth.type is ‘wallet’ , it shd be: TripleDES.encrypt("{walletNumber};{providerCode}",secretKey)

  • When auth.type is ‘airtime’ , it shd be: TripleDES.encrypt("{phoneNumber};{telcoCode}",secretKey)

  • When auth.type is ‘voucher’ , it shd be: TripleDES.encrypt("{walletNumbervoucherCode};{providerCode}",secretKey)Once it's airtime

  • When auth.type is ‘bvn’, it shd be: TripleDES.encrypt("{bvn}",secretKey)

  • When auth.type is ‘basic’ , it shd be: TripleDES.encrypt("{phoneNumberuserName};{telcoCodepassword}",secretKey)Once it's voucher

  • When auth.type is 'custom' (masterpass specifically) , it shd be: TripleDES.encrypt("{voucherCode{user_id};{card_id};{providerCodepin}",secretKey)

  • Once it's bvn When auth.type is ‘custom’ (anything else) , it shd be: TripleDES.encrypt("{bvnref}",secretKey)

For details on encryption using the Triple DES Algorithm, read this.

NOTE: While it’s such that some providers will need a PIN for their auth Type, others will likely not. But the interfaces are standardized not to request this value (except in the case of cards). If a provider needs it, they should respond with PendingValidation and request for the PIN.

...

Code Block
languagejson
{
  "request_ref":"{{request_ref}}", 
  "request_type":"transfer_funds",
  "request_mode":"transact | validate | query | reverse",
  "auth": {
    "type": "bank.account | card | wallet", 
    "secure": "{{encrypted(bank account details | card details | wallet)}}",
    "auth_provider": "Beeceptor",
    "route_mode": null
  },
  "transaction": {
    "mock_mode": "live", 
    "transaction_ref": "{{transaction_ref}}", 
    "transaction_desc": "A random transaction", 
    "transaction_ref_parent": null, 
    "amount": 1000,
    "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": {
    	"a_key":"a_value",
        "a_key":"a_value"
    }
  }
}

...