Welcome to Anchor’s Developer Experience Hub

Your launchpad to all you need to build extraordinary stuff with Anchor’s tools, infra and APIs.

Hero Image

#Build with Anchor

Build, test, and launch your financial products with ease. 

plug & play icon

PLUG & PLAY

Drop it in, turn it on—start building instantly with tools that just work.

reliable icon

Fast, Reliable, Built for Scale

Designed for performance and uptime, whether you’re serving hundreds or scaling to millions.

sandbox icon

Sandbox, Docs, All in one place

Everything you need to build, test,
and ship—without jumping between tabs or tools.

Test & Experiment in our Sandbox

Get your hands dirty. No risk. No real money. Just pure, unfiltered API magic in our test environment.

test mode

Full-featured test mode

Build and experiment in a safe, full-featured replica of
our live environment, no surprises, just seamless
testing from start to finish.

transaction icon

Simulated transactions

Run realistic simulated transactions to preview every workflow and edge case, so you ship with
confidence, not crossed fingers.

fast setup

No set up hassle

Spin up your sandbox in seconds, no complicated configs, no delays. Just you, your code, and
everything ready to go.

sandbox enviroment

Dream it, Build it, Scale it

Got an idea? We’ve got the rails. Power your product with:

Anchor offers regulated business accounts to receive payments, hold balances, and perform various financial operations.
curl --request POST \
     --url https://api.sandbox.getanchor.co/api/v1/accounts \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'x-anchor-key: Valid Api Key
     --data '
{
  "data": {
    "attributes": {
      "productName": "SAVINGS"
    },
    "relationships": {
      "customer": {
        "data": {
          "type": "IndividualCustomer"
        }
      }
    },
    "type": "DepositAccount"
  }
}
'
{
  "data": {
    "id": "012345678901234-anc_acc",
    "type": "DepositAccount",
    "attributes": {
      "bankName": "ACCESS BANK",
      "frozen": false,
      "freezeReason": "BY_CUSTOMER / FRAUD/ BY_CUSTOMER / OTHER",
      "freezeDescription": "By Customer",
      "accountName": "John Doe",
      "accountNumber": "9000000000",
      "currency": "NGN",
      "type": "SAVINGS/CURRENT",
      "status": "ACTIVE/BLOCKED/CLOSED",
      "bank": {
        "id": "16534894186638-anc_bk",
        "name": "ACCESS BANK",
        "cbnCode": "string",
        "nipCode": "000014"
      },
      "createdAt": "2025-07-15T20:29:25.537Z",
      "metadata": [
        "string"
      ]
    },
    "relationships": {
      "virtualNubans": {
        "data": [
          {
            "id": "0012345678901230-anc_va",
            "type": "VirtualNuban"
          }
        ]
      },
      "subAccounts": {
        "data": [
          {
            "id": "string",
            "type": "SubAccount"
          }
        ]
      },
      "counterParty": {
        "data": {
          "type": "LinkedCounterParty"
        }
      },
      "organization": {
        "data": {
          "id": "string",
          "type": "Organization"
        }
      },
      "documents": {
        "data": [
          {
            "type": "Document"
          }
        ]
      },
      "officers": {
        "data": [
          {
            "id": "string",
            "type": "BusinessOfficer"
          }
        ]
      },
      "customer": {
        "data": {
          "id": "16565906809790-anc_ind_cst",
          "type": "IndividualCustomerNG"
        }
      }
    }
  }
}
View API documentation
Permanently assigned for static collections, ideal for wallets, sub-merchants, or reusable payment channels.
curl --request POST \
     --url https://api.sandbox.getanchor.co/api/v1/virtual-nubans \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'x-anchor-key: Valid API key
{
  "data": {
    "attributes": {
      "virtualAccountDetail": {
        "name": "John Doe",
        "bvn": "22222222226",
        "reference": "12345",
        "email": "example@example.com",
        "description": "string",
        "permanent": true
      }
    },
    "relationships": {
      "settlementAccount": {
        "data": {
          "type": "SubAccount",
          "id": "string"
        }
      }
    },
    "type": "VirtualNuban"
  }
}
'
{
  "data": {
    "id": "0012345678901230-anc_va",
    "type": "VirtualNuban",
    "attributes": {
      "accountNumber": "123456789",
      "accountName": "John Doe",
      "currency": "NGN",
      "status": "ACTIVE/BLOCKED/CLOSED",
      "reference": "12345",
      "permanent": true,
      "bank": {
        "id": "16534894186638-anc_bk",
        "name": "ACCESS BANK",
        "cbnCode": "string",
        "nipCode": "000014"
      },
      "createdAt": "2025-07-11T09:54:55.291Z",
      "expiryDate": "2025-07-11T09:54:55.291Z",
      "metadata": [
        "string"
      ]
    },
    "relationships": {
      "virtualNubans": {
        "data": [
          {
            "id": "0012345678901230-anc_va",
            "type": "VirtualNuban"
          }
        ]
      },
      "subAccounts": {
        "data": [
          {
            "id": "string",
            "type": "SubAccount"
          }
        ]
      },
      "customer": {
        "data": {
          "id": "16565906809790-anc_ind_cst",
          "type": "IndividualCustomerNG"
        }
      },
      "settlementAccount": {
        "data": {
          "id": "012345678901234-anc_acc",
          "type": "DepositAccount"
        }
      },
      "parentAccount": {
        "data": {
          "id": "012345678901234-anc_acc",
          "type": "DepositAccount"
        }
      },
      "subAccount": {
        "data": {
          "id": "string",
          "type": "SubAccount"
        }
      },
      "counterParty": {
        "data": {
          "type": "LinkedCounterParty"
        }
      },
      "organization": {
        "data": {
          "id": "string",
          "type": "Organization"
        }
      },
      "documents": {
        "data": [
          {
            "type": "Document"
          }
        ]
      },
      "officers": {
        "data": [
          {
            "id": "string",
            "type": "BusinessOfficer"
          }
        ]
      }
    }
  }
}
View API documentation
Robust transfer engine for both internal and external fund movement
curl --request POST \
     --url https://api.sandbox.getanchor.co/api/v1/transfers \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'x-anchor-key: Valid API key
     --data '
{
  "data": {
    "attributes": {
      "currency": "NGN"
    },
    "relationships": {
      "destinationAccount": {
        "data": {
          "type": "SubAccount"
        }
      },
      "account": {
        "data": {
          "type": "SubAccount"
        }
      }
    }
  }
}
'
{
  "data": {
    "attributes": {
      "failureReason": "INSUFFICIENT_BALANCE",
      "currency": "NGN",
      "amount": 0,
      "createdAt": "2025-07-11T09:54:55.291Z",
      "reason": "string",
      "reference": "string",
      "status": "PENDING",
      "metadata": [
        "string"
      ]
    },
    "relationships": {
      "virtualNubans": {
        "data": [
          {
            "id": "0012345678901230-anc_va",
            "type": "VirtualNuban"
          }
        ]
      },
      "subAccounts": {
        "data": [
          {
            "id": "string",
            "type": "SubAccount"
          }
        ]
      },
      "customer": {
        "data": {
          "id": "16565906809790-anc_ind_cst",
          "type": "IndividualCustomerNG"
        }
      },
      "destinationAccount": {
        "data": {
          "id": "012345678901234-anc_acc",
          "type": "DepositAccount"
        }
      },
      "account": {
        "data": {
          "id": "012345678901234-anc_acc",
          "type": "DepositAccount"
        }
      },
      "parentAccount": {
        "data": {
          "id": "012345678901234-anc_acc",
          "type": "DepositAccount"
        }
      },
      "sourceSubAccount": {
        "data": {
          "id": "string",
          "type": "SubAccount"
        }
      },
      "destinationSubAccount": {
        "data": {
          "id": "string",
          "type": "SubAccount"
        }
      },
      "transfers": {
        "data": [
          {},
          {},
          {},
          {},
          {},
          {}
        ]
      },
      "bulkTransfer": {
        "data": {
          "id": "string",
          "type": "BulkTransfer"
        }
      }
    }
  }
}
View API documentation
Internal ledgers for segregating, tracking, and controlling value under a parent account.
curl --request POST \
     --url https://api.sandbox.getanchor.co/api/v1/sub-accounts \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'x-anchor-key: Valid API key
{
  "data": {
    "attributes": {
      "createVirtualNuban": true
    },
    "relationships": {
      "parentAccount": {
        "data": {
          "id": "string",
          "type": "string"
        }
      },
      "customer": {
        "data": {
          "id": "string",
          "type": "string"
        }
      }
    },
    "type": "SubAccount"
  }
}
'

  "data": {
    "id": "16565906809790-anc_bll",
    "type": "Data",
    "attributes": {
      "amount": 0,
      "phoneNumber": "string",
      "detail": {
        "provider": "mtn",
        "createdAt": "2025-07-11T09:54:55.291Z",
        "updatedAt": "2025-07-11T09:54:55.291Z",
        "product": "string",
        "providerReference": "string"
      },
      "status": "PENDING",
      "reference": "string",
      "createdAt": "2025-07-11T09:54:55.291Z",
      "failureReason": "INSUFFICIENT_BALANCE"
    },
    "relationships": {
      "sourceAccount": {
        "data": {
          "id": "string",
          "type": ""
        }
      },
      "counterParty": {
        "data": {
          "type": "LinkedCounterParty"
        }
      },
      "organization": {
        "data": {
          "id": "string",
          "type": "Organization"
        }
      },
      "documents": {
        "data": [
          {
            "type": "Document"
          }
        ]
      },
      "officers": {
        "data": [
          {
            "id": "string",
            "type": "BusinessOfficer"
          }
        ]
      },
      "customer": {
        "data": {
          "id": "16565906809790-anc_ind_cst",
          "type": "IndividualCustomerNG"
        }
      }
    }
  }
}
View API documentation
Bill payment API that enables businesses to let their users pay for everyday utilities
curl --request POST \
     --url https://api.sandbox.getanchor.co/api/v1/bills \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'x-anchor-key: Valid Api Key
     --data '
{
  "data": {
    "attributes": {
      "provider": "mtn"
    },
    "relationships": {
      "account": {
        "data": {
          "type": "SubAccount"
        }
      }
    }
  }
}
'

{
  "data": {
    "id": "string",
    "type": "SubAccount",
    "attributes": {
      "accountType": "IMPLICIT",
      "createdAt": "2025-07-11T09:54:55.291Z",
      "metadata": [
        "string"
      ]
    },
    "relationships": {
      "counterParty": {
        "data": {
          "type": "LinkedCounterParty"
        }
      },
      "organization": {
        "data": {
          "id": "string",
          "type": "Organization"
        }
      },
      "documents": {
        "data": [
          {
            "type": "Document"
          }
        ]
      },
      "officers": {
        "data": [
          {
            "id": "string",
            "type": "BusinessOfficer"
          }
        ]
      },
      "customer": {
        "data": {
          "id": "16565906809790-anc_ind_cst",
          "type": "IndividualCustomerNG"
        }
      },
      "virtualNubans": {
        "data": [
          {
            "id": "0012345678901230-anc_va",
            "type": "VirtualNuban"
          }
        ]
      },
      "subAccounts": {
        "data": [
          {
            "id": "string",
            "type": "SubAccount"
          }
        ]
      },
      "parentAccount": {
        "data": {
          "id": "012345678901234-anc_acc",
          "type": "DepositAccount"
        }
      }
    }
  }
}
View API documentation

Find what you need - in seconds!

Get your hands dirty. No risk. No real money. Just pure, unfiltered API magic in our test environment.

explore doc

API Docs

Step-by-step integration guides that help you get started fast - no confusion, no fluff, just clear technical direction.

View Docs
api reference

API Reference

Every endpoint, payload & schema, clean and precise - so you always know exactly what to build.

View API Reference
dev blog

The Dev Blog

No buzzwords or corporate jargon, just real engineering stories, best practices
and guides

Read our Blog
FAQs

FAQs

Quick, no-nonsense answers to your most common questions—skip the jargon, get what you need, and keep building.

View FAQs

Need help? We’re right here

Join Anchor Connect, Our Slack community for developers.

  • Ask real questions, get real answers
  • Chat with fellow devs & our engineering team
  • Build together, break things (safely), and ship faster
slack icon
Join Anchor Connect
anchor connect