Get Sandbox Access

Paybase Developer Centre

OverviewAPI GuidesGetting StartedRecipesGig Economy PlatformsSharing Economy PlatformsMarketplacesBlockchain BusinessesEscrowSandboxRolesRulesDue DiligenceCustomersAccountsBank AccountsCardsTransactionsIntroductionInboundGetting money into the systemTransaction ReferenceAccount ReferenceInternalOutboundEscrowSplit PaymentsRefundsStrong Customer Authentication3D Secure AuthenticationIntroductionCreate a cardCreate a transactionDocument UploadStatementsWebhooksErrorsPQLAPI ReferenceAccountCreate an accountRetrieve an accountTransition account statusList all accountsAnnotate an accountDelete annotation from an accountTag an accountDelete tag from an accountBank AccountCreate a bank accountRetrieve a bank accountUpdate a bank accountTransition bank account statusList all bank accountsAnnotate a bank accountDelete annotation from a bank accountTag a bank accountDelete tag from a bank accountCardCreate a cardRetrieve a cardUpdate a cardTransition card statusList all cardsAnnotate a cardDelete annotation from a cardTag a cardDelete tag from a cardCardholderCreate a cardholderRetrieve a cardholderUpdate a cardholderTransition cardholder statusList all cardholdersAnnotate a cardholderDelete annotation from a cardholderTag a cardholderDelete tag from a cardholderCreate an authentication tokenCheckCreate a checkCustomerIndividual CustomerCreate a customerRetrieve a customerUpdate a customerSole TraderCreate a customerRetrieve a customerUpdate a customerOrganisationCreate a CustomerRetrieve a CustomerUpdate a CustomerIncorporated BusinessCreate a customerRetrieve a customerUpdate a customerBusiness PersonAdd a business personRetrieve a business personUpdate a business personDelete a business personRetrieve a customerTransition state of a customerList all customersAnnotate a customerDelete annotation from a customerTag a customerRemove tag from a customerCreate an authentication tokenTouch a customerDocumentCreate a documentRetrieve a documentList Document TypesReferenceRetrieve a referenceStatementRetrieve a statementStatusRetrieve API statusTransactionCreate inbound transactionCreate internal transactionCreate outbound transactionRetrieve a transactionTransition transaction statusList all transactionsAnnotate a transactionDelete annotation from a transactionTag a transactionDelete tag from a transaction
API version: a0406ac

Inbound Transactions with Account Reference

Account references are useful when you want to set-up a reference that can be used to deposit funds on an account for use later on or to hold a balance. The account reference is fixed and reuseable for each account and can be used to deposit any amount. As long as a the customer owning the account has reached their initial target CDD level, you will be able to retrieve a reference for the account from the API. The request also returns the bank details to which your customer will need to make a deposit using the reference provided. In sandbox you can use the Console to simulate an incoming payment using an Account reference. In production your users will use their banking app / website to initiate the payment.

1. Get the Reference

Provide the id of the account on the GET reference API to retrieve the account reference.

1
2
3
4
5
6
7
8
import { v1 } from '@paybase/client';

const client = v1('<- API Key ->', { sandbox: true });

const result = await client.getReference({
  toId: "account/3dddae20-f5c5-4f75-8808-d10c3ef9a289",
  fromId: ""
});

1
2
3
4
5
6
7
8
9
10
import json
import requests

requests.get(
  "https://api-json.sandbox.paybase.io/v1/reference/account/3dddae20-f5c5-4f75-8808-d10c3ef9a289Params: toIdParams: fromId",
  headers = {
    "Content-Type": "application/json",
    "X-Token": "<X-Token goes here>"
  }
).json()

1
2
3
4
5
6
7
8
9
10
11
$client = new \GuzzleHttp\Client();
$client->request(
  "get",
  "https://api-json.sandbox.paybase.io/v1/reference/account/3dddae20-f5c5-4f75-8808-d10c3ef9a289Params: toIdParams: fromId",
  [
    "headers" => [
      "Content-Type" => "application/json",
      "X-Token" => "<X-Token goes here>",
    ]
  ]
);

1
2
3
4
curl -X GET \
"https://api-json.sandbox.paybase.io/v1/reference/account/3dddae20-f5c5-4f75-8808-d10c3ef9a289Params: toIdParams: fromId"  -H "Content-Type: application/json" \
  -H "X-Token: <X-Token goes here>" \

1
2
3
4
5
6
7
{
  "reference": "PBSA2C2DNDZ",
  "accountName": "Client Money Account 1 - Sandbox",
  "accountNumber": "00000021",
  "sortCode": "040504",
  "IBAN": "GB95CLRB04050400000021"
}

The response includes all the details needed to make a transfer from a bank account using the provided reference.

Please do NOT attempt to make this transaction from a real bank account. You must simulate it from the Paybase Console as it is not real money.

2. Initiate the Payment

Once you have generated an account reference, you can simulate a deposit to the account from the Console.

Go to https://console.sandbox.paybase.io/partner/integrations and the Debug - Sandbox Only card (you may need to scroll). Input the reference retrieved in the previous step. Providing the account reference will reveal an amount field where you can input the amount that you wish to deposit and then click Send.

card-form-screenshot

On clicking Send you will see a message saying the payment was successful.

When navigating to the Transactions page you should see a newly created transaction in an EFFECTED state that represent the deposit to the account. You should also be able to see that balance of the account has increased.