AZA Finance Recipients API

The Recipients API from AZA Finance — 3 operation(s) for recipients.

Operations 4

GET /recipients Getting a list of recipients with filtering #
DELETE /recipients/{Recipient ID} Cancelling a recipient #
PATCH /recipients/{Recipient ID} Updating a recipient #
GET /recipients/{Recipient ID}/proof_of_payments Returns list of proof of payments #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/aza-finance-recipients-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

aza-finance-recipients-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: TransferZero Account Debits Recipients API
  description: Reference documentation for the TransferZero API V1
  version: '1.0'
servers:
- url: https://api-sandbox.transferzero.com/v1
- url: https://api.transferzero.com/v1
security:
- AuthorizationKey: []
  AuthorizationNonce: []
  AuthorizationSignature: []
- AuthorizationKey: []
  AuthorizationSecret: []
tags:
- name: Recipients
paths:
  /recipients:
    get:
      tags:
      - Recipients
      summary: Getting a list of recipients with filtering
      description: Fetches details of all recipients.
      operationId: get-recipients
      parameters:
      - name: page
        in: query
        description: The page number to request (defaults to 1)
        required: false
        schema:
          type: integer
        example: 1
      - name: per
        in: query
        description: The number of results to load per page (defaults to 10)
        required: false
        schema:
          type: integer
        example: 10
      - name: created_at_from
        in: query
        description: 'Start date to filter recipients by created_at range

          Allows filtering results by the specified `created_at` timeframe.


          Example: `/v1/recipients?created_at_from=2018-06-06&created_at_to=2018-06-08`'
        required: false
        schema:
          type: string
      - name: created_at_to
        in: query
        description: 'End date to filter recipients by created_at range

          Allows filtering results by the specified `created_at` timeframe.


          Example: `/v1/recipients?created_at_from=2018-06-06&created_at_to=2018-06-08`'
        required: false
        schema:
          type: string
      - name: amount_from
        in: query
        description: 'Minimum amount to filter recipients by amount range.


          Allows filtering results by the specified `amount` range. When using this filter, the `currency` should also be specified.


          Example: `/v1/recipients?currency=NGN&amount_from=83.76672339&amount_to=83.76672339`'
        required: false
        schema:
          type: string
      - name: amount_to
        in: query
        description: 'Max amount to filter recipients by amount range.


          Allows filtering results by the specified `amount` range. When using this filter, the `currency` should also be specified.


          Example: `/v1/recipients?currency=NGN&amount_from=83.76672339&amount_to=83.76672339`'
        required: false
        schema:
          type: string
      - name: state
        in: query
        description: 'Allows filtering results by `state` of recipient. See [API Documentation - Recipient state](https://docs.transferzero.com/docs/transaction-flow/#state) for possible states.


          Example: `/v1/recipients?state[]=error&state[]=initial`'
        required: false
        schema:
          type: array
          items:
            type: string
      - name: currency
        in: query
        description: 'Allows filtering results by `input_currency`.


          Additionally required when filtering by an amount range

          Example: `/v1/recipients?currency[]=KES&currency[]=NGN`'
        required: false
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: Array of recipients requested
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecipientListResponse'
        '401':
          description: Authentication information is missing or invalid.
        '500':
          description: Internal Server Error.
      x-group-parameters: true
  /recipients/{Recipient ID}:
    delete:
      tags:
      - Recipients
      summary: Cancelling a recipient
      description: 'Cancels the payment to the recipient specified in the URL path.


        Please note recipients where the `may_cancel` attribute is true will be cancelled immediately. If the `may_cancel` attribute is false you can still try to cancel the recipient, however it will only gets cancelled if we will receive a confirmation from our partner that the payment has failed'
      externalDocs:
        description: More details on cancelling recipients
        url: https://docs.transferzero.com/docs/transaction-flow/#cancelling-recipients-and-transactions
      operationId: delete-recipient
      parameters:
      - name: Recipient ID
        in: path
        description: 'ID of recipient to cancel.


          Example: `/v1/recipients/9d4d7b73-a94c-4979-ab57-09074fd55d33`'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Details of recipient cancelled
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecipientResponse'
        '401':
          description: Authentication information is missing or invalid.
        '404':
          description: Resource Not Found.
        '422':
          description: Invalid recipient object (includes errors object)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecipientResponse'
        '500':
          description: Internal Server Error.
    patch:
      tags:
      - Recipients
      summary: Updating a recipient
      description: 'Updates the recipient specified in the URL path.


        Please note that only recipients where the `editable` field is true can be modified. Once the recipient is modified any subsequent payout tries will be sent to the updated details.'
      operationId: patch-recipient
      parameters:
      - name: Recipient ID
        in: path
        description: 'ID of recipient to update.


          Example: `/v1/recipients/9d4d7b73-a94c-4979-ab57-09074fd55d33`'
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecipientRequest'
        required: true
      responses:
        '200':
          description: Details of the updated recipient
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecipientResponse'
        '401':
          description: Authentication information is missing or invalid.
        '404':
          description: Resource Not Found.
        '422':
          description: Invalid recipient object (includes errors object)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecipientResponse'
        '500':
          description: Internal Server Error.
  /recipients/{Recipient ID}/proof_of_payments:
    get:
      tags:
      - Recipients
      summary: Returns list of proof of payments
      description: Returns a list of uploaded proof of payment files for a transaction recipient
      operationId: proof-of-payments
      parameters:
      - name: Recipient ID
        in: path
        description: 'ID of the recipient for whom the proof of payments will be returned.


          Example: `/v1/recipients/9d4d7b73-a94c-4979-ab57-09074fd55d33/proof_of_payments`'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Collection of proof of payment objects
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProofOfPaymentListResponse'
        '422':
          description: Unable to process the request.
components:
  schemas:
    ProofOfPaymentListResponse:
      type: object
      properties:
        object:
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/ProofOfPayment'
      readOnly: true
      example:
        object:
        - thumbnail: https://bitpesa-development-reports.s3.eu-west-1.amazonaws.com/my_file_thumb.jpg
          file_name: my_file.jpg
          id: id
          url: https://bitpesa-development-reports.s3.eu-west-1.amazonaws.com/my_file.jpg
        - thumbnail: https://bitpesa-development-reports.s3.eu-west-1.amazonaws.com/my_file_thumb.jpg
          file_name: my_file.jpg
          id: id
          url: https://bitpesa-development-reports.s3.eu-west-1.amazonaws.com/my_file.jpg
    PayoutMethodDetailsBTC:
      required:
      - address
      - first_name
      - last_name
      - name
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        name:
          type: string
        address:
          type: string
        birth_date:
          type: string
          description: Date of birth of recipient
          format: date
      description: "```JSON\n\"details\": {\n  \"first_name\": \"First\",\n  \"last_name\": \"Last\",\n  \"name\": \"Full Name\"\n  \"address\": \"n4VQ5YdHf7hLQ2gWQYYrcxoE5B7nWuDFNF\"\n}"
    PayoutMethod:
      type: object
      properties:
        type:
          type: string
          description: 'Contains the currency to send the money to, and the type of the money movement


            Commonly used payout types are:


            - `NGN::Bank` - for Nigerian bank account payments.

            - `GHS::Bank` - for Ghanaian bank account payments.

            - `GHS::Mobile` - for Ghanaian mobile money payments.

            - `UGX::Mobile` - for Ugandan mobile money payments.

            - `XOF::Mobile` - for mobile money payments to West-Africa.

            - `XOF::Bank` - for Senegalese bank account payments.

            - `XOF::Cash` - for Senegalese cash remittance payments.

            - `MAD::Cash` - for Moroccan cash remittance payments.

            - `EUR::Bank` - for IBAN bank transfers in EUR.

            - `GBP::Bank` - for IBAN bank and FP accounts transfers in GBP.

            - `ZAR::Bank` - for South Africa bank account payments.

            - `USD::Bank` - for USD account payments. *** Currently for Egypt, Nigeria and United States only and in Beta phase ***

            - `USD::Cash` - for USD cash remittance payments. *** Currently for Nigeria only and in Beta phase ***

            - `KES::Bank` - for Kenyan bank account payments.

            - `KES::Mobile` - for Kenyan mobile money payments.

            - `XAF::Mobile` - for mobile money payments to Central African (CEMAC) countries. *** Currently in Beta phase ***

            - `XAF::Bank` - for Cameroon bank account payments.

            - `GNF::Mobile` - for mobile money payments to Guinea.

            - `BRL::Bank` - for Brazilian bank account payments.

            - `NZD::Bank` - for New Zealand bank account payments.

            - `BWP::Bank` - for Botswana bank account payments.

            - `ZMW::Bank` - for Zambian bank account payments.

            - `CAD::Bank` - for Canadian bank account payments.

            - `UGX::Bank` - for Ugandan bank account payments.

            - `EGP::Bank` - for Egyptian bank account payments.

            - `EGP::Cash` - for Egyptian cash payments.

            '
          example: NGN::Bank
        details:
          $ref: '#/components/schemas/PayoutMethodDetails'
        metadata:
          type: object
          description: Metadata of payout method. You can store any kind of information in this field.
          example: {}
        id:
          type: string
          format: uuid
        errors:
          additionalProperties:
            type: array
            readOnly: true
            items:
              $ref: '#/components/schemas/ValidationErrorDescription'
          description: The fields that have some problems and don't pass validation
          readOnly: true
          example:
            phone_number:
            - error: invalid
            documents:
            - error: blank
        fields:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/FieldDescription'
          description: The fields needed for payments with this payment method with details on validation requirements
          readOnly: true
          example:
            email:
              type: input
              validations:
                inclusion:
                  in:
                    NI: National Id
                    PP: Passport
                  allow_blank: true
      description: This describes the specific details on how the payment has to be routed to the recipient.
      example:
        metadata: {}
        id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
        type: NGN::Bank
        fields:
          email:
            type: input
            validations:
              inclusion:
                in:
                  NI: National Id
                  PP: Passport
                allow_blank: true
        errors:
          phone_number:
          - error: invalid
          documents:
          - error: blank
      externalDocs:
        description: Payout Types in the API documentation
        url: https://docs.transferzero.com/docs/transaction-flow/#payout-type
    PayoutMethodMobileProviderEnum:
      type: string
      description: 'The Mobile Wallet provider of the recipient:


        For XOF (Senegal) valid options are:

        - `orange`: Orange

        - `tigo`: Tigo

        - `emoney`: Emoney

        - `free`: Free

        - `expresso` : Expresso

        - `wave`: Wave


        For XOF (Ivory Coast) valid options are:

        - `orange`: Orange

        - `moov`: Moov

        - `mtn`: MTN

        - `wave`: Wave


        For XOF (Burkina Faso) valid options are:

        - `orange`: Orange

        - `mobicash`: Mobicash

        - `moov` : Moov


        For XOF (Togo) valid options are:

        - `moov`: Moov

        - `tmoney`: Tmoney


        For XOF (Benin) valid options are:

        - `moov`: Moov

        - `mtn`: Mtn


        For XOF (Mali) valid options are:

        - `orange`: Orange

        - `mobicash`: Mobicash

        - `tigo` : Tigo


        For GHS valid options are:

        - `airteltigo`: AirtelTigo

        - `mtn`: MTN

        - `vodafone`: Vodafone


        For KES valid options are:

        - `mpesa`: MPESA


        For UGX valid options are:

        - `africell`: Africell

        - `airtel`: Airtel

        - `mtn`: MTN

        - `telecom`: Telecom


        For XAF (Chad) valid options are:

        - `moov`: Moov


        For XAF (Cameroon) valid options are:

        - `orange`: Orange

        - `mtn`: MTN


        For XAF (Congo) valid options are:

        - `airtel`: Airtel

        - `mtn`: MTN


        For XAF (Gabon) valid options are:

        - `airtel`: Airtel

        - `moov`: Moov


        For GNF (Guinea) valid options are:

        - `orange`: Orange

        - `mtn`: MTN'
      example: orange
      enum:
      - africell
      - airtel
      - airteltigo
      - emoney
      - expresso
      - free
      - mobicash
      - moov
      - mpesa
      - mtn
      - orange
      - telecom
      - tigo
      - tmoney
      - vodafone
      - wave
    Pagination:
      type: object
      properties:
        current_page:
          type: integer
          description: The number of the current page
          readOnly: true
          example: 2
        next_page:
          type: integer
          description: The number of the next page. If no next page exists, this will be `null`
          readOnly: true
          example: 3
        prev_page:
          type: integer
          description: The number of the previous page. If no previous page exists, this will be `null`
          readOnly: true
          example: 1
        total_pages:
          type: integer
          description: The number of pages in the result set
          readOnly: true
          example: 5
        total_count:
          type: integer
          description: The total number of results in the set
          readOnly: true
          example: 45
      readOnly: true
      example:
        next_page: 3
        total_count: 45
        total_pages: 5
        prev_page: 1
        current_page: 2
    RecipientStateReasonDetails:
      anyOf:
      - $ref: '#/components/schemas/StateReasonDetails'
    RecipientState:
      type: string
      description: 'The state of the recipient. Can be one of the following:


        * `initial`: We haven''t initiated the payout yet, you can still cancel the transaction

        * `pending`: Payout has been initiated and we''re waiting from a response from the provider. You can try to cancel it at this point, however it will only get cancelled if we get confirmation from our partner that the payment has failed.

        * `success`: Payout is done, and the recipient has been paid.

        * `error`: There was an error from the provider, you can find more details in the `state_reason` attribute. We will usually retry the transaction at a later date. You can either wait, edit the recipient or cancel the transaction.

        * `refunded`: You asked us to cancel the transaction and we refunded the money.

        * `manual`: There were too many errors on this transaction, and we stopped retrying. Please edit the recipient, contact us or cancel the transaction.

        * `stuck`: We didn''t receive a response from the provider in time, and we don''t know whether it has been paid our not. Please contact us for further details.

        * `overpaid`: The recipient was paid out more than was requested (not applicable for most of the payout providers)

        * `canceled`: The transaction has been cancelled, and we will refund the money soon

        * `exception`: Some exception has happened; please contact TransferZero'
      readOnly: true
      example: initial
      enum:
      - initial
      - pending
      - success
      - error
      - refunded
      - manual
      - stuck
      - overpaid
      - canceled
      - exception
    PayoutMethodCashProviderEnum:
      type: string
      description: 'The cash provider for the pickup:

        For XOF valid options are:

        - `wizall`: Wizall'
      example: wizall
      enum:
      - wari
      - wizall
    FieldSelectValidation:
      type: object
      properties:
        in:
          type: object
          description: Describes the valid options for this selectbox
          readOnly: true
          example:
            '20': Current
            '10': Savings
        allow_blank:
          type: boolean
          description: Describes whether the field is optional or not
          readOnly: true
          example: false
    PayoutMethodDetailsIBAN:
      required:
      - first_name
      - iban
      - last_name
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        iban:
          type: string
        bic:
          type: string
        bank_name:
          type: string
        narration:
          type: string
        birth_date:
          type: string
          description: Date of birth of recipient
          format: date
      description: "```JSON\n\"details\": {\n  \"first_name\": \"First\",\n  \"last_name\": \"Last\",\n  \"iban\": \"DE89370400440532013000\",\n  \"bic\": \"DEUTDEBBXXX\", // Optional\n  \"bank_name\": \"Deutsche Bank\", // Optional\n  \"narration\": \"Birthday Gift\" // Optional\n}\n```"
    PayoutMethodDetailsXOFCash:
      required:
      - cash_provider
      - first_name
      - last_name
      - phone_number
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        phone_number:
          type: string
        cash_provider:
          $ref: '#/components/schemas/PayoutMethodCashProviderEnum'
        country:
          $ref: '#/components/schemas/PayoutMethodCountryEnum'
        birth_date:
          type: string
          description: Date of birth of recipient
          format: date
      description: "```JSON\n\"details\": {\n  \"first_name\": \"First\",\n  \"last_name\": \"Last\",\n  \"phone_number\": \"+221774044436\", // E.164 international format\n  \"cash_provider\": \"wizall\" // Mandatory; Values: \"wizall\";\n  \"country\": \"SN\" // Optional; Values: \"CI\", \"ML\" or \"SN\"; Default value is \"SN\";\n}\n```\n\nPlease note all senders trying to create Wizall cash pickup requests must have `identity_type` and `identity_number` present. The fields above are generally considered optional for senders for other payment corridors. If you wish to use an existing sender who has some of these fields missing you can provide them alongside the `id` or `external_id` field in the sender details.\nFor example -\n\n```JSON\n{\n  \"transaction\": {\n      \"sender\": {\n        \"external_id\": \"<id of sender>\",\n        \"identity_type\": \"ID\",\n        \"identity_number\": \"AB12345678\",\n        (...)\n      },\n      (...)\n    }\n}\n```"
    PayoutMethodNatureOfBusinessEnum:
      type: string
      description: "Nature of business options (used only with a Business sender)\n\nAvailable values:\n  - personal: Personal\n  - agriculture_and_hunting: Agriculture and Hunting\n  - forestry: Forestry\n  - fishing: Fishing\n  - agricultural_by_products: Agricultural By-Products\n  - coal_mining: Coal Mining\n  - oil_mining: Oil Mining\n  - iron_ore_mining: Iron Ore Mining\n  - other_metal_and_diamond_mining: Other Metal and Diamond Mining\n  - other_mineral_mining: Other Mineral Mining\n  - manufacturing_of_food_drink_tobacco: Manufacture of Food/Drink/Tobacco\n  - manufacturing_of_textiles_leather_fur_furniture: Manufacture of Textiles/Leather/Fur/Furniture\n  - manufacture_of_wooden_products_furniture: Manufacture of Wooden Products/Furniture\n  - manufacture_of_paper_pulp_allied_products: Manufacture of Paper/Pulp/Allied Products\n  - manufacture_of_chemicals_medical_petroleum_rubber_plastic_products: Manufacture Of Chemicals Medical Petroleum Rubber Plastic Products\n  - manufacture_of_pottery_china_glass_stone: Manufacture Of Pottery China Glass Stone\n  - manufacture_of_iron_steel_non_ferrous_metals_basic_industries: Manufacture Of Iron Steel Non-Ferrous Metals Basic Industries\n  - manufacture_of_metal_products_electrical_and_scientific_engineering: Manufacture Of Metal Products Electrical And Scientific Engineering\n  - manufacture_of_jewelry_musical_instruments_toys: Manufacture Of Jewelry Musical Instruments Toys\n  - electricity_gas_and_water: Electricity, Gas And Water\n  - construction: Construction\n  - wholesale_trade: Wholesale Trade\n  - retail_trade: Retail Trade\n  - catering_incl_hotels: Catering Incl. Hotels\n  - transport_storage: Transport Storage\n  - communications: Communications\n  - finance_and_holding_companies: Finance And Holding Companies\n  - insurance: Insurance\n  - business_services: Business Services\n  - real_estate_development_investment: Real Estate Development Investment\n  - central_state_governments: Central State Governments\n  - community_services_defence_police_prisons_etc: Community Services Defence Police Prisons Etc\n  - social_services_education_health_care: Social Services Education Health Care\n  - personal_services_leisure_services: Personal Services - Leisure Services\n  - personal_services_domestic_laundry_repairs: Personal Services - Domestic Laundry Repairs\n  - personal_services_embassies_international_organisations: Personal Services - Embassies"
      example: personal
      enum:
      - personal
      - agriculture_and_hunting
      - forestry
      - fishing
      - agricultural_by_products
      - coal_mining
      - oil_mining
      - iron_ore_mining
      - other_metal_and_diamond_mining
      - other_mineral_mining
      - manufacturing_of_food_drink_tobacco
      - manufacturing_of_textiles_leather_fur_furniture
      - manufacture_of_wooden_products_furniture
      - manufacture_of_paper_pulp_allied_products
      - manufacture_of_chemicals_medical_petroleum_rubber_plastic_products
      - manufacture_of_pottery_china_glass_stone
      - manufacture_of_iron_steel_non_ferrous_metals_basic_industries
      - manufacture_of_metal_products_electrical_and_scientific_engineering
      - manufacture_of_jewelry_musical_instruments_toys
      - electricity_gas_and_water
      - construction
      - wholesale_trade
      - retail_trade
      - catering_incl_hotels
      - transport_storage
      - communications
      - finance_and_holding_companies
      - insurance
      - business_services
      - real_estate_development_investment
      - central_state_governments
      - community_services_defence_police_prisons_etc
      - social_services_education_health_care
      - personal_services_leisure_services
      - personal_services_domestic_laundry_repairs
      - personal_services_embassies_international_organisations
    PayoutMethodDetailsEGPCash:
      required:
      - first_name
      - last_name
      - middle_name
      - phone_number
      - street
      - transfer_reason
      type: object
      properties:
        first_name:
          type: string
        middle_name:
          type: string
        last_name:
          type: string
        phone_number:
          type: string
        street:
          type: string
        transfer_reason:
          $ref: '#/components/schemas/PayoutMethodTransferReasonEnum'
        email:
          type: string
        reference:
          type: string
      description: "```JSON\n\"details\": {\n  \"first_name\": \"First\",\n  \"middle_name\": \"Middle\",\n  \"last_name\": \"Last\",\n  \"phone_number\": \"+201023456789\",\n  \"street\": \"1 Main Street\",\n  \"transfer_reason\": \"personal_account\",\n  \"email\": \"recipient@email.com\", // Optional\n  \"reference\": \"3414006608\" // Optional reference that'll appear on the recipient pickup notification (if provided must be unique and exactly 10 digits long)\n}"
    RecipientListResponse:
      type: object
      properties:
        object:
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/Recipient'
        meta:
          $ref: '#/components/schemas/PaginationMeta'
      readOnly: true
      example:
        object:
        - created_at: '2018-06-07T15:12:01.227Z'
          editable: true
          retriable: true
          id: b7432c2c-60bf-4a12-8a5f-71fa5818ecfd
          input_usd_amount: 1000
          may_cancel: true
          metadata: {}
          state: initial
          transaction_id: 3335836a-7828-4c54-9a8f-4c429036e580
          transaction_state: initial
          payout_method:
            id: a8d236df-4e11-4d7a-b395-d63762293b6b
            type: XOF::Bank
            details:
              last_name: English
              first_name: Johnny
              phone_number: '+221752403639'
            metadata:
              my: data
            fields:
              email:
                type: input
                validations:
                  format: \A((\w+([\-+.]\w+)*@[a-zA-Z0-9]+([\-\.][a-zA-Z0-9]+)*)*){3,320}\z
              first_name:
                type: input
                validations:
                  presence: true
              last_name:
                type: input
                validations:
                  presence: true
              phone_number:
                type: input
                validations:
                  presence: true
                  invalid: true
          exchange_rate: 0.17361
          fee_fractional: 251300170
          requested_amount: 173.61
          requested_currency: XOF
          input_amount: 1000
          input_currency: UGX
          output_amount: 173.61
          output_currency: XOF
        meta:
          pagination:
            current_page: 1
            total_pages: 1
            total_count: 1
    PayoutMethodDetailsNGNBank:
      required:
      - bank_account
      - bank_code
      - first_name
      - last_name
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        bank_code:
          type: string
        bank_account:
          type: string
        bank_account_type:
          $ref: '#/components/schemas/PayoutMethodBankAccountTypeEnum'
        birth_date:
          type: string
          description: Date of birth of recipient
          format: date
        street:
          type: string
      description: "```JSON\n  \"details\": {\n    \"first_name\": \"First\",\n    \"last_name\": \"Last\",\n    \"bank_code\": \"058\",\n    \"bank_account\": \"123456789\",\n    \"bank_account_type\": \"10\", # 10 for saving, 20 for current accounts\n    \"street\": \"1 Main Street\"\n  }\n```\n\nSee [NGN Bank](https://docs.azafinance.com/docs/individual-payments/#ngnbank) documentation for the bank_code"
    PayoutMethodDetailsXAFBank:
      required:
      - first_name
      - iban
      - last_name
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        iban:
          type: string
        bank_account:
          type: string
        bank_name:
          type: string
        bank_country:
          type: string
        bank_code:
          type: string
        sort_code:
          type: string
        transfer_reason:
          $ref: '#/components/schemas/PayoutMethodTransferReasonEnum'
        birth_date:
          type: string
          description: Date of birth of recipient
          format: date
      description: "```JSON\n\"details\": {\n  \"first_name\": \"First\",\n  \"last_name\": \"Last\",\n  \"iban\": \"CM2110033052090901100045910\", # IBAN format\n  \"bank_account\": \"09011000459\",\n  \"bank_name\": \"United Bank for Africa - Cameroon\",\n  \"bank_country\": \"CM\", # ISO country code for Cameroon\n  \"bank_code\": \"10033\",\n  \"sort_code\": \"10\",\n  \"transfer_reason\": \"personal_account\"\n}\n```\n\nSee [XAF Bank](https://docs.transferzero.com/docs/payout-details/#xafbank) documentation for the bank_code and transfer_reason lists"
    PayoutMethodDetailsXOFMobile:
      required:
      - first_name
      - last_name
      - mobile_provider
      - phone_number
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        phone_number:
          type: string
        mobile_provider:
          $ref: '#/components/schemas/PayoutMethodMobileProviderEnum'
        country:
          $ref: '#/components/schemas/PayoutMethodCountryEnum'
        transfer_reason:
          $ref: '#/components/schemas/PayoutMethodTransferReasonEnum'
        birth_date:
          type: string
          description: Date of birth of recipient
          format: date
      description: "```JSON\n\"details\": {\n  \"first_name\": \"First\",\n  \"last_name\": \"Last\",\n  \"phone_number\": \"+221708766123\", // E.164 international format\n  \"mobile_provider\": \"orange\", // \"orange\", \"tigo\", \"emoney\" or \"free\" for Senegal; \"orange\", \"mtn\" or \"moov\" for Ivory Coast; \"orange\" or \"mobicash\" for Burkina Faso and Mali\n  \"country\" // Optional; Values: \"SN\" for Senegal; \"CI\" for Ivory Coast; \"ML\" for Mali; \"BF\" for Burkina Faso; Default value is \"SN\"\n  \"transfer_reason\": \"personal_account\" // mandatory for Mali payouts, optional otherwise\n}\n```"
    PayoutMethodDetailsMobile:
      required:
      - first_name
      - last_name
      - phone_number
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        phone_number:
          type: string
        mobile_provider:
          $ref: '#/components/schemas/PayoutMethodMobileProviderEnum'
        birth_date:
          type: string
          description: Date of birth of recipient
          format: date
      description: "```JSON\n\"details\": {\n  \"first_name\": \"First\",\n  \"last_name\": \"Last\",\n  \"phone_number\": \"+221708766123\" // E.164 international format\n}\n```\n\nPlease note when sending XOF::Cash payments you should subscribe to the recipient.pending webhook, as that will broadcast the payment reference ID the customer need to use to obtain the funds.\nExample webhook response excerpt -\n\n```JSON\n{\n  (...)\n  \"state\":\"pending\",\n  \"metadata\": {\n    \"payment_reference\":\"9M5GJRJUBCY\"\n  },\n  (...)\n}\n```"
    FieldDescription:
      type: object
      properties:
        type:
          type: string
          description: the type of the field.
          readOnly: true
          example: input
          enum:
          - input
          - se

# --- truncated at 32 KB (93 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/aza-finance/refs/heads/main/openapi/aza-finance-recipients-api-openapi.yml