Guides
Guides
Guides

Wire payment-in

Allow Beneficiaries to receive an electronic funds transfer to their Caliza wallet.

Overview

A Wire Payment-in is if someone moves funds from an external USD account into the beneficiary's Digital dollar account. This money can then be quickly off-ramped into local currency.

A Wire Payment-in is if someone moves funds from an external USD account into the beneficiary's Digital dollar account. This money can then be quickly off-ramped into local currency.

Payment in is a movement of funds from an external USD account into a beneficiary's Caliza wallet. Currently, Caliza beneficiaries can receive ACH and wire payments into their account.

Core concepts

  • Payment Contact: The payment contact must include the account and accountholder information from which a wire transfer in will be received. For example, if I will receive my payroll from Company XYZ, then I should register company XYZ as a Payment Contact.

Retrieving payment instructions

You can call the endpoint /v1/payments/beneficiaries/{beneficiaryId}/instructions to retrieve the payment account details for a Beneficiary. A Beneficiary can then share these details directly with the sender to request a wire transfer. More info here: Retrieving Payment Instructions

Creating payment contact

The first step to enable a Wire Payment-in is to register a Payment Contact. Registration is required the first time a beneficiary expects to receive a bank transfer payment from a new Payment Contact. Think of it as an address book for the beneficiary, and any payment from an account that isn't in the address book is automatically rejected. Details on the payment contact are here: Creating Payment Contact

❗️

Notice

When the payment contact doesn't exist the payment will be automatically rejected

Creating a fake payment-in (View API reference)

This endpoint is enabled only on sandbox

curl --request POST \
     --url 'https://sandbox.api.caliza.co/core-api/v1/payments/sandbox/funding' \
     --header 'Authorization: Bearer {{YOUR_TOKEN}}' \
     --header 'Content-Type: application/json' \
     --data-raw '{
        "amount": 100,
        "beneficiaryId": "6306548828912548710e667a"
     }'

Callback notification

As soon as we receive a new payment in, we will trigger a call to the integrator callback URL. The Payment callback looks like this:

{
	"operation": "PAYMENT_IN",
	"resourceId": "632a1f76806bd70097197354",
	"createdAt": "2022-09-20T17:15:51.194968",
	"integratorId": "6306548828912548710e667c",
	"beneficiaryId": "6306556b28912548710e667e",
	"message": null,
	"success": true,
	"data": {
		"id": "632a1f76806bd70097197354",
		"simulationId": null,
		"integratorId": "6306548828912548710e667c",
		"beneficiaryId": "6306556b28912548710e667e",
		"amount": {
			"currencyId": "6227f5d27f58553906108dab",
			"currencyCode": "USDC",
			"value": 100
		},
		"amountAfterFee": {
			"currencyId": "6227f5d27f58553906108dab",
			"currencyCode": "USDC",
			"value": 100
		},
		"type": "WIRE_IN",
		"status": "SUCCEEDED",
		"paymentContactId": "6328d636616c1e7beb8652b2"
	}
}