Make transfer

📘

For any new deployments, the recommendation is to use the enhanced Payment methods API instead of the Transfer funds endpoint described in this guide. All new feature developments will be available only in the Payment methods API. For more information, contact your Pismo representative.

API reference

You can make a transfer by using the following endpoint. For more information, go to the API reference.

POST <URL>payments/v1/payments

Transfer (P2P)

To perform a transfer of funds between two accounts inside the Pismo platform using the account balance:

  • in the from object, provide the account id of the source Pismo account.
  • in the to object, provide the account id of the destination Pismo account.

Image showing a result of a transfer.

Request payloadResponse
(A) - from(H) - event_date
(B) - to(I) - authorization_id
(C) - account id
(D) - amount
(E) - currency
(F) - payment method
(G) - metadata

Sample payload request

{
   "tracking_id":"2436f48b-d57d-472c-aea4-47581a492502",
   "descriptor":"P2P payment",
   "from":[
      {
         "amount":150,
         "currency":"USD",
         "account":{
            "id":125487
         }
      }
   ],
   "to":[
      {
         "account":{
            "id":126789
         }
      }
   ],
   "metadata":{
      "source":"account balance",
      "message":"Sunday's barbecue share"
   }
}

Sample response

{
   "authorization_id": 31042116,
   "authorization_ids": {
     "credit": 31042117,
     "debit": 31042116
     },
   "available_credit_limit": 1874.68,
   "event_date": "2022-01-12T12:16:17.646Z",
   "tracking_id": "b970c8a9-5ec9-4e46-8c0d-f411e0bd6ce7"
}

Response details

FieldTypeDescription
tracking_idstringThe identifier provided or the one generated by Pismo.
event_datestringThe date and time of the moment the transaction was successfully made, in UTC-0.
authorization_idsobjectThe credit and debit authorization identifiers.
authorization_ids.creditnumberThe credit authorization identifier.
authorization_ids.debitnumberThe debit authorization identifier.
metadataobjectThe metadata returned from the acquirer, if applicable.

Transfer from card

To perform a transfer from a card that was previously registered in the wallet to an account within the Pismo platform, you must:

  • in the from object, provide the card's unique identifier, card_uuid, and the account id that the card is bound to.
  • in the to object, provide the account id of the destination Pismo account.

Image showing the parts of the transfer on a mobile phone.

Request payloadResponse
(A) - from(H) - event_date
(B) to(I) - authorization_id
(C) account id
(D) amount
(E) currency
(F) payment method
(G) metadata

Sample payload request

{
  "descriptor": "P2P payment with card",
  "from": [
    {
      "amount": 150,
      "currency": "USD",
      "card": {
        "id": "f45dbe01-4109-11ea-ab1d-3286e4ea7ade",
        "account_id": 5487
      }   
    }
	],
  "to": [
    {
      "account": {
        "id": 126789
      }
    }
  ],
  "metadata": {
    "source": "account balance",
    "message": "Sunday's barbecue share"
  }
}

Sample response

{
    "authorization_id": 31042111,
    "authorization_ids": {
      "credit": 31042112,
      "debit": 31042111
      },
    "event_date": "2022-01-12T12:11:58.952Z",
    "metadata": {
      "authorization_code": "154856",
      "nsu": "893681195173",
      "tid": "13042201120912190001"
      },
    "tracking_id": "1641989519"
}

Cash-in

A cash-in operation moves funds from an external party into an account on the Pismo platform. To perform cash-in operations, you need to:

  • in the to object, provide the account object that contains a valid Pismo account id.
  • in the from object, provide the custom_info object that contains the type of the operation.

Image showing the parts of the transfer on a mobile phone.

Request payloadResponse
(A) - to(F) - event_date
(B) - account id(G) - descriptor
(C) - account balance(H) - metadata
(D) - descriptor(I) - authorization_id
(E) - amount

Sample payload request

{
	"descriptor": "BANK TRANSFER",
	"from": [
		{
			"custom_info": {
				"type": "CASHIN",
				"external_id": "be6474e8-b849-4213-9e1f-bdf619a27a63"
			}
		}
	],
	"to": [
		{
			"amount": 150,
      "currency": "USD",
			"account": {
				"id": 105708
			}
		}
	],
  "metadata":{
    "sender": "Andrew Foster",
    "bank": "OneBank",
    "branch_code": "0089",
    "account_id": "13000-7"
  }
}

Sample response

{
   "authorization_id": 31042107,
   "authorization_ids": {
     "credit": 31042107,
     "debit": null
     },
   "available_credit_limit": 1200.00,
   "event_date": "2022-01-12T12:06:06.377Z",
   "status_code": 1,
   "tracking_id": "63c8f39c-6a79-4250-ad33-34b89f28deff"
}

Cash-out

To perform cash-out operations using the account balance, you need to:

  • in the from object, provide the account object that contains a valid Pismo account id.
  • in the to object, provide the custom_info object that contains the type of the operation you are performing.

The custom_info object allows multiple possibilities, such as withdrawing funds, topping up mobile devices, paying registered bills, and more.

Image showing the parts of the transfer on a mobile phone.

Request payloadResponse
(A) - from(F) - event_date
(B) - currency(G) - descriptor
(C) - amount(H) - metadata
(D) - payment method(I) - authorization_id
(E) - entry_mode

Sample payload request

{
  "descriptor": "ATM's withdrawal",
  "from": [
    {
      "amount": 50.00,
      "currency": "USD",
      "account": {
        "id": 125487,
      }
    }
  ],
  "to": [
    {
      "custom_info": {
        "type": "WITHDRAWAL",
        "external_id": "2343646-2139867-09897776"
      }
    }
  ]
}

Sample response

{
  "authorization_id": 31042110,
  "authorization_ids": {
    "credit": null,
    "debit": 31042110
    },
  "available_credit_limit": 1875.68,
  "event_date": "2022-01-12T12:09:26.627Z",
  "tracking_id": "eea76b3c-46c0-4c6c-9312-27e9ee48acbf"
}