P2P
Overview
The P2P object represents a payment from one of your activated direct
connections to another. P2P payments must be individually authorized by the sender within 10 minutes of creation, using a verification code sent to their mobile device. Once committed, P2P payments are initiated immediately, and cannot be canceled.
Permission Required
Executing peer to peer transactions requires the payment.debit
permission from the source Account Connection and the payment.credit
permission from the destination Account Connection. Since peer to peer implementations typically allow free money flow to/from all peers, we recommend requesting both permissions from all users.
Methods
POST
/p2p
Initiate a payment between your Account Connections.
Body Parameters
ID of the Account Connection sending money.
ID of the Account Connection receiving money.
Amount in cents, e.g. $1.00 would be the number 100.
Description of payout. (Visible to creators.) Default value: Payment from ${sourceFullName} to ${destinationFullName}
User defined data that can be attached to the object. See the User Data page for details.
Example
POST
/p2p
Initiate a payment between your Account Connections.
Body Parameters
ID of the Account Connection sending money.
ID of the Account Connection receiving money.
Amount in cents, e.g. $1.00 would be the number 100.
Description of payout. (Visible to creators.) Default value: Payment from ${sourceFullName} to ${destinationFullName}
User defined data that can be attached to the object. See the User Data page for details.
Example
POST
/p2p/:id/commit
Execute P2P payment. Requires verification code sent to the source account connection’s verified mobile device.
Path Parameters
The ID of the P2P payment to commit.
Body Parameters
Verification code sent to source account connection’s verified mobile device.
Example
GET
/p2p/:id
Get details of one of your P2P payments.
Path Parameters
The ID of the P2P payment to retrieve.
Example
PUT
/p2p/:id
Update data associated with one of your enterprise’s P2P payments. Since Manifest sends a verification message to the source account connection upon P2P creation, we do not let you update P2P fields that might materially change the nature of transaction.
Path Parameters
The ID of the P2P payment to update.
Body Parameters
User defined data that can be attached to the object. See the User Data page for details.
Example
GET
/p2p
List all P2P payments created by your enterprise.
Query Parameters
The page number to return. Default is 1.
The number of items to return per page. Default is 10.
Example
GET
/account-connection/:id/p2p
List all P2P payments to/from a specific account connection.
Path Parameters
The ID of the Account Connection to list P2P payments for.
Query Parameters
The page number to return. Default is 1.
The number of items to return per page. Default is 10.
Example
GET
/account-connection/:id/p2p/:peer_id
List all P2P between two specific account connections.
Path Parameters
Account Connection ID
Peer Account Connection ID
Query Parameters
The page number to return. Default is 1.
The number of items to return per page. Default is 10.
Example
Properties
Identifier for this payout.
ID of Account Connection sending money.
ID of Account Connection receiving money.
Amount in cents, e.g. $1.00 would be the number 100.
Description of payout. (Visible to creators.) Default value: Payment from ${sourceFullName} to ${destinationFullName}
Status of payout. One of:
Status | Description |
---|---|
created | Initial status after object creation. Requires Commit P2P method to be executed. |
pending | P2P has been committed, but payment is not complete. |
sent | The payment was completed and the amount is now available in the destination account. |
error | The payment encountered an error during processing. The reasons a payment might be set to error include non-sufficient funds, suspected fraud, or failed validation. |
When the P2P expires, set to 10 minutes after object creation. Formatted as ISO 8601 date/time string.
Count of failed commit attempts. Once a P2P has failed 3 times, it instantly expires.