CoolFace
Datasetpublic

enigmare/v2-crawler

sourceHugging Faceupdated 28d agoView on Hugging Face
1likes904downloads
developer_flutterwave_com.jsonl196 linesDownload Raw Back to documentation
1{"id":"doc-flutterwave-a8b7c847","source":"documentation","title":"Flutterwave","url":"https://developer.flutterwave.com/","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.753Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}2{"id":"doc-introductionresponsive_cards-d86a7379","source":"documentation","title":"IntroductionResponsive Cards","url":"https://developer.flutterwave.com/docs/introduction-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.753Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}3{"id":"doc-making_a_transfer-2ae231f9","source":"documentation","title":"Making a Transfer","url":"https://developer.flutterwave.com/docs/making-a-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl -X POST 'https://idp.flutterwave.com/realms/flutterwave/protocol/openid-connect/token' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'client_id={{CLIENT_ID}}' \\\n--data-urlencode 'client_secret={{CLIENT_SECRET}}' \\\n--data-urlencode 'grant_type=client_credentials'\n```\n\nExample:\n```json\n{\n    \"access_token\": \"SAMPLE_TOKEN\",\n    \"expires_in\": 600,\n    \"refresh_expires_in\": 0,\n    \"token_type\": \"Bearer\",\n    \"not-before-policy\": 0,\n    \"scope\": \"profile email\"\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/transfers/recipients' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_IDEMPOTENCY_KEY}}' \\\n--data '{\n  \"type\": \"bank_ngn\",\n  \"bank\": {\n    \"account_number\": \"0690000031\",\n    \"code\": \"044\"\n  }\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Recipient created\",\n  \"data\": {\n    \"type\": \"bank\",\n    \"id\": \"rcb_B9aAgsdzzl\",\n    \"name\": {\n      \"first\": \"Tim\",\n      \"last\": \"Jackson\"\n    },\n    \"currency\": \"NGN\",\n    \"bank\": {\n      \"account_number\": \"0690001031\",\n      \"code\": \"044\"\n    }\n  }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--data '{\n    \"action\": \"instant\",\n    \"reference\": \"95e25053-8ee4-42770-a29-af4004dyf9462d\",\n    \"narration\": \"Test transfer\",\n    \"meta\": {\n        \"username\": \"Madyson.Jones43\"\n    },\n    \"payment_instruction\": {\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"applies_to\": \"destination_currency\",\n            \"value\": 1000\n        },\n        \"recipient_id\": \"rcb_B9aAgsdzzl\"\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_iWUfJopFYdyBmB\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"95e25053-8ee4-42770-a29-af4004dyf9462d\",\n        \"status\": \"NEW\",\n        \"narration\": \"Example Transfers\",\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 1000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"callback_url\": \"https://www.company.com/callback\",\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_B9aAgsdzzl\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-10T13:49:06.374991375Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_rp0bjKyAWA52ViM8xlZ0\",\n  \"timestamp\": 1739877172874,\n  \"type\": \"transfer.disburse\",\n  \"data\": {\n    \"id\": \"trf_iWUfJopFYdyBmB\",\n    \"type\": \"BANK\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": 1000,\n    \"reference\": \"95e25053-8ee4-42770-a29-af4004dyf9462d\",\n    \"status\": \"SUCCESSFUL\",\n    \"bank\": {\n      \"account_number\": \"0690000031\",\n      \"code\": \"044\",\n      \"branch\": null,\n      \"name\": null,\n      \"routing_number\": null,\n      \"swift_code\": null\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 10\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 1000,\n      \"rate_used\": 0.00123,\n      \"vat\": 375\n    },\n    \"payment_information\": {\n      \"proof\": \"504828363550713897092362940989\"\n    },\n    \"meta\": {}\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.754Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":7,"totalLines":162,"estimatedTokens":984}}4{"id":"doc-environments-784d9dad","source":"documentation","title":"Environments","url":"https://developer.flutterwave.com/docs/environments","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/customers?page=1' \\\n--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \\\n--header 'Content-Type: application/json'\n```\n\nExample:\n```curl\ncurl --location 'https://f4bexperience.flutterwave.com/customers?page=1' \\\n--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \\\n--header 'Content-Type: application/json'\n```\n\nExample:\n```javascript\n// config.js:\nconst isProd = process.env.NODE_ENV === 'production';\n\nexport const FLW_BASE_URL = isProd\n  ? 'https://developersandbox-api.flutterwave.com'\n  : 'https://f4bexperience.flutterwave.com'; \n\nexport const FLW_CLIENT_ID = isProd\n  ? process.env.FLW_PROD_CLIENT_ID\n  : process.env.FLW_SANDBOX_CLIENT_ID;\n\nexport const FLW_CLIENT_SECRET = isProd\n  ? process.env.FLW_PROD_SECRET_KEY\n  : process.env.FLW_SANDBOX_SECRET_KEY;\n \n// tokenManager.ts:\nimport { \n  FLW_CLIENT_ID, \n  FLW_CLIENT_SECRET } from './config';\n\n// (TokenManager class definition...)\nclass TokenManager {\n  ...\n  async refreshToken() {\n    const response = await fetch('https://idp.flutterwave.com/realms/flutterwave/protocol/openid-connect/token', {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/x-www-form-urlencoded'\n      },\n      body: new URLSearchParams({\n        'client_id': FLW_CLIENT_ID,\n        'client_secret': FLW_CLIENT_SECRET,\n        'grant_type': 'client_credentials'\n      })\n    });\n    \n    const data = await response.json();\n    \n    if (data.access_token) {\n      this.token = data.access_token;\n      // Set expiration time\n      this.expiresAt = Date.now() + (data.expires_in * 1000); \n  }\n}\n\n// Example usage:\nimport { FLW_BASE_URL } from './config';\nimport { tokenManager } from './tokenManager'; \n\nasync function getCustomers() {\n  const accessToken = await tokenManager.getToken(); \n\n  const response = await fetch(`${FLW_BASE_URL}/customers`, {\n    headers: {\n      'Authorization': `Bearer ${accessToken}`\n    }\n  });\n  \n  return response.json();\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.754Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":3,"totalLines":81,"estimatedTokens":535}}5{"id":"doc-best_practices-9244f9b1","source":"documentation","title":"Best Practices","url":"https://developer.flutterwave.com/docs/best-practices","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.754Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}6{"id":"doc-orchestrator_flow-0f8df716","source":"documentation","title":"Orchestrator Flow","url":"https://developer.flutterwave.com/docs/payment-orchestrator-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'X-Scenario-Key: scenario:auth_pin&issuer:approved' \\\n--data '{\n    \"amount\": 1234.56,\n    \"currency\": \"USD\",\n    \"reference\": \"YOUR_EXAMPLE_REFERENCE\",\n    \"payment_method\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"nonce\": \"n0Ad6mOzVnLI\",\n            \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\",\n            \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\",\n            \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\",\n            \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\"\n        }\n    },\n    \"redirect_url\": \"https://custom-redirect.com\",\n    \"customer\": {\n        \"address\": {\n            \"country\": \"US\",\n            \"city\": \"Gotham\",\n            \"state\": \"Colorado\",\n            \"postal_code\": \"94105\",\n            \"line1\": \"221B Baker Street\"\n        },\n        \"phone\": {\n            \"country_code\": \"41\",\n            \"number\": \"7069423351\"\n        },\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"email\": \"[email protected]\"\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{UNIQUE_IDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}' \\\n--data-raw '{\n    \"amount\": 1234.56,\n    \"currency\": \"GHS\",\n    \"reference\": \"YOUR_EXAMPLE_REFERENCE\",\n    \"customer\": {\n        \"address\": {\n            \"country\": \"US\",\n            \"city\": \"Gotham\",\n            \"state\": \"Colorado\",\n            \"postal_code\": \"94105\",\n            \"line1\": \"221B Baker Street\"\n        },\n        \"email\": \"[email protected]\",\n        \"meta\": {},\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"phone\": {\n            \"country_code\": \"233\",\n            \"number\": \"9012345678\"\n        }\n    },\n    \"payment_method\": {\n        \"type\": \"mobile_money\",\n        \"mobile_money\": {\n            \"country_code\": \"233\",\n            \"network\": \"MTN\",\n            \"phone_number\": \"9012345678\"\n        }\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"amount\":1234.56,\n   \"currency\":\"NGN\",\n   \"reference\":\"YOUR_EXAMPLE_REFERENCE\",\n   \"payment_method\":{\n      \"type\":\"opay\"\n   },\n   \"redirect_url\":\"http://www.google.com\",\n   \"customer\":{\n      \"address\":{\n         \"country\": \"US\",\n         \"city\": \"Gotham\",\n         \"state\": \"Colorado\",\n         \"postal_code\": \"94105\",\n         \"line1\": \"221B Baker Street\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":\"7069423351\"\n      },\n      \"name\":{\n         \"first\": \"King\",\n         \"middle\": \"Leo\",\n         \"last\": \"James\"\n      },\n      \"email\":\"[email protected]\"\n   }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"reference\": \"YOUR_EXAMPLE_REFERENCE\",\n    \"currency\": \"NGN\",\n    \"amount\": 1234.56,\n    \"payment_method\": {\n        \"type\": \"ussd\",\n        \"ussd\": {\n            \"account_bank\":\"044\"\n        }\n    },\n   \"redirect_url\":\"http://www.custom-redirect.com\",\n   \"customer\":{\n      \"address\":{\n        \"country\": \"US\",\n        \"city\": \"Gotham\",\n        \"state\": \"Colorado\",\n        \"postal_code\": \"94105\",\n        \"line1\": \"221B Baker Street\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":9069423351\n      },\n      \"name\":{\n         \"first\": \"King\",\n         \"middle\": \"Leo\",\n         \"last\": \"James\"\n      },\n      \"email\":\"[email protected]\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"w2zQDGCf1QXA\",\n            \"encrypted_pin\": \"LC8FYIrkmK6oMULiBskRx9L3\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"otp\",\n        \"otp\": {\n            \"code\": \"123456\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n   \"authorization\":{\n      \"type\":\"avs\",\n      \"avs\":{\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"Coker Estate\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         }\n      }\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please authorise this payment on your mobile number: 2339012345678. It may take a few minutes to confirm this payment.\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge updated\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"amount\": 1500.25,\n        \"currency\": \"NGN\",\n        \"customer\": \"cus_EFE4TQhBSf\",\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"requires_pin\"\n        },\n        \"payment_method_details\": {\n            \"type\": \"card\",\n            \"card\": {\n                \"expiry_month\": 8,\n                \"expiry_year\": 2024,\n                \"first6\": \"123412\",\n                \"last4\": \"4444\",\n                \"network\": \"mastercard\"\n            },\n            \"id\": \"pmd_NkWibrRJIy\",\n            \"customer\": \"cus_EFE4TQhBSf\",\n            \"meta\": {}\n        },\n        \"redirect_url\": \"www.flutterwave.com\",\n        \"reference\": \"XYZ123\",\n        \"status\": \"succeeded\",\n        \"issuer_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        }\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.755Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":10,"totalLines":295,"estimatedTokens":1872}}7{"id":"doc-testing-2c0b8931","source":"documentation","title":"Testing","url":"https://developer.flutterwave.com/docs/testing","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_pin&issuer:approved' \\\n--data '{\n    \"amount\": 1000,\n    \"currency\": \"NGN\",\n    \"reference\": \"94ee715b-9c4b-4700-811b-c93a6f7ce07b\",\n    \"customer_id\": \"cus_c44nro7QZe\",\n    \"payment_method_id\": \"pmd_kKhbTyKhl4\",\n    \"redirect_url\": \"https://example.com\",\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"WQC6lrkhRM5B\",\n            \"encrypted_pin\": \"JQuCpsT0JlP3F0LVeaUvGkb/6rM=\"\n        }\n    },\n    \"recurring\": false\n}'\n```\n\nExample:\n```json\n// Successful 3DS transaction\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--data '{}\n'\n```\n\nExample:\n```json\n// Incorrect pin transaction\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_pin&issuer:incorrect_pin' \\\n--data '{\n    \"amount\": 1000,\n    \"currency\": \"NGN\",\n    \"reference\": \"94ee715b-9c4b-4700-811b-c93a6f7ce07b\",\n    \"customer_id\": \"cus_c44nro7QZe\",\n    \"payment_method_id\": \"pmd_kKhbTyKhl4\",\n    \"redirect_url\": \"https://example.com\",\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"WQC6lrkhRM5B\",\n            \"encrypted_pin\": \"JQuCpsT0JlP3F0LVeaUvGkb/6rM=\"\n        }\n    },\n    \"recurring\": false\n}\n'\n```\n\nExample:\n```json\n// Insufficient funds AVS transaction\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_avs&issuer:insufficient_funds' \\\n--data '{}\n'\n```\n\nExample:\n```json\n// Redirect auth for Mobile Money transactions\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_redirect' \\\n--data '{}\n'\n```\n\nExample:\n```json\n// Successful transfer\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--data '{\n  \"action\": \"instant\",\n  \"disburse_option\": {\n    \"timezone\": \"Africa/Cairo\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"USD\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 3500\n    },\n    \"recipient_id\": \"rcb_aErW4535uiF8S\"\n  },\n  \"callback_url\": \"https://custom-redirect.com\"\n}'\n```\n\nExample:\n```json\n// Daily Transfer limit exceeded\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:daily_transfer_limit_exceeded' \\\n--data '{\n  \"action\": \"instant\",\n  \"disburse_option\": {\n    \"timezone\": \"Africa/Cairo\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"USD\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 3500\n    },\n    \"recipient_id\": \"rcb_aErW4535uiF8S\"\n  },\n  \"callback_url\": \"https://custom-redirect.com\"\n}'\n```\n\nExample:\n```json\n// Insufficient balance\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:insufficient_balance' \\\n--data '{\n  \"action\": \"instant\",\n  \"disburse_option\": {\n    \"timezone\": \"Africa/Cairo\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"USD\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 3500\n    },\n    \"recipient_id\": \"rcb_aErW4535uiF8S\"\n  },\n  \"callback_url\": \"https://custom-redirect.com\"\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.755Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":8,"totalLines":174,"estimatedTokens":1209}}8{"id":"doc-errors-2d9c40b8","source":"documentation","title":"Errors","url":"https://developer.flutterwave.com/docs/common-errors","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"REQUEST_NOT_VALID\",\n        \"code\": \"10400\",\n        \"message\": \"Request is not valid\",\n        \"validation_errors\": [\n            {\n                \"field_name\": \"payment_method_id\",\n                \"message\": \"must not be null\"\n            },\n            {\n                \"field_name\": \"currency\",\n                \"message\": \"must not be null\"\n            }\n        ]\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_ZWf4Kiifxx\",\n        \"amount\": 250,\n        ....\n        \"next_action\": {\n            \"type\": \"requires_requery\",\n            \"requires_requery\": {}\n        },\n        \"payment_method_details\": {\n            ...\n        },\n       ..\n        \"status\": \"pending\",\n        ...\n        \"created_datetime\": \"2026-05-14T13:33:15.625Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_tSn4fdwdwR\",\n        \"amount\": 250,\n         ...    \n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developersandbox.flutterwave.com/redirects?bank_account&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6IjQ0OTllNjBiLThkYzgtNDdlMy05ZDYyLWQwOTUyNjA1ZTYyOSIsImNoYXJnZUlkIjoiY2hnX3RTbjRmZHdkd1IiLCJzdWIiOiI0NDk5ZTYwYi04ZGM4LTQ3ZTMtOWQ2Mi1kMDk1MjYwNWU2MjkiLCJpYXQiOjE3NzkyMjY5MzAsImV4cCI6MTc3OTIyNzIzMH0.lnGvyF4_kWIPW_G0-qWWV1jwGeD0anmsqkXdKN58tSc\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"bank_account\",\n            \"bank_account\": {},\n            \"id\": \"pmd_f5hpfzTraH\",\n            \"meta\": {},\n            \"created_datetime\": \"2026-05-19T21:41:57.493Z\"\n        },\n        \"redirect_url\": \"https://flutterwave.com/\",\n        \"reference\": \"TRN-vL11q2TcVqhc\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2026-05-19T21:42:10.654Z\"\n    }\n}\n```\n\nExample:\n```text\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{ACCESS TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Idempotency-Key: {{X_IDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"TRN-64OVUUz9Tul7\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_9zKqBW94OP\",\n   \"payment_method_id\": \"pmd_gZvoGry0vq\",\n   \"redirect_url\":\"https://flutterwave.com/\",\n   \"amount\": 250,\n   \"meta\":{\n     \"person_name\": \"Derek Jones\",\n     \"role\": \"Developer\"\n   }\n }'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.756Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":4,"totalLines":104,"estimatedTokens":693}}9{"id":"doc-settlements-f8e6ab2f","source":"documentation","title":"Settlements","url":"https://developer.flutterwave.com/v4.0/docs/settlements","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/settlements?page=1&size=10' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Settlements fetched\",\n  \"meta\": {\n    \"page_info\": {\n      \"total\": 10,\n      \"current_page\": 1,\n      \"total_pages\": 1\n    }\n  },\n  \"data\": [\n    {\n      \"id\": \"stm_xpNivHNWmP\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"USD\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2024-12-25T22:00:00.011Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2024-12-25T22:00:00.011Z\"\n    },\n    {\n      \"id\": \"stm_xURpuClRd5\",\n      \"net_amount\": 200,\n      \"gross_amount\": 200,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2024-12-27T09:00:00.025Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2024-12-27T09:00:00.025Z\"\n    },\n    {\n      \"id\": \"stm_lRP73jTEUD\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-21T16:00:00.010Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-21T16:00:00.010Z\"\n    },\n    {\n      \"id\": \"stm_e80g4BVER5\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-21T20:00:00.196Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-21T20:00:00.196Z\"\n    },\n    {\n      \"id\": \"stm_HFk2sqcM1c\",\n      \"net_amount\": 200,\n      \"gross_amount\": 200,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-31T11:00:00.020Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-31T11:00:00.020Z\"\n    },\n    {\n      \"id\": \"stm_YQkhQsAZnQ\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"USD\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-31T11:00:00.048Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-31T11:00:00.048Z\"\n    },\n    {\n      \"id\": \"stm_Wk38LvV5Hz\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-05T15:00:00.022Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-02-05T15:00:00.022Z\"\n    },\n    {\n      \"id\": \"stm_TIrjYoJE8V\",\n      \"net_amount\": 300,\n      \"gross_amount\": 300,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-07T10:00:00.034Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"2\",\n      \"created_datetime\": \"2025-02-07T10:00:00.034Z\"\n    },\n    {\n      \"id\": \"stm_tsjRlAMkoN\",\n      \"net_amount\": 2000,\n      \"gross_amount\": 2000,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-07T11:00:00.137Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-02-07T11:00:00.137Z\"\n    },\n    {\n      \"id\": \"stm_JJo3vjtffW\",\n      \"net_amount\": 2000,\n      \"gross_amount\": 2000,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-07T12:00:00.022Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-02-07T12:00:00.022Z\"\n    }\n  ]\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/settlements/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Settlement fetched\",\n  \"data\": {\n    \"id\": \"stm_xpNivHNWmP\",\n    \"net_amount\": 150,\n    \"gross_amount\": 150,\n    \"currency\": \"USD\",\n    \"meta\": {},\n    \"status\": \"completed\",\n    \"due_datetime\": \"2024-12-25T22:00:00.011Z\",\n    \"fees\": [\n      {\n        \"type\": \"stamp_duty\",\n        \"amount\": 0\n      },\n      {\n        \"type\": \"charge_fee\",\n        \"amount\": 0\n      }\n    ],\n    \"destination\": \"wallet\",\n    \"charge_count\": \"1\",\n    \"charges\": [],\n    \"created_datetime\": \"2024-12-25T22:00:00.011Z\"\n  },\n  \"meta\": {\n    \"page_info\": {\n      \"total\": 1,\n      \"current_page\": 1,\n      \"total_pages\": 0\n    }\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.757Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":4,"totalLines":298,"estimatedTokens":1679}}10{"id":"doc-transfer_orchestrator-695265d1","source":"documentation","title":"Transfer Orchestrator","url":"https://developer.flutterwave.com/v4.0/docs/direct-transfer-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"574874568ufdgjhvbjhcdbchb\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer created\",\n  \"data\": {\n    \"id\": \"trf_pGoKPGH7rEgY4v\",\n    \"type\": \"bank\",\n    \"reference\": \"574874568ufdgjhvbjhcdbchb\",\n    \"status\": \"NEW\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-05T12:36:20.069512926Z\"\n  }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"deferred\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"57487456fff8ufdgjihvbjhcdbchb\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_Pd6KueVSrrUiBF\",\n      \"type\":\"bank\",\n      \"action\":\"deferred\",\n      \"reference\":\"57487456fff8ufdgjihvbjhcdbchb\",\n      \"status\":\"NEW\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":{\n         \"value\":50000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_1IkjUDnrt1\",\n         \"name\":{\n            \"first\":\"Ajadi\",\n            \"last\":\"Jackson\"\n         },\n         \"currency\":\"NGN\",\n         \"bank\":{\n            \"account_number\":\"0122333334\",\n            \"code\":\"044\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T10:32:22.457Z\"\n   }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"scheduled\",\n  \"disburse_option\": {\n    \"date_time\": \"2025-10-25 13:52:30\",\n    \"timezone\": \"UTC\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"57487456fffi8ufdgjhvbjhcdbchbfff\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_PfQSOvcuyET5Di\",\n      \"type\":\"bank\",\n      \"action\":\"scheduled\",\n      \"reference\":\"57487456fffi8ufdgjhvbjhcdbchbfff\",\n      \"status\":\"NEW\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":{\n         \"value\":50000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"disburse_option\":{\n         \"date_time\":\"2025-10-25 13:52:30\",\n         \"timezone\":\"UTC\"\n      },\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_1IkjUDnrt1\",\n         \"name\":{\n            \"first\":\"Ajadi\",\n            \"last\":\"Jackson\"\n         },\n         \"currency\":\"NGN\",\n         \"bank\":{\n            \"account_number\":\"0122333334\",\n            \"code\":\"044\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T10:51:02.222Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_rp0bjKyAWA52ViM8xlZ0\",\n  \"timestamp\": 1739877172874,\n  \"type\": \"transfer.disburse\",\n  \"data\": {\n    \"id\": \"trf_yMZATJ11yVPNkZ\",\n    \"type\": \"BANK\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": 50000,\n    \"reference\": \"5748745ug8ufdgjhveyebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"bank\": {\n      \"account_number\": \"0122333334\",\n      \"code\": \"044\",\n      \"branch\": null,\n      \"name\": null,\n      \"routing_number\": null,\n      \"swift_code\": null\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"504828363550713897092362940989\"\n    },\n    \"meta\": {}\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/{REPLACE_WITH_TRANSFER_ID}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer fetched\",\n  \"data\": {\n    \"id\": \"trf_ighwLOK9pHxoo9\",\n    \"type\": \"bank\",\n    \"action\": \"instant\",\n    \"reference\": \"5748745ug8ufdgjhveyyeebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"754119292904667985302775753026\"\n    },\n    \"callback_url\": \"https://webhook.site/352c4518-7797-4044-becc-669fc5b1e928\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"id\": \"rcb_TDk7vKxUkj\",\n      \"name\": {\n        \"first\": \"Ajadi\",\n        \"last\": \"Jackson\"\n      },\n      \"currency\": \"NGN\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2025-02-18T11:20:37.282Z\"\n  }\n}\n```\n\nExample:\n```json\n\"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"source_currency\",\n      \"value\": 1000\n},\n```\n\nExample:\n```json\n\"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 1000\n},\n```\n\nExample:\n```json\n\"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"USD\",\n      \"amount\": {\n        \"applies_to\": \"destination_currency\",\n        \"value\": 1000\n},\n```\n\nExample:\n```shell\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"TRANSFER_AMOUNT_LIMIT\",\n        \"code\": \"228400\",\n        \"message\": \"Amount must be at least 100NGN.\",\n        \"validation_errors\": []\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\"\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.757Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":14,"totalLines":373,"estimatedTokens":2120}}11{"id":"doc-getting_startedresponsive_cards-aa991056","source":"documentation","title":"Getting StartedResponsive Cards","url":"https://developer.flutterwave.com/docs","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.758Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}12{"id":"doc-e_commerce-e44c6f1f","source":"documentation","title":"E-Commerce","url":"https://developer.flutterwave.com/v4.0/docs/e-commerce","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.758Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}13{"id":"doc-fintechs-b0aa43fd","source":"documentation","title":"Fintechs","url":"https://developer.flutterwave.com/v4.0/docs/fintechs","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.758Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}14{"id":"doc-telecommunications-a099844f","source":"documentation","title":"Telecommunications","url":"https://developer.flutterwave.com/v4.0/docs/telecommunications","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.758Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}15{"id":"doc-remittance-9ad267ad","source":"documentation","title":"Remittance","url":"https://developer.flutterwave.com/v4.0/docs/remittance","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.758Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}16{"id":"doc-banks_and_ofis-1d610eed","source":"documentation","title":"Banks and OFIs","url":"https://developer.flutterwave.com/v4.0/docs/banks-and-ofis","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.758Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}17{"id":"doc-travel_and_hospitality-4d0d9267","source":"documentation","title":"Travel and Hospitality","url":"https://developer.flutterwave.com/v4.0/docs/travel-and-hospitality","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.759Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}18{"id":"doc-getting_startedresponsive_cards-63b51eb2","source":"documentation","title":"Getting StartedResponsive Cards","url":"https://developer.flutterwave.com/docs/getting-started","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.759Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}19{"id":"doc-getting_startedresponsive_cards-7b68a274","source":"documentation","title":"Getting StartedResponsive Cards","url":"https://developer.flutterwave.com/v4.0/docs","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.759Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}20{"id":"doc-charging_a_card-92674380","source":"documentation","title":"Charging a Card","url":"https://developer.flutterwave.com/docs/charging-a-card","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl -X POST 'https://idp.flutterwave.com/realms/flutterwave/protocol/openid-connect/token' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'client_id={{CLIENT_ID}}' \\\n--data-urlencode 'client_secret={{CLIENT_SECRET}}' \\\n--data-urlencode 'grant_type=client_credentials'\n```\n\nExample:\n```json\n{\n    \"access_token\": \"SAMPLE_TOKEN\",\n    \"expires_in\": 600,\n    \"refresh_expires_in\": 0,\n    \"token_type\": \"Bearer\",\n    \"not-before-policy\": 0,\n    \"scope\": \"profile email\"\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--data '{\n  \"address\": {\n    \"city\": \"Gotham\",\n    \"country\": \"US\",\n    \"line1\": \"221B Baker Street\",\n    \"line2\": \"\",\n    \"postal_code\": \"94105\",\n    \"state\": \"Colorado\"\n  },\n  \"name\": {\n    \"first\": \"King\",\n    \"middle\": \"Leo\",\n    \"last\": \"James\"\n  },\n  \"phone\": {\n    \"country_code\": \"1\",\n    \"number\": \"6313958745\"\n  },\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_J0PvwvJB2n\",\n        \"address\": {\n            \"city\": \"Gotham\",\n            \"country\": \"US\",\n            \"line1\": \"221B Baker Street\",\n            \"line2\": \"\",\n            \"postal_code\": \"94105\",\n            \"state\": \"Colorado\"\n        },\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"phone\": {\n            \"country_code\": \"1\",\n            \"number\": \"6313958745\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T13:54:21.546559974Z\"\n    }\n}\n```\n\nExample:\n```javascript\nexport async function encryptAES(data: string, token: string, nonce: string): Promise<string> {\n    if (nonce.length !== 12) {\n        throw new Error(\"Nonce must be exactly 12 characters long\");\n    }\n\n    const cryptoSubtle = globalThis.crypto?.subtle || require(\"crypto\").webcrypto?.subtle;\n    if (!cryptoSubtle) {\n        throw new Error(\"Crypto API is not available in this environment.\");\n    }\n\n    const decodedKeyBytes = Uint8Array.from(atob(token), c => c.charCodeAt(0));\n\n    const key = await cryptoSubtle.importKey(\n        \"raw\",\n        decodedKeyBytes,\n        { name: \"AES-GCM\" },\n        false,\n        [\"encrypt\"]\n    );\n    const iv = new TextEncoder().encode(nonce);\n\n    const encryptedData = await cryptoSubtle.encrypt(\n        {\n            name: \"AES-GCM\",\n            iv: iv,\n        },\n        key,\n        new TextEncoder().encode(data)\n    );\n\n    return btoa(String.fromCharCode(...new Uint8Array(encryptedData)));\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"encrypted_card_number\": \"{{$encrypted_card_number}}\",\n        \"encrypted_expiry_month\": \"{{$encrypted_expiry_month}}\",\n        \"encrypted_expiry_year\": \"{{$encrypted_expiry_year}}\",\n        \"encrypted_cvv\": \"{{$encrypted_cvv}}\",\n        \"nonce\": \"{{$randomly_generated_nonce}}\"\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"expiry_month\": 8,\n            \"expiry_year\": 32,\n            \"first6\": \"123412\",\n            \"last4\": \"2222\",\n            \"network\": \"mastercard\"\n        },\n        \"id\": \"pmd_wlVhaYmkl2\",\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T14:29:26.650973145Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"NGN\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://google.com\",\n   \"amount\": 2500,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\nExample:\n```json\n{\n    \"status\": \"pending\",\n    \"message\": \"Charge requires authorization\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"status\": \"pending\",\n        \"next_action\": {\n            \"type\": \"authorize\",\n            \"authorization\": {\n                \"type\": \"pin\"\n            }\n        },\n        ...\n    }\n}\n```\n\nExample:\n```curl\ncurl --location --request PUT 'https://developersandbox-api.flutterwave.com/charges/{{CHARGE_ID}}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--header 'Content-type: application/json' \\\n--data '{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"{{YOUR_PIN_NONCE}}\",\n            \"encrypted_pin\": \"{{ENCRYPTED_PIN}}\"\n        }\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_yXvsB4LzWSwhUCpAPCBR\",\n   \"timestamp\":1739456704200,\n   \"type\":\"charge.completed\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      \"amount\":2500,\n      \"currency\":\"NGN\",\n      \"customer\":{\n         \"id\":\"cus_J0PvwvJB2n\",\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         },\n         \"email\":\"[email protected]\",\n         \"name\":{\n            \"first\":\"King\",\n            \"middle\":\"Leo\",\n            \"last\":\"James\"\n         },\n         \"phone\":{\n            \"country_code\":\"1\",\n            \"number\":\"6313958745\"\n         },\n         \"meta\":{},\n         \"created_datetime\":\"2024-12-25T20:16:38.246Z\"\n      },\n      \"description\":null,\n      \"meta\":{},\n      \"payment_method\":{\n         \"type\":\"card\",\n         \"card\":{\n            \"expiry_month\":8,\n            \"expiry_year\":32,\n            \"first6\":\"123412\",\n            \"last4\":\"2222\",\n            \"network\":\"MASTERCARD\",\n            \"billing_address\":null,\n            \"cof\":null,\n            \"card_holder_name\":null\n         },\n         \"id\":\"pmd_wlVhaYmkl2\",\n         \"customer_id\":null,\n         \"meta\":{},\n         \"device_fingerprint\":null,\n         \"client_ip\":null,\n         \"created_datetime\":\"2025-02-05T14:06:10.344Z\"\n      },\n      \"redirect_url\":null,\n      \"reference\":\"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n      \"status\":\"succeeded\",\n      \"processor_response\":{\n         \"type\":\"approved\",\n         \"code\":\"00\"\n      },\n      \"created_datetime\":\"2025-02-13T14:24:43.133Z\"\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.759Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":12,"totalLines":309,"estimatedTokens":1996}}21{"id":"doc-list_customers-60977206","source":"documentation","title":"List customers","url":"https://developer.flutterwave.com/reference","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.759Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}22{"id":"doc-idempotency-0ed6d8a9","source":"documentation","title":"Idempotency","url":"https://developer.flutterwave.com/docs/idempotency","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Gotham\",\n      \"country\":\"US\",\n      \"line1\":\"221B Baker Street\",\n      \"line2\":\"\",\n      \"postal_code\":\"94105\",\n      \"state\":\"Colorado\"\n   },\n   \"name\":{\n      \"first\":\"King\",\n      \"middle\":\"Leo\",\n      \"last\":\"James\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.760Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":32,"estimatedTokens":197}}23{"id":"doc-encryption-82b29529","source":"documentation","title":"Encryption","url":"https://developer.flutterwave.com/docs/encryption","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationEncryptionEncryptionIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionEncryptionLearn how to secure your payment data.Suggest EditsWhen making a card charge request, you must encrypt the card information before sending the request. 🚧If you're using any of our official backend SDKs, you don't need to handle encryption manually. Pass your encryption key to the library, and it will automatically encrypt your request payload. When integrating with our direct charge APIs, you'll need to handle the encryption of your code to ensure data integrity. Follow these steps to encrypt your request your encryption key from the API settings section in your Flutterwave dashboard. Use the Advanced Encryption Standard (AES 256) to encrypt your request. This is extended via the following : node-forge, crypto, crypto-js , cryptography (from javax.crypto) , libsodium Add the encrypted data to your API requests. Node.jsJavaPythonexport async function encryptAES(data: string, , ): Promise<string> { if (nonce.length !== 12) { throw new Error(\"Nonce must be exactly 12 characters long\"); } const cryptoSubtle = globalThis.crypto?.subtle || require(\"crypto\").webcrypto?.subtle; if (!cryptoSubtle) { throw new Error(\"Crypto API is not available in this environment.\"); } const decodedKeyBytes = Uint8Array.from(atob(token), c => c.charCodeAt(0)); const key = await cryptoSubtle.importKey( \"raw\", decodedKeyBytes, { name: \"AES-GCM\" }, false, [\"encrypt\"] ); const iv = new TextEncoder().encode(nonce); const encryptedData = await cryptoSubtle.encrypt( { name: \"AES-GCM\", , }, key, new TextEncoder().encode(data) ); return btoa(String.fromCharCode(...new Uint8Array(encryptedData))); } public class EncryptionService { private static final String AES = \"AES\"; private static final String AES_ALGORITHM = \"AES/GCM/NoPadding\"; private static final int TAG_LENGTH_BIT = 128; static String encrypt(String plainText, String nonce, String b64EncodedKey) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidAlgorithmParameterException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException { if (plainText.isEmpty()) { throw new IllegalArgumentException(\"Must provide valid plainText\"); } if (b64EncodedKey.isEmpty()) { throw new IllegalArgumentException(\"Must provide valid b64EncodedAESKey\"); } if (nonce.isEmpty()) { throw new IllegalArgumentException(\"Must provide valid nonce\"); } Cipher cipher = Cipher.getInstance(AES_ALGORITHM); GCMParameterSpec gcmSpec = new GCMParameterSpec(TAG_LENGTH_BIT, nonce.getBytes()); byte[] decodedKeyBytes = Base64.getDecoder().decode(b64EncodedKey); SecretKey key = new SecretKeySpec(decodedKeyBytes, AES); cipher.init(Cipher.ENCRYPT_MODE, key, gcmSpec); byte[] encryptedBytes = cipher.doFinal(plainText.getBytes()); return Base64.getEncoder().encodeToString(encryptedBytes); } public static String generateNonce(int length) { return new Random().ints(length, 0, 62) for key, value in data.items(): encrypted_data[key] = self.encrypt(str(value), nonce) return encrypted_data Example Request{ \"amount\":150, \"currency\":\"NGN\", \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\", \"customer\":{ \"email\":\"[email protected]\" }, \"payment_method\":{ \"type\":\"card\", \"card\": { \"nonce\": \"{{RANDOMLY_GENERATED_NONCE}}\", \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\", \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\", \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\", \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\" } } } If you send unencrypted or improperly encrypted card details in your request, we'll return a 422 error with a failed encryption error message. JSON{ \"status\": \"failed\", \"error\": { \"type\": \"CLIENT_ENCRYPTION_ERROR\", \"code\": \"11100\", \"message\": \"Unable to decrypt encrypted fields provided\", \"validation_errors\": [] } } Updated 9 months ago Did this page help you?YesNoCopy Page\n\nExample:\n```javascript\nexport async function encryptAES(data: string, token: string, nonce: string): Promise<string> {\n    if (nonce.length !== 12) {\n        throw new Error(\"Nonce must be exactly 12 characters long\");\n    }\n\n    const cryptoSubtle = globalThis.crypto?.subtle || require(\"crypto\").webcrypto?.subtle;\n    if (!cryptoSubtle) {\n        throw new Error(\"Crypto API is not available in this environment.\");\n    }\n\n    const decodedKeyBytes = Uint8Array.from(atob(token), c => c.charCodeAt(0));\n\n    const key = await cryptoSubtle.importKey(\n        \"raw\",\n        decodedKeyBytes,\n        { name: \"AES-GCM\" },\n        false,\n        [\"encrypt\"]\n    );\n    const iv = new TextEncoder().encode(nonce);\n\n    const encryptedData = await cryptoSubtle.encrypt(\n        {\n            name: \"AES-GCM\",\n            iv: iv,\n        },\n        key,\n        new TextEncoder().encode(data)\n    );\n\n    return btoa(String.fromCharCode(...new Uint8Array(encryptedData)));\n}\n```\n\nExample:\n```java\npublic class EncryptionService {\n\n    private static final String AES = \"AES\";\n    private static final String AES_ALGORITHM = \"AES/GCM/NoPadding\";\n    private static final int TAG_LENGTH_BIT = 128;\n\n    static String encrypt(String plainText, String nonce, String b64EncodedKey) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidAlgorithmParameterException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException {\n        if (plainText.isEmpty()) {\n            throw new IllegalArgumentException(\"Must provide valid plainText\");\n        }\n        if (b64EncodedKey.isEmpty()) {\n            throw new IllegalArgumentException(\"Must provide valid b64EncodedAESKey\");\n        }\n        if (nonce.isEmpty()) {\n            throw new IllegalArgumentException(\"Must provide valid nonce\");\n        }\n\n        Cipher cipher = Cipher.getInstance(AES_ALGORITHM);\n        GCMParameterSpec gcmSpec = new GCMParameterSpec(TAG_LENGTH_BIT, nonce.getBytes());\n        byte[] decodedKeyBytes = Base64.getDecoder().decode(b64EncodedKey);\n        SecretKey key = new SecretKeySpec(decodedKeyBytes, AES);\n        cipher.init(Cipher.ENCRYPT_MODE, key, gcmSpec);\n        byte[] encryptedBytes = cipher.doFinal(plainText.getBytes());\n\n        return Base64.getEncoder().encodeToString(encryptedBytes);\n    }\n\n    public static String generateNonce(int length) {\n        return new Random().ints(length, 0, 62)\n                .mapToObj(\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\"::charAt)\n                .collect(StringBuilder::new, StringBuilder::append, StringBuilder::append)\n                .toString();\n    }\n}\n```\n\nExample:\n```python\nimport base64\nimport secrets\nimport string\nfrom cryptography.hazmat.primitives.ciphers.aead import AESGCM\n\nclass AESEncryptor:\n    def __init__(self, encryption_key: str):\n        self.aes_key = base64.b64decode(encryption_key)\n\n    @staticmethod\n    def generate_nonce(length: int = 12) -> str:\n        characters = string.ascii_letters + string.digits\n        return ''.join(secrets.choice(characters) for _ in range(length))\n\n    def encrypt(self, plain_text: str, nonce: str) -> str:\n        if not plain_text or not nonce:\n            raise ValueError('Both plain_text and nonce are required for encryption.')\n\n        nonce_bytes = nonce.encode()\n        aes_gcm = AESGCM(self.aes_key)\n        cipher_text = aes_gcm.encrypt(nonce_bytes, plain_text.encode(), None)\n\n        return base64.b64encode(cipher_text).decode()\n\n    def encrypt_dict(self, data: dict) -> dict:\n        if not isinstance(data, dict):\n            raise ValueError(\"Data must be a dictionary.\")\n\n        nonce = self.generate_nonce()\n        encrypted_data = {\"nonce\": nonce}\n\n        for key, value in data.items():\n            encrypted_data[key] = self.encrypt(str(value), nonce)\n\n        return encrypted_data\n```\n\nExample:\n```json\n{\n   \"amount\":150,\n   \"currency\":\"NGN\",\n   \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\",\n   \"customer\":{\n      \"email\":\"[email protected]\"\n   },\n   \"payment_method\":{\n      \"type\":\"card\",\n      \"card\": {\n        \"nonce\": \"{{RANDOMLY_GENERATED_NONCE}}\",\n        \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\",\n        \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\",\n        \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\",\n        \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\"\n      }\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"CLIENT_ENCRYPTION_ERROR\",\n        \"code\": \"11100\",\n        \"message\": \"Unable to decrypt encrypted fields provided\",\n        \"validation_errors\": []\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.760Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":5,"totalLines":153,"estimatedTokens":2364}}24{"id":"doc-list_customers-69cb83c3","source":"documentation","title":"List customers","url":"https://developer.flutterwave.com/v4.0/reference","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.760Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}25{"id":"doc-integration_journey-2db54a0b","source":"documentation","title":"Integration Journey","url":"https://developer.flutterwave.com/docs/integration-journey","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.761Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}26{"id":"doc-webhooks-e78937f2","source":"documentation","title":"Webhooks","url":"https://developer.flutterwave.com/docs/webhooks","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\n{\n  \"data\": {\n    \"amount\": 2500,\n    \"created_datetime\": 1735116842.116,\n    \"currency\": \"KES\",\n    \"customer\": {\n      \"address\": null,\n      \"created_datetime\": 1732977179.938,\n      \"email\": \"[email protected]\",\n      \"id\": \"cus_csm0pcQim4\",\n      \"meta\": {},\n      \"name\": null,\n      \"phone\": null\n    },\n    \"description\": null,\n    \"id\": \"chg_Hq4oBRTJ4r\",\n    \"meta\": {},\n    \"payment_method\": {\n      \"client_ip\": null,\n      \"created_datetime\": 1735116842.107,\n      \"customer_id\": \"cus_csm0pcQim4\",\n      \"device_fingerprint\": null,\n      \"id\": \"pmd_sG5zwZBN4L\",\n      \"meta\": {},\n      \"mobile_money\": {\n        \"country_code\": \"234\",\n        \"network\": \"MTN\",\n        \"phone_number\": \"9067985861\"\n      },\n      \"type\": \"mobile_money\"\n    },\n    \"processor_response\": {\n      \"code\": \"00\",\n      \"type\": \"approved\"\n    },\n    \"redirect_url\": \"https://custom-redirect.com\",\n    \"reference\": \"49c3c6f5-aedd-4443-9eb4-92c51758f04a\",\n    \"status\": \"succeeded\"\n  },\n  \"id\": \"wbk_W5p6ktwU0jQ8RO4By860\",\n  \"timestamp\": 1735116884019,\n  \"type\": \"charge.completed\"\n}\n```\n\nExample:\n```node\n//Sample hashing\nconst crypto = require('crypto');\n\nfunction isValidFlutterwaveWebhook(rawBody, signature, secretHash) {\n  const hash = crypto\n    .createHmac('sha256', secretHash)\n    .update(rawBody)\n    .digest('base64');\n\n  return hash === signature;\n}\n```\n\nExample:\n```node\n// complete hashing and header lookup\nconst express = require('express');\nconst bodyParser = require('body-parser');\n\nconst app = express();\n\n// Capture raw body\napp.use(bodyParser.json({\n  verify: (req, res, buf) => {\n    req.rawBody = buf.toString();\n  }\n}));\n\n// Webhook Route\napp.post('/webhook', (req, res) => {\n  const flutterwaveSignature = req.headers['flutterwave-signature'];\n  const isValid = isValidFlutterwaveWebhook(req.rawBody, flutterwaveSignature, process.env.FLW_SECRET_HASH);\n\n  if (!isValid) {\n    return res.status(401).send('Invalid signature');\n  }\n\n  // Process webhook\n  console.log(req.body);\n  res.sendStatus(200);\n});\n```\n\nExample:\n```javascript\n// In an Express-like app:\n\napp.post(\"/flw-webhook\", (req, res) => {\n    // If you specified a secret hash, check for the signature\n    const secretHash = process.env.FLW_SECRET_HASH;\n    const signature = req.headers[\"flutterwave-signature\"];\n    if (!signature || (signature !== secretHash)) {\n        // This request isn't from Flutterwave; discard\n        res.status(401).end();\n    }\n    const payload = req.body;\n    // It's a good idea to log all received events.\n    log(payload);\n    // Do something (that doesn't take too long) with the payload\n    res.status(200).end()\n});\n```\n\nExample:\n```php\n// In a Laravel-like app:\n\nRoute::post('/flw-webhook', function (\\Illuminate\\Http\\Request $request) {\n    // If you specified a secret hash, check for the signature\n    $secretHash = config('services.flutterwave.secret_hash');\n    $signature = $request->header('flutterwave-signature');\n    if (!$signature || ($signature !== $secretHash)) {\n        // This request isn't from Flutterwave; discard\n        abort(401);\n    }\n    $payload = $request->all();\n    // It's a good idea to log all received events.\n    Log::info($payload);\n    // Do something (that doesn't take too long) with the payload\n    return response(200);\n});\n```\n\nExample:\n```python\n# In a Django-like app:\nimport os\n\n@require_POST\n@csrf_exempt\ndef webhook(request):\n    secret_hash = os.getenv(\"FLW_SECRET_HASH\")\n    signature = request.headers.get(\"flutterwave-signature\")\n    if signature == None or (signature != secret_hash):\n        # This request isn't from Flutterwave; discard\n        return HttpResponse(status=401)\n    payload = request.body\n    # It's a good idea to log all received events.\n    log(payload)\n    # Do something (that doesn't take too long) with the payload\n    return HttpResponse(status=200)\n```\n\nExample:\n```javascript\nconst payload = req.body;\nconst response = await flw.Transaction.verify({id: payload.id});\nif (\n    response.data.status === \"successful\"\n    && response.data.amount === expectedAmount\n    && response.data.currency === expectedCurrency\n    && response.data.tx_ref === expectedReference ) {\n    // Success! Confirm the customer's payment\n} else {\n    // Inform the customer their payment was unsuccessful\n}\n```\n\nExample:\n```javascript\nconst payload = req.body;\nconst existingEvent = await PaymentEvent.where({id: payload.id}).find();\nif (existingEvent.status === payload.status) {\n    // The status hasn't changed,\n    // so it's probably just a duplicate event\n    // and we can discard it\n    res.status(200).end();\n}\n\n// Record this event\nawait PaymentEvent.save(payload);\n// Process event...\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.761Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":8,"totalLines":186,"estimatedTokens":1207}}27{"id":"doc-general_flow-ef83dfa6","source":"documentation","title":"General Flow","url":"https://developer.flutterwave.com/docs/main-payment-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--data '{\n  \"address\": {\n    \"city\": \"Gotham\",\n    \"country\": \"US\",\n    \"line1\": \"221B Baker Street\",\n    \"line2\": \"\",\n    \"postal_code\": \"94105\",\n    \"state\": \"Colorado\"\n  },\n  \"name\": {\n    \"first\": \"King\",\n    \"middle\": \"Leo\",\n    \"last\": \"James\"\n  },\n  \"phone\": {\n    \"country_code\": \"1\",\n    \"number\": \"6313958745\"\n  },\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_J0PvwvJB2n\",\n        \"address\": {\n            \"city\": \"Gotham\",\n            \"country\": \"US\",\n            \"line1\": \"221B Baker Street\",\n            \"line2\": \"\",\n            \"postal_code\": \"94105\",\n            \"state\": \"Colorado\"\n        },\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"phone\": {\n            \"country_code\": \"1\",\n            \"number\": \"6313958745\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T13:54:21.546559974Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"nonce\": \"w2zQDGCf1QXA\",\n        \"encrypted_card_number\": \"Li/5y8DsxwD/FrDZgAS4AmFQDE8Pn1ed1BvjY3j0QoY=\",\n        \"encrypted_expiry_month\": \"LyWZtiCL4oU7K65fWsOoA9B3\",\n        \"encrypted_expiry_year\": \"LC8FYIrkmK6oMULiBskRx9L3\",\n        \"encrypted_cvv\": \"Kiv9mwKcebmwbjWEN0Fd/ZBK2A==\"\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\": \"mobile_money\",\n   \"mobile_money\": {\n       \"country_code\": \"233\",\n       \"network\": \"MTN\",\n       \"phone_number\": \"9012345678\"\n   }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\":\"opay\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"expiry_month\": 8,\n            \"expiry_year\": 32,\n            \"first6\": \"123412\",\n            \"last4\": \"2222\",\n            \"network\": \"mastercard\"\n        },\n        \"id\": \"pmd_wlVhaYmkl2\",\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T14:29:26.650973145Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 1234.56,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"w2zQDGCf1QXA\",\n            \"encrypted_pin\": \"LC8FYIrkmK6oMULiBskRx9L3\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"otp\",\n        \"otp\": {\n            \"code\": \"123456\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n   \"authorization\":{\n      \"type\":\"avs\",\n      \"avs\":{\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"Coker Estate\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         }\n      }\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please authorise this payment on your mobile number: 2339012345678. It may take a few minutes to confirm this payment.\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge updated\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"amount\": 1500.25,\n        \"currency\": \"NGN\",\n        \"customer\": \"cus_EFE4TQhBSf\",\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"requires_pin\"\n        },\n        \"payment_method_details\": {\n            \"type\": \"card\",\n            \"card\": {\n                \"expiry_month\": 8,\n                \"expiry_year\": 2024,\n                \"first6\": \"123412\",\n                \"last4\": \"4444\",\n                \"network\": \"mastercard\"\n            },\n            \"id\": \"pmd_NkWibrRJIy\",\n            \"customer\": \"cus_EFE4TQhBSf\",\n            \"meta\": {}\n        },\n        \"redirect_url\": \"https://custom-redirect.com\",\n        \"reference\": \"XYZ123\",\n        \"status\": \"succeeded\",\n        \"issuer_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        }\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.762Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":13,"totalLines":282,"estimatedTokens":1715}}28{"id":"doc-supported_request_headers-ecc54c8e","source":"documentation","title":"Supported Request Headers","url":"https://developer.flutterwave.com/docs/api-headers","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/customers?page=1' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json'\n```\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"UNAUTHORIZED\",\n        \"code\": \"10401\",\n        \"message\": \"Unauthorized\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Gotham\",\n      \"country\":\"US\",\n      \"line1\":\"221B Baker Street\",\n      \"line2\":\"\",\n      \"postal_code\":\"94105\",\n      \"state\":\"Colorado\"\n   },\n   \"name\":{\n      \"first\":\"King\",\n      \"middle\":\"Leo\",\n      \"last\":\"James\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}\n'\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/customers?page=1' \\\n--header 'Content-Type: application/json'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Gotham\",\n      \"country\":\"US\",\n      \"line1\":\"221B Baker Street\",\n      \"line2\":\"\",\n      \"postal_code\":\"94105\",\n      \"state\":\"Colorado\"\n   },\n   \"name\":{\n      \"first\":\"King\",\n      \"middle\":\"Leo\",\n      \"last\":\"James\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}\n'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.762Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":5,"totalLines":88,"estimatedTokens":483}}29{"id":"doc-reporting_vat-9f289e02","source":"documentation","title":"Reporting VAT","url":"https://developer.flutterwave.com/docs/reporting-vat","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationReporting VATReporting VATIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionReporting VATUnderstanding how to report tax information (VAT)Suggest Edits📘This applies to transactions of NGN Merchants only. Flutterwave allows you to report tax information (VAT) for every transaction your customer makes, irrespective of the payment type. This helps your reconciliation and transaction audit. You'll need to calculate the value of the VAT (7.5% of the transaction amount, excluding processing fees) and pass merchant_vat_amount into your request. Sample (General flow)Sample (Orchestrator flow)curl --request POST \\ --url 'https://developersandbox-api.flutterwave.com/charges' \\ --header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\ --header 'Content-Type: application/json' \\ --header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\ --header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\ --data '{ \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\", \"currency\": \"NGN\", \"customer_id\": \"cus_IpH7CKCUtD\", \"payment_method_id\": \"pmd_wlVhaYmkl2\", \"merchant_vat_amount\": 7.5, \"redirect_url\":\"https://custom-redirect.com\", \"amount\": 1234.56, \"meta\":{ \"person_name\": \"King James\", \"role\": \"Developer\" } }' curl --request POST \\ --url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\ --header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\ --header 'Content-Type: application/json' \\ --header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\ --header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\ --header 'X-Scenario-Key: &issuer:approved' \\ --data '{ \"amount\": 1234.56, \"currency\": \"NGN\", \"reference\": \"YOUR_EXAMPLE_REFERENCE\", \"merchant_vat_amount\": 7.5, \"payment_method\": { \"type\": \"card\", \"card\": { \"nonce\": \"n0Ad6mOzVnLI\", \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\", \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\", \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\", \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\" } }, \"redirect_url\": \"https://custom-redirect.com\", \"customer\": { \"address\": { \"country\": \"NG\", \"city\": \"Lagos Island\", \"state\": \"Lagos\", \"postal_code\": \"101223\", \"line1\": \"2C Coker Road\" }, \"phone\": { \"country_code\": \"234\", \"number\": \"7069423351\" }, \"name\": { \"first\": \"King\", \"middle\": \"Leo\", \"last\": \"James\" }, \"email\": \"[email protected]\" } }' After sending the VAT information, we report this to the Federal Internal Revenue Service. You'll need to ensure that the correct value is passed for recording-keeping and accurate auditing with the FIRS.Updated 6 months ago Did this page help you?YesNoCopy Page\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"NGN\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"merchant_vat_amount\": 7.5,\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 1234.56,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'X-Scenario-Key: scenario:auth_pin&issuer:approved' \\\n--data '{\n    \"amount\": 1234.56,\n    \"currency\": \"NGN\",\n    \"reference\": \"YOUR_EXAMPLE_REFERENCE\",\n    \"merchant_vat_amount\": 7.5,\n    \"payment_method\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"nonce\": \"n0Ad6mOzVnLI\",\n            \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\",\n            \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\",\n            \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\",\n            \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\"\n        }\n    },\n    \"redirect_url\": \"https://custom-redirect.com\",\n    \"customer\": {\n        \"address\": {\n            \"country\": \"NG\",\n            \"city\": \"Lagos Island\",\n            \"state\": \"Lagos\",\n            \"postal_code\": \"101223\",\n            \"line1\": \"2C Coker Road\"\n        },\n        \"phone\": {\n            \"country_code\": \"234\",\n            \"number\": \"7069423351\"\n        },\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"email\": \"[email protected]\"\n    }\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.762Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":2,"totalLines":75,"estimatedTokens":1426}}30{"id":"doc-refunds-29317c1f","source":"documentation","title":"Refunds","url":"https://developer.flutterwave.com/docs/refunds","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/refunds' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"amount\":2000,\n   \"reason\":\"duplicate\",\n   \"charge_id\":\"chg_Jwb2Y7ZbJQ\"\n}'\n```\n\nExample:\n```json\n{\n  \"message\": \"Refund Initiated\",\n  \"data\": {\n    \"id\": \"rfd_eHwAkSdZ48\",\n    \"amount_refunded\": 2000,\n    \"meta\": {},\n    \"reason\": \"duplicate\",\n    \"status\": \"completed\",\n    \"charge_id\": \"chg_Jwb2Y7ZbJQ\",\n    \"created_datetime\": \"2025-02-13T12:12:22.013525130Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/refunds?page=1&size=10' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Refunds fetched\",\n  \"meta\": {\n    \"page_info\": {\n      \"total\": 3,\n      \"current_page\": 1,\n      \"total_pages\": 1\n    }\n  },\n  \"data\": [\n    {\n      \"id\": \"rfd_VBwFTccOHT\",\n      \"amount_refunded\": 2000,\n      \"meta\": {},\n      \"reason\": \"duplicate\",\n      \"status\": \"succeeded\",\n      \"charge_id\": \"chg_ujfv5xWlpX\",\n      \"created_datetime\": \"2025-02-07T11:08:17.517Z\"\n    },\n    {\n      \"id\": \"rfd_9NHHGAilL6\",\n      \"amount_refunded\": 150,\n      \"meta\": {},\n      \"reason\": \"duplicate\",\n      \"status\": \"succeeded\",\n      \"charge_id\": \"chg_5BBk3iB0oZ\",\n      \"created_datetime\": \"2025-02-07T09:25:55.555Z\"\n    },\n    {\n      \"id\": \"rfd_tSl3PQV6Sc\",\n      \"amount_refunded\": 150,\n      \"meta\": {},\n      \"reason\": \"duplicate\",\n      \"status\": \"succeeded\",\n      \"charge_id\": \"chg_HvYp0jE07i\",\n      \"created_datetime\": \"2025-02-06T09:31:52.243Z\"\n    }\n  ]\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.763Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":4,"totalLines":88,"estimatedTokens":524}}31{"id":"doc-stablecoins-71788163","source":"documentation","title":"Stablecoins","url":"https://developer.flutterwave.com/docs/stablecoins","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\ \n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\", \n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 100000\n    },\n    \"recipient\": {\n      \"wallet\": {\n        \"provider\": \"flutterwave\",\n        \"identifier\": \"6312655\" // specify your merchant Id here\n      }\n    },\n    \"destination_currency\": \"USDT\" // specify the stablecoin wallet you want to fund here.\n  },\n  \"type\": \"wallet\",\n  \"narration\": \"TESTING WALLET TRANSFERS\",\n  \"reference\": \"KYERIREYI-JGSJSJGSDJ\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_0W6lRQtk2Z8cUJ\",\n        \"type\": \"wallet\",\n        \"action\": \"instant\",\n        \"reference\": \"KYERIREYI-JGSJSJGSDJ\",\n        \"status\": \"NEW\",\n        \"narration\": \"TESTING WALLET TRANSFERS\",\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"USDT\",\n        \"amount\": {\n            \"value\": 100000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"callback_url\": \"https://webhook.site/8a2e566e-4172-4a99-8c9d-5795641e68f4\",\n        \"recipient\": {\n            \"type\": \"wallet\",\n            \"id\": \"rcw_ayEKRMyre7\",\n            \"name\": {\n                \"first\": \"Ajadi\",\n                \"last\": \"Trailers & Co.\"\n            },\n            \"currency\": \"USDT\",\n            \"wallet\": {\n                \"provider\": \"flutterwave\",\n                \"identifier\": \"6312655\"\n            }\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2026-06-24T14:52:45.641Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\ \n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"crypto\",\n  \"narration\": \"test\",\n  \"payment_instruction\": {\n    \"source_currency\": \"USDT\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 300\n    },\n    \"recipient\": {\n      \"crypto\": {\n        \"network\": \"POLYGON\",\n        \"address\": \"0x742d35Cc6634C0532925a3b844Bc454e4438f44e\"\n      },\n      \"name\": {\n        \"first\": \"King\",\n        \"last\": \"LeBron\"\n      }\n    },\n    \"destination_currency\": \"USDT\"\n  }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_S1G7XEZ5itHqmG50ZVlNg\",\n        \"type\": \"crypto\",\n        \"action\": \"instant\",\n        \"reference\": \"flw_i9CVAeSUm9\",\n        \"status\": \"NEW\",\n        \"narration\": \"test\",\n        \"source_currency\": \"USDT\",\n        \"destination_currency\": \"USDT\",\n        \"amount\": {\n            \"value\": 300,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"crypto\",\n            \"id\": \"rcs_m82OMOcPA8\",\n            \"name\": {\n                \"first\": \"King\",\n                \"last\": \"LeBron\"\n            },\n            \"currency\": \"USDT\",\n            \"crypto\": {\n                \"network\": \"POLYGON\",\n                \"address\": \"0x742d35Cc6634C0532925a3b844Bc454e4438f44e\"\n            }\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2026-06-24T23:36:55.254Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/trf_S1G7XEZ5itHqmG50ZVlNg' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer fetched\",\n    \"data\": {\n        \"id\": \"trf_yr0z0eUJ9oWebi\",\n        \"type\": \"crypto\",\n        \"action\": \"instant\",\n        \"reference\": \"dev_eJ2iZL0YLS\",\n        \"status\": \"SUCCESSFUL\",\n        \"narration\": \"test\",\n        \"source_currency\": \"USDT\",\n        \"destination_currency\": \"USDT\",\n        \"amount\": {\n            \"value\": 300,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"fee\": {\n            \"currency\": \"USDT\",\n            \"value\": 3.0\n        },\n        \"debit_information\": {\n            \"currency\": \"USDT\",\n            \"actual_debit_amount\": 300,\n            \"vat\": 22.5\n        },\n        \"payment_information\": {\n            \"proof\": \"803761698501817536849468056434\"\n        },\n        \"recipient\": {\n            \"type\": \"crypto\",\n            \"id\": \"rcs_V62o4CFuQa\",\n            \"name\": {\n                \"first\": \"King\",\n                \"last\": \"LeBron\"\n            },\n            \"currency\": \"USDT\",\n            \"crypto\": {\n                \"network\": \"POLYGON\",\n                \"address\": \"0x742d35Cc6634C0532925a3b844Bc454e4438f44e\"\n            }\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2026-06-24T14:53:06.254Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"error\",\n    \"message\": \"We do not currently support this conversion. Please contact admin\",\n    \"data\": null\n}\n```\n\nExample:\n```json\ncurl --request POST \\ \n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"wallet\",\n  \"narration\": \"test\",\n  \"payment_instruction\": {\n     \"source_currency\": \"NGN\", \n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 100000\n    },\n    \"recipient\": {\n      \"wallet\": {\n        \"provider\": \"flutterwave\",\n        \"identifier\": \"6312655\" // specify your merchant Id here\n      }\n    },\n    \"destination_currency\": \"USDT\" // specify the stablecoin wallet you want to fund here.\n  },\n  \"type\": \"wallet\",\n  \"narration\": \"TESTING WALLET TRANSFERS\",\n  \"reference\": \"KYERIREYI-JGSJSJGSDJ\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_S1G7XEZ5itHqmG50ZVlNg\",\n        \"type\": \"crypto\",\n        \"action\": \"instant\",\n        \"reference\": \"flw_i9CVAeSUm9\",\n        \"status\": \"NEW\",\n        \"narration\": \"test\",\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"USDT\",\n        \"amount\": {\n            \"value\": 300,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"crypto\",\n            \"id\": \"rcs_m82OMOcPA8\",\n            \"name\": {\n                \"first\": \"King\",\n                \"last\": \"LeBron\"\n            },\n            \"currency\": \"USDT\",\n            \"crypto\": {\n                \"network\": \"POLYGON\",\n                \"address\": \"0x742d35Cc6634C0532925a3b844Bc454e4438f44e\"\n            }\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2026-06-24T23:36:55.254Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.763Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":9,"totalLines":281,"estimatedTokens":1882}}32{"id":"doc-introductionresponsive_cards-d2650099","source":"documentation","title":"IntroductionResponsive Cards","url":"https://developer.flutterwave.com/docs/introduction-3","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --location 'https://idp.flutterwave.com/realms/flutterwave/protocol/openid-connect/token' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'client_id={{YOUR_CLIENT_ID}}' \\\n--data-urlencode 'client_secret={{YOUR_CLIENT_SECRET}}' \\\n--data-urlencode 'grant_type=client_credentials'\n```\n\nExample:\n```curl\ncurl --request POST \\\n     --url https://developersandbox-api.flutterwave.com/banks/account-resolve \\\n     --header 'content-type: application/json' \\\n     --data '\n{\n  \"account\": {\n    \"code\": \"044\",\n    \"number\": \"0690000040\"\n  },\n  \"currency\": \"NGN\"\n}\n'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"string\",\n  \"data\": {\n    \"bank_code\": \"044\",\n    \"account_number\": \"0690000040\",\n    \"account_name\": \"Alex James\"\n  }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 1000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"574874568ufdgjhvbjhcdbchb\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer created\",\n  \"data\": {\n    \"id\": \"trf_pGoKPGH7rEgY4v\",\n    \"type\": \"bank\",\n    \"reference\": \"574874568ufdgjhvbjhcdbchb\",\n    \"status\": \"NEW\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-05T12:36:20.069512926Z\"\n  }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"REFERENCE_ALREADY_EXISTS\",\n        \"code\": \"201409\",\n        \"message\": \"Transfer with reference already exists\",\n        \"validation_errors\": []\n    }\n}\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer fetched\",\n  \"data\": {\n    \"id\": \"trf_ighwLOK9pHxoo9\",\n    \"type\": \"bank\",\n    \"action\": \"instant\",\n    \"reference\": \"5748745ug8ufdgjhveyyeebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"754119292904667985302775753026\"\n    },\n    \"callback_url\": \"https://webhook.site/352c4518-7797-4044-becc-669fc5b1e928\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"id\": \"rcb_TDk7vKxUkj\",\n      \"name\": {\n        \"first\": \"Ajadi\",\n        \"last\": \"Jackson\"\n      },\n      \"currency\": \"NGN\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2025-02-18T11:20:37.282Z\"\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.764Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":7,"totalLines":162,"estimatedTokens":895}}33{"id":"doc-chargebacks-905c7e0e","source":"documentation","title":"Chargebacks","url":"https://developer.flutterwave.com/docs/chargebacks-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl  --request GET \\  \n--url 'https://developersandbox-api.flutterwave.com/chargebacks' \\\n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Chargebacks fetched\",\n    \"meta\": {\n        \"page_info\": {\n            \"total\": 2,\n            \"current_page\": 1,\n            \"total_pages\": 1\n        }\n    },\n    \"data\": [\n        {\n            \"id\": \"chb_KJ5rAYbkvt\",\n            \"charge_id\": \"chg_RjxhF6IgxQ\",\n            \"amount\": 200,\n            \"meta\": {},\n            \"stage\": \"new\",\n            \"status\": \"accepted\",\n            \"type\": \"local\",\n            \"due_datetime\": \"2025-01-28T11:45:06.714Z\",\n            \"created_datetime\": \"2025-01-27T11:45:06.715Z\",\n            \"updated_datetime\": \"2025-01-27T11:45:31.190Z\",\n            \"comment\": \"Chargeback accepted after review. Issue resolved in favor of the customer.\"\n        },\n        {\n            \"id\": \"chb_QYZyN5BBvE\",\n            \"charge_id\": \"chg_Ppj3WCkVHk\",\n            \"amount\": 200,\n            \"meta\": {},\n            \"stage\": \"new\",\n            \"status\": \"declined\",\n            \"type\": \"local\",\n            \"due_datetime\": \"2025-01-28T10:13:41.845Z\",\n            \"created_datetime\": \"2025-01-27T10:13:41.845Z\",\n            \"updated_datetime\": \"2025-01-27T11:45:20.126Z\",\n            \"uploaded_proof\": \"https://www.example-website.com/media/proof.png\",\n            \"comment\": \"We provided value to the customer for the reported transaction. See image in proof for more information\"\n        }\n    ]\n}\n```\n\nExample:\n```json\ncurl  --request PUT \\\n--url 'https://developersandbox-api.flutterwave.com/chargebacks/chb_KJ5rAYbkvt' \\\n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}' \\\n--data '\n{\n  \"status\": \"accepted\",\n  \"comment\": \"Chargeback accepted after review. Issue resolved in favor of the customer.\"\n}\n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Chargeback updated\",\n    \"data\": {\n        \"id\": \"chb_KJ5rAYbkvt\",\n        \"charge_id\": \"chg_RjxhF6IgxQ\",\n        \"amount\": 200,\n        \"meta\": {},\n        \"stage\": \"new\",\n        \"status\": \"accepted\",\n        \"type\": \"local\",\n        \"due_datetime\": \"2025-01-28T11:45:06.714Z\",\n        \"created_datetime\": \"2025-01-27T11:45:06.715Z\",\n        \"updated_datetime\": \"2025-01-27T11:45:31.190Z\",\n        \"comment\": \"Chargeback accepted after review. Issue resolved in favor of the customer.\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request PUT\\\n--url 'https://developersandbox-api.flutterwave.com/chargebacks/chb_QYZyN5BBvE' \n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}' \\\n--data '\n{\n  \"status\": \"declined\",\n  \"uploaded_proof\": \"https://www.example-website.com/media/proof.png\",\n  \"comment\": \"We provided value to the customer for the reported transaction. See image in proof for more information\"\n}\n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Chargeback updated\",\n    \"data\": {\n        \"id\": \"chb_QYZyN5BBvE\",\n        \"charge_id\": \"chg_Ppj3WCkVHk\",\n        \"amount\": 200,\n        \"meta\": {},\n        \"stage\": \"new\",\n        \"status\": \"declined\",\n        \"type\": \"local\",\n        \"due_datetime\": \"2025-01-28T10:13:41.845Z\",\n        \"created_datetime\": \"2025-01-27T10:13:41.845Z\",\n        \"updated_datetime\": \"2025-01-27T10:26:18.382Z\",\n        \"uploaded_proof\": \"https://www.example-website.com/media/proof.png\",\n        \"comment\": \"We provided value to the customer for the reported transaction. See image in proof for more information\"\n    }\n}\n```\n\nExample:\n```json\ncurl  --request POST  \\\n--url 'https://developersandbox-api.flutterwave.com/chargebacks' \\\n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{UNIQUE_IDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}' \\\n--data '\n{\n  \"charge_id\": \"chg_Ppj3WCkVHk\",\n  \"amount\": 200,\n  \"type\": \"local\",\n  \"expiry\": 24\n}\n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Chargeback created\",\n    \"data\": {\n        \"id\": \"chb_QYZyN5BBvE\",\n        \"charge_id\": \"chg_Ppj3WCkVHk\",\n        \"amount\": 200,\n        \"meta\": {},\n        \"stage\": \"new\",\n        \"status\": \"initiated\",\n        \"type\": \"local\",\n        \"due_datetime\": \"2025-01-28T10:13:41.845073299Z\",\n        \"created_datetime\": \"2025-01-27T10:13:41.845153199Z\",\n        \"updated_datetime\": \"2025-01-27T10:13:41.845153199Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.764Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":8,"totalLines":168,"estimatedTokens":1203}}34{"id":"doc-wallet_to_wallet-e79ffe54","source":"documentation","title":"Wallet-to-Wallet","url":"https://developer.flutterwave.com/docs/wallet-to-wallet","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 100\n    },\n    \"recipient\": {\n      \"wallet\": {\n        \"provider\": \"flutterwave\",\n        \"identifier\": \"00118468\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"wallet\",\n  \"narration\": \"TESTING WALLET TRANSFERS\",\n  \"reference\": \"KYERIREYI-JGSJSJGSDJ\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_KDLtJacafRur4K\",\n      \"type\":\"wallet\",\n      \"action\":\"instant\",\n      \"reference\":\"KYERIREYI-JGSJSJGSDJ\",\n      \"status\":\"NEW\",\n      \"narration\":\"TESTING WALLET TRANSFERS\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":{\n         \"value\":100,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"wallet\",\n         \"id\":\"rcw_Gf547Peqq5\",\n         \"name\":{\n            \"first\":\"Ajadi\",\n            \"last\":\"Trailers & Co.\"\n         },\n         \"currency\":\"NGN\",\n         \"wallet\":{\n            \"provider\":\"flutterwave\",\n            \"identifier\":\"00118468\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T21:47:16.417Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_T1n3neXA7Wn52mnOIDBI\",\n   \"timestamp\":1749073636445,\n   \"type\":\"transfer.disburse\",\n   \"data\":{\n      \"id\":\"trf_KDLtJacafRur4K\",\n      \"type\":\"WALLET\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":100,\n      \"reference\":\"KYERIREYI-JGSJSJGSDJii\",\n      \"status\":\"SUCCESSFUL\",\n      \"wallet\":{\n         \"provider\":\"flutterwave\",\n         \"identifier\":\"00118468\"\n      },\n      \"fee\":{\n         \"currency\":\"NGN\",\n         \"value\":1\n      },\n      \"debit_information\":{\n         \"currency\":\"NGN\",\n         \"actual_debit_amount\":100,\n         \"rate_used\":0.00123,\n         \"vat\":7.5\n      },\n      \"payment_information\":{\n         \"proof\":\"489483145598277415954270427727\"\n      },\n      \"meta\":{}\n   }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer fetched\",\n  \"data\": {\n    \"id\": \"trf_TovqwXP5McNbwI\",\n    \"type\": \"wallet\",\n    \"action\": \"instant\",\n    \"reference\": \"KYERIREYI-JGSJSJGSDJ\",\n    \"status\": \"NEW\",\n    \"narration\": \"TESTING WALLET TRANSFERS\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 100,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"recipient\": {\n      \"type\": \"wallet\",\n      \"currency\": \"NGN\",\n      \"wallet\": {\n        \"provider\": \"flutterwave\",\n        \"identifier\": \"00118468\"\n      },\n      \"id\": \"rcw_MZGa8LPctK\"\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-11T08:57:49.040Z\"\n  }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"failed\",\n   \"error\":{\n      \"type\":\"TRANSFER_NOT_FOUND\",\n      \"code\":\"301404\",\n      \"message\":\"Transfer not found\",\n      \"validation_errors\":[\n         \n      ]\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.764Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":6,"totalLines":164,"estimatedTokens":940}}35{"id":"doc-settlements-51f459c1","source":"documentation","title":"Settlements","url":"https://developer.flutterwave.com/docs/settlements","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/settlements?page=1&size=10' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Settlements fetched\",\n  \"meta\": {\n    \"page_info\": {\n      \"total\": 10,\n      \"current_page\": 1,\n      \"total_pages\": 1\n    }\n  },\n  \"data\": [\n    {\n      \"id\": \"stm_xpNivHNWmP\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"USD\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2024-12-25T22:00:00.011Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2024-12-25T22:00:00.011Z\"\n    },\n    {\n      \"id\": \"stm_xURpuClRd5\",\n      \"net_amount\": 200,\n      \"gross_amount\": 200,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2024-12-27T09:00:00.025Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2024-12-27T09:00:00.025Z\"\n    },\n    {\n      \"id\": \"stm_lRP73jTEUD\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-21T16:00:00.010Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-21T16:00:00.010Z\"\n    },\n    {\n      \"id\": \"stm_e80g4BVER5\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-21T20:00:00.196Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-21T20:00:00.196Z\"\n    },\n    {\n      \"id\": \"stm_HFk2sqcM1c\",\n      \"net_amount\": 200,\n      \"gross_amount\": 200,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-31T11:00:00.020Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-31T11:00:00.020Z\"\n    },\n    {\n      \"id\": \"stm_YQkhQsAZnQ\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"USD\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-01-31T11:00:00.048Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-01-31T11:00:00.048Z\"\n    },\n    {\n      \"id\": \"stm_Wk38LvV5Hz\",\n      \"net_amount\": 150,\n      \"gross_amount\": 150,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-05T15:00:00.022Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-02-05T15:00:00.022Z\"\n    },\n    {\n      \"id\": \"stm_TIrjYoJE8V\",\n      \"net_amount\": 300,\n      \"gross_amount\": 300,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-07T10:00:00.034Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"2\",\n      \"created_datetime\": \"2025-02-07T10:00:00.034Z\"\n    },\n    {\n      \"id\": \"stm_tsjRlAMkoN\",\n      \"net_amount\": 2000,\n      \"gross_amount\": 2000,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-07T11:00:00.137Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-02-07T11:00:00.137Z\"\n    },\n    {\n      \"id\": \"stm_JJo3vjtffW\",\n      \"net_amount\": 2000,\n      \"gross_amount\": 2000,\n      \"currency\": \"NGN\",\n      \"meta\": {},\n      \"status\": \"completed\",\n      \"due_datetime\": \"2025-02-07T12:00:00.022Z\",\n      \"fees\": [\n        {\n          \"type\": \"stamp_duty\",\n          \"amount\": 0\n        },\n        {\n          \"type\": \"charge_fee\",\n          \"amount\": 0\n        }\n      ],\n      \"destination\": \"wallet\",\n      \"charge_count\": \"1\",\n      \"created_datetime\": \"2025-02-07T12:00:00.022Z\"\n    }\n  ]\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/settlements/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Settlement fetched\",\n  \"data\": {\n    \"id\": \"stm_xpNivHNWmP\",\n    \"net_amount\": 150,\n    \"gross_amount\": 150,\n    \"currency\": \"USD\",\n    \"meta\": {},\n    \"status\": \"completed\",\n    \"due_datetime\": \"2024-12-25T22:00:00.011Z\",\n    \"fees\": [\n      {\n        \"type\": \"stamp_duty\",\n        \"amount\": 0\n      },\n      {\n        \"type\": \"charge_fee\",\n        \"amount\": 0\n      }\n    ],\n    \"destination\": \"wallet\",\n    \"charge_count\": \"1\",\n    \"charges\": [],\n    \"created_datetime\": \"2024-12-25T22:00:00.011Z\"\n  },\n  \"meta\": {\n    \"page_info\": {\n      \"total\": 1,\n      \"current_page\": 1,\n      \"total_pages\": 0\n    }\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.765Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":4,"totalLines":298,"estimatedTokens":1679}}36{"id":"doc-card_payments-b72d7431","source":"documentation","title":"Card Payments","url":"https://developer.flutterwave.com/docs/card","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Gotham\",\n      \"country\":\"US\",\n      \"line1\":\"221B Baker Street\",\n      \"line2\":\"\",\n      \"postal_code\":\"94105\",\n      \"state\":\"Colorado\"\n   },\n   \"name\":{\n      \"first\":\"King\",\n      \"middle\":\"Leo\",\n      \"last\":\"James\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Customer created\",\n   \"data\":{\n      \"id\":\"cus_X0yJv3ZMpL\",\n      \"address\":{\n         \"city\":\"Gotham\",\n         \"country\":\"US\",\n         \"line1\":\"221B Baker Street\",\n         \"line2\":\"\",\n         \"postal_code\":\"94105\",\n         \"state\":\"Colorado\"\n      },\n      \"email\":\"[email protected]\",\n      \"name\":{\n         \"first\":\"King\",\n         \"middle\":\"Leo\",\n         \"last\":\"James\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":\"6313958745\"\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2025-01-29T12:44:53.049Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"encrypted_card_number\": \"{{$encrypted_card_number}}\",\n        \"encrypted_expiry_month\": \"{{$encrypted_expiry_month}}\",\n        \"encrypted_expiry_year\": \"{{$encrypted_expiry_year}}\",\n        \"encrypted_cvv\": \"{{$encrypted_cvv}}\",\n        \"nonce\": \"{{$randomly_generated_nonce}}\"\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"expiry_month\": 8,\n            \"expiry_year\": 32,\n            \"first6\": \"123412\",\n            \"last4\": \"2222\",\n            \"network\": \"mastercard\"\n        },\n        \"id\": \"pmd_wlVhaYmkl2\",\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T14:29:26.650973145Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 250,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n\"next_action\": {\n    \"type\": \"redirect_url\",\n    \"redirect_url\": {\n        \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX2tPMWVSblF6N1AiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzgyNDU3MjAsImV4cCI6MTczODI0NjAyMH0.Le9JEoZx87G1cE6OtMaRHSbKMqlYB8eMq2-9PdNkdco\"\n    }\n},\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      ...\n      \"next_action\":{\n         \"type\":\"requires_additional_fields\",\n         \"requires_additional_fields\":{\n            \"fields\":[\n               \"authorization.avs.address.postal_code\",\n               \"authorization.avs.address.line1\",\n               \"authorization.avs.address.state\",\n               \"authorization.avs.address.country\",\n               \"authorization.avs.address.city\"\n            ]\n         }\n      },\n      \"payment_method_details\":{},\n      \"status\":\"pending\",\n      ...\n   }\n}\n```\n\nExample:\n```json\ncurl --request PUT \\\n--url 'https://api.flutterwave.cloud/developersandbox/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"authorization\":{\n      \"type\":\"avs\",\n      \"avs\":{\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"Coker Estate\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      ...\n      \"next_action\":{\n         \"type\":\"requires_pin\",\n         \"requires_pin\":{}\n      },\n      \"payment_method_details\":{},\n      \"status\":\"pending\",\n      ...\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      ...\n      \"next_action\":{\n         \"type\":\"requires_otp\",\n         \"requires_otp\":{}\n      },\n      \"payment_method_details\":{},\n      \"status\":\"pending\",\n      ...\n   }\n}\n```\n\nExample:\n```json\ncurl --request PUT \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"{{$randomly_generated_nonce}}\",\n            \"encrypted_pin\": \"{{$encrypted_pin}}\"\n        }\n    }\n}'\n```\n\nExample:\n```json\ncurl --request PUT \\ \n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"authorization\": {\n        \"type\": \"otp\",\n        \"otp\": {\n            \"code\": \"123456\"\n        }\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_TusjN23anB\",\n   \"recurring\":true,\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 250\n }\n'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"encrypted_card_number\": \"{{$encrypted_card_number}}\",\n        \"encrypted_expiry_month\": \"{{$encrypted_expiry_month}}\",\n        \"encrypted_expiry_year\": \"{{$encrypted_expiry_year}}\",\n        \"encrypted_cvv\": \"{{$encrypted_cvv}}\",\n        \"nonce\": \"{{$randomly_generated_nonce}}\",\n        \"cof\": {\n                \"enabled\": true,\n          \t\"agreement_id\": \"Agreement00w02W1\"\n            }\n    }\n}'\n```\n\nExample:\n```json\ncurl --location 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{UNIQUE_IDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}' \\\n--data-raw '{\n   \"amount\":\"1234.56\",\n   \"currency\":\"NGN\",\n   \"reference\":\"{{UNIQUE_TRANSACTION_REFERENCE}}\",\n   \"customer\":{\n      \"address\":{\n         \"city\":\"Gotham\",\n         \"country\":\"US\",\n         \"line1\":\"221B Baker Street\",\n         \"line2\":\"\",\n         \"postal_code\":\"94105\",\n         \"state\":\"Colorado\"\n      },\n      \"email\":\"[email protected]\",\n      \"meta\":{},\n      \"name\":{\n         \"first\":\"King\",\n         \"middle\":\"Leo\",\n         \"last\":\"James\"\n      },\n      \"phone\":{\n         \"country_code\":\"234\",\n         \"number\":\"9010001111\"\n      }\n   },\n   \"payment_method\":{\n      \"type\":\"card\",\n      \"card\":{\n         \"encrypted_card_number\":\"{{$encrypted_card_number}}\",\n         \"encrypted_expiry_month\":\"{{$encrypted_expiry_month}}\",\n         \"encrypted_expiry_year\":\"{{$encrypted_expiry_year}}\",\n         \"encrypted_cvv\":\"{{$encrypted_cvv}}\",\n         \"nonce\":\"{{$randomly_generated_nonce}}\",\n         \"cof\":{\n            \"enabled\":true,\n            \"agreement_id\": \"Agreement00w02W1\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_yXvsB4LzWSwhUCpAPCBR\",\n   \"timestamp\":1739456704200,\n   \"type\":\"charge.completed\",\n   \"data\":{\n      \"id\":\"chg_zam88NgLb7\",\n      \"amount\":2000,\n      \"currency\":\"NGN\",\n      \"customer\":{\n         \"id\":\"cus_dc0FUyBpd0\",\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         },\n         \"email\":\"[email protected]\",\n         \"name\":{\n            \"first\":\"King\",\n            \"middle\":\"Leo\",\n            \"last\":\"James\"\n         },\n         \"phone\":{\n            \"country_code\":\"1\",\n            \"number\":\"6313958745\"\n         },\n         \"meta\":{},\n         \"created_datetime\":\"2024-12-25T20:16:38.246Z\"\n      },\n      \"description\":null,\n      \"meta\":{},\n      \"payment_method\":{\n         \"type\":\"card\",\n         \"card\":{\n            \"expiry_month\":9,\n            \"expiry_year\":32,\n            \"first6\":\"553188\",\n            \"last4\":\"2950\",\n            \"network\":\"MASTERCARD\",\n            \"billing_address\":null,\n            \"cof\":null,\n            \"card_holder_name\":null\n         },\n         \"id\":\"pmd_ujxuBcf4cJ\",\n         \"customer_id\":null,\n         \"meta\":{},\n         \"device_fingerprint\":null,\n         \"client_ip\":null,\n         \"created_datetime\":\"2025-02-05T14:06:10.344Z\"\n      },\n      \"redirect_url\":null,\n      \"reference\":\"ex61m23ja3feykheoidho8ilrri\",\n      \"status\":\"succeeded\",\n      \"processor_response\":{\n         \"type\":\"approved\",\n         \"code\":\"00\"\n      },\n      \"created_datetime\":\"2025-02-13T14:24:43.133Z\"\n   }\n}\n```\n\nExample:\n```curl\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge updated\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"amount\": 1500.25,\n        \"currency\": \"NGN\",\n        \"customer\": \"cus_EFE4TQhBSf\",\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"requires_pin\"\n        },\n        \"payment_method_details\": {\n            \"type\": \"card\",\n            \"card\": {\n                \"expiry_month\": 8,\n                \"expiry_year\": 2024,\n                \"first6\": \"123412\",\n                \"last4\": \"4444\",\n                \"network\": \"mastercard\"\n            },\n            \"id\": \"pmd_NkWibrRJIy\",\n            \"customer\": \"cus_EFE4TQhBSf\",\n            \"meta\": {}\n        },\n        \"redirect_url\": \"www.flutterwave.com\",\n        \"reference\": \"XYZ123\",\n        \"status\": \"succeeded\",\n        \"issuer_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        }\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 250,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.769Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":20,"totalLines":518,"estimatedTokens":3365}}37{"id":"doc-bank_account_transfers-669c589b","source":"documentation","title":"Bank Account Transfers","url":"https://developer.flutterwave.com/docs/bank-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"AUD\",\n    \"recipient\": {\n      \"bank\": {\n        \"routing_number\": \"062123\",\n        \"swift_code\": \"BANK123\",\n        \"name\": \"Commonwealth Bank of Australia\",\n        \"account_number\": \"123456789\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"61\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"AU\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"type\":\"bank\",\n   \"callback_url\":\"https://www.company.com/callback\",\n   \"narration\":\"Testing transfers\",\n   \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\",\n   \"payment_instruction\":{\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"source_currency\":\"EGP\",\n      \"destination_currency\":\"EGP\",\n      \"recipient\":{\n         \"bank\":{\n            \"code\":\"ADIB\",\n            \"account_number\":\"123456789\"\n         },\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"email\":\"[email protected]\",\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"9012345678\"\n         },\n         \"address\":{\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"city\":\"Cool City\",\n            \"state\":\"Super State\",\n            \"country\":\"EG\"\n         },\n         \"national_identification\":{\n            \"type\":\"NATIONAL_ID\",\n            \"identifier\":\"1234567890\",\n            \"expiration_date\":\"2029-11-15\"\n         }\n      },\n      \"sender\":{\n         \"name\":{\n            \"first\":\"Alexander\",\n            \"middle\":\"The\",\n            \"last\":\"Great\"\n         },\n         \"email\":\"[email protected]\",\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"8012345679\"\n         },\n         \"address\":{\n            \"line1\":\"3B, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"city\":\"Cool City\",\n            \"state\":\"Super State\",\n            \"country\":\"EG\"\n         },\n         \"date_of_birth\":\"1980-11-25\",\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-12-25\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"ETB\",\n    \"destination_currency\": \"ETB\",\n    \"recipient\": {\n      \"bank\": {\n        \"code\": \"7\",\n        \"account_number\": \"123456789\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"EUR\",\n    \"recipient\": {\n      \"bank\": {\n        \"name\": \"Continental Bank of Europe\",\n        \"swift_code\": \"DEUTDEFF\",\n        \"account_number\": \"9876543210\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"49\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"DE\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"GHS\",\n    \"destination_currency\": \"GHS\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"code\": \"25562284\",\n        \"branch\": \"001\",\n        \"account_number\": \"1234567890\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"type\":\"bank\",\n   \"callback_url\":\"https://www.company.com/callback\",\n   \"narration\":\"Testing transfers\",\n   \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\",\n   \"payment_instruction\":{\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"source_currency\":\"INR\",\n      \"destination_currency\":\"INR\",\n      \"recipient\":{\n         \"bank\":{\n            \"code\":\"SBIN\",\n            \"branch\":\"SBIN0015615\",\n            \"account_number\":\"123456789\"\n         },\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"email\":\"[email protected]\",\n         \"phone\":{\n            \"country_code\":\"91\",\n            \"number\":\"9012345678\"\n         },\n         \"address\":{\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"city\":\"Cool City\",\n            \"state\":\"Super State\",\n            \"country\":\"IN\"\n         }\n      },\n      \"sender\":{\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-11-25\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"MWK\",\n    \"destination_currency\": \"MWK\",\n    \"recipient\": {\n      \"bank\": {\n        \"code\": \"20474000\",\n        \"branch\": \"1812061ZP6\",\n        \"account_number\": \"123456789\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"NGN\",\n    \"recipient\": {\n      \"bank\": {\n        \"code\": \"044\",\n        \"account_number\": \"0690000031\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"USD\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"code\": \"125200057\",\n        \"routing_number\": \"021000021\",\n        \"swift_code\": \"BOFAUS3N\",\n        \"account_type\": \"checking\",\n        \"account_number\": \"1234567890\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"1\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"US\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"ZAR\",\n    \"destination_currency\": \"ZAR\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"code\": \"ABSA\",\n        \"account_number\": \"1234567890\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"27\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"ZA\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_HHB2Yrc3LUyooR\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"duyiebieuei8eieu89383jhdjhdy\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"USD\",\n      \"destination_currency\":\"AUD\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_v3jeBmSUxC\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"AUD\",\n         \"phone\":{\n            \"country_code\":\"61\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"AU\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"name\":\"Commonwealth Bank of Australia\",\n            \"routing_number\":\"CTBAAU\",\n            \"swift_code\":\"BANK123\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:04:36.072Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_mm2c4ax7p3YDNB\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"kjvdcoihudfoidfpofjiof9r\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"EGP\",\n      \"destination_currency\":\"EGP\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_pvu4uNFiT7\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"EGP\",\n         \"national_identification\":{\n            \"type\":\"NATIONAL_ID\",\n            \"identifier\":\"1234567890\",\n            \"expiration_date\":\"2029-11-15\"\n         },\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"EG\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"ADIB\"\n         }\n      },\n      \"sender\":{\n         \"id\":\"sdr_tGCFUvSdVu\",\n         \"name\":{\n            \"first\":\"Alexander\",\n            \"middle\":\"The\",\n            \"last\":\"Great\"\n         },\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-12-25\"\n         },\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"8012345679\"\n         },\n         \"date_of_birth\":\"1980-11-25\",\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"EG\",\n            \"line1\":\"3B, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:29:48.366Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_zksyU4F4kFGZi7\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"778989JHUTGHJGHJYUYIUY\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"ETB\",\n      \"destination_currency\":\"ETB\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_ExC7XZKoC1\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"ETB\",\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"7\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:37:41.658Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_03mgMQvkcD1J4Q\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"duuidiudodudududj77262\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"USD\",\n      \"destination_currency\":\"EUR\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_2fh9yl2PCl\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"EUR\",\n         \"phone\":{\n            \"country_code\":\"49\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"DE\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"9876543210\",\n            \"name\":\"Continental Bank of Europe\",\n            \"swift_code\":\"DEUTDEFF\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:42:32.080Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_psJZCQCkOcQl06\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"jguyfghgyt7675hjg\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"GHS\",\n      \"destination_currency\":\"GHS\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_ykW6hU75cU\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"GHS\",\n         \"bank\":{\n            \"account_number\":\"1234567890\",\n            \"code\":\"25562284\",\n            \"branch\":\"001\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:46:29.584Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_Gr4gqFAiDheMvc\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"FYFTHGHGHJGhgyt57\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"INR\",\n      \"destination_currency\":\"INR\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_hKd3HybtHa\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"INR\",\n         \"phone\":{\n            \"country_code\":\"91\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"IN\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"SBIN\",\n            \"branch\":\"SBIN0015615\"\n         }\n      },\n      \"sender\":{\n         \"id\":\"sdr_M37FKMARWj\",\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-11-25\"\n         }\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2025-06-02T16:53:09.632Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_t8w0OGSNOdV4P5\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"GGUGTUYUHIIUIOU7\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"MWK\",\n      \"destination_currency\":\"MWK\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_t68rd2GfZ7\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"MWK\",\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"20474000\",\n            \"branch\":\"1812061ZP6\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:59:32.628Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_iWUfJopFYdyBmB\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"c3104347-5ebf-41bd-957c-7666df028bbe\",\n        \"status\": \"NEW\",\n        \"narration\": \"Testing transfers\",\n        \"source_currency\": \"USD\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 1000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"callback_url\": \"https://www.company.com/callback\",\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_gsLlPvnOLy\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-10T13:49:06.374991375Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_NvhGENkNcnBI2t\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"ugujbuujyujgjb7889\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"USD\",\n      \"destination_currency\":\"USD\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_Yro1zlIF7I\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"USD\",\n         \"phone\":{\n            \"country_code\":\"1\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"US\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"1234567890\",\n            \"account_type\":\"checking\",\n            \"code\":\"125200057\",\n            \"routing_number\":\"021000021\",\n            \"swift_code\":\"BOFAUS3N\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T17:07:00.549Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_bf65ZmcvRt5tq3\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"jhgvjhgjjyyiy79hg\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"ZAR\",\n      \"destination_currency\":\"ZAR\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_mQnFh6aMOB\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"ZAR\",\n         \"phone\":{\n            \"country_code\":\"27\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"ZA\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"1234567890\",\n            \"code\":\"ABSA\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T17:10:26.917Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_rp0bjKyAWA52ViM8xlZ0\",\n  \"timestamp\": 1739877172874,\n  \"type\": \"transfer.disburse\",\n  \"data\": {\n    \"id\": \"trf_yMZATJ11yVPNkZ\",\n    \"type\": \"BANK\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": 50000,\n    \"reference\": \"5748745ug8ufdgjhveyebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"bank\": {\n      \"account_number\": \"0122333334\",\n      \"code\": \"044\",\n      \"branch\": null,\n      \"name\": null,\n      \"routing_number\": null,\n      \"swift_code\": null\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"504828363550713897092362940989\"\n    },\n    \"meta\": {}\n  }\n}\n```\n\nExample:\n```curl\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/trf_iWUfJopFYdyBmB' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer fetched\",\n    \"data\": {\n        \"id\": \"trf_iWUfJopFYdyBmB\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"c3104347-5ebf-41bd-957c-7666df028bbe\",\n        \"status\": \"NEW\",\n        \"narration\": \"Testing transfers\",\n        \"source_currency\": \"USD\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 1000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"fee\": {\n            \"currency\": \"NGN\",\n            \"value\": 10.0\n        },\n        \"callback_url\": \"https://www.company.com/callback\",\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_gsLlPvnOLy\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-10T13:49:06.374Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"failed\",\n   \"error\":{\n      \"type\":\"TRANSFER_NOT_FOUND\",\n      \"code\":\"301404\",\n      \"message\":\"Transfer not found\",\n      \"validation_errors\":[\n         \n      ]\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.771Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":24,"totalLines":1103,"estimatedTokens":7004}}38{"id":"doc-ussd-f14d9a82","source":"documentation","title":"USSD","url":"https://developer.flutterwave.com/docs/ussd","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Shirley\",\n      \"country\":\"US\",\n      \"line1\":\"175 E Parkview Dr\",\n      \"line2\":\"\",\n      \"postal_code\":\"11967\",\n      \"state\":\"New York\"\n   },\n   \"name\":{\n      \"first\":\"John\",\n      \"middle\":\"Agba\",\n      \"last\":\"Doe\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_IpH7CKCUtD\",\n        \"address\": {\n            \"city\": \"Shirley\",\n            \"country\": \"US\",\n            \"line1\": \"175 E Parkview Dr\",\n            \"postal_code\": \"11967\",\n            \"state\": \"New York\"\n        },\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"John\",\n            \"middle\": \"Agba\",\n            \"last\": \"Doe\"\n        },\n        \"phone\": {\n            \"country_code\": \"1\",\n            \"number\": \"6313958745\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-24T13:51:48.758121209Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/banks?country=NG' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"string\",\n  \"data\": [\n    {\n      \"id\": \"bnk_cYjd92Qk\",\n      \"code\": \"044\",\n      \"name\": \"Access Bank\"\n    }\n    ...\n  ]\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"type\": \"ussd\",\n  \"ussd\": {\n    \"account_bank\": \"044\"\n  }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"ussd\",\n        \"ussd\": {\n            \"account_bank\": \"050\"\n        },\n        \"id\": \"pmd_ZAIDy7RYiL\",\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-24T15:19:21.639115327Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n    \"currency\": \"NGN\",\n    \"customer_id\": \"cus_IpH7CKCUtD\",\n    \"payment_method_id\": \"pmd_ZAIDy7RYiL\",\n    \"redirect_url\": \"https://custom-redirect.com\",\n    \"amount\": 250,\n    \"meta\": {\n        \"order_id\": \"WOO_534643534_53453\",\n        \"product_desc\": \"Hand Bag\"\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_fDxiSR16UF\",\n        \"amount\": 250,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_IpH7CKCUtD\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {\n            \"order_id\": \"WOO_534643534_53453\",\n            \"product_desc\": \"Hand Bag\"\n        },\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please dial *1414# to complete this transaction\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"ussd\",\n            \"ussd\": {\n                \"account_bank\": \"044\"\n            },\n            \"id\": \"pmd_ZAIDy7RYiL\",\n            \"customer_id\": \"cus_IpH7CKCUtD\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-24T11:34:29.674Z\"\n        },\n        \"redirect_url\": \"https://custom-redirect.com\",\n        \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-01-24T11:56:53.935554048Z\"\n    }\n}\n```\n\nExample:\n```json\n\"next_action\": {\n      \"type\": \"payment_instruction\",\n      \"payment_instruction\": {\n         \"note\": \"Please dial *1414# to complete this transaction\"\n       }\n }\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_RBHC8wDvzKn1OrFCoZVU\",\n  \"timestamp\": 1737719972231,\n  \"type\": \"charge.completed\",\n  \"data\": {\n    \"id\": \"chg_fDxiSR16UF\",\n    \"amount\": 250,\n    \"currency\": \"NGN\",\n    \"customer\": {\n      \"id\": \"cus_IpH7CKCUtD\",\n      \"address\": null,\n      \"email\": \"[email protected]\",\n      \"name\": John Agba Doe,\n      \"phone\":+16313958745,\n      \"meta\": {},\n      \"created_datetime\": \"2024-11-30T11:27:03.179Z\"\n    },\n    \"description\": null,\n    \"meta\": {\n\t\"order_id\": \"WOO_534643534_53453\",\n       \"product_desc\": \"Hand Bag\"\n    },\n    \"payment_method\": {\n      \"type\": \"ussd\",\n      \"ussd\": {\n        \"account_bank\": \"044\"\n      },\n      \"id\": \"pmd_asxEDBpcgj\",\n      \"customer_id\": \"cus_IpH7CKCUtD\",\n      \"meta\": {},\n      \"device_fingerprint\": null,\n      \"client_ip\": null,\n      \"created_datetime\": \"2025-01-24T11:59:27.080Z\"\n    },\n    \"redirect_url\": null,\n    \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2025-01-24T11:59:27.088511152Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_fDxiSR16UF\",\n        \"amount\": 250,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_IpH7CKCUtD\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {\n            \"order_id\": \"WOO_534643534_53453\",\n            \"product_desc\": \"Hand Bag\"\n        },\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please dial *1414# to complete this transaction\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"ussd\",\n            \"ussd\": {\n                \"account_bank\": \"044\"\n            },\n            \"id\": \"pmd_ZAIDy7RYiL\",\n            \"customer_id\": \"cus_IpH7CKCUtD\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-24T11:34:29.674Z\"\n        },\n        \"redirect_url\": \"https://custom-redirect.com\",\n        \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-01-24T11:56:53.935Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.772Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":12,"totalLines":335,"estimatedTokens":2047}}39{"id":"doc-mobile_money-8620e54d","source":"documentation","title":"Mobile Money","url":"https://developer.flutterwave.com/docs/mobile-money","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Gotham\",\n      \"country\":\"US\",\n      \"line1\":\"221B Baker Street\",\n      \"line2\":\"\",\n      \"postal_code\":\"94105\",\n      \"state\":\"Colorado\"\n   },\n   \"name\":{\n      \"first\":\"King\",\n      \"middle\":\"Leo\",\n      \"last\":\"James\"\n   },\n   \"phone\":{\n      \"country_code\":\"233\",\n      \"number\":\"9012345678\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Customer created\",\n   \"data\":{\n      \"id\":\"cus_X0yJv3ZMpL\",\n      \"address\":{\n         \"city\":\"Gotham\",\n         \"country\":\"US\",\n         \"line1\":\"221B Baker Street\",\n         \"line2\":\"\",\n         \"postal_code\":\"94105\",\n         \"state\":\"Colorado\"\n      },\n      \"email\":\"[email protected]\",\n      \"name\":{\n         \"first\":\"King\",\n         \"middle\":\"Leo\",\n         \"last\":\"James\"\n      },\n      \"phone\":{\n         \"country_code\":\"233\",\n         \"number\":\"9012345678\"\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-01-29T12:44:53.049Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\": \"mobile_money\",\n   \"mobile_money\": {\n       \"country_code\": \"233\",\n       \"network\": \"MTN\",\n       \"phone_number\": \"9012345678\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"mobile_money\",\n        \"mobile_money\": {\n            \"network\": \"MTN\",\n            \"country_code\": \"233\",\n            \"phone_number\": \"9012345678\"\n        },\n        \"id\": \"pmd_kwU1jeHpBC\",\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-30T12:25:52.596970660Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"currency\": \"GHS\",\n   \"customer_id\": \"cus_X0yJv3ZMpL\",\n   \"payment_method_id\": \"pmd_kwU1jeHpBC\",\n   \"amount\": 200,\n   \"reference\": \"{{UNIQUE_CHARGE_REFERENCE}}\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_xdSlPfGXSp\",\n        \"amount\": 200,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"GHS\",\n        \"customer_id\": \"cus_X0yJv3ZMpL\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please authorise this payment on your mobile number: 2339012345678. It may take a few minutes to confirm this payment.\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"mobile_money\",\n            \"mobile_money\": {\n                \"network\": \"MTN\",\n                \"country_code\": \"233\",\n                \"phone_number\": \"9012345678\"\n            },\n            \"id\": \"pmd_kwU1jeHpBC\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-30T12:25:52.596Z\"\n        },\n        \"reference\": \"69a26371-53d1-4b34-8dfa-ae7a33092b9b\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-01-30T12:32:40.207870937Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\": \"failed\",\n   \"error\": {\n       \"type\": \"REQUEST_NOT_VALID\",\n       \"code\": \"10400\",\n       \"message\": \"Currency not supported for GH Mobile Money.\",\n       \"validation_errors\": []\n   }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_ZlH8y4R45J6IeqHmmIbD\",\n   \"timestamp\":1738250214856,\n   \"type\":\"charge.completed\",\n   \"data\":{\n      \"id\":\"chg_xdSlPfGXSp\",\n      \"amount\":200,\n      \"currency\":\"GHS\",\n      \"customer\":{\n         \"id\":\"cus_X0yJv3ZMpL\",\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         },\n         \"email\":\"[email protected]\",\n         \"name\":{\n            \"first\":\"King\",\n            \"middle\":\"Leo\",\n            \"last\":\"James\"\n         },\n         \"phone\":{\n            \"country_code\":\"233\",\n            \"number\":\"9012345678\"\n         },\n         \"meta\":{},\n         \"created_datetime\":\"2025-01-29T12:44:53.049Z\"\n      },\n      \"description\":null,\n      \"meta\":{},\n      \"payment_method\":{\n         \"type\":\"mobile_money\",\n         \"mobile_money\":{\n            \"network\":\"MTN\",\n            \"country_code\":\"233\",\n            \"phone_number\":\"9012345678\"\n         },\n         \"id\":\"pmd_kwU1jeHpBC\",\n         \"customer_id\":null,\n         \"meta\":{},\n         \"device_fingerprint\":null,\n         \"client_ip\":null,\n         \"created_datetime\":\"2025-01-30T12:25:52.596Z\"\n      },\n      \"redirect_url\":null,\n      \"reference\":\"69a26371-53d1-4b34-8dfa-ae7a33092b9b\",\n      \"status\":\"succeeded\",\n      \"processor_response\":{\n         \"type\":\"approved\",\n         \"code\":\"00\"\n      },\n      \"created_datetime\":\"2025-01-30T12:32:40.207Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/{{ID}}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_xdSlPfGXSp\",\n        \"amount\": 200,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"GHS\",\n        \"customer_id\": \"cus_X0yJv3ZMpL\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {},\n        \"payment_method_details\": {\n            \"type\": \"mobile_money\",\n            \"mobile_money\": {\n                \"network\": \"MTN\",\n                \"country_code\": \"233\",\n                \"phone_number\": \"9012345678\"\n            },\n            \"id\": \"pmd_kwU1jeHpBC\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-30T12:25:52.596Z\"\n        },\n        \"reference\": \"69a26371-53d1-4b34-8dfa-ae7a33092b9b\",\n        \"status\": \"succeeded\",\n        \"processor_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        },\n        \"created_datetime\": \"2025-01-30T12:32:40.207870937Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Content-Type: application/json' \\\n--header 'Accept: application/json' \\\n--header 'Authorization: Bearer{{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'X-Scenario-Key: scenario:auth_redirect' \\\n--data '{\n  \"reference\": \"13c7cffa-0ec0-4da2-a224-e166a71d7a61\",\n  \"currency\": \"GHS\",\n  \"customer_id\": \"cus_FLCIsFZR3C\",\n  \"payment_method_id\": \"pmd_2B0BYBxn1G\",\n  \"amount\": 100\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_UlED8fc18O\",\n        \"amount\": 100,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"GHS\",\n        \"customer_id\": \"cus_FLCIsFZR3C\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?mobile_money&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6Ijc3YTZkOWViLTA2ODItNGZlZS05ODlmLWYxZTk1YzcwNGNhMiIsImNoYXJnZUlkIjoiY2hnX1VsRUQ4ZmMxOE8iLCJzdWIiOiI3N2E2ZDllYi0wNjgyLTRmZWUtOTg5Zi1mMWU5NWM3MDRjYTIiLCJpYXQiOjE3NDA0ODkwNjUsImV4cCI6MTc0MDQ4OTM2NX0.rMALQTjyAKQpIPsdqlldy3sCDsVLssymFssrtIBBjZI\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"mobile_money\",\n            \"mobile_money\": {\n                \"network\": \"MTN\",\n                \"country_code\": \"233\",\n                \"phone_number\": \"9012345678\"\n            },\n            \"id\": \"pmd_2B0BYBxn1G\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-02-25T12:45:44.718Z\"\n        },\n        \"reference\": \"6ca03b4e-9f34-4529-a741-a25352370a42\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-02-25T13:11:05.095614706Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.772Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":12,"totalLines":391,"estimatedTokens":2538}}40{"id":"doc-transfer_orchestrator-15e221da","source":"documentation","title":"Transfer Orchestrator","url":"https://developer.flutterwave.com/docs/direct-transfer-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"574874568ufdgjhvbjhcdbchb\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer created\",\n  \"data\": {\n    \"id\": \"trf_pGoKPGH7rEgY4v\",\n    \"type\": \"bank\",\n    \"reference\": \"574874568ufdgjhvbjhcdbchb\",\n    \"status\": \"NEW\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-05T12:36:20.069512926Z\"\n  }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"deferred\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"57487456fff8ufdgjihvbjhcdbchb\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_Pd6KueVSrrUiBF\",\n      \"type\":\"bank\",\n      \"action\":\"deferred\",\n      \"reference\":\"57487456fff8ufdgjihvbjhcdbchb\",\n      \"status\":\"NEW\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":{\n         \"value\":50000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_1IkjUDnrt1\",\n         \"name\":{\n            \"first\":\"Ajadi\",\n            \"last\":\"Jackson\"\n         },\n         \"currency\":\"NGN\",\n         \"bank\":{\n            \"account_number\":\"0122333334\",\n            \"code\":\"044\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T10:32:22.457Z\"\n   }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"scheduled\",\n  \"disburse_option\": {\n    \"date_time\": \"2025-10-25 13:52:30\",\n    \"timezone\": \"UTC\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"57487456fffi8ufdgjhvbjhcdbchbfff\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_PfQSOvcuyET5Di\",\n      \"type\":\"bank\",\n      \"action\":\"scheduled\",\n      \"reference\":\"57487456fffi8ufdgjhvbjhcdbchbfff\",\n      \"status\":\"NEW\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":{\n         \"value\":50000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"disburse_option\":{\n         \"date_time\":\"2025-10-25 13:52:30\",\n         \"timezone\":\"UTC\"\n      },\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_1IkjUDnrt1\",\n         \"name\":{\n            \"first\":\"Ajadi\",\n            \"last\":\"Jackson\"\n         },\n         \"currency\":\"NGN\",\n         \"bank\":{\n            \"account_number\":\"0122333334\",\n            \"code\":\"044\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T10:51:02.222Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_rp0bjKyAWA52ViM8xlZ0\",\n  \"timestamp\": 1739877172874,\n  \"type\": \"transfer.disburse\",\n  \"data\": {\n    \"id\": \"trf_yMZATJ11yVPNkZ\",\n    \"type\": \"BANK\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": 50000,\n    \"reference\": \"5748745ug8ufdgjhveyebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"bank\": {\n      \"account_number\": \"0122333334\",\n      \"code\": \"044\",\n      \"branch\": null,\n      \"name\": null,\n      \"routing_number\": null,\n      \"swift_code\": null\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"504828363550713897092362940989\"\n    },\n    \"meta\": {}\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/{REPLACE_WITH_TRANSFER_ID}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer fetched\",\n  \"data\": {\n    \"id\": \"trf_ighwLOK9pHxoo9\",\n    \"type\": \"bank\",\n    \"action\": \"instant\",\n    \"reference\": \"5748745ug8ufdgjhveyyeebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"754119292904667985302775753026\"\n    },\n    \"callback_url\": \"https://webhook.site/352c4518-7797-4044-becc-669fc5b1e928\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"id\": \"rcb_TDk7vKxUkj\",\n      \"name\": {\n        \"first\": \"Ajadi\",\n        \"last\": \"Jackson\"\n      },\n      \"currency\": \"NGN\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2025-02-18T11:20:37.282Z\"\n  }\n}\n```\n\nExample:\n```json\n\"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"source_currency\",\n      \"value\": 1000\n},\n```\n\nExample:\n```json\n\"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 1000\n},\n```\n\nExample:\n```json\n\"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"USD\",\n      \"amount\": {\n        \"applies_to\": \"destination_currency\",\n        \"value\": 1000\n},\n```\n\nExample:\n```shell\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"TRANSFER_AMOUNT_LIMIT\",\n        \"code\": \"228400\",\n        \"message\": \"Amount must be at least 100NGN.\",\n        \"validation_errors\": []\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\"\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.773Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":14,"totalLines":373,"estimatedTokens":2120}}41{"id":"doc-mobile_money_transfers-092a48df","source":"documentation","title":"Mobile Money Transfers","url":"https://developer.flutterwave.com/docs/mobile-money-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MTN\",\n            \"msisdn\":\"2339012345678\"\n         }\n      },\n      \"destination_currency\":\"GHS\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"GHS MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00107099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"Mpesa\",\n            \"msisdn\":\"2549012345678\"\n         }\n      },\n      \"destination_currency\":\"KES\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"KES MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001GVSDVDSU2Y\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John \",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"msisdn\":\"2559012345678\",\n            \"network\":\"airtel\"\n         }\n      },\n      \"destination_currency\":\"TZS\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"TZS MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001JEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"orangemoney\",\n            \"country\":\"CM\",\n            \"msisdn\":\"23709929220\"\n         }\n      },\n      \"destination_currency\":\"XAF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"XAF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00100IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"wave\",\n            \"country\":\"CI\",\n            \"msisdn\":\"22509929220\"\n         }\n      },\n      \"destination_currency\":\"XOF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-0010099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"EMONEY\",\n            \"country\":\"SN\",\n            \"msisdn\":\"22109929220\"\n         }\n      },\n      \"destination_currency\":\"XOF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00108099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2509012345678\"\n         }\n      },\n      \"destination_currency\":\"RWF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"RWF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00147099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"AIRTELMW\",\n            \"msisdn\":\"2659012345678\"\n         }\n      },\n      \"destination_currency\":\"MWK\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"MWK MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001JYDWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"ETBAMOLE\",\n            \"msisdn\":\"2519012345678\"\n         }\n      },\n      \"destination_currency\":\"ETB\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"ETB MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001JYDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2569012345678\"\n         }\n      },\n      \"destination_currency\":\"UGX\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"UGX MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001OEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2609012345678\"\n         }\n      },\n      \"destination_currency\":\"ZMW\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"ZMW MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001O9EDeWDSUYB\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_5JnyBhdTdj42zA\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00107099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"GHS MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"GHS\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_R8XvW9gXRP\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"GHS\",\n         \"mobile_money\":{\n            \"network\":\"MTN\",\n            \"msisdn\":\"2339012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:10:38.039Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_MNk7e9ups3VgZh\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001GVSDVDSU2Y\",\n      \"status\":\"NEW\",\n      \"narration\":\"KES MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"KES\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_VgJamvD4fE\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"KES\",\n         \"mobile_money\":{\n            \"network\":\"Mpesa\",\n            \"msisdn\":\"2549012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:21:47.932Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_O13h3LmPak5LBk\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001JEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"TZS MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"TZS\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_MQzTgQgkQe\",\n         \"name\":{\n            \"first\":\"John \",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"TZS\",\n         \"mobile_money\":{\n            \"network\":\"airtel\",\n            \"msisdn\":\"2559012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:31:11.232Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_fTdRGZIG7OGe20\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00100IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"XAF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"XAF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_8z3I4ICHIL\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"XAF\",\n         \"mobile_money\":{\n            \"network\":\"orangemoney\",\n            \"country\":\"CM\",\n            \"msisdn\":\"23709929220\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:35:12.797Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_EJ2vQnQvFzeBFK\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-0010099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"XOF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_c1ZhDIPcm7\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"XOF\",\n         \"mobile_money\":{\n            \"network\":\"wave\",\n            \"country\":\"CI\",\n            \"msisdn\":\"22509929220\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:39:23.780Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_p5kyu7ZCrgQpgI\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00108099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"XOF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_ckorR5bbk0\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"XOF\",\n         \"mobile_money\":{\n            \"network\":\"EMONEY\",\n            \"country\":\"SN\",\n            \"msisdn\":\"22109929220\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:43:40.755Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_pZwUKMs9usU5QD\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00147099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"RWF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"RWF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"RWF\",\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2509012345678\"\n         },\n         \"id\":\"rcm_q1boxqkoC3\"\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-13T05:13:14.569373217Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_ESaFaZjxqnNmm2\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001JYDWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"MWK MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"MWK\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_YfQrGYgC5B\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"MWK\",\n         \"mobile_money\":{\n            \"network\":\"AIRTELMW\",\n            \"msisdn\":\"2659012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:49:04.563Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_ktnCglatt92k8n\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001JYDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"ETB MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"ETB\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_uodrObhEa5\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"ETB\",\n         \"mobile_money\":{\n            \"network\":\"ETBAMOLE\",\n            \"msisdn\":\"2519012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:51:36.235Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_V5zoB57shPwgac\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001OEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"UGX MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"UGX\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_yJBzZTFEnj\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"UGX\",\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2569012345678\"\n         }\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-12T12:59:15.403332030Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_ejDNIQngjLzUTx\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001O9EDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"ZMW MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"ZMW\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_1aaTfsip3I\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"ZMW\",\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2609012345678\"\n         }\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-12T13:02:53.774008555Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_emXAIzd4Dd7495SG3NOX\",\n   \"timestamp\":1749071772784,\n   \"type\":\"transfer.disburse\",\n   \"data\":{\n      \"id\":\"trf_Fj62qmZOhSneRu\",\n      \"type\":\"MOBILE_MONEY\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"KES\",\n      \"amount\":1000,\n      \"reference\":\"REF-001GVSDVDSU2Yhgu\",\n      \"status\":\"SUCCESSFUL\",\n      \"mobile_money\":{\n         \"network\":\"Mpesa\",\n         \"country\":null,\n         \"msisdn\":\"2549012345678\"\n      },\n      \"fee\":{\n         \"currency\":\"KES\",\n         \"value\":10\n      },\n      \"debit_information\":{\n         \"currency\":\"KES\",\n         \"actual_debit_amount\":1000,\n         \"rate_used\":0.00123,\n         \"vat\":75\n      },\n      \"payment_information\":{\n         \"proof\":\"815423162782592573350591343763\"\n      },\n      \"meta\":{}\n   }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer fetched\",\n    \"data\": {\n        \"id\": \"trf_Hu3QERCeuWk8\",\n        \"type\": \"mobile_money\",\n        \"reference\": \"4dc065cc-08a3-4158-9f9b-e4e2f79120e7\",\n        \"status\": \"NEW\",\n        \"narration\": \"Testing transfers\",\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"RWF\",\n        \"amount\": {\n            \"value\": 1000,\n            \"applies_to\": \"source_currency\"\n        },\n        \"callback_url\": \"https://www.flutterwave.com\",\n        \"recipient\": {\n            \"type\": \"mobile_money\",\n            \"name\": {\n                \"first\": \"Jane\",\n                \"middle\": \"The\",\n                \"last\": \"Janet\"\n            },\n            \"mobile_money\": {\n                \"network\": \"MPS\",\n                \"msisdn\": \"9012345678\"\n            }\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-11-21T08:52:37.845Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"failed\",\n   \"error\":{\n      \"type\":\"TRANSFER_NOT_FOUND\",\n      \"code\":\"301404\",\n      \"message\":\"Transfer not found\",\n      \"validation_errors\":[\n         \n      ]\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.774Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":26,"totalLines":894,"estimatedTokens":5392}}42{"id":"doc-general_transfer_flow-62ee8b90","source":"documentation","title":"General Transfer Flow","url":"https://developer.flutterwave.com/docs/general-transfer-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/recipients' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"type\": \"bank_ngn\",\n  \"bank\": {\n    \"account_number\": \"0690000031\",\n    \"code\": \"044\"\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://api.flutterwave.cloud/developersandbox/transfers/recipients' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\":\"bank_egp\",\n   \"bank\":{\n      \"code\":\"ADIB\",\n      \"account_number\":\"123456789\"\n   },\n   \"name\":{\n      \"first\":\"Steve\",\n      \"last\":\"Mark\",\n      \"middle\":\"Jade\"\n   },\n   \"national_identification\":{\n      \"type\":\"PASSPORT\",\n      \"identifier\":\"FLY998754\",\n      \"expiration_date\":\"2029-06-01\"\n   },\n   \"phone\":{\n      \"country_code\":\"20\",\n      \"number\":\"9012345678\"\n   },\n   \"address\":{\n      \"line1\":\"7A, Awesome Apartments\",\n      \"line2\":\"Sweet Street\",\n      \"postal_code\":\"123456\",\n      \"state\":\"Super State\",\n      \"city\":\"Cool City\",\n      \"country\":\"EG\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Recipient created\",\n  \"data\": {\n    \"type\": \"bank\",\n    \"id\": \"rcb_B9aAgsdzzl\",\n    \"name\": {\n      \"first\": \"Ajadi\",\n      \"last\": \"Jackson\"\n    },\n    \"currency\": \"NGN\",\n    \"bank\": {\n      \"account_number\": \"0690001032\",\n      \"code\": \"044\"\n    }\n  }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Recipient created\",\n   \"data\":{\n      \"type\":\"bank\",\n      \"id\":\"rcb_gFoQprtdrL\",\n      \"name\":{\n         \"first\":\"Steve\",\n         \"middle\":\"Jade\",\n         \"last\":\"Mark\"\n      },\n      \"currency\":\"EGP\",\n      \"national_identification\":{\n         \"type\":\"PASSPORT\",\n         \"identifier\":\"FLY998754\",\n         \"expiration_date\":\"2029-06-01\"\n      },\n      \"phone\":{\n         \"country_code\":\"20\",\n         \"number\":\"9012345678\"\n      },\n      \"email\":\"[email protected]\",\n      \"address\":{\n         \"city\":\"Cool City\",\n         \"country\":\"EG\",\n         \"line1\":\"7A, Awesome Apartments\",\n         \"line2\":\"Sweet Street\",\n         \"postal_code\":\"123456\",\n         \"state\":\"Super State\"\n      },\n      \"bank\":{\n         \"account_number\":\"123456789\",\n         \"code\":\"ADIB\"\n      }\n   }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/senders' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"type\": \"bank_egp\",\n  \"name\": {\n    \"first\": \"Jake\",\n    \"middle\": \"Leo\",\n    \"last\": \"Smith\"\n  },\n  \"national_identification\": {\n    \"type\": \"NATIONAL_ID\",\n    \"identifier\": \"B01123075\",\n    \"expiration_date\": \"2027-08-23\"\n  },\n  \"phone\": {\n    \"country_code\": \"234\",\n    \"number\": \"8067554433\"\n  },\n  \"address\": {\n    \"country\": \"NG\",\n    \"city\": \"Lagos\",\n    \"state\": \"Lagos\",\n    \"line1\": \"Crystal estate\",\n    \"postal_code\": \"100223 \",\n    \"line2\": \"H2\"\n  },\n  \"date_of_birth\": \"1994-04-09\",\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Sender created\",\n  \"data\": {\n    \"id\": \"sdr_Cv7RMxkjNu\",\n    \"name\": {\n      \"first\": \"Jake\",\n      \"middle\": \"Leo\",\n      \"last\": \"Smith\"\n    },\n    \"national_identification\": {\n      \"type\": \"NATIONAL_ID\",\n      \"identifier\": \"B01123075\",\n      \"expiration_date\": \"2027-08-23\"\n    },\n    \"phone\": {\n      \"country_code\": \"234\",\n      \"number\": \"8067554433\"\n    },\n    \"date_of_birth\": \"1994-04-09\",\n    \"email\": \"[email protected]\",\n    \"address\": {\n      \"city\": \"Lagos\",\n      \"country\": \"NG\",\n      \"line1\": \"Crystal estate\",\n      \"line2\": \"H2\",\n      \"postal_code\": \"100223 \",\n      \"state\": \"Lagos\"\n    }\n  }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"reference\":\"95e25053-8ee4-42770-a29-af4004dyf9462d\",\n   \"narration\":\"Test transfer\",\n   \"meta\":{\n      \"username\":\"Madyson.Jones43\",\n      \"email\":\"[email protected]\"\n   },\n   \"payment_instruction\":{\n      \"source_currency\":\"EGP\",\n      \"amount\":{\n         \"applies_to\":\"source_currency\",\n         \"value\":100\n      },\n      \"recipient_id\":\"rcb_gFoQprtdrL\",\n      \"sender_id\":\"sdr_Cv7RMxkjNu\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_mDiIM2FzB3ATisAQQAUyE\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"95e25053-8ee4-42770-a29-af4004dyf9462d\",\n        \"status\": \"NEW\",\n        \"narration\": \"Test transfer\",\n        \"source_currency\": \"EGP\",\n        \"destination_currency\": \"EGP\",\n        \"amount\": {\n            \"value\": 100,\n            \"applies_to\": \"source_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"id\": \"rcb_gFoQprtdrL\",\n            \"name\": {\n                \"first\": \"Steve\",\n                \"middle\": \"Jade\",\n                \"last\": \"Mark\"\n            },\n            \"currency\": \"EGP\",\n            \"national_identification\": {\n                \"type\": \"PASSPORT\",\n                \"identifier\": \"FLY998754\",\n                \"expiration_date\": \"2029-06-01\"\n            },\n            \"phone\": {\n                \"country_code\": \"20\",\n                \"number\": \"9012345678\"\n            },\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Cool City\",\n                \"country\": \"EG\",\n                \"line1\": \"7A, Awesome Apartments\",\n                \"line2\": \"Sweet Street\",\n                \"postal_code\": \"123456\",\n                \"state\": \"Super State\"\n            },\n            \"bank\": {\n                \"account_number\": \"123456789\",\n                \"code\": \"ADIB\"\n            }\n        },\n        \"sender\": {\n            \"id\": \"sdr_Cv7RMxkjNu\",\n            \"name\": {\n                \"first\": \"Jake\",\n                \"middle\": \"Leo\",\n                \"last\": \"Smith\"\n            },\n            \"national_identification\": {\n                \"type\": \"NATIONAL_ID\",\n                \"identifier\": \"B01123075\",\n                \"expiration_date\": \"2027-08-23\"\n            },\n            \"phone\": {\n                \"country_code\": \"234\",\n                \"number\": \"8067554433\"\n            },\n            \"date_of_birth\": \"1994-04-09\",\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Lagos\",\n                \"country\": \"NG\",\n                \"line1\": \"Crystal estate\",\n                \"line2\": \"H2\",\n                \"postal_code\": \"100223 \",\n                \"state\": \"Lagos\"\n            }\n        },\n        \"meta\": {\n            \"username\": \"Madyson.Jones43\",\n            \"email\": \"[email protected]\"\n        },\n        \"created_datetime\": \"2025-06-25T08:46:52.790Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"deferred\",\n   \"reference\":\"95e25053-8ee4-42670-a29-af4004dyf9462d\",\n   \"narration\":\"Test transfer\",\n   \"meta\":{\n      \"username\":\"Madyson.Jones43\",\n      \"email\":\"[email protected]\"\n   },\n   \"payment_instruction\":{\n      \"source_currency\":\"EGP\",\n      \"amount\":{\n         \"applies_to\":\"source_currency\",\n         \"value\":100\n      },\n      \"recipient_id\":\"rcb_gFoQprtdrL\",\n      \"sender_id\":\"sdr_Cv7RMxkjNu\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_6Di84IgPPEtg6MGMDCpWr\",\n        \"type\": \"bank\",\n        \"action\": \"deferred\",\n        \"reference\": \"95e25053-8ee4-42670-a29-af4004dyf9462d\",\n        \"status\": \"NEW\",\n        \"narration\": \"Test transfer\",\n        \"source_currency\": \"EGP\",\n        \"destination_currency\": \"EGP\",\n        \"amount\": {\n            \"value\": 100,\n            \"applies_to\": \"source_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"id\": \"rcb_gFoQprtdrL\",\n            \"name\": {\n                \"first\": \"Steve\",\n                \"middle\": \"Jade\",\n                \"last\": \"Mark\"\n            },\n            \"currency\": \"EGP\",\n            \"national_identification\": {\n                \"type\": \"PASSPORT\",\n                \"identifier\": \"FLY998754\",\n                \"expiration_date\": \"2029-06-01\"\n            },\n            \"phone\": {\n                \"country_code\": \"20\",\n                \"number\": \"9012345678\"\n            },\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Cool City\",\n                \"country\": \"EG\",\n                \"line1\": \"7A, Awesome Apartments\",\n                \"line2\": \"Sweet Street\",\n                \"postal_code\": \"123456\",\n                \"state\": \"Super State\"\n            },\n            \"bank\": {\n                \"account_number\": \"123456789\",\n                \"code\": \"ADIB\"\n            }\n        },\n        \"sender\": {\n            \"id\": \"sdr_Cv7RMxkjNu\",\n            \"name\": {\n                \"first\": \"Jake\",\n                \"middle\": \"Leo\",\n                \"last\": \"Smith\"\n            },\n            \"national_identification\": {\n                \"type\": \"NATIONAL_ID\",\n                \"identifier\": \"B01123075\",\n                \"expiration_date\": \"2027-08-23\"\n            },\n            \"phone\": {\n                \"country_code\": \"234\",\n                \"number\": \"8067554433\"\n            },\n            \"date_of_birth\": \"1994-04-09\",\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Lagos\",\n                \"country\": \"NG\",\n                \"line1\": \"Crystal estate\",\n                \"line2\": \"H2\",\n                \"postal_code\": \"100223 \",\n                \"state\": \"Lagos\"\n            }\n        },\n        \"meta\": {\n            \"username\": \"Madyson.Jones43\",\n            \"email\": \"[email protected]\"\n        },\n        \"created_datetime\": \"2025-06-25T10:21:45.104Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"scheduled\",\n   \"disburse_option\":{\n      \"date_time\":\"2025-10-25 13:52:30\",\n      \"timezone\":\"UTC\"\n   },\n   \"reference\":\"95e25053-8ee4-42070-a29-af4004dyf9462d\",\n   \"narration\":\"Test transfer\",\n   \"meta\":{\n      \"username\":\"Madyson.Jones43\",\n      \"email\":\"[email protected]\"\n   },\n   \"payment_instruction\":{\n      \"source_currency\":\"EGP\",\n      \"amount\":{\n         \"applies_to\":\"source_currency\",\n         \"value\":100\n      },\n      \"recipient_id\":\"rcb_gFoQprtdrL\",\n      \"sender_id\":\"sdr_Cv7RMxkjNu\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_vQSphUlHqnZywSnEoaOra\",\n        \"type\": \"bank\",\n        \"action\": \"scheduled\",\n        \"reference\": \"95e25053-8ee4-42070-a29-af4004dyf9462d\",\n        \"status\": \"NEW\",\n        \"narration\": \"Test transfer\",\n        \"source_currency\": \"EGP\",\n        \"destination_currency\": \"EGP\",\n        \"amount\": {\n            \"value\": 100,\n            \"applies_to\": \"source_currency\"\n        },\n        \"disburse_option\": {\n            \"date_time\": \"2025-10-25 13:52:30\",\n            \"timezone\": \"UTC\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"id\": \"rcb_gFoQprtdrL\",\n            \"name\": {\n                \"first\": \"Steve\",\n                \"middle\": \"Jade\",\n                \"last\": \"Mark\"\n            },\n            \"currency\": \"EGP\",\n            \"national_identification\": {\n                \"type\": \"PASSPORT\",\n                \"identifier\": \"FLY998754\",\n                \"expiration_date\": \"2029-06-01\"\n            },\n            \"phone\": {\n                \"country_code\": \"20\",\n                \"number\": \"9012345678\"\n            },\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Cool City\",\n                \"country\": \"EG\",\n                \"line1\": \"7A, Awesome Apartments\",\n                \"line2\": \"Sweet Street\",\n                \"postal_code\": \"123456\",\n                \"state\": \"Super State\"\n            },\n            \"bank\": {\n                \"account_number\": \"123456789\",\n                \"code\": \"ADIB\"\n            }\n        },\n        \"sender\": {\n            \"id\": \"sdr_Cv7RMxkjNu\",\n            \"name\": {\n                \"first\": \"Jake\",\n                \"middle\": \"Leo\",\n                \"last\": \"Smith\"\n            },\n            \"national_identification\": {\n                \"type\": \"NATIONAL_ID\",\n                \"identifier\": \"B01123075\",\n                \"expiration_date\": \"2027-08-23\"\n            },\n            \"phone\": {\n                \"country_code\": \"234\",\n                \"number\": \"8067554433\"\n            },\n            \"date_of_birth\": \"1994-04-09\",\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Lagos\",\n                \"country\": \"NG\",\n                \"line1\": \"Crystal estate\",\n                \"line2\": \"H2\",\n                \"postal_code\": \"100223 \",\n                \"state\": \"Lagos\"\n            }\n        },\n        \"meta\": {\n            \"username\": \"Madyson.Jones43\",\n            \"email\": \"[email protected]\"\n        },\n        \"created_datetime\": \"2025-06-25T10:25:16.811Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_rp0bjKyAWA52ViM8xlZ0\",\n  \"timestamp\": 1739877172874,\n  \"type\": \"transfer.disburse\",\n  \"data\": {\n    \"id\": \"trf_yMZATJ11yVPNkZ\",\n    \"type\": \"BANK\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": 50000,\n    \"reference\": \"5748745ug8ufdgjhveyebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"bank\": {\n      \"account_number\": \"0122333334\",\n      \"code\": \"044\",\n      \"branch\": null,\n      \"name\": null,\n      \"routing_number\": null,\n      \"swift_code\": null\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"504828363550713897092362940989\"\n    },\n    \"meta\": {}\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/{REPLACE_WITH_TRANSFER_ID}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer fetched\",\n  \"data\": {\n    \"id\": \"trf_ighwLOK9pHxoo9\",\n    \"type\": \"bank\",\n    \"action\": \"instant\",\n    \"reference\": \"5748745ug8ufdgjhveyyeebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"754119292904667985302775753026\"\n    },\n    \"callback_url\": \"https://webhook.site/352c4518-7797-4044-becc-669fc5b1e928\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"id\": \"rcb_TDk7vKxUkj\",\n      \"name\": {\n        \"first\": \"Ajadi\",\n        \"last\": \"Jackson\"\n      },\n      \"currency\": \"NGN\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2025-02-18T11:20:37.282Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer created\",\n  \"data\": {\n    \"id\": \"trf_pGoKPGH7rEgY4v\",\n    \"type\": \"bank\",\n    \"reference\": \"574874568ufdgjhvbjhcdbchb\",\n    \"status\": \"NEW\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-05T12:36:20.069512926Z\"\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.775Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":17,"totalLines":702,"estimatedTokens":4490}}43{"id":"doc-pay_with_bank_transfer-b42fb8eb","source":"documentation","title":"Pay With Bank Transfer","url":"https://developer.flutterwave.com/docs/pay-with-bank-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Content-Type: application/json' \\\n--header 'Accept: application/json' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--data-raw '{\n  \"name\": {\n    \"first\": \"Cornelius\",\n    \"last\": \"Ashley-Osuzoka\"\n  },\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_WWVaC0InrN\",\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"Cornelius\",\n            \"last\": \"Ashley-Osuzoka\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-06-02T07:40:48.637002170Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"1ca9e18f-f038-436f-b32b-3b7facdb1e13\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"amount\": 0,\n    \"currency\": \"NGN\",\n    \"bank_code\":\"090567\",\n    \"account_type\": \"static\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\",\n    \"bvn\": \"12345678901\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Virtual account created\",\n    \"data\": {\n        \"id\": \"van_7qJ9WlDt4j\",\n        \"amount\": 0,\n        \"account_number\": \"9288669694\",\n        \"reference\": \"982e211d-61dd-4f24-a0bb-fbc62315fcb6\",\n        \"account_bank_name\": \"Flutterwave MFB\",\n        \"account_type\": \"static\",\n        \"status\": \"active\",\n        \"account_expiration_datetime\": \"3025-10-19T12:37:44.744Z\",\n        \"note\": \"Please make a bank transfer to Tester FLW\",\n        \"customer_id\": \"cus_F6FiToCuXa\",\n        \"created_datetime\": \"2026-06-18T12:37:44.755Z\",\n        \"meta\": {},\n        \"currency\": \"NGN\",\n        \"narration\": \"Tester\"\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"REQUEST_NOT_VALID\",\n        \"code\": \"10400\",\n        \"message\": \"Request is not valid\",\n        \"validation_errors\": [\n            {\n                \"field_name\": \"bvn\",\n                \"message\": \"bvn must be exactly 11 characters long and a signed integer\"\n            }\n        ]\n    }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"a4d5f6b8-a785-4d41-8932-50fd8288aec8\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"expiry\": 60,\n    \"amount\": 1500,\n    \"bank_code\":\"090567\",\n    \"currency\": \"NGN\",\n    \"account_type\": \"dynamic\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Virtual account created\",\n    \"data\": {\n        \"id\": \"van_IZel8kyHKq\",\n        \"amount\": 1530.00,\n        \"account_number\": \"9059273981\",\n        \"reference\": \"f43289e0-4491-43a4-b7e4-e2006ed5f258\",\n        \"account_bank_name\": \"Flutterwave MFB\",\n        \"account_type\": \"dynamic\",\n        \"status\": \"active\",\n        \"account_expiration_datetime\": \"2026-06-18T13:05:28.000Z\",\n        \"note\": \"Please make a bank transfer to Tester FLW\",\n        \"customer_id\": \"cus_F6FiToCuXa\",\n        \"created_datetime\": \"2026-06-18T13:04:29.863Z\",\n        \"meta\": {},\n        \"currency\": \"NGN\",\n        \"narration\": \"Tester\"\n    }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_xCBGoxP44NzL74hcCJiV\",\n  \"timestamp\": 1748850422635,\n  \"type\": \"charge.completed\",\n  \"data\": {\n    \"id\": \"chg_zH0BLoNltt\",\n    \"amount\": 175,\n    \"currency\": \"NGN\",\n    \"customer\": {\n      \"id\": \"cus_WWVaC0InrN\",\n      \"address\": null,\n      \"email\": \"[email protected]\",\n      \"name\": {\n        \"first\": \"Cornelius\",\n        \"middle\": null,\n        \"last\": \"Ashley-Osuzoka\"\n      },\n      \"phone\": null,\n      \"meta\": {},\n      \"created_datetime\": \"2025-06-02T07:40:48.637Z\"\n    },\n    \"description\": null,\n    \"meta\": {},\n    \"payment_method\": {\n      \"type\": \"bank_transfer\",\n      \"bank_transfer\": {\n        \"account_expires_in\": null,\n        \"account_display_name\": null,\n        \"account_type\": null\n      },\n      \"id\": \"pmd_NzbQZvbnPj\",\n      \"customer_id\": null,\n      \"meta\": {},\n      \"device_fingerprint\": null,\n      \"client_ip\": null,\n      \"created_datetime\": \"2025-06-02T07:46:47.520Z\"\n    },\n    \"redirect_url\": null,\n    \"reference\": \"deac44b2-f8bd-4492-be07-bc25e5c4b159\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2025-06-02T07:47:02.537812148Z\"\n  }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/charges/chg_HJRm0DeDIN' \\\n--header 'Accept: application/json' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_zH0BLoNltt\",\n        \"amount\": 175,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_WWVaC0InrN\",\n        \"settled\": true,\n        \"settlement_id\": [\n            \"stm_XPx038OwdI\"\n        ],\n        \"meta\": {},\n        \"payment_method_details\": {\n            \"type\": \"bank_transfer\",\n            \"bank_transfer\": {},\n            \"id\": \"pmd_NzbQZvbnPj\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-06-02T07:46:47.520Z\"\n        },\n        \"reference\": \"deac44b2-f8bd-4492-be07-bc25e5c4b159\",\n        \"status\": \"succeeded\",\n        \"processor_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        },\n        \"created_datetime\": \"2025-06-02T07:47:02.945Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/charges?virtual_account_id=van_b6v7ZkuLug' \\\n--header 'Accept: application/json' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charges fetched\",\n    \"meta\": {\n        \"page_info\": {\n            \"total\": 1,\n            \"current_page\": 1,\n            \"total_pages\": 1\n        }\n    },\n    \"data\": [\n        {\n            \"id\": \"chg_zH0BLoNltt\",\n            \"amount\": 175,\n            \"fees\": [\n                {\n                    \"type\": \"vat\",\n                    \"amount\": 0\n                },\n                {\n                    \"type\": \"app\",\n                    \"amount\": 0\n                },\n                {\n                    \"type\": \"merchant\",\n                    \"amount\": 0\n                },\n                {\n                    \"type\": \"stamp_duty\",\n                    \"amount\": 0\n                }\n            ],\n            \"currency\": \"NGN\",\n            \"customer_id\": \"cus_WWVaC0InrN\",\n            \"settled\": true,\n            \"settlement_id\": [\n                \"stm_XPx038OwdI\"\n            ],\n            \"meta\": {},\n            \"payment_method_details\": {\n                \"type\": \"bank_transfer\",\n                \"bank_transfer\": {},\n                \"id\": \"pmd_NzbQZvbnPj\",\n                \"meta\": {},\n                \"created_datetime\": \"2025-06-02T07:46:47.520Z\"\n            },\n            \"reference\": \"deac44b2-f8bd-4492-be07-bc25e5c4b159\",\n            \"status\": \"succeeded\",\n            \"processor_response\": {\n                \"type\": \"approved\",\n                \"code\": \"00\"\n            },\n            \"created_datetime\": \"2025-06-02T07:47:02.945Z\"\n        }\n    ]\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Scenario-Key: issuer:approved' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"cb0e10d5-f59e-424b-af44-65445ae4472b\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"amount\": 1500,\n    \"currency\": \"NGN\",\n    \"bank_code\":\"090567\",\n    \"account_type\": \"static\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\",\n    \"bvn\": \"12345678901\"\n}'\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Scenario-Key: issuer:failed' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"cb0e10d5-f59e-424b-af44-65445ae4472b\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"amount\": 1500,\n    \"currency\": \"NGN\",\n    \"bank_code\":\"090567\",\n    \"account_type\": \"static\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\",\n    \"bvn\": \"12345678901\"\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.776Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":14,"totalLines":353,"estimatedTokens":2325}}44{"id":"doc-e_commerce-db1896e0","source":"documentation","title":"E-Commerce","url":"https://developer.flutterwave.com/docs/e-commerce","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.776Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}45{"id":"doc-travel_and_hospitality-9806c225","source":"documentation","title":"Travel and Hospitality","url":"https://developer.flutterwave.com/docs/travel-and-hospitality","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.777Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}46{"id":"doc-opay-ec12837f","source":"documentation","title":"OPay","url":"https://developer.flutterwave.com/docs/opay","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Shirley\",\n      \"country\":\"US\",\n      \"line1\":\"175 E Parkview Dr\",\n      \"line2\":\"\",\n      \"postal_code\":\"11967\",\n      \"state\":\"New York\"\n   },\n   \"name\":{\n      \"first\":\"John\",\n      \"middle\":\"Agba\",\n      \"last\":\"Doe\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Customer created\",\n   \"data\":{\n      \"id\":\"cus_dc0FUyBpd0\",\n      \"address\":{\n         \"city\":\"Shirley\",\n         \"country\":\"US\",\n         \"line1\":\"175 E Parkview Dr\",\n         \"line2\":\"\",\n         \"postal_code\":\"11967\",\n         \"state\":\"New York\"\n      },\n      \"email\":\"[email protected]\",\n      \"name\":{\n         \"first\":\"John\",\n         \"middle\":\"Agba\",\n         \"last\":\"Doe\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":\"6313958745\"\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-25T20:16:38.246410457Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\":\"opay\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Payment method created\",\n  \"data\": {\n    \"type\": \"opay\",\n    \"opay\": {},\n    \"id\": \"pmd_uF9ADr9LvH\",\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-26T14:38:25.179075400Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"currency\":\"NGN\",\n   \"customer_id\":\"cus_dc0FUyBpd0\",\n   \"payment_method_id\":\"pmd_uF9ADr9LvH\",\n   \"amount\":200,\n   \"reference\":\"ex61m23j6a3y0k34o9ilrri\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_nONgeAGY97\",\n      \"amount\":200,\n      \"fees\":[\n         {\n            \"type\":\"vat\",\n            \"amount\":0\n         },\n         {\n            \"type\":\"app\",\n            \"amount\":0\n         },\n         {\n            \"type\":\"merchant\",\n            \"amount\":0\n         },\n         {\n            \"type\":\"stamp_duty\",\n            \"amount\":0\n         }\n      ],\n      \"currency\":\"NGN\",\n      \"customer_id\":\"cus_dc0FUyBpd0\",\n      \"settled\":false,\n      \"settlement_id\":[],\n      \"meta\":{},\n      \"next_action\":{\n         \"type\":\"redirect_url\",\n         \"redirect_url\":{\n            \"url\":\"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?opay&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImNiYThhMTkwLTE2OGUtNGNmZS05NmY5LTE2NDZhYjFhOWNkYiIsImNoYXJnZUlkIjoiY2hnX25PTmdlQUdZOTciLCJzdWIiOiJjYmE4YTE5MC0xNjhlLTRjZmUtOTZmOS0xNjQ2YWIxYTljZGIiLCJpYXQiOjE3MzgzMTc3MTAsImV4cCI6MTczODMxODAxMH0.QgLoZYfNhHJOJJvOsLA9eLoxOjGF0qnuehPMgMP4zD4\"\n         }\n      },\n      \"payment_method_details\":{\n         \"type\":\"opay\",\n         \"opay\":{},\n         \"id\":\"pmd_uF9ADr9LvH\",\n         \"meta\":{},\n         \"created_datetime\":\"2024-12-26T14:38:25.179Z\"\n      },\n      \"reference\":\"ex61m23j6a3y0k34o9ilrri\",\n      \"status\":\"pending\",\n      \"processor_response\":{\n         \"type\":\"pending\",\n         \"code\":\"02\"\n      },\n      \"created_datetime\":\"2025-01-31T10:01:50.209460744Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_z8BBd4nvlPxrg0GGTEFw\",\n  \"timestamp\": 1738317739798,\n  \"type\": \"charge.completed\",\n  \"data\": {\n    \"id\": \"chg_nONgeAGY97\",\n    \"amount\": 200,\n    \"currency\": \"NGN\",\n    \"customer\": {\n      \"id\": \"cus_dc0FUyBpd0\",\n      \"address\": {\n        \"city\": \"Shirley\",\n        \"country\": \"US\",\n        \"line1\": \"175 E Parkview Dr\",\n        \"line2\": \"\",\n        \"postal_code\": \"11967\",\n        \"state\": \"New York\"\n      },\n      \"email\": \"[email protected]\",\n      \"name\": {\n        \"first\": \"John\",\n        \"middle\": \"Agba\",\n        \"last\": \"Doe\"\n      },\n      \"phone\": {\n        \"country_code\": \"1\",\n        \"number\": \"6313958745\"\n      },\n      \"meta\": {},\n      \"created_datetime\": \"2024-12-25T20:16:38.246Z\"\n    },\n    \"description\": null,\n    \"meta\": {},\n    \"payment_method\": {\n      \"type\": \"opay\",\n      \"opay\": {},\n      \"id\": \"pmd_uF9ADr9LvH\",\n      \"customer_id\": null,\n      \"meta\": {},\n      \"device_fingerprint\": null,\n      \"client_ip\": null,\n      \"created_datetime\": \"2024-12-26T14:38:25.179Z\"\n    },\n    \"redirect_url\": null,\n    \"reference\": \"ex61m23j6a3y0k34o9ilrri\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2025-01-31T10:01:50.209Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Charge fetched\",\n  \"data\": {\n    \"id\": \"chg_LgTqLXDGXq\",\n    \"amount\": 200,\n    \"currency\": \"NGN\",\n    \"customer_id\": \"cus_dc0FUyBpd0\",\n    \"settled\": false,\n    \"settlement_id\": [],\n    \"meta\": {},\n    \"payment_method_details\": {\n      \"type\": \"opay\",\n      \"opay\": {},\n      \"id\": \"pmd_uF9ADr9LvH\",\n      \"meta\": {},\n      \"created_datetime\": \"2024-12-26T14:38:25.179Z\"\n    },\n    \"reference\": \"ex61m23j6a3y0kk4o8ilrri\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2024-12-27T08:52:18.128Z\"\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.777Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":9,"totalLines":264,"estimatedTokens":1573}}47{"id":"doc-telecommunications-3fa044d2","source":"documentation","title":"Telecommunications","url":"https://developer.flutterwave.com/docs/telecommunications","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.777Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}48{"id":"doc-remittance-cc56160c","source":"documentation","title":"Remittance","url":"https://developer.flutterwave.com/docs/remittance","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.777Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}49{"id":"doc-banks_and_ofis-216a65c2","source":"documentation","title":"Banks and OFIs","url":"https://developer.flutterwave.com/docs/banks-and-ofis","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.778Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}50{"id":"doc-pay_with_bank_ng-8cc3214c","source":"documentation","title":"Pay with Bank (NG)","url":"https://developer.flutterwave.com/docs/ng-bank-account","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n  --url 'https://developersandbox-api.flutterwave.com/customers' \\\n  --header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n  --header 'Content-Type: application/json' \\\n  --header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n  --header 'X-Idempotency-Key: {{YOUR_UNIQUE_IDEMPOTENCY_KEY}}' \\\n  --data '{\n    \"address\": {\n      \"city\": \"Gotham\",\n      \"country\": \"US\",\n      \"line1\": \"221B Baker Street\",\n      \"line2\": \"321B Hazard Avenue\",\n      \"postal_code\": \"94105\",\n      \"state\": \"Colorado\"\n    },\n    \"name\": {\n      \"first\": \"Derek\",\n      \"middle\": \"Jones\",\n      \"last\": \"Blue\"\n    },\n    \"phone\": {\n      \"country_code\": \"233\",\n      \"number\": \"9012345678\"\n    },\n    \"email\": \"[email protected]\"\n  }'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_Gh5xysiG40\",\n        \"address\": {\n            \"city\": \"Gotham\",\n            \"country\": \"US\",\n            \"line1\": \"221B Baker Street\",\n            \"line2\": \"321B Hazard Avenue\",\n            \"postal_code\": \"94105\",\n            \"state\": \"Colorado\"\n        },\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"Derek\",\n            \"middle\": \"Jones\",\n            \"last\": \"Blue\"\n        },\n        \"phone\": {\n            \"country_code\": \"233\",\n            \"number\": \"9012345678\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2026-08-07T14:41:52.180Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n  --url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n  --header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n  --header 'Content-Type: application/json' \\\n  --header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n  --header 'X-Idempotency-Key: {{YOUR_UNIQUE_IDEMPOTENCY_KEY}}' \\\n  --data '{\n    \"type\": \"bank_account\",\n    \"bank_account\": {}\n  }'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"bank_account\",\n        \"bank_account\": {},\n        \"id\": \"pmd_kB7xcrobND\",\n        \"meta\": {},\n        \"created_datetime\": \"2026-08-07T14:48:08.770Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n  --url 'https://developersandbox-api.flutterwave.com/charges' \\\n  --header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n  --header 'Content-Type: application/json' \\\n  --header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n  --header 'X-Idempotency-Key: {{YOUR_UNIQUE_IDEMPOTENCY_KEY}}' \\\n  --data '{\n    \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n    \"currency\": \"NGN\",\n    \"customer_id\": \"cus_Gh5xysiG40\",\n    \"payment_method_id\": \"pmd_kB7xcrobND\",\n    \"redirect_url\": \"https://flutterwave.com/\",\n    \"amount\": 250,\n    \"meta\": {\n      \"person_name\": \"Derek Jones\",\n      \"role\": \"Developer\"\n    }\n  }'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_SCmmjzx9Vf\",\n        \"amount\": 250,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_Gh5xysiG40\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {\n            \"person_name\": \"Derek Jones\",\n            \"role\": \"Developer\"\n        },\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developersandbox.flutterwave.com/redirects?bank_account&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6IjQ0OTllNjBiLThkYzgtNDdlMy05ZDYyLWQwOTUyNjA1ZTYyOSIsImNoYXJnZUlkIjoiY2hnX1NDbW1qeng5VmYiLCJzdWIiOiI0NDk5ZTYwYi04ZGM4LTQ3ZTMtOWQ2Mi1kMDk1MjYwNWU2MjkiLCJpYXQiOjE3ODYxMTM5NDUsImV4cCI6MTc4NjExNDI0NX0.V0gqfYqugfHmRX1Dcb4HA_HErmkyfAz16-xMSZWrKho\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"bank_account\",\n            \"bank_account\": {},\n            \"id\": \"pmd_G6oIU2NQ9R\",\n            \"meta\": {},\n            \"created_datetime\": \"2026-08-07T14:44:34.123Z\"\n        },\n        \"redirect_url\": \"https://flutterwave.com/\",\n        \"reference\": \"TRN-cOEunIgj74os\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2026-08-07T14:45:45.827Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"CURRENCY_NOT_SUPPORTED\",\n        \"code\": \"1125400\",\n        \"message\": \"Currency not supported for bank account charge.\",\n        \"validation_errors\": []\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n       ...\n        \"status\": \"pending\",\n       ...\n           }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n    ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox.flutterwave.com/redirects?bank_account&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6IjQ0OTllNjBiLThkYzgtNDdlMy05ZDYyLWQwOTUyNjA1ZTYyOSIsImNoYXJnZUlkIjoiY2hnX29mTGx1SDRnNnYiLCJzdWIiOiI0NDk5ZTYwYi04ZGM4LTQ3ZTMtOWQ2Mi1kMDk1MjYwNWU2MjkiLCJpYXQiOjE3NDgwMDg1MDgsImV4cCI6MTc0ODAwODgwOH0.CfqeQgfrCNeod8GyOpnRp1Gj8eed0WksRLrCkvH1sn8\"\n            }\n        }\n   ...\n    }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_ckhz9yMjxvSPQZDeGJrt\",\n  \"timestamp\": 1786362486906,\n  \"type\": \"charge.completed\",\n  \"data\": {\n    \"id\": \"chg_SCmmjzx9Vf\",\n    \"amount\": 250,\n    \"currency\": \"NGN\",\n    \"customer\": {\n      \"id\": \"cus_Gh5xysiG40\",\n      \"address\": {\n        \"city\": \"Gotham\",\n        \"country\": \"US\",\n        \"line1\": \"221B Baker Street\",\n        \"line2\": \"321B Hazard Avenue\",\n        \"postal_code\": \"94105\",\n        \"state\": \"Colorado\"\n      },\n      \"email\": \"[email protected]\",\n      \"name\": {\n        \"first\": \"Derek\",\n        \"middle\": \"Jones\",\n        \"last\": \"Blue\"\n      },\n      \"phone\": {\n        \"country_code\": \"233\",\n        \"number\": \"9012345678\"\n      },\n      \"meta\": {},\n      \"created_datetime\": \"2026-08-07T14:41:52.180Z\"\n    },\n    \"description\": null,\n    \"meta\": {\n      \"person_name\": \"Derek Jones\",\n      \"role\": \"Developer\"\n    },\n    \"payment_method\": {\n      \"type\": \"bank_account\",\n      \"bank_account\": {},\n      \"id\": \"pmd_kB7xcrobND\",\n      \"customer_id\": \"cus_Gh5xysiG40\",\n      \"meta\": {},\n      \"device_fingerprint\": null,\n      \"client_ip\": null,\n      \"created_datetime\": \"2026-08-07T14:44:34.123Z\"\n    },\n    \"redirect_url\": \"https://flutterwave.com/\",\n    \"reference\": \"TRN-cOEunIgj74os\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2026-08-07T14:45:45.827Z\"\n  }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_SCmmjzx9Vf\",\n     ...\n    }\n}\n```\n\nExample:\n```curl\ncurl --request GET \\\n  --url 'https://developersandbox-api.flutterwave.com/charges/chg_SCmmjzx9Vf/' \\\n  --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n  --header 'Content-Type: application/json' \\\n  --header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n  --header 'X-Idempotency-Key: <YOUR_UNIQUE_IDEMPOTENCY_KEY>'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_SCmmjzx9Vf\",\n        \"amount\": 250,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_Gh5xysiG40\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {\n            \"person_name\": \"Derek Jones\",\n            \"role\": \"Developer\"\n        },\n        \"payment_method_details\": {\n            \"type\": \"bank_account\",\n            \"bank_account\": {},\n            \"id\": \"pmd_G6oIU2NQ9R\",\n            \"meta\": {},\n            \"created_datetime\": \"2026-08-07T14:44:34.123Z\"\n        },\n        \"redirect_url\": \"https://flutterwave.com/\",\n        \"reference\": \"TRN-cOEunIgj74os\",\n        \"status\": \"succeeded\",\n        \"processor_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        },\n        \"created_datetime\": \"2026-08-07T14:46:24.031Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.778Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":13,"totalLines":353,"estimatedTokens":2233}}51{"id":"doc-e_commerce-2e40d71e","source":"documentation","title":"E-Commerce","url":"https://developer.flutterwave.com/edit/e-commerce","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationE-CommerceIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to power global growth with Flutterwave.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.778Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":272}}52{"id":"doc-telecommunications-83ad3ab2","source":"documentation","title":"Telecommunications","url":"https://developer.flutterwave.com/edit/telecommunications","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationTelecommunicationsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to turn every recharge, data plan, or postpaid bill into a smooth payment experience.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.779Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":285}}53{"id":"doc-fintechs-8fba4eb6","source":"documentation","title":"Fintechs","url":"https://developer.flutterwave.com/edit/fintechs","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationFintechsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to optimize fintech operations with ease.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.779Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":272}}54{"id":"doc-getting_started-98fca3c3","source":"documentation","title":"Getting Started","url":"https://developer.flutterwave.com/edit/getting-started","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.779Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}55{"id":"doc-loan_disbursements-733b995c","source":"documentation","title":"Loan disbursements","url":"https://developer.flutterwave.com/docs/managing-instant-loan-disbursements","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request GET  \n     --url 'https://developersandbox-api.flutterwave.com/banks?country=NG'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'accept: application/json'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank list retrieved successfully\",\n  \"data\": [\n    {\n      \"id\": \"bnk_cYjd92Qk\",\n      \"code\": \"044\",\n      \"name\": \"Access Bank\"\n    }\n    .......\n  ]\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/banks/account-resolve'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"account\": {  \n    \"code\": \"044\",  \n    \"number\": \"0690000031\"  \n  },  \n  \"currency\": \"NGN\"  \n}  \n'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank details retrieved successfully\",\n  \"data\": {\n    \"bank_code\": \"044\",\n    \"account_number\": \"0690000031\",\n    \"account_name\": \"Aduke Enterprise Limited\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/direct-transfers'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"action\": \"instant\",  \n  \"payment_instruction\": {  \n    \"source_currency\": \"NGN\",  \n    \"amount\": {  \n      \"applies_to\": \"source_currency\",  \n      \"value\": 1000000  \n    },  \n    \"recipient\": {  \n      \"bank\": {  \n        \"account_number\": \"0690000031\",  \n        \"code\": \"044\"  \n      }  \n    },  \n    \"destination_currency\": \"NGN\"  \n  },  \n  \"type\": \"bank\"  \n}  \n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_KfuyB4YprRt0RD\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"3d8e2e08-d4bd-4f8c-951a-d68e98eea80b\",\n        \"status\": \"NEW\",\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 1000000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"name\": {\n                \"first\": \"Aduke Enterprise Limited\",\n                \"last\": \"\"\n            },\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_qcwLZGHj7l\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-21T09:55:59.157510874Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.779Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":6,"totalLines":124,"estimatedTokens":730}}56{"id":"doc-fintechs-8f81dc13","source":"documentation","title":"Fintechs","url":"https://developer.flutterwave.com/docs/fintechs","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.779Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}57{"id":"doc-real_time_fx_conversion-5325cbdd","source":"documentation","title":"Real-time FX conversion","url":"https://developer.flutterwave.com/docs/real-time-fx-conversion","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/transfers/rates'  \n     --header 'accept: application/json'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"source\": {\n    \"currency\": \"NGN\"\n  },\n  \"destination\": {\n    \"currency\": \"USD\",\n    \"amount\": 300\n  }  \n}  \n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Rate created\",\n    \"data\": {\n        \"id\": \"rex_pguIgH6EFy52\",\n        \"rate\": \"0.000707\",\n        \"source\": {\n            \"amount\": \"424168.571437\",\n            \"currency\": \"NGN\"\n        },\n        \"destination\": {\n            \"amount\": \"300\",\n            \"currency\": \"USD\"\n        },\n        \"created_datetime\": \"2026-06-24T12:10:39.946Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request GET  \n     --url 'https://developersandbox-api.flutterwave.com/banks?country=NG'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'accept: application/json'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank list retrieved successfully\",\n  \"data\": [\n    {\n      \"id\": \"bnk_cYjd92Qk\",\n      \"code\": \"044\",\n      \"name\": \"Access Bank\"\n    }\n    .......\n  ]\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/banks/account-resolve'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"account\": {  \n    \"code\": \"044\",  \n    \"number\": \"0690000031\"  \n  },  \n  \"currency\": \"NGN\"  \n}  \n'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank details retrieved successfully\",\n  \"data\": {\n    \"bank_code\": \"044\",\n    \"account_number\": \"0690000031\",\n    \"account_name\": \"John Doe\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/direct-transfers'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"action\": \"instant\",  \n  \"payment_instruction\": {  \n    \"source_currency\": \"USD\",  \n    \"amount\": {  \n      \"applies_to\": \"source_currency\",  \n      \"value\": 300  \n    },  \n    \"recipient\": {  \n      \"bank\": {  \n        \"account_number\": \"0690000031\",  \n        \"code\": \"044\"  \n      }  \n    },  \n    \"destination_currency\": \"NGN\"  \n  },  \n  \"type\": \"bank\"  \n}  \n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_KfuyB4YprRt0RD\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"3d8e2e08-d4bd-4f8c-951a-d68e98eea80b\",\n        \"status\": \"NEW\",\n        \"source_currency\": \"USD\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 300,\n            \"applies_to\": \"source_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"name\": {\n                \"first\": \"John Doe\",\n                \"last\": \"\"\n            },\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_qcwLZGHj7l\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-21T09:55:59.157510874Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.780Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":8,"totalLines":164,"estimatedTokens":908}}58{"id":"doc-banks_and_ofis-f3860fc6","source":"documentation","title":"Banks and OFIs","url":"https://developer.flutterwave.com/edit/banks-and-ofis","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationBanks and OFIsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestDiscover how banks and OFIs can streamline their operations.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.780Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":276}}59{"id":"doc-real_time_fx_conversion-7aeaa06b","source":"documentation","title":"Real-time FX conversion","url":"https://developer.flutterwave.com/v4.0/docs/real-time-fx-conversion","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/transfers/rates'  \n     --header 'accept: application/json'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"source\": {\n    \"currency\": \"NGN\"\n  },\n  \"destination\": {\n    \"currency\": \"USD\",\n    \"amount\": 300\n  }  \n}  \n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Rate created\",\n    \"data\": {\n        \"id\": \"rex_pguIgH6EFy52\",\n        \"rate\": \"0.000707\",\n        \"source\": {\n            \"amount\": \"424168.571437\",\n            \"currency\": \"NGN\"\n        },\n        \"destination\": {\n            \"amount\": \"300\",\n            \"currency\": \"USD\"\n        },\n        \"created_datetime\": \"2026-06-24T12:10:39.946Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request GET  \n     --url 'https://developersandbox-api.flutterwave.com/banks?country=NG'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'accept: application/json'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank list retrieved successfully\",\n  \"data\": [\n    {\n      \"id\": \"bnk_cYjd92Qk\",\n      \"code\": \"044\",\n      \"name\": \"Access Bank\"\n    }\n    .......\n  ]\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/banks/account-resolve'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"account\": {  \n    \"code\": \"044\",  \n    \"number\": \"0690000031\"  \n  },  \n  \"currency\": \"NGN\"  \n}  \n'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank details retrieved successfully\",\n  \"data\": {\n    \"bank_code\": \"044\",\n    \"account_number\": \"0690000031\",\n    \"account_name\": \"John Doe\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/direct-transfers'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"action\": \"instant\",  \n  \"payment_instruction\": {  \n    \"source_currency\": \"USD\",  \n    \"amount\": {  \n      \"applies_to\": \"source_currency\",  \n      \"value\": 300  \n    },  \n    \"recipient\": {  \n      \"bank\": {  \n        \"account_number\": \"0690000031\",  \n        \"code\": \"044\"  \n      }  \n    },  \n    \"destination_currency\": \"NGN\"  \n  },  \n  \"type\": \"bank\"  \n}  \n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_KfuyB4YprRt0RD\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"3d8e2e08-d4bd-4f8c-951a-d68e98eea80b\",\n        \"status\": \"NEW\",\n        \"source_currency\": \"USD\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 300,\n            \"applies_to\": \"source_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"name\": {\n                \"first\": \"John Doe\",\n                \"last\": \"\"\n            },\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_qcwLZGHj7l\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-21T09:55:59.157510874Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.780Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":8,"totalLines":164,"estimatedTokens":908}}60{"id":"doc-introductionresponsive_cards-4c090ec4","source":"documentation","title":"IntroductionResponsive Cards","url":"https://developer.flutterwave.com/v4.0/docs/introduction-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.780Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}61{"id":"doc-travel_and_hospitality-54491ba4","source":"documentation","title":"Travel and Hospitality","url":"https://developer.flutterwave.com/edit/travel-and-hospitality","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationTravel and HospitalityIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestEmpower fun lovers with easy payment options for bookings, accommodations, and experiences.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.781Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":285}}62{"id":"doc-charging_a_card-d10c4e21","source":"documentation","title":"Charging a Card","url":"https://developer.flutterwave.com/v4.0.0/docs/quickstart","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl -X POST 'https://idp.flutterwave.com/realms/flutterwave/protocol/openid-connect/token' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--data-urlencode 'client_id={{CLIENT_ID}}' \\\n--data-urlencode 'client_secret={{CLIENT_SECRET}}' \\\n--data-urlencode 'grant_type=client_credentials'\n```\n\nExample:\n```json\n{\n    \"access_token\": \"SAMPLE_TOKEN\",\n    \"expires_in\": 600,\n    \"refresh_expires_in\": 0,\n    \"token_type\": \"Bearer\",\n    \"not-before-policy\": 0,\n    \"scope\": \"profile email\"\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--data '{\n  \"address\": {\n    \"city\": \"Gotham\",\n    \"country\": \"US\",\n    \"line1\": \"221B Baker Street\",\n    \"line2\": \"\",\n    \"postal_code\": \"94105\",\n    \"state\": \"Colorado\"\n  },\n  \"name\": {\n    \"first\": \"King\",\n    \"middle\": \"Leo\",\n    \"last\": \"James\"\n  },\n  \"phone\": {\n    \"country_code\": \"1\",\n    \"number\": \"6313958745\"\n  },\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_J0PvwvJB2n\",\n        \"address\": {\n            \"city\": \"Gotham\",\n            \"country\": \"US\",\n            \"line1\": \"221B Baker Street\",\n            \"line2\": \"\",\n            \"postal_code\": \"94105\",\n            \"state\": \"Colorado\"\n        },\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"phone\": {\n            \"country_code\": \"1\",\n            \"number\": \"6313958745\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T13:54:21.546559974Z\"\n    }\n}\n```\n\nExample:\n```javascript\nexport async function encryptAES(data: string, token: string, nonce: string): Promise<string> {\n    if (nonce.length !== 12) {\n        throw new Error(\"Nonce must be exactly 12 characters long\");\n    }\n\n    const cryptoSubtle = globalThis.crypto?.subtle || require(\"crypto\").webcrypto?.subtle;\n    if (!cryptoSubtle) {\n        throw new Error(\"Crypto API is not available in this environment.\");\n    }\n\n    const decodedKeyBytes = Uint8Array.from(atob(token), c => c.charCodeAt(0));\n\n    const key = await cryptoSubtle.importKey(\n        \"raw\",\n        decodedKeyBytes,\n        { name: \"AES-GCM\" },\n        false,\n        [\"encrypt\"]\n    );\n    const iv = new TextEncoder().encode(nonce);\n\n    const encryptedData = await cryptoSubtle.encrypt(\n        {\n            name: \"AES-GCM\",\n            iv: iv,\n        },\n        key,\n        new TextEncoder().encode(data)\n    );\n\n    return btoa(String.fromCharCode(...new Uint8Array(encryptedData)));\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"encrypted_card_number\": \"{{$encrypted_card_number}}\",\n        \"encrypted_expiry_month\": \"{{$encrypted_expiry_month}}\",\n        \"encrypted_expiry_year\": \"{{$encrypted_expiry_year}}\",\n        \"encrypted_cvv\": \"{{$encrypted_cvv}}\",\n        \"nonce\": \"{{$randomly_generated_nonce}}\"\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"expiry_month\": 8,\n            \"expiry_year\": 32,\n            \"first6\": \"123412\",\n            \"last4\": \"2222\",\n            \"network\": \"mastercard\"\n        },\n        \"id\": \"pmd_wlVhaYmkl2\",\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T14:29:26.650973145Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"NGN\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://google.com\",\n   \"amount\": 2500,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\nExample:\n```json\n{\n    \"status\": \"pending\",\n    \"message\": \"Charge requires authorization\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"status\": \"pending\",\n        \"next_action\": {\n            \"type\": \"authorize\",\n            \"authorization\": {\n                \"type\": \"pin\"\n            }\n        },\n        ...\n    }\n}\n```\n\nExample:\n```curl\ncurl --location --request PUT 'https://developersandbox-api.flutterwave.com/charges/{{CHARGE_ID}}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--header 'Content-type: application/json' \\\n--data '{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"{{YOUR_PIN_NONCE}}\",\n            \"encrypted_pin\": \"{{ENCRYPTED_PIN}}\"\n        }\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_yXvsB4LzWSwhUCpAPCBR\",\n   \"timestamp\":1739456704200,\n   \"type\":\"charge.completed\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      \"amount\":2500,\n      \"currency\":\"NGN\",\n      \"customer\":{\n         \"id\":\"cus_J0PvwvJB2n\",\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         },\n         \"email\":\"[email protected]\",\n         \"name\":{\n            \"first\":\"King\",\n            \"middle\":\"Leo\",\n            \"last\":\"James\"\n         },\n         \"phone\":{\n            \"country_code\":\"1\",\n            \"number\":\"6313958745\"\n         },\n         \"meta\":{},\n         \"created_datetime\":\"2024-12-25T20:16:38.246Z\"\n      },\n      \"description\":null,\n      \"meta\":{},\n      \"payment_method\":{\n         \"type\":\"card\",\n         \"card\":{\n            \"expiry_month\":8,\n            \"expiry_year\":32,\n            \"first6\":\"123412\",\n            \"last4\":\"2222\",\n            \"network\":\"MASTERCARD\",\n            \"billing_address\":null,\n            \"cof\":null,\n            \"card_holder_name\":null\n         },\n         \"id\":\"pmd_wlVhaYmkl2\",\n         \"customer_id\":null,\n         \"meta\":{},\n         \"device_fingerprint\":null,\n         \"client_ip\":null,\n         \"created_datetime\":\"2025-02-05T14:06:10.344Z\"\n      },\n      \"redirect_url\":null,\n      \"reference\":\"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n      \"status\":\"succeeded\",\n      \"processor_response\":{\n         \"type\":\"approved\",\n         \"code\":\"00\"\n      },\n      \"created_datetime\":\"2025-02-13T14:24:43.133Z\"\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.781Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":12,"totalLines":309,"estimatedTokens":1996}}63{"id":"doc-remittance-4d6f1255","source":"documentation","title":"Remittance","url":"https://developer.flutterwave.com/edit/remittance","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationRemittanceIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to deliver transparent cross border payments.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.781Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":273}}64{"id":"doc-list_customers-9ad3b94d","source":"documentation","title":"List customers","url":"https://developer.flutterwave.com/reference/customers_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.781Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}65{"id":"doc-loan_disbursements-2562d86c","source":"documentation","title":"Loan disbursements","url":"https://developer.flutterwave.com/v4.0/docs/managing-instant-loan-disbursements","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request GET  \n     --url 'https://developersandbox-api.flutterwave.com/banks?country=NG'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'accept: application/json'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank list retrieved successfully\",\n  \"data\": [\n    {\n      \"id\": \"bnk_cYjd92Qk\",\n      \"code\": \"044\",\n      \"name\": \"Access Bank\"\n    }\n    .......\n  ]\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/banks/account-resolve'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"account\": {  \n    \"code\": \"044\",  \n    \"number\": \"0690000031\"  \n  },  \n  \"currency\": \"NGN\"  \n}  \n'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Bank details retrieved successfully\",\n  \"data\": {\n    \"bank_code\": \"044\",\n    \"account_number\": \"0690000031\",\n    \"account_name\": \"Aduke Enterprise Limited\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST  \n     --url 'https://developersandbox-api.flutterwave.com/direct-transfers'  \n     --header 'X-Trace-Id: {{REPLACE_WITH_UNIQUE_IDENTIFIER}}'  \n     --header 'authorization: Bearer {{REPLACE_WITH_API_ACCESS_TOKEN}}'  \n     --header 'content-type: application/json'  \n     --data '  \n{  \n  \"action\": \"instant\",  \n  \"payment_instruction\": {  \n    \"source_currency\": \"NGN\",  \n    \"amount\": {  \n      \"applies_to\": \"source_currency\",  \n      \"value\": 1000000  \n    },  \n    \"recipient\": {  \n      \"bank\": {  \n        \"account_number\": \"0690000031\",  \n        \"code\": \"044\"  \n      }  \n    },  \n    \"destination_currency\": \"NGN\"  \n  },  \n  \"type\": \"bank\"  \n}  \n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_KfuyB4YprRt0RD\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"3d8e2e08-d4bd-4f8c-951a-d68e98eea80b\",\n        \"status\": \"NEW\",\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 1000000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"name\": {\n                \"first\": \"Aduke Enterprise Limited\",\n                \"last\": \"\"\n            },\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_qcwLZGHj7l\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-21T09:55:59.157510874Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.782Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":6,"totalLines":124,"estimatedTokens":730}}66{"id":"doc-list_payment_methods-543010d2","source":"documentation","title":"List payment methods","url":"https://developer.flutterwave.com/reference/payment_methods_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.782Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}67{"id":"doc-create_a_customer-645671cf","source":"documentation","title":"Create a customer","url":"https://developer.flutterwave.com/reference/customers_create","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.782Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}68{"id":"doc-update_a_charge-87a8ef7b","source":"documentation","title":"Update a charge","url":"https://developer.flutterwave.com/reference/charges_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.782Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}69{"id":"doc-initiate_order_with_orchestrator-846d3f83","source":"documentation","title":"Initiate Order with Orchestrator.","url":"https://developer.flutterwave.com/reference/orchestration_direct_order_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.782Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}70{"id":"doc-search_customers-c2735d3f","source":"documentation","title":"Search customers","url":"https://developer.flutterwave.com/reference/customers_search","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.783Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}71{"id":"doc-retrieve_a_charge-3d39d104","source":"documentation","title":"Retrieve a charge","url":"https://developer.flutterwave.com/reference/charges_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.783Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}72{"id":"doc-update_a_customer-1f55fc5d","source":"documentation","title":"Update a customer","url":"https://developer.flutterwave.com/reference/customers_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.783Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}73{"id":"doc-create_a_payment_method-c77b5bdd","source":"documentation","title":"Create a payment method","url":"https://developer.flutterwave.com/reference/payment_methods_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.783Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}74{"id":"doc-list_charges-195338d6","source":"documentation","title":"List charges","url":"https://developer.flutterwave.com/reference/charges_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.783Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}75{"id":"doc-retrieve_a_customer-4df940b3","source":"documentation","title":"Retrieve a customer","url":"https://developer.flutterwave.com/reference/customers_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.783Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}76{"id":"doc-initiate_an_orchestrator_charge-45587968","source":"documentation","title":"Initiate an Orchestrator charge.","url":"https://developer.flutterwave.com/reference/orchestration_direct_charge_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.784Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}77{"id":"doc-create_a_charge-0aeff330","source":"documentation","title":"Create a charge","url":"https://developer.flutterwave.com/reference/charges_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.784Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}78{"id":"doc-retrieve_banks-4ebef9af","source":"documentation","title":"Retrieve banks","url":"https://developer.flutterwave.com/reference/banks_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.784Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}79{"id":"doc-initiate_an_orchestrator_transfer-2b61e5c8","source":"documentation","title":"Initiate an Orchestrator transfer.","url":"https://developer.flutterwave.com/reference/direct_transfers_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.784Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}80{"id":"doc-fetch_wallet_balance_for_multiple_currencies-b4a8890f","source":"documentation","title":"Fetch wallet balance for multiple currencies","url":"https://developer.flutterwave.com/reference/fetch_wallet_balances","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.784Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}81{"id":"doc-bank_account_look_up-07108816","source":"documentation","title":"Bank Account Look Up","url":"https://developer.flutterwave.com/reference/bank_account_resolve_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.784Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}82{"id":"doc-retrieve_mobile_networks-6a398bb2","source":"documentation","title":"Retrieve mobile networks","url":"https://developer.flutterwave.com/reference/mobile_networks_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.785Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}83{"id":"doc-retrieve_bank_branches-3037ed01","source":"documentation","title":"Retrieve bank branches","url":"https://developer.flutterwave.com/reference/bank_branches_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.785Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}84{"id":"doc-retrieve_a_payment_method-bbb1ed77","source":"documentation","title":"Retrieve a payment method","url":"https://developer.flutterwave.com/reference/payment_methods_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.785Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}85{"id":"doc-update_a_transfer-980ee054","source":"documentation","title":"Update a transfer","url":"https://developer.flutterwave.com/reference/transfer_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.785Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}86{"id":"doc-retry_or_duplicate_a_transfer-30c1dc63","source":"documentation","title":"Retry or Duplicate a transfer","url":"https://developer.flutterwave.com/reference/transfer_post_retry","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.785Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}87{"id":"doc-retrieve_wallet_statement-1ae293ec","source":"documentation","title":"Retrieve wallet statement","url":"https://developer.flutterwave.com/reference/get_wallet_statement","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.785Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}88{"id":"doc-create_a_transfer-2ac4e8e4","source":"documentation","title":"Create a transfer","url":"https://developer.flutterwave.com/reference/transfers_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.785Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}89{"id":"doc-retrieve_a_transfer-1189e8b2","source":"documentation","title":"Retrieve a transfer","url":"https://developer.flutterwave.com/reference/transfer_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.786Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}90{"id":"doc-fetch_a_currency_s_wallet_balance-1cfe21e6","source":"documentation","title":"Fetch a currency's wallet balance","url":"https://developer.flutterwave.com/reference/fetch_currency_wallet_balance","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.786Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}91{"id":"doc-list_transfer_recipients-925064ad","source":"documentation","title":"List transfer recipients","url":"https://developer.flutterwave.com/reference/transfers_recipients_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.786Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}92{"id":"doc-list_transfers-30c8c4c2","source":"documentation","title":"List transfers","url":"https://developer.flutterwave.com/reference/transfers_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.786Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}93{"id":"doc-wallet_account_look_up-d9111210","source":"documentation","title":"Wallet Account Look Up","url":"https://developer.flutterwave.com/reference/wallet_account_resolve_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.786Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}94{"id":"doc-idempotency-1025788d","source":"documentation","title":"Idempotency","url":"https://developer.flutterwave.com/edit/idempotency","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationIdempotencyIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestManage request idempotency to prevent duplicates.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.786Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":272}}95{"id":"doc-charging_a_card-7d635314","source":"documentation","title":"Charging a Card","url":"https://developer.flutterwave.com/edit/charging-a-card","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationCharging a CardIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestQuickly charge a customer's card\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.786Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":269}}96{"id":"doc-encryption-05efefef","source":"documentation","title":"Encryption","url":"https://developer.flutterwave.com/edit/encryption","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationEncryptionIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to secure your payment data.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.787Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":269}}97{"id":"doc-list_orders-f2d1366f","source":"documentation","title":"List orders","url":"https://developer.flutterwave.com/reference/orders_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.787Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}98{"id":"doc-create_a_chargeback-08c2da61","source":"documentation","title":"Create a chargeback","url":"https://developer.flutterwave.com/reference/chargebacks_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.787Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}99{"id":"doc-create_a_transfer_recipient-2294ec81","source":"documentation","title":"Create a transfer recipient","url":"https://developer.flutterwave.com/reference/transfers_recipients_create","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.788Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}100{"id":"doc-retrieve_a_virtual_account-cfe6147c","source":"documentation","title":"Retrieve a virtual account","url":"https://developer.flutterwave.com/reference/virtual_account_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.788Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}101{"id":"doc-create_a_refund-3a8688bd","source":"documentation","title":"Create a refund","url":"https://developer.flutterwave.com/reference/refunds_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.789Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}102{"id":"doc-retrieve_fees-3b6ed14e","source":"documentation","title":"Retrieve fees","url":"https://developer.flutterwave.com/reference/fees_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.789Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}103{"id":"doc-send_refund_completion_webhook-ad52a533","source":"documentation","title":"Send refund completion webhook","url":"https://developer.flutterwave.com/reference/refund_completed_webhook","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIAPI Referencesv4.0.0API ReferencesSend refund completion webhookJUMP TOFlutterwave APIsCustomerList customersgetCreate a customerpostRetrieve a customergetUpdate a customerputSearch customerspostChargesList chargesgetCreate a chargepostRetrieve a chargegetUpdate a chargeputOrchestrationInitiate an Orchestrator charge.postInitiate Order with Orchestrator.postPayment MethodsList payment methodsgetCreate a payment methodpostRetrieve a payment methodgetMobile NetworksRetrieve mobile networksgetBanksRetrieve banksgetRetrieve bank branchesgetBank Account Look UppostWalletsWallet Account Look UppostRetrieve wallet statementgetFetch a currency's wallet balancegetFetch wallet balance for multiple currenciesgetTransfersInitiate an Orchestrator transfer.postCreate a transferpostList transfersgetRetrieve a transfergetUpdate a transferputRetry or Duplicate a transferpostTransfer RecipientsList transfer recipientsgetCreate a transfer recipientpostRetrieve a transfer recipientgetDelete a transfer recipientdelTransfer SendersList transfer sendersgetCreate a transfer senderpostRetrieve a transfer sendergetDelete a transfer senderdelTransfer RatesRate conversionpostFetch converted rategetSettlementList settlementgetRetrieve a settlementgetChargebacksList chargebacksgetCreate a chargebackpostget chargeback by idgetUpdate a chargebackputRefundsList refundsgetCreate a refundpostRetrieve a refundgetFeesRetrieve feesgetOrdersList ordersgetCreate an orderpostRetrieve an ordergetUpdate an orderputVirtual-AccountsList all virtual accountsgetCreate a virtual accountpostRetrieve a virtual accountgetUpdate a virtual accountputResend-WebhookResend Webhookpostrefund.completedSend refund completion webhookpostSend refund completion webhookCopy Pagewbhk refund.completedPayloadNotification about a completed refundRefund completion webhook payloadwebhook_idstringrequiredWebhook event identifiertimestampint64requiredWebhook event timestamptypestringenumrequiredDefaults to refund.completedWebhook event typerefund.completedcharge.completedtransfer.disbursetransfer.reversalorder.authorizationAllowed:refund.completedcharge.completedtransfer.disbursetransfer.reversalorder.authorizationdataobjectrequiredA refund of a previously created chargedata objectResponse 200Return a 200 status to indicate that the webhook was received successfullyUpdated 10 months ago Did this page help you?YesNoLoading…Updated 10 months ago Did this page help you?YesNo\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.789Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":1,"totalLines":10,"estimatedTokens":694}}104{"id":"doc-update_an_order-e12ab6ac","source":"documentation","title":"Update an order","url":"https://developer.flutterwave.com/reference/orders_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.790Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}105{"id":"doc-resend_webhook-44350c2b","source":"documentation","title":"Resend Webhook","url":"https://developer.flutterwave.com/reference/resend_webhook","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.790Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}106{"id":"doc-retrieve_a_refund-ac1cb825","source":"documentation","title":"Retrieve a refund","url":"https://developer.flutterwave.com/reference/refunds_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.790Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}107{"id":"doc-update_a_virtual_account-bca56762","source":"documentation","title":"Update a virtual account","url":"https://developer.flutterwave.com/reference/virtual_accounts_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.790Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}108{"id":"doc-list_all_virtual_accounts-a43a3ed7","source":"documentation","title":"List all virtual accounts","url":"https://developer.flutterwave.com/reference/virtual_accounts_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.790Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}109{"id":"doc-create_an_order-1137b0a2","source":"documentation","title":"Create an order","url":"https://developer.flutterwave.com/reference/orders_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.791Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}110{"id":"doc-environments-60b1353c","source":"documentation","title":"Environments","url":"https://developer.flutterwave.com/edit/environments","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationEnvironmentsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestSwitch between Test and Production mode with ease\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.791Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":272}}111{"id":"doc-supported_request_headers-606c2962","source":"documentation","title":"Supported Request Headers","url":"https://developer.flutterwave.com/edit/api-headers","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationSupported Request HeadersIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestCorrectly use API headers in your requests.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.791Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":274}}112{"id":"doc-testing-b0707e82","source":"documentation","title":"Testing","url":"https://developer.flutterwave.com/edit/testing","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationTestingIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestTest your API integration with custom data.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.791Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":270}}113{"id":"doc-orchestrator_flow-03d58ec2","source":"documentation","title":"Orchestrator Flow","url":"https://developer.flutterwave.com/edit/payment-orchestrator-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationOrchestrator FlowIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestCollect payments using our direct charge method.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.791Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":273}}114{"id":"doc-retrieve_an_order-e45b88db","source":"documentation","title":"Retrieve an order","url":"https://developer.flutterwave.com/reference/orders_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.791Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}115{"id":"doc-making_a_transfer-4c4a178b","source":"documentation","title":"Making a Transfer","url":"https://developer.flutterwave.com/edit/making-a-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationMaking a TransferIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestQuickly initiate cross-border transfers\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.792Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":271}}116{"id":"doc-create_a_virtual_account-f04690ad","source":"documentation","title":"Create a virtual account","url":"https://developer.flutterwave.com/reference/virtual_accounts_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.792Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}117{"id":"doc-errors-1f6dcdab","source":"documentation","title":"Errors","url":"https://developer.flutterwave.com/edit/common-errors","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationErrorsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn about our error codes and how to resolve them.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.792Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":272}}118{"id":"doc-integration_journey-2c970cd1","source":"documentation","title":"Integration Journey","url":"https://developer.flutterwave.com/edit/integration-journey","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationIntegration JourneyIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestUnderstand the Integration journey before you commence.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.792Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":276}}119{"id":"doc-best_practices-dea66991","source":"documentation","title":"Best Practices","url":"https://developer.flutterwave.com/v4.0/docs/best-practices","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.792Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":0,"totalLines":3,"estimatedTokens":35}}120{"id":"doc-testing-c0fec6ea","source":"documentation","title":"Testing","url":"https://developer.flutterwave.com/v4.0/docs/testing","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_pin&issuer:approved' \\\n--data '{\n    \"amount\": 1000,\n    \"currency\": \"NGN\",\n    \"reference\": \"94ee715b-9c4b-4700-811b-c93a6f7ce07b\",\n    \"customer_id\": \"cus_c44nro7QZe\",\n    \"payment_method_id\": \"pmd_kKhbTyKhl4\",\n    \"redirect_url\": \"https://example.com\",\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"WQC6lrkhRM5B\",\n            \"encrypted_pin\": \"JQuCpsT0JlP3F0LVeaUvGkb/6rM=\"\n        }\n    },\n    \"recurring\": false\n}'\n```\n\nExample:\n```json\n// Successful 3DS transaction\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--data '{}\n'\n```\n\nExample:\n```json\n// Incorrect pin transaction\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_pin&issuer:incorrect_pin' \\\n--data '{\n    \"amount\": 1000,\n    \"currency\": \"NGN\",\n    \"reference\": \"94ee715b-9c4b-4700-811b-c93a6f7ce07b\",\n    \"customer_id\": \"cus_c44nro7QZe\",\n    \"payment_method_id\": \"pmd_kKhbTyKhl4\",\n    \"redirect_url\": \"https://example.com\",\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"WQC6lrkhRM5B\",\n            \"encrypted_pin\": \"JQuCpsT0JlP3F0LVeaUvGkb/6rM=\"\n        }\n    },\n    \"recurring\": false\n}\n'\n```\n\nExample:\n```json\n// Insufficient funds AVS transaction\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_avs&issuer:insufficient_funds' \\\n--data '{}\n'\n```\n\nExample:\n```json\n// Redirect auth for Mobile Money transactions\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_redirect' \\\n--data '{}\n'\n```\n\nExample:\n```json\n// Successful transfer\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--data '{\n  \"action\": \"instant\",\n  \"disburse_option\": {\n    \"timezone\": \"Africa/Cairo\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"USD\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 3500\n    },\n    \"recipient_id\": \"rcb_aErW4535uiF8S\"\n  },\n  \"callback_url\": \"https://custom-redirect.com\"\n}'\n```\n\nExample:\n```json\n// Daily Transfer limit exceeded\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:daily_transfer_limit_exceeded' \\\n--data '{\n  \"action\": \"instant\",\n  \"disburse_option\": {\n    \"timezone\": \"Africa/Cairo\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"USD\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 3500\n    },\n    \"recipient_id\": \"rcb_aErW4535uiF8S\"\n  },\n  \"callback_url\": \"https://custom-redirect.com\"\n}'\n```\n\nExample:\n```json\n// Insufficient balance\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:insufficient_balance' \\\n--data '{\n  \"action\": \"instant\",\n  \"disburse_option\": {\n    \"timezone\": \"Africa/Cairo\"\n  },\n  \"payment_instruction\": {\n    \"source_currency\": \"USD\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 3500\n    },\n    \"recipient_id\": \"rcb_aErW4535uiF8S\"\n  },\n  \"callback_url\": \"https://custom-redirect.com\"\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.793Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":8,"totalLines":174,"estimatedTokens":1209}}121{"id":"doc-webhooks-e25a80bd","source":"documentation","title":"Webhooks","url":"https://developer.flutterwave.com/edit/webhooks","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationWebhooksIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestSecurely handle Flutterwave events on your webhook server.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.793Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":274}}122{"id":"doc-general_flow-2591c242","source":"documentation","title":"General Flow","url":"https://developer.flutterwave.com/v4.0/docs/main-payment-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--data '{\n  \"address\": {\n    \"city\": \"Gotham\",\n    \"country\": \"US\",\n    \"line1\": \"221B Baker Street\",\n    \"line2\": \"\",\n    \"postal_code\": \"94105\",\n    \"state\": \"Colorado\"\n  },\n  \"name\": {\n    \"first\": \"King\",\n    \"middle\": \"Leo\",\n    \"last\": \"James\"\n  },\n  \"phone\": {\n    \"country_code\": \"1\",\n    \"number\": \"6313958745\"\n  },\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_J0PvwvJB2n\",\n        \"address\": {\n            \"city\": \"Gotham\",\n            \"country\": \"US\",\n            \"line1\": \"221B Baker Street\",\n            \"line2\": \"\",\n            \"postal_code\": \"94105\",\n            \"state\": \"Colorado\"\n        },\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"phone\": {\n            \"country_code\": \"1\",\n            \"number\": \"6313958745\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T13:54:21.546559974Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"nonce\": \"w2zQDGCf1QXA\",\n        \"encrypted_card_number\": \"Li/5y8DsxwD/FrDZgAS4AmFQDE8Pn1ed1BvjY3j0QoY=\",\n        \"encrypted_expiry_month\": \"LyWZtiCL4oU7K65fWsOoA9B3\",\n        \"encrypted_expiry_year\": \"LC8FYIrkmK6oMULiBskRx9L3\",\n        \"encrypted_cvv\": \"Kiv9mwKcebmwbjWEN0Fd/ZBK2A==\"\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\": \"mobile_money\",\n   \"mobile_money\": {\n       \"country_code\": \"233\",\n       \"network\": \"MTN\",\n       \"phone_number\": \"9012345678\"\n   }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\":\"opay\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"expiry_month\": 8,\n            \"expiry_year\": 32,\n            \"first6\": \"123412\",\n            \"last4\": \"2222\",\n            \"network\": \"mastercard\"\n        },\n        \"id\": \"pmd_wlVhaYmkl2\",\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T14:29:26.650973145Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 1234.56,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"w2zQDGCf1QXA\",\n            \"encrypted_pin\": \"LC8FYIrkmK6oMULiBskRx9L3\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"otp\",\n        \"otp\": {\n            \"code\": \"123456\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n   \"authorization\":{\n      \"type\":\"avs\",\n      \"avs\":{\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"Coker Estate\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         }\n      }\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please authorise this payment on your mobile number: 2339012345678. It may take a few minutes to confirm this payment.\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge updated\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"amount\": 1500.25,\n        \"currency\": \"NGN\",\n        \"customer\": \"cus_EFE4TQhBSf\",\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"requires_pin\"\n        },\n        \"payment_method_details\": {\n            \"type\": \"card\",\n            \"card\": {\n                \"expiry_month\": 8,\n                \"expiry_year\": 2024,\n                \"first6\": \"123412\",\n                \"last4\": \"4444\",\n                \"network\": \"mastercard\"\n            },\n            \"id\": \"pmd_NkWibrRJIy\",\n            \"customer\": \"cus_EFE4TQhBSf\",\n            \"meta\": {}\n        },\n        \"redirect_url\": \"https://custom-redirect.com\",\n        \"reference\": \"XYZ123\",\n        \"status\": \"succeeded\",\n        \"issuer_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        }\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.794Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":13,"totalLines":282,"estimatedTokens":1715}}123{"id":"doc-webhooks-941b6228","source":"documentation","title":"Webhooks","url":"https://developer.flutterwave.com/v4.0/docs/webhooks","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\n{\n  \"data\": {\n    \"amount\": 2500,\n    \"created_datetime\": 1735116842.116,\n    \"currency\": \"KES\",\n    \"customer\": {\n      \"address\": null,\n      \"created_datetime\": 1732977179.938,\n      \"email\": \"[email protected]\",\n      \"id\": \"cus_csm0pcQim4\",\n      \"meta\": {},\n      \"name\": null,\n      \"phone\": null\n    },\n    \"description\": null,\n    \"id\": \"chg_Hq4oBRTJ4r\",\n    \"meta\": {},\n    \"payment_method\": {\n      \"client_ip\": null,\n      \"created_datetime\": 1735116842.107,\n      \"customer_id\": \"cus_csm0pcQim4\",\n      \"device_fingerprint\": null,\n      \"id\": \"pmd_sG5zwZBN4L\",\n      \"meta\": {},\n      \"mobile_money\": {\n        \"country_code\": \"234\",\n        \"network\": \"MTN\",\n        \"phone_number\": \"9067985861\"\n      },\n      \"type\": \"mobile_money\"\n    },\n    \"processor_response\": {\n      \"code\": \"00\",\n      \"type\": \"approved\"\n    },\n    \"redirect_url\": \"https://custom-redirect.com\",\n    \"reference\": \"49c3c6f5-aedd-4443-9eb4-92c51758f04a\",\n    \"status\": \"succeeded\"\n  },\n  \"id\": \"wbk_W5p6ktwU0jQ8RO4By860\",\n  \"timestamp\": 1735116884019,\n  \"type\": \"charge.completed\"\n}\n```\n\nExample:\n```node\n//Sample hashing\nconst crypto = require('crypto');\n\nfunction isValidFlutterwaveWebhook(rawBody, signature, secretHash) {\n  const hash = crypto\n    .createHmac('sha256', secretHash)\n    .update(rawBody)\n    .digest('base64');\n\n  return hash === signature;\n}\n```\n\nExample:\n```node\n// complete hashing and header lookup\nconst express = require('express');\nconst bodyParser = require('body-parser');\n\nconst app = express();\n\n// Capture raw body\napp.use(bodyParser.json({\n  verify: (req, res, buf) => {\n    req.rawBody = buf.toString();\n  }\n}));\n\n// Webhook Route\napp.post('/webhook', (req, res) => {\n  const flutterwaveSignature = req.headers['flutterwave-signature'];\n  const isValid = isValidFlutterwaveWebhook(req.rawBody, flutterwaveSignature, process.env.FLW_SECRET_HASH);\n\n  if (!isValid) {\n    return res.status(401).send('Invalid signature');\n  }\n\n  // Process webhook\n  console.log(req.body);\n  res.sendStatus(200);\n});\n```\n\nExample:\n```javascript\n// In an Express-like app:\n\napp.post(\"/flw-webhook\", (req, res) => {\n    // If you specified a secret hash, check for the signature\n    const secretHash = process.env.FLW_SECRET_HASH;\n    const signature = req.headers[\"flutterwave-signature\"];\n    if (!signature || (signature !== secretHash)) {\n        // This request isn't from Flutterwave; discard\n        res.status(401).end();\n    }\n    const payload = req.body;\n    // It's a good idea to log all received events.\n    log(payload);\n    // Do something (that doesn't take too long) with the payload\n    res.status(200).end()\n});\n```\n\nExample:\n```php\n// In a Laravel-like app:\n\nRoute::post('/flw-webhook', function (\\Illuminate\\Http\\Request $request) {\n    // If you specified a secret hash, check for the signature\n    $secretHash = config('services.flutterwave.secret_hash');\n    $signature = $request->header('flutterwave-signature');\n    if (!$signature || ($signature !== $secretHash)) {\n        // This request isn't from Flutterwave; discard\n        abort(401);\n    }\n    $payload = $request->all();\n    // It's a good idea to log all received events.\n    Log::info($payload);\n    // Do something (that doesn't take too long) with the payload\n    return response(200);\n});\n```\n\nExample:\n```python\n# In a Django-like app:\nimport os\n\n@require_POST\n@csrf_exempt\ndef webhook(request):\n    secret_hash = os.getenv(\"FLW_SECRET_HASH\")\n    signature = request.headers.get(\"flutterwave-signature\")\n    if signature == None or (signature != secret_hash):\n        # This request isn't from Flutterwave; discard\n        return HttpResponse(status=401)\n    payload = request.body\n    # It's a good idea to log all received events.\n    log(payload)\n    # Do something (that doesn't take too long) with the payload\n    return HttpResponse(status=200)\n```\n\nExample:\n```javascript\nconst payload = req.body;\nconst response = await flw.Transaction.verify({id: payload.id});\nif (\n    response.data.status === \"successful\"\n    && response.data.amount === expectedAmount\n    && response.data.currency === expectedCurrency\n    && response.data.tx_ref === expectedReference ) {\n    // Success! Confirm the customer's payment\n} else {\n    // Inform the customer their payment was unsuccessful\n}\n```\n\nExample:\n```javascript\nconst payload = req.body;\nconst existingEvent = await PaymentEvent.where({id: payload.id}).find();\nif (existingEvent.status === payload.status) {\n    // The status hasn't changed,\n    // so it's probably just a duplicate event\n    // and we can discard it\n    res.status(200).end();\n}\n\n// Record this event\nawait PaymentEvent.save(payload);\n// Process event...\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.794Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":8,"totalLines":186,"estimatedTokens":1207}}124{"id":"doc-errors-34b49310","source":"documentation","title":"Errors","url":"https://developer.flutterwave.com/v4.0/docs/common-errors","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"REQUEST_NOT_VALID\",\n        \"code\": \"10400\",\n        \"message\": \"Request is not valid\",\n        \"validation_errors\": [\n            {\n                \"field_name\": \"payment_method_id\",\n                \"message\": \"must not be null\"\n            },\n            {\n                \"field_name\": \"currency\",\n                \"message\": \"must not be null\"\n            }\n        ]\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_ZWf4Kiifxx\",\n        \"amount\": 250,\n        ....\n        \"next_action\": {\n            \"type\": \"requires_requery\",\n            \"requires_requery\": {}\n        },\n        \"payment_method_details\": {\n            ...\n        },\n       ..\n        \"status\": \"pending\",\n        ...\n        \"created_datetime\": \"2026-05-14T13:33:15.625Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_tSn4fdwdwR\",\n        \"amount\": 250,\n         ...    \n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developersandbox.flutterwave.com/redirects?bank_account&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6IjQ0OTllNjBiLThkYzgtNDdlMy05ZDYyLWQwOTUyNjA1ZTYyOSIsImNoYXJnZUlkIjoiY2hnX3RTbjRmZHdkd1IiLCJzdWIiOiI0NDk5ZTYwYi04ZGM4LTQ3ZTMtOWQ2Mi1kMDk1MjYwNWU2MjkiLCJpYXQiOjE3NzkyMjY5MzAsImV4cCI6MTc3OTIyNzIzMH0.lnGvyF4_kWIPW_G0-qWWV1jwGeD0anmsqkXdKN58tSc\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"bank_account\",\n            \"bank_account\": {},\n            \"id\": \"pmd_f5hpfzTraH\",\n            \"meta\": {},\n            \"created_datetime\": \"2026-05-19T21:41:57.493Z\"\n        },\n        \"redirect_url\": \"https://flutterwave.com/\",\n        \"reference\": \"TRN-vL11q2TcVqhc\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2026-05-19T21:42:10.654Z\"\n    }\n}\n```\n\nExample:\n```text\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{ACCESS TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Idempotency-Key: {{X_IDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"TRN-64OVUUz9Tul7\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_9zKqBW94OP\",\n   \"payment_method_id\": \"pmd_gZvoGry0vq\",\n   \"redirect_url\":\"https://flutterwave.com/\",\n   \"amount\": 250,\n   \"meta\":{\n     \"person_name\": \"Derek Jones\",\n     \"role\": \"Developer\"\n   }\n }'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.795Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":4,"totalLines":104,"estimatedTokens":693}}125{"id":"doc-ussd-d64feb42","source":"documentation","title":"USSD","url":"https://developer.flutterwave.com/edit/ussd","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationUSSDIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestGenerate USSD string for offline payments.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.795Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":269}}126{"id":"doc-retrieve_a_settlement-e03b09e1","source":"documentation","title":"Retrieve a settlement","url":"https://developer.flutterwave.com/reference/settlement_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.796Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}127{"id":"doc-retrieve_a_transfer_recipient-9c22d601","source":"documentation","title":"Retrieve a transfer recipient","url":"https://developer.flutterwave.com/reference/transfers_recipients_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.796Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}128{"id":"doc-retrieve_a_transfer_sender-83b110c5","source":"documentation","title":"Retrieve a transfer sender","url":"https://developer.flutterwave.com/reference/transfers_senders_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.796Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}129{"id":"doc-delete_a_transfer_recipient-a8e7e948","source":"documentation","title":"Delete a transfer recipient","url":"https://developer.flutterwave.com/reference/transfers_recipients_delete","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.796Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}130{"id":"doc-list_settlement-243315e9","source":"documentation","title":"List settlement","url":"https://developer.flutterwave.com/reference/settlement_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.796Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}131{"id":"doc-fetch_converted_rate-3bc21e3a","source":"documentation","title":"Fetch converted rate","url":"https://developer.flutterwave.com/reference/transfer_rates_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.796Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}132{"id":"doc-list_chargebacks-2f812259","source":"documentation","title":"List chargebacks","url":"https://developer.flutterwave.com/reference/chargebacks_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.796Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}133{"id":"doc-create_a_transfer_sender-c8a55a1d","source":"documentation","title":"Create a transfer sender","url":"https://developer.flutterwave.com/reference/transfers_senders_create","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.797Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}134{"id":"doc-get_chargeback_by_id-7a22c5ab","source":"documentation","title":"get chargeback by id","url":"https://developer.flutterwave.com/reference/chargebacks_get_by_id","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.797Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}135{"id":"doc-general_flow-6f521992","source":"documentation","title":"General Flow","url":"https://developer.flutterwave.com/edit/main-payment-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationGeneral FlowIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestGet started with Flutterwave payments.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.797Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":270}}136{"id":"doc-introduction-21f31f85","source":"documentation","title":"Introduction","url":"https://developer.flutterwave.com/edit/introduction-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationIntroductionIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to use our APIs to accept payments.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.797Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":271}}137{"id":"doc-delete_a_transfer_sender-5ab6eea1","source":"documentation","title":"Delete a transfer sender","url":"https://developer.flutterwave.com/reference/transfers_senders_delete","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.797Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}138{"id":"doc-best_practices-c544b2df","source":"documentation","title":"Best Practices","url":"https://developer.flutterwave.com/edit/best-practices","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationBest PracticesIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggest\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.797Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":261}}139{"id":"doc-rate_conversion-36d310b0","source":"documentation","title":"Rate conversion","url":"https://developer.flutterwave.com/reference/transfer_rates_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.797Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}140{"id":"doc-card_payments-af49554c","source":"documentation","title":"Card Payments","url":"https://developer.flutterwave.com/edit/card","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationCard PaymentsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestCharge customers' credit and debit cards.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.798Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":271}}141{"id":"doc-update_a_chargeback-e028a4b6","source":"documentation","title":"Update a chargeback","url":"https://developer.flutterwave.com/reference/chargeback_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.798Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}142{"id":"doc-retrieve_a_charge-cd97a431","source":"documentation","title":"Retrieve a charge","url":"https://developer.flutterwave.com/v4.0/reference/charges_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.798Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}143{"id":"doc-orchestrator_flow-8da63771","source":"documentation","title":"Orchestrator Flow","url":"https://developer.flutterwave.com/v4.0/docs/payment-orchestrator-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'X-Scenario-Key: scenario:auth_pin&issuer:approved' \\\n--data '{\n    \"amount\": 1234.56,\n    \"currency\": \"USD\",\n    \"reference\": \"YOUR_EXAMPLE_REFERENCE\",\n    \"payment_method\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"nonce\": \"n0Ad6mOzVnLI\",\n            \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\",\n            \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\",\n            \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\",\n            \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\"\n        }\n    },\n    \"redirect_url\": \"https://custom-redirect.com\",\n    \"customer\": {\n        \"address\": {\n            \"country\": \"US\",\n            \"city\": \"Gotham\",\n            \"state\": \"Colorado\",\n            \"postal_code\": \"94105\",\n            \"line1\": \"221B Baker Street\"\n        },\n        \"phone\": {\n            \"country_code\": \"41\",\n            \"number\": \"7069423351\"\n        },\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"email\": \"[email protected]\"\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{UNIQUE_IDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}' \\\n--data-raw '{\n    \"amount\": 1234.56,\n    \"currency\": \"GHS\",\n    \"reference\": \"YOUR_EXAMPLE_REFERENCE\",\n    \"customer\": {\n        \"address\": {\n            \"country\": \"US\",\n            \"city\": \"Gotham\",\n            \"state\": \"Colorado\",\n            \"postal_code\": \"94105\",\n            \"line1\": \"221B Baker Street\"\n        },\n        \"email\": \"[email protected]\",\n        \"meta\": {},\n        \"name\": {\n            \"first\": \"King\",\n            \"middle\": \"Leo\",\n            \"last\": \"James\"\n        },\n        \"phone\": {\n            \"country_code\": \"233\",\n            \"number\": \"9012345678\"\n        }\n    },\n    \"payment_method\": {\n        \"type\": \"mobile_money\",\n        \"mobile_money\": {\n            \"country_code\": \"233\",\n            \"network\": \"MTN\",\n            \"phone_number\": \"9012345678\"\n        }\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"amount\":1234.56,\n   \"currency\":\"NGN\",\n   \"reference\":\"YOUR_EXAMPLE_REFERENCE\",\n   \"payment_method\":{\n      \"type\":\"opay\"\n   },\n   \"redirect_url\":\"http://www.google.com\",\n   \"customer\":{\n      \"address\":{\n         \"country\": \"US\",\n         \"city\": \"Gotham\",\n         \"state\": \"Colorado\",\n         \"postal_code\": \"94105\",\n         \"line1\": \"221B Baker Street\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":\"7069423351\"\n      },\n      \"name\":{\n         \"first\": \"King\",\n         \"middle\": \"Leo\",\n         \"last\": \"James\"\n      },\n      \"email\":\"[email protected]\"\n   }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"reference\": \"YOUR_EXAMPLE_REFERENCE\",\n    \"currency\": \"NGN\",\n    \"amount\": 1234.56,\n    \"payment_method\": {\n        \"type\": \"ussd\",\n        \"ussd\": {\n            \"account_bank\":\"044\"\n        }\n    },\n   \"redirect_url\":\"http://www.custom-redirect.com\",\n   \"customer\":{\n      \"address\":{\n        \"country\": \"US\",\n        \"city\": \"Gotham\",\n        \"state\": \"Colorado\",\n        \"postal_code\": \"94105\",\n        \"line1\": \"221B Baker Street\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":9069423351\n      },\n      \"name\":{\n         \"first\": \"King\",\n         \"middle\": \"Leo\",\n         \"last\": \"James\"\n      },\n      \"email\":\"[email protected]\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"w2zQDGCf1QXA\",\n            \"encrypted_pin\": \"LC8FYIrkmK6oMULiBskRx9L3\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n    \"authorization\": {\n        \"type\": \"otp\",\n        \"otp\": {\n            \"code\": \"123456\"\n        }\n    }\n}\n```\n\nExample:\n```json\n{\n   \"authorization\":{\n      \"type\":\"avs\",\n      \"avs\":{\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"Coker Estate\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         }\n      }\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_RCDsCBDyaV\",\n        ...\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please authorise this payment on your mobile number: 2339012345678. It may take a few minutes to confirm this payment.\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge updated\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"amount\": 1500.25,\n        \"currency\": \"NGN\",\n        \"customer\": \"cus_EFE4TQhBSf\",\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"requires_pin\"\n        },\n        \"payment_method_details\": {\n            \"type\": \"card\",\n            \"card\": {\n                \"expiry_month\": 8,\n                \"expiry_year\": 2024,\n                \"first6\": \"123412\",\n                \"last4\": \"4444\",\n                \"network\": \"mastercard\"\n            },\n            \"id\": \"pmd_NkWibrRJIy\",\n            \"customer\": \"cus_EFE4TQhBSf\",\n            \"meta\": {}\n        },\n        \"redirect_url\": \"www.flutterwave.com\",\n        \"reference\": \"XYZ123\",\n        \"status\": \"succeeded\",\n        \"issuer_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        }\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.798Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":10,"totalLines":295,"estimatedTokens":1872}}144{"id":"doc-update_a_charge-5c85f51a","source":"documentation","title":"Update a charge","url":"https://developer.flutterwave.com/v4.0/reference/charges_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.799Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}145{"id":"doc-create_a_customer-9ef59fc3","source":"documentation","title":"Create a customer","url":"https://developer.flutterwave.com/v4.0/reference/customers_create","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.799Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}146{"id":"doc-initiate_an_orchestrator_charge-5064c07b","source":"documentation","title":"Initiate an Orchestrator charge.","url":"https://developer.flutterwave.com/v4.0/reference/orchestration_direct_charge_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.799Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}147{"id":"doc-opay-f2897f3d","source":"documentation","title":"OPay","url":"https://developer.flutterwave.com/v4.0/docs/opay","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Shirley\",\n      \"country\":\"US\",\n      \"line1\":\"175 E Parkview Dr\",\n      \"line2\":\"\",\n      \"postal_code\":\"11967\",\n      \"state\":\"New York\"\n   },\n   \"name\":{\n      \"first\":\"John\",\n      \"middle\":\"Agba\",\n      \"last\":\"Doe\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Customer created\",\n   \"data\":{\n      \"id\":\"cus_dc0FUyBpd0\",\n      \"address\":{\n         \"city\":\"Shirley\",\n         \"country\":\"US\",\n         \"line1\":\"175 E Parkview Dr\",\n         \"line2\":\"\",\n         \"postal_code\":\"11967\",\n         \"state\":\"New York\"\n      },\n      \"email\":\"[email protected]\",\n      \"name\":{\n         \"first\":\"John\",\n         \"middle\":\"Agba\",\n         \"last\":\"Doe\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":\"6313958745\"\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-25T20:16:38.246410457Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\":\"opay\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Payment method created\",\n  \"data\": {\n    \"type\": \"opay\",\n    \"opay\": {},\n    \"id\": \"pmd_uF9ADr9LvH\",\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-26T14:38:25.179075400Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"currency\":\"NGN\",\n   \"customer_id\":\"cus_dc0FUyBpd0\",\n   \"payment_method_id\":\"pmd_uF9ADr9LvH\",\n   \"amount\":200,\n   \"reference\":\"ex61m23j6a3y0k34o9ilrri\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_nONgeAGY97\",\n      \"amount\":200,\n      \"fees\":[\n         {\n            \"type\":\"vat\",\n            \"amount\":0\n         },\n         {\n            \"type\":\"app\",\n            \"amount\":0\n         },\n         {\n            \"type\":\"merchant\",\n            \"amount\":0\n         },\n         {\n            \"type\":\"stamp_duty\",\n            \"amount\":0\n         }\n      ],\n      \"currency\":\"NGN\",\n      \"customer_id\":\"cus_dc0FUyBpd0\",\n      \"settled\":false,\n      \"settlement_id\":[],\n      \"meta\":{},\n      \"next_action\":{\n         \"type\":\"redirect_url\",\n         \"redirect_url\":{\n            \"url\":\"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?opay&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImNiYThhMTkwLTE2OGUtNGNmZS05NmY5LTE2NDZhYjFhOWNkYiIsImNoYXJnZUlkIjoiY2hnX25PTmdlQUdZOTciLCJzdWIiOiJjYmE4YTE5MC0xNjhlLTRjZmUtOTZmOS0xNjQ2YWIxYTljZGIiLCJpYXQiOjE3MzgzMTc3MTAsImV4cCI6MTczODMxODAxMH0.QgLoZYfNhHJOJJvOsLA9eLoxOjGF0qnuehPMgMP4zD4\"\n         }\n      },\n      \"payment_method_details\":{\n         \"type\":\"opay\",\n         \"opay\":{},\n         \"id\":\"pmd_uF9ADr9LvH\",\n         \"meta\":{},\n         \"created_datetime\":\"2024-12-26T14:38:25.179Z\"\n      },\n      \"reference\":\"ex61m23j6a3y0k34o9ilrri\",\n      \"status\":\"pending\",\n      \"processor_response\":{\n         \"type\":\"pending\",\n         \"code\":\"02\"\n      },\n      \"created_datetime\":\"2025-01-31T10:01:50.209460744Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_z8BBd4nvlPxrg0GGTEFw\",\n  \"timestamp\": 1738317739798,\n  \"type\": \"charge.completed\",\n  \"data\": {\n    \"id\": \"chg_nONgeAGY97\",\n    \"amount\": 200,\n    \"currency\": \"NGN\",\n    \"customer\": {\n      \"id\": \"cus_dc0FUyBpd0\",\n      \"address\": {\n        \"city\": \"Shirley\",\n        \"country\": \"US\",\n        \"line1\": \"175 E Parkview Dr\",\n        \"line2\": \"\",\n        \"postal_code\": \"11967\",\n        \"state\": \"New York\"\n      },\n      \"email\": \"[email protected]\",\n      \"name\": {\n        \"first\": \"John\",\n        \"middle\": \"Agba\",\n        \"last\": \"Doe\"\n      },\n      \"phone\": {\n        \"country_code\": \"1\",\n        \"number\": \"6313958745\"\n      },\n      \"meta\": {},\n      \"created_datetime\": \"2024-12-25T20:16:38.246Z\"\n    },\n    \"description\": null,\n    \"meta\": {},\n    \"payment_method\": {\n      \"type\": \"opay\",\n      \"opay\": {},\n      \"id\": \"pmd_uF9ADr9LvH\",\n      \"customer_id\": null,\n      \"meta\": {},\n      \"device_fingerprint\": null,\n      \"client_ip\": null,\n      \"created_datetime\": \"2024-12-26T14:38:25.179Z\"\n    },\n    \"redirect_url\": null,\n    \"reference\": \"ex61m23j6a3y0k34o9ilrri\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2025-01-31T10:01:50.209Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Charge fetched\",\n  \"data\": {\n    \"id\": \"chg_LgTqLXDGXq\",\n    \"amount\": 200,\n    \"currency\": \"NGN\",\n    \"customer_id\": \"cus_dc0FUyBpd0\",\n    \"settled\": false,\n    \"settlement_id\": [],\n    \"meta\": {},\n    \"payment_method_details\": {\n      \"type\": \"opay\",\n      \"opay\": {},\n      \"id\": \"pmd_uF9ADr9LvH\",\n      \"meta\": {},\n      \"created_datetime\": \"2024-12-26T14:38:25.179Z\"\n    },\n    \"reference\": \"ex61m23j6a3y0kk4o8ilrri\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2024-12-27T08:52:18.128Z\"\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.800Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":9,"totalLines":264,"estimatedTokens":1573}}148{"id":"doc-pay_with_bank_transfer-269d3761","source":"documentation","title":"Pay With Bank Transfer","url":"https://developer.flutterwave.com/v4.0/docs/pay-with-bank-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Content-Type: application/json' \\\n--header 'Accept: application/json' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--data-raw '{\n  \"name\": {\n    \"first\": \"Cornelius\",\n    \"last\": \"Ashley-Osuzoka\"\n  },\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_WWVaC0InrN\",\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"Cornelius\",\n            \"last\": \"Ashley-Osuzoka\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-06-02T07:40:48.637002170Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"1ca9e18f-f038-436f-b32b-3b7facdb1e13\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"amount\": 0,\n    \"currency\": \"NGN\",\n    \"bank_code\":\"090567\",\n    \"account_type\": \"static\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\",\n    \"bvn\": \"12345678901\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Virtual account created\",\n    \"data\": {\n        \"id\": \"van_7qJ9WlDt4j\",\n        \"amount\": 0,\n        \"account_number\": \"9288669694\",\n        \"reference\": \"982e211d-61dd-4f24-a0bb-fbc62315fcb6\",\n        \"account_bank_name\": \"Flutterwave MFB\",\n        \"account_type\": \"static\",\n        \"status\": \"active\",\n        \"account_expiration_datetime\": \"3025-10-19T12:37:44.744Z\",\n        \"note\": \"Please make a bank transfer to Tester FLW\",\n        \"customer_id\": \"cus_F6FiToCuXa\",\n        \"created_datetime\": \"2026-06-18T12:37:44.755Z\",\n        \"meta\": {},\n        \"currency\": \"NGN\",\n        \"narration\": \"Tester\"\n    }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"REQUEST_NOT_VALID\",\n        \"code\": \"10400\",\n        \"message\": \"Request is not valid\",\n        \"validation_errors\": [\n            {\n                \"field_name\": \"bvn\",\n                \"message\": \"bvn must be exactly 11 characters long and a signed integer\"\n            }\n        ]\n    }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"a4d5f6b8-a785-4d41-8932-50fd8288aec8\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"expiry\": 60,\n    \"amount\": 1500,\n    \"bank_code\":\"090567\",\n    \"currency\": \"NGN\",\n    \"account_type\": \"dynamic\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Virtual account created\",\n    \"data\": {\n        \"id\": \"van_IZel8kyHKq\",\n        \"amount\": 1530.00,\n        \"account_number\": \"9059273981\",\n        \"reference\": \"f43289e0-4491-43a4-b7e4-e2006ed5f258\",\n        \"account_bank_name\": \"Flutterwave MFB\",\n        \"account_type\": \"dynamic\",\n        \"status\": \"active\",\n        \"account_expiration_datetime\": \"2026-06-18T13:05:28.000Z\",\n        \"note\": \"Please make a bank transfer to Tester FLW\",\n        \"customer_id\": \"cus_F6FiToCuXa\",\n        \"created_datetime\": \"2026-06-18T13:04:29.863Z\",\n        \"meta\": {},\n        \"currency\": \"NGN\",\n        \"narration\": \"Tester\"\n    }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_xCBGoxP44NzL74hcCJiV\",\n  \"timestamp\": 1748850422635,\n  \"type\": \"charge.completed\",\n  \"data\": {\n    \"id\": \"chg_zH0BLoNltt\",\n    \"amount\": 175,\n    \"currency\": \"NGN\",\n    \"customer\": {\n      \"id\": \"cus_WWVaC0InrN\",\n      \"address\": null,\n      \"email\": \"[email protected]\",\n      \"name\": {\n        \"first\": \"Cornelius\",\n        \"middle\": null,\n        \"last\": \"Ashley-Osuzoka\"\n      },\n      \"phone\": null,\n      \"meta\": {},\n      \"created_datetime\": \"2025-06-02T07:40:48.637Z\"\n    },\n    \"description\": null,\n    \"meta\": {},\n    \"payment_method\": {\n      \"type\": \"bank_transfer\",\n      \"bank_transfer\": {\n        \"account_expires_in\": null,\n        \"account_display_name\": null,\n        \"account_type\": null\n      },\n      \"id\": \"pmd_NzbQZvbnPj\",\n      \"customer_id\": null,\n      \"meta\": {},\n      \"device_fingerprint\": null,\n      \"client_ip\": null,\n      \"created_datetime\": \"2025-06-02T07:46:47.520Z\"\n    },\n    \"redirect_url\": null,\n    \"reference\": \"deac44b2-f8bd-4492-be07-bc25e5c4b159\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2025-06-02T07:47:02.537812148Z\"\n  }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/charges/chg_HJRm0DeDIN' \\\n--header 'Accept: application/json' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_zH0BLoNltt\",\n        \"amount\": 175,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_WWVaC0InrN\",\n        \"settled\": true,\n        \"settlement_id\": [\n            \"stm_XPx038OwdI\"\n        ],\n        \"meta\": {},\n        \"payment_method_details\": {\n            \"type\": \"bank_transfer\",\n            \"bank_transfer\": {},\n            \"id\": \"pmd_NzbQZvbnPj\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-06-02T07:46:47.520Z\"\n        },\n        \"reference\": \"deac44b2-f8bd-4492-be07-bc25e5c4b159\",\n        \"status\": \"succeeded\",\n        \"processor_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        },\n        \"created_datetime\": \"2025-06-02T07:47:02.945Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/charges?virtual_account_id=van_b6v7ZkuLug' \\\n--header 'Accept: application/json' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charges fetched\",\n    \"meta\": {\n        \"page_info\": {\n            \"total\": 1,\n            \"current_page\": 1,\n            \"total_pages\": 1\n        }\n    },\n    \"data\": [\n        {\n            \"id\": \"chg_zH0BLoNltt\",\n            \"amount\": 175,\n            \"fees\": [\n                {\n                    \"type\": \"vat\",\n                    \"amount\": 0\n                },\n                {\n                    \"type\": \"app\",\n                    \"amount\": 0\n                },\n                {\n                    \"type\": \"merchant\",\n                    \"amount\": 0\n                },\n                {\n                    \"type\": \"stamp_duty\",\n                    \"amount\": 0\n                }\n            ],\n            \"currency\": \"NGN\",\n            \"customer_id\": \"cus_WWVaC0InrN\",\n            \"settled\": true,\n            \"settlement_id\": [\n                \"stm_XPx038OwdI\"\n            ],\n            \"meta\": {},\n            \"payment_method_details\": {\n                \"type\": \"bank_transfer\",\n                \"bank_transfer\": {},\n                \"id\": \"pmd_NzbQZvbnPj\",\n                \"meta\": {},\n                \"created_datetime\": \"2025-06-02T07:46:47.520Z\"\n            },\n            \"reference\": \"deac44b2-f8bd-4492-be07-bc25e5c4b159\",\n            \"status\": \"succeeded\",\n            \"processor_response\": {\n                \"type\": \"approved\",\n                \"code\": \"00\"\n            },\n            \"created_datetime\": \"2025-06-02T07:47:02.945Z\"\n        }\n    ]\n}\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Scenario-Key: issuer:approved' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"cb0e10d5-f59e-424b-af44-65445ae4472b\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"amount\": 1500,\n    \"currency\": \"NGN\",\n    \"bank_code\":\"090567\",\n    \"account_type\": \"static\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\",\n    \"bvn\": \"12345678901\"\n}'\n```\n\nExample:\n```curl\ncurl --location 'https://developersandbox-api.flutterwave.com/virtual-accounts' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Scenario-Key: issuer:failed' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"reference\": \"cb0e10d5-f59e-424b-af44-65445ae4472b\",\n    \"customer_id\": \"cus_WWVaC0InrN\",\n    \"amount\": 1500,\n    \"currency\": \"NGN\",\n    \"bank_code\":\"090567\",\n    \"account_type\": \"static\",\n    \"narration\": \"Cornelius Ashley-Osuzoka\",\n    \"bvn\": \"12345678901\"\n}'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.800Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":14,"totalLines":353,"estimatedTokens":2325}}149{"id":"doc-mobile_money-96110204","source":"documentation","title":"Mobile Money","url":"https://developer.flutterwave.com/v4.0/docs/mobile-money","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Gotham\",\n      \"country\":\"US\",\n      \"line1\":\"221B Baker Street\",\n      \"line2\":\"\",\n      \"postal_code\":\"94105\",\n      \"state\":\"Colorado\"\n   },\n   \"name\":{\n      \"first\":\"King\",\n      \"middle\":\"Leo\",\n      \"last\":\"James\"\n   },\n   \"phone\":{\n      \"country_code\":\"233\",\n      \"number\":\"9012345678\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Customer created\",\n   \"data\":{\n      \"id\":\"cus_X0yJv3ZMpL\",\n      \"address\":{\n         \"city\":\"Gotham\",\n         \"country\":\"US\",\n         \"line1\":\"221B Baker Street\",\n         \"line2\":\"\",\n         \"postal_code\":\"94105\",\n         \"state\":\"Colorado\"\n      },\n      \"email\":\"[email protected]\",\n      \"name\":{\n         \"first\":\"King\",\n         \"middle\":\"Leo\",\n         \"last\":\"James\"\n      },\n      \"phone\":{\n         \"country_code\":\"233\",\n         \"number\":\"9012345678\"\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-01-29T12:44:53.049Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\": \"mobile_money\",\n   \"mobile_money\": {\n       \"country_code\": \"233\",\n       \"network\": \"MTN\",\n       \"phone_number\": \"9012345678\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"mobile_money\",\n        \"mobile_money\": {\n            \"network\": \"MTN\",\n            \"country_code\": \"233\",\n            \"phone_number\": \"9012345678\"\n        },\n        \"id\": \"pmd_kwU1jeHpBC\",\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-30T12:25:52.596970660Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"currency\": \"GHS\",\n   \"customer_id\": \"cus_X0yJv3ZMpL\",\n   \"payment_method_id\": \"pmd_kwU1jeHpBC\",\n   \"amount\": 200,\n   \"reference\": \"{{UNIQUE_CHARGE_REFERENCE}}\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_xdSlPfGXSp\",\n        \"amount\": 200,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"GHS\",\n        \"customer_id\": \"cus_X0yJv3ZMpL\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please authorise this payment on your mobile number: 2339012345678. It may take a few minutes to confirm this payment.\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"mobile_money\",\n            \"mobile_money\": {\n                \"network\": \"MTN\",\n                \"country_code\": \"233\",\n                \"phone_number\": \"9012345678\"\n            },\n            \"id\": \"pmd_kwU1jeHpBC\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-30T12:25:52.596Z\"\n        },\n        \"reference\": \"69a26371-53d1-4b34-8dfa-ae7a33092b9b\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-01-30T12:32:40.207870937Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\": \"failed\",\n   \"error\": {\n       \"type\": \"REQUEST_NOT_VALID\",\n       \"code\": \"10400\",\n       \"message\": \"Currency not supported for GH Mobile Money.\",\n       \"validation_errors\": []\n   }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_ZlH8y4R45J6IeqHmmIbD\",\n   \"timestamp\":1738250214856,\n   \"type\":\"charge.completed\",\n   \"data\":{\n      \"id\":\"chg_xdSlPfGXSp\",\n      \"amount\":200,\n      \"currency\":\"GHS\",\n      \"customer\":{\n         \"id\":\"cus_X0yJv3ZMpL\",\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         },\n         \"email\":\"[email protected]\",\n         \"name\":{\n            \"first\":\"King\",\n            \"middle\":\"Leo\",\n            \"last\":\"James\"\n         },\n         \"phone\":{\n            \"country_code\":\"233\",\n            \"number\":\"9012345678\"\n         },\n         \"meta\":{},\n         \"created_datetime\":\"2025-01-29T12:44:53.049Z\"\n      },\n      \"description\":null,\n      \"meta\":{},\n      \"payment_method\":{\n         \"type\":\"mobile_money\",\n         \"mobile_money\":{\n            \"network\":\"MTN\",\n            \"country_code\":\"233\",\n            \"phone_number\":\"9012345678\"\n         },\n         \"id\":\"pmd_kwU1jeHpBC\",\n         \"customer_id\":null,\n         \"meta\":{},\n         \"device_fingerprint\":null,\n         \"client_ip\":null,\n         \"created_datetime\":\"2025-01-30T12:25:52.596Z\"\n      },\n      \"redirect_url\":null,\n      \"reference\":\"69a26371-53d1-4b34-8dfa-ae7a33092b9b\",\n      \"status\":\"succeeded\",\n      \"processor_response\":{\n         \"type\":\"approved\",\n         \"code\":\"00\"\n      },\n      \"created_datetime\":\"2025-01-30T12:32:40.207Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/{{ID}}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_xdSlPfGXSp\",\n        \"amount\": 200,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"GHS\",\n        \"customer_id\": \"cus_X0yJv3ZMpL\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {},\n        \"payment_method_details\": {\n            \"type\": \"mobile_money\",\n            \"mobile_money\": {\n                \"network\": \"MTN\",\n                \"country_code\": \"233\",\n                \"phone_number\": \"9012345678\"\n            },\n            \"id\": \"pmd_kwU1jeHpBC\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-30T12:25:52.596Z\"\n        },\n        \"reference\": \"69a26371-53d1-4b34-8dfa-ae7a33092b9b\",\n        \"status\": \"succeeded\",\n        \"processor_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        },\n        \"created_datetime\": \"2025-01-30T12:32:40.207870937Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Content-Type: application/json' \\\n--header 'Accept: application/json' \\\n--header 'Authorization: Bearer{{YOUR_ACCESS_TOKEN}}' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--header 'X-Scenario-Key: scenario:auth_redirect' \\\n--data '{\n  \"reference\": \"13c7cffa-0ec0-4da2-a224-e166a71d7a61\",\n  \"currency\": \"GHS\",\n  \"customer_id\": \"cus_FLCIsFZR3C\",\n  \"payment_method_id\": \"pmd_2B0BYBxn1G\",\n  \"amount\": 100\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_UlED8fc18O\",\n        \"amount\": 100,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"GHS\",\n        \"customer_id\": \"cus_FLCIsFZR3C\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?mobile_money&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6Ijc3YTZkOWViLTA2ODItNGZlZS05ODlmLWYxZTk1YzcwNGNhMiIsImNoYXJnZUlkIjoiY2hnX1VsRUQ4ZmMxOE8iLCJzdWIiOiI3N2E2ZDllYi0wNjgyLTRmZWUtOTg5Zi1mMWU5NWM3MDRjYTIiLCJpYXQiOjE3NDA0ODkwNjUsImV4cCI6MTc0MDQ4OTM2NX0.rMALQTjyAKQpIPsdqlldy3sCDsVLssymFssrtIBBjZI\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"mobile_money\",\n            \"mobile_money\": {\n                \"network\": \"MTN\",\n                \"country_code\": \"233\",\n                \"phone_number\": \"9012345678\"\n            },\n            \"id\": \"pmd_2B0BYBxn1G\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-02-25T12:45:44.718Z\"\n        },\n        \"reference\": \"6ca03b4e-9f34-4529-a741-a25352370a42\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-02-25T13:11:05.095614706Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.801Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":12,"totalLines":391,"estimatedTokens":2538}}150{"id":"doc-ussd-2eb79e72","source":"documentation","title":"USSD","url":"https://developer.flutterwave.com/v4.0/docs/ussd","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Shirley\",\n      \"country\":\"US\",\n      \"line1\":\"175 E Parkview Dr\",\n      \"line2\":\"\",\n      \"postal_code\":\"11967\",\n      \"state\":\"New York\"\n   },\n   \"name\":{\n      \"first\":\"John\",\n      \"middle\":\"Agba\",\n      \"last\":\"Doe\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Customer created\",\n    \"data\": {\n        \"id\": \"cus_IpH7CKCUtD\",\n        \"address\": {\n            \"city\": \"Shirley\",\n            \"country\": \"US\",\n            \"line1\": \"175 E Parkview Dr\",\n            \"postal_code\": \"11967\",\n            \"state\": \"New York\"\n        },\n        \"email\": \"[email protected]\",\n        \"name\": {\n            \"first\": \"John\",\n            \"middle\": \"Agba\",\n            \"last\": \"Doe\"\n        },\n        \"phone\": {\n            \"country_code\": \"1\",\n            \"number\": \"6313958745\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-24T13:51:48.758121209Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/banks?country=NG' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"string\",\n  \"data\": [\n    {\n      \"id\": \"bnk_cYjd92Qk\",\n      \"code\": \"044\",\n      \"name\": \"Access Bank\"\n    }\n    ...\n  ]\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"type\": \"ussd\",\n  \"ussd\": {\n    \"account_bank\": \"044\"\n  }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"ussd\",\n        \"ussd\": {\n            \"account_bank\": \"050\"\n        },\n        \"id\": \"pmd_ZAIDy7RYiL\",\n        \"meta\": {},\n        \"created_datetime\": \"2025-01-24T15:19:21.639115327Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n    \"currency\": \"NGN\",\n    \"customer_id\": \"cus_IpH7CKCUtD\",\n    \"payment_method_id\": \"pmd_ZAIDy7RYiL\",\n    \"redirect_url\": \"https://custom-redirect.com\",\n    \"amount\": 250,\n    \"meta\": {\n        \"order_id\": \"WOO_534643534_53453\",\n        \"product_desc\": \"Hand Bag\"\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_fDxiSR16UF\",\n        \"amount\": 250,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_IpH7CKCUtD\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {\n            \"order_id\": \"WOO_534643534_53453\",\n            \"product_desc\": \"Hand Bag\"\n        },\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please dial *1414# to complete this transaction\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"ussd\",\n            \"ussd\": {\n                \"account_bank\": \"044\"\n            },\n            \"id\": \"pmd_ZAIDy7RYiL\",\n            \"customer_id\": \"cus_IpH7CKCUtD\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-24T11:34:29.674Z\"\n        },\n        \"redirect_url\": \"https://custom-redirect.com\",\n        \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-01-24T11:56:53.935554048Z\"\n    }\n}\n```\n\nExample:\n```json\n\"next_action\": {\n      \"type\": \"payment_instruction\",\n      \"payment_instruction\": {\n         \"note\": \"Please dial *1414# to complete this transaction\"\n       }\n }\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_RBHC8wDvzKn1OrFCoZVU\",\n  \"timestamp\": 1737719972231,\n  \"type\": \"charge.completed\",\n  \"data\": {\n    \"id\": \"chg_fDxiSR16UF\",\n    \"amount\": 250,\n    \"currency\": \"NGN\",\n    \"customer\": {\n      \"id\": \"cus_IpH7CKCUtD\",\n      \"address\": null,\n      \"email\": \"[email protected]\",\n      \"name\": John Agba Doe,\n      \"phone\":+16313958745,\n      \"meta\": {},\n      \"created_datetime\": \"2024-11-30T11:27:03.179Z\"\n    },\n    \"description\": null,\n    \"meta\": {\n\t\"order_id\": \"WOO_534643534_53453\",\n       \"product_desc\": \"Hand Bag\"\n    },\n    \"payment_method\": {\n      \"type\": \"ussd\",\n      \"ussd\": {\n        \"account_bank\": \"044\"\n      },\n      \"id\": \"pmd_asxEDBpcgj\",\n      \"customer_id\": \"cus_IpH7CKCUtD\",\n      \"meta\": {},\n      \"device_fingerprint\": null,\n      \"client_ip\": null,\n      \"created_datetime\": \"2025-01-24T11:59:27.080Z\"\n    },\n    \"redirect_url\": null,\n    \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n    \"status\": \"succeeded\",\n    \"processor_response\": {\n      \"type\": \"approved\",\n      \"code\": \"00\"\n    },\n    \"created_datetime\": \"2025-01-24T11:59:27.088511152Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge fetched\",\n    \"data\": {\n        \"id\": \"chg_fDxiSR16UF\",\n        \"amount\": 250,\n        \"fees\": [\n            {\n                \"type\": \"vat\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"app\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"merchant\",\n                \"amount\": 0\n            },\n            {\n                \"type\": \"stamp_duty\",\n                \"amount\": 0\n            }\n        ],\n        \"currency\": \"NGN\",\n        \"customer_id\": \"cus_IpH7CKCUtD\",\n        \"settled\": false,\n        \"settlement_id\": [],\n        \"meta\": {\n            \"order_id\": \"WOO_534643534_53453\",\n            \"product_desc\": \"Hand Bag\"\n        },\n        \"next_action\": {\n            \"type\": \"payment_instruction\",\n            \"payment_instruction\": {\n                \"note\": \"Please dial *1414# to complete this transaction\"\n            }\n        },\n        \"payment_method_details\": {\n            \"type\": \"ussd\",\n            \"ussd\": {\n                \"account_bank\": \"044\"\n            },\n            \"id\": \"pmd_ZAIDy7RYiL\",\n            \"customer_id\": \"cus_IpH7CKCUtD\",\n            \"meta\": {},\n            \"created_datetime\": \"2025-01-24T11:34:29.674Z\"\n        },\n        \"redirect_url\": \"https://custom-redirect.com\",\n        \"reference\": \"185878aa-5647-47b6-b4d5-2f34bf596814\",\n        \"status\": \"pending\",\n        \"processor_response\": {\n            \"type\": \"pending\",\n            \"code\": \"02\"\n        },\n        \"created_datetime\": \"2025-01-24T11:56:53.935Z\"\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.802Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":12,"totalLines":335,"estimatedTokens":2047}}151{"id":"doc-introduction-8ebcf998","source":"documentation","title":"Introduction","url":"https://developer.flutterwave.com/edit/introduction-3","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationIntroductionIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to transfer funds globally across multiple channels.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.802Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":276}}152{"id":"doc-settlements-590b5cbb","source":"documentation","title":"Settlements","url":"https://developer.flutterwave.com/edit/settlements","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationSettlementsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestUnderstanding how to manage settlements.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.802Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":270}}153{"id":"doc-wallet_to_wallet-ca5fa5c1","source":"documentation","title":"Wallet-to-Wallet","url":"https://developer.flutterwave.com/edit/wallet-to-wallet","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationWallet-to-WalletIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to make wallet-to-wallet transfers.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.802Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":272}}154{"id":"doc-reporting_vat-68e86f9d","source":"documentation","title":"Reporting VAT","url":"https://developer.flutterwave.com/edit/reporting-vat","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationReporting VATIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestUnderstanding how to report tax information (VAT)\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.802Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":273}}155{"id":"doc-stablecoins-2954d2b5","source":"documentation","title":"Stablecoins","url":"https://developer.flutterwave.com/edit/stablecoins","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationStablecoinsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to transfer funds to USDC, USDT, and RLUSD wallets globally.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.802Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":277}}156{"id":"doc-create_a_payment_method-86adb0b8","source":"documentation","title":"Create a payment method","url":"https://developer.flutterwave.com/v4.0/reference/payment_methods_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.803Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}157{"id":"doc-create_a_charge-a595c32d","source":"documentation","title":"Create a charge","url":"https://developer.flutterwave.com/v4.0/reference/charges_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.803Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}158{"id":"doc-refunds-29217f3e","source":"documentation","title":"Refunds","url":"https://developer.flutterwave.com/v4.0/docs/refunds","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/refunds' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"amount\":2000,\n   \"reason\":\"duplicate\",\n   \"charge_id\":\"chg_Jwb2Y7ZbJQ\"\n}'\n```\n\nExample:\n```json\n{\n  \"message\": \"Refund Initiated\",\n  \"data\": {\n    \"id\": \"rfd_eHwAkSdZ48\",\n    \"amount_refunded\": 2000,\n    \"meta\": {},\n    \"reason\": \"duplicate\",\n    \"status\": \"completed\",\n    \"charge_id\": \"chg_Jwb2Y7ZbJQ\",\n    \"created_datetime\": \"2025-02-13T12:12:22.013525130Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/refunds?page=1&size=10' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Refunds fetched\",\n  \"meta\": {\n    \"page_info\": {\n      \"total\": 3,\n      \"current_page\": 1,\n      \"total_pages\": 1\n    }\n  },\n  \"data\": [\n    {\n      \"id\": \"rfd_VBwFTccOHT\",\n      \"amount_refunded\": 2000,\n      \"meta\": {},\n      \"reason\": \"duplicate\",\n      \"status\": \"succeeded\",\n      \"charge_id\": \"chg_ujfv5xWlpX\",\n      \"created_datetime\": \"2025-02-07T11:08:17.517Z\"\n    },\n    {\n      \"id\": \"rfd_9NHHGAilL6\",\n      \"amount_refunded\": 150,\n      \"meta\": {},\n      \"reason\": \"duplicate\",\n      \"status\": \"succeeded\",\n      \"charge_id\": \"chg_5BBk3iB0oZ\",\n      \"created_datetime\": \"2025-02-07T09:25:55.555Z\"\n    },\n    {\n      \"id\": \"rfd_tSl3PQV6Sc\",\n      \"amount_refunded\": 150,\n      \"meta\": {},\n      \"reason\": \"duplicate\",\n      \"status\": \"succeeded\",\n      \"charge_id\": \"chg_HvYp0jE07i\",\n      \"created_datetime\": \"2025-02-06T09:31:52.243Z\"\n    }\n  ]\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.803Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":4,"totalLines":88,"estimatedTokens":524}}159{"id":"doc-refunds-cb9dde65","source":"documentation","title":"Refunds","url":"https://developer.flutterwave.com/edit/refunds","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationRefundsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to process refunds.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.803Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":266}}160{"id":"doc-encryption-6c4b70b9","source":"documentation","title":"Encryption","url":"https://developer.flutterwave.com/v4.0/docs/encryption","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationEncryptionEncryptionIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionEncryptionLearn how to secure your payment data.Suggest EditsWhen making a card charge request, you must encrypt the card information before sending the request. 🚧If you're using any of our official backend SDKs, you don't need to handle encryption manually. Pass your encryption key to the library, and it will automatically encrypt your request payload. When integrating with our direct charge APIs, you'll need to handle the encryption of your code to ensure data integrity. Follow these steps to encrypt your request your encryption key from the API settings section in your Flutterwave dashboard. Use the Advanced Encryption Standard (AES 256) to encrypt your request. This is extended via the following : node-forge, crypto, crypto-js , cryptography (from javax.crypto) , libsodium Add the encrypted data to your API requests. Node.jsJavaPythonexport async function encryptAES(data: string, , ): Promise<string> { if (nonce.length !== 12) { throw new Error(\"Nonce must be exactly 12 characters long\"); } const cryptoSubtle = globalThis.crypto?.subtle || require(\"crypto\").webcrypto?.subtle; if (!cryptoSubtle) { throw new Error(\"Crypto API is not available in this environment.\"); } const decodedKeyBytes = Uint8Array.from(atob(token), c => c.charCodeAt(0)); const key = await cryptoSubtle.importKey( \"raw\", decodedKeyBytes, { name: \"AES-GCM\" }, false, [\"encrypt\"] ); const iv = new TextEncoder().encode(nonce); const encryptedData = await cryptoSubtle.encrypt( { name: \"AES-GCM\", , }, key, new TextEncoder().encode(data) ); return btoa(String.fromCharCode(...new Uint8Array(encryptedData))); } public class EncryptionService { private static final String AES = \"AES\"; private static final String AES_ALGORITHM = \"AES/GCM/NoPadding\"; private static final int TAG_LENGTH_BIT = 128; static String encrypt(String plainText, String nonce, String b64EncodedKey) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidAlgorithmParameterException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException { if (plainText.isEmpty()) { throw new IllegalArgumentException(\"Must provide valid plainText\"); } if (b64EncodedKey.isEmpty()) { throw new IllegalArgumentException(\"Must provide valid b64EncodedAESKey\"); } if (nonce.isEmpty()) { throw new IllegalArgumentException(\"Must provide valid nonce\"); } Cipher cipher = Cipher.getInstance(AES_ALGORITHM); GCMParameterSpec gcmSpec = new GCMParameterSpec(TAG_LENGTH_BIT, nonce.getBytes()); byte[] decodedKeyBytes = Base64.getDecoder().decode(b64EncodedKey); SecretKey key = new SecretKeySpec(decodedKeyBytes, AES); cipher.init(Cipher.ENCRYPT_MODE, key, gcmSpec); byte[] encryptedBytes = cipher.doFinal(plainText.getBytes()); return Base64.getEncoder().encodeToString(encryptedBytes); } public static String generateNonce(int length) { return new Random().ints(length, 0, 62) for key, value in data.items(): encrypted_data[key] = self.encrypt(str(value), nonce) return encrypted_data Example Request{ \"amount\":150, \"currency\":\"NGN\", \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\", \"customer\":{ \"email\":\"[email protected]\" }, \"payment_method\":{ \"type\":\"card\", \"card\": { \"nonce\": \"{{RANDOMLY_GENERATED_NONCE}}\", \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\", \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\", \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\", \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\" } } } If you send unencrypted or improperly encrypted card details in your request, we'll return a 422 error with a failed encryption error message. JSON{ \"status\": \"failed\", \"error\": { \"type\": \"CLIENT_ENCRYPTION_ERROR\", \"code\": \"11100\", \"message\": \"Unable to decrypt encrypted fields provided\", \"validation_errors\": [] } } Updated 9 months ago Did this page help you?YesNoCopy Page\n\nExample:\n```javascript\nexport async function encryptAES(data: string, token: string, nonce: string): Promise<string> {\n    if (nonce.length !== 12) {\n        throw new Error(\"Nonce must be exactly 12 characters long\");\n    }\n\n    const cryptoSubtle = globalThis.crypto?.subtle || require(\"crypto\").webcrypto?.subtle;\n    if (!cryptoSubtle) {\n        throw new Error(\"Crypto API is not available in this environment.\");\n    }\n\n    const decodedKeyBytes = Uint8Array.from(atob(token), c => c.charCodeAt(0));\n\n    const key = await cryptoSubtle.importKey(\n        \"raw\",\n        decodedKeyBytes,\n        { name: \"AES-GCM\" },\n        false,\n        [\"encrypt\"]\n    );\n    const iv = new TextEncoder().encode(nonce);\n\n    const encryptedData = await cryptoSubtle.encrypt(\n        {\n            name: \"AES-GCM\",\n            iv: iv,\n        },\n        key,\n        new TextEncoder().encode(data)\n    );\n\n    return btoa(String.fromCharCode(...new Uint8Array(encryptedData)));\n}\n```\n\nExample:\n```java\npublic class EncryptionService {\n\n    private static final String AES = \"AES\";\n    private static final String AES_ALGORITHM = \"AES/GCM/NoPadding\";\n    private static final int TAG_LENGTH_BIT = 128;\n\n    static String encrypt(String plainText, String nonce, String b64EncodedKey) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidAlgorithmParameterException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException {\n        if (plainText.isEmpty()) {\n            throw new IllegalArgumentException(\"Must provide valid plainText\");\n        }\n        if (b64EncodedKey.isEmpty()) {\n            throw new IllegalArgumentException(\"Must provide valid b64EncodedAESKey\");\n        }\n        if (nonce.isEmpty()) {\n            throw new IllegalArgumentException(\"Must provide valid nonce\");\n        }\n\n        Cipher cipher = Cipher.getInstance(AES_ALGORITHM);\n        GCMParameterSpec gcmSpec = new GCMParameterSpec(TAG_LENGTH_BIT, nonce.getBytes());\n        byte[] decodedKeyBytes = Base64.getDecoder().decode(b64EncodedKey);\n        SecretKey key = new SecretKeySpec(decodedKeyBytes, AES);\n        cipher.init(Cipher.ENCRYPT_MODE, key, gcmSpec);\n        byte[] encryptedBytes = cipher.doFinal(plainText.getBytes());\n\n        return Base64.getEncoder().encodeToString(encryptedBytes);\n    }\n\n    public static String generateNonce(int length) {\n        return new Random().ints(length, 0, 62)\n                .mapToObj(\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\"::charAt)\n                .collect(StringBuilder::new, StringBuilder::append, StringBuilder::append)\n                .toString();\n    }\n}\n```\n\nExample:\n```python\nimport base64\nimport secrets\nimport string\nfrom cryptography.hazmat.primitives.ciphers.aead import AESGCM\n\nclass AESEncryptor:\n    def __init__(self, encryption_key: str):\n        self.aes_key = base64.b64decode(encryption_key)\n\n    @staticmethod\n    def generate_nonce(length: int = 12) -> str:\n        characters = string.ascii_letters + string.digits\n        return ''.join(secrets.choice(characters) for _ in range(length))\n\n    def encrypt(self, plain_text: str, nonce: str) -> str:\n        if not plain_text or not nonce:\n            raise ValueError('Both plain_text and nonce are required for encryption.')\n\n        nonce_bytes = nonce.encode()\n        aes_gcm = AESGCM(self.aes_key)\n        cipher_text = aes_gcm.encrypt(nonce_bytes, plain_text.encode(), None)\n\n        return base64.b64encode(cipher_text).decode()\n\n    def encrypt_dict(self, data: dict) -> dict:\n        if not isinstance(data, dict):\n            raise ValueError(\"Data must be a dictionary.\")\n\n        nonce = self.generate_nonce()\n        encrypted_data = {\"nonce\": nonce}\n\n        for key, value in data.items():\n            encrypted_data[key] = self.encrypt(str(value), nonce)\n\n        return encrypted_data\n```\n\nExample:\n```json\n{\n   \"amount\":150,\n   \"currency\":\"NGN\",\n   \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\",\n   \"customer\":{\n      \"email\":\"[email protected]\"\n   },\n   \"payment_method\":{\n      \"type\":\"card\",\n      \"card\": {\n        \"nonce\": \"{{RANDOMLY_GENERATED_NONCE}}\",\n        \"encrypted_expiry_month\": \"sQpvQEb7GrUCjPuEN/NmHiPl\",\n        \"encrypted_expiry_year\": \"sgHNEDkJ/RmwuWWq/RymToU5\",\n        \"encrypted_card_number\": \"sAE3hEDaDQ+yLzo4Py+Lx15OZjBGduHu/DcdILh3En0=\",\n        \"encrypted_cvv\": \"tAUzH7Qjma7diGdi7938F/ESNA==\"\n      }\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"failed\",\n    \"error\": {\n        \"type\": \"CLIENT_ENCRYPTION_ERROR\",\n        \"code\": \"11100\",\n        \"message\": \"Unable to decrypt encrypted fields provided\",\n        \"validation_errors\": []\n    }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.804Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":5,"totalLines":153,"estimatedTokens":2364}}161{"id":"doc-card_payments-90df6587","source":"documentation","title":"Card Payments","url":"https://developer.flutterwave.com/v4.0/docs/card","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/customers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"address\":{\n      \"city\":\"Gotham\",\n      \"country\":\"US\",\n      \"line1\":\"221B Baker Street\",\n      \"line2\":\"\",\n      \"postal_code\":\"94105\",\n      \"state\":\"Colorado\"\n   },\n   \"name\":{\n      \"first\":\"King\",\n      \"middle\":\"Leo\",\n      \"last\":\"James\"\n   },\n   \"phone\":{\n      \"country_code\":\"1\",\n      \"number\":\"6313958745\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Customer created\",\n   \"data\":{\n      \"id\":\"cus_X0yJv3ZMpL\",\n      \"address\":{\n         \"city\":\"Gotham\",\n         \"country\":\"US\",\n         \"line1\":\"221B Baker Street\",\n         \"line2\":\"\",\n         \"postal_code\":\"94105\",\n         \"state\":\"Colorado\"\n      },\n      \"email\":\"[email protected]\",\n      \"name\":{\n         \"first\":\"King\",\n         \"middle\":\"Leo\",\n         \"last\":\"James\"\n      },\n      \"phone\":{\n         \"country_code\":\"1\",\n         \"number\":\"6313958745\"\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2025-01-29T12:44:53.049Z\"\n   }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"encrypted_card_number\": \"{{$encrypted_card_number}}\",\n        \"encrypted_expiry_month\": \"{{$encrypted_expiry_month}}\",\n        \"encrypted_expiry_year\": \"{{$encrypted_expiry_year}}\",\n        \"encrypted_cvv\": \"{{$encrypted_cvv}}\",\n        \"nonce\": \"{{$randomly_generated_nonce}}\"\n    }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Payment method created\",\n    \"data\": {\n        \"type\": \"card\",\n        \"card\": {\n            \"expiry_month\": 8,\n            \"expiry_year\": 32,\n            \"first6\": \"123412\",\n            \"last4\": \"2222\",\n            \"network\": \"mastercard\"\n        },\n        \"id\": \"pmd_wlVhaYmkl2\",\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-03T14:29:26.650973145Z\"\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 250,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge created\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        ...\n        \"next_action\": {\n            \"type\": \"redirect_url\",\n            \"redirect_url\": {\n                \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX1JDRHNDQkR5YVYiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzA5NjQ1MTIsImV4cCI6MTczMDk2NDgxMn0.tMv1VZ4WevvZ_dg37AzYnhj0Z1YtXK_tQIOJcErNscI\"\n            }\n        },\n        \"payment_method_details\": {},\n        \"status\": \"pending\",\n        ...\n    }\n}\n```\n\nExample:\n```json\n\"next_action\": {\n    \"type\": \"redirect_url\",\n    \"redirect_url\": {\n        \"url\": \"https://developer-sandbox-ui-sit.flutterwave.cloud/redirects?card&token=eyJhbGciOiJIUzI1NiJ9.eyJjbGllbnRJZCI6ImFjODMxOTNlLWFhMmItNDc2ZS1hZTNjLTMxYmVmMTc4NDUxZCIsImNoYXJnZUlkIjoiY2hnX2tPMWVSblF6N1AiLCJzdWIiOiJhYzgzMTkzZS1hYTJiLTQ3NmUtYWUzYy0zMWJlZjE3ODQ1MWQiLCJpYXQiOjE3MzgyNDU3MjAsImV4cCI6MTczODI0NjAyMH0.Le9JEoZx87G1cE6OtMaRHSbKMqlYB8eMq2-9PdNkdco\"\n    }\n},\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      ...\n      \"next_action\":{\n         \"type\":\"requires_additional_fields\",\n         \"requires_additional_fields\":{\n            \"fields\":[\n               \"authorization.avs.address.postal_code\",\n               \"authorization.avs.address.line1\",\n               \"authorization.avs.address.state\",\n               \"authorization.avs.address.country\",\n               \"authorization.avs.address.city\"\n            ]\n         }\n      },\n      \"payment_method_details\":{},\n      \"status\":\"pending\",\n      ...\n   }\n}\n```\n\nExample:\n```json\ncurl --request PUT \\\n--url 'https://api.flutterwave.cloud/developersandbox/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"authorization\":{\n      \"type\":\"avs\",\n      \"avs\":{\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"Coker Estate\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      ...\n      \"next_action\":{\n         \"type\":\"requires_pin\",\n         \"requires_pin\":{}\n      },\n      \"payment_method_details\":{},\n      \"status\":\"pending\",\n      ...\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Charge created\",\n   \"data\":{\n      \"id\":\"chg_VoUhmFMhmF\",\n      ...\n      \"next_action\":{\n         \"type\":\"requires_otp\",\n         \"requires_otp\":{}\n      },\n      \"payment_method_details\":{},\n      \"status\":\"pending\",\n      ...\n   }\n}\n```\n\nExample:\n```json\ncurl --request PUT \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"authorization\": {\n        \"type\": \"pin\",\n        \"pin\": {\n            \"nonce\": \"{{$randomly_generated_nonce}}\",\n            \"encrypted_pin\": \"{{$encrypted_pin}}\"\n        }\n    }\n}'\n```\n\nExample:\n```json\ncurl --request PUT \\ \n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"authorization\": {\n        \"type\": \"otp\",\n        \"otp\": {\n            \"code\": \"123456\"\n        }\n    }\n}'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_TusjN23anB\",\n   \"recurring\":true,\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 250\n }\n'\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/payment-methods' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n    \"type\": \"card\",\n    \"card\": {\n        \"encrypted_card_number\": \"{{$encrypted_card_number}}\",\n        \"encrypted_expiry_month\": \"{{$encrypted_expiry_month}}\",\n        \"encrypted_expiry_year\": \"{{$encrypted_expiry_year}}\",\n        \"encrypted_cvv\": \"{{$encrypted_cvv}}\",\n        \"nonce\": \"{{$randomly_generated_nonce}}\",\n        \"cof\": {\n                \"enabled\": true,\n          \t\"agreement_id\": \"Agreement00w02W1\"\n            }\n    }\n}'\n```\n\nExample:\n```json\ncurl --location 'https://developersandbox-api.flutterwave.com/orchestration/direct-charges' \\\n--header 'X-Trace-Id: {{UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{UNIQUE_IDEMPOTENCY_KEY}}' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer {{API_ACCESS_TOKEN}}' \\\n--data-raw '{\n   \"amount\":\"1234.56\",\n   \"currency\":\"NGN\",\n   \"reference\":\"{{UNIQUE_TRANSACTION_REFERENCE}}\",\n   \"customer\":{\n      \"address\":{\n         \"city\":\"Gotham\",\n         \"country\":\"US\",\n         \"line1\":\"221B Baker Street\",\n         \"line2\":\"\",\n         \"postal_code\":\"94105\",\n         \"state\":\"Colorado\"\n      },\n      \"email\":\"[email protected]\",\n      \"meta\":{},\n      \"name\":{\n         \"first\":\"King\",\n         \"middle\":\"Leo\",\n         \"last\":\"James\"\n      },\n      \"phone\":{\n         \"country_code\":\"234\",\n         \"number\":\"9010001111\"\n      }\n   },\n   \"payment_method\":{\n      \"type\":\"card\",\n      \"card\":{\n         \"encrypted_card_number\":\"{{$encrypted_card_number}}\",\n         \"encrypted_expiry_month\":\"{{$encrypted_expiry_month}}\",\n         \"encrypted_expiry_year\":\"{{$encrypted_expiry_year}}\",\n         \"encrypted_cvv\":\"{{$encrypted_cvv}}\",\n         \"nonce\":\"{{$randomly_generated_nonce}}\",\n         \"cof\":{\n            \"enabled\":true,\n            \"agreement_id\": \"Agreement00w02W1\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_yXvsB4LzWSwhUCpAPCBR\",\n   \"timestamp\":1739456704200,\n   \"type\":\"charge.completed\",\n   \"data\":{\n      \"id\":\"chg_zam88NgLb7\",\n      \"amount\":2000,\n      \"currency\":\"NGN\",\n      \"customer\":{\n         \"id\":\"cus_dc0FUyBpd0\",\n         \"address\":{\n            \"city\":\"Gotham\",\n            \"country\":\"US\",\n            \"line1\":\"221B Baker Street\",\n            \"line2\":\"\",\n            \"postal_code\":\"94105\",\n            \"state\":\"Colorado\"\n         },\n         \"email\":\"[email protected]\",\n         \"name\":{\n            \"first\":\"King\",\n            \"middle\":\"Leo\",\n            \"last\":\"James\"\n         },\n         \"phone\":{\n            \"country_code\":\"1\",\n            \"number\":\"6313958745\"\n         },\n         \"meta\":{},\n         \"created_datetime\":\"2024-12-25T20:16:38.246Z\"\n      },\n      \"description\":null,\n      \"meta\":{},\n      \"payment_method\":{\n         \"type\":\"card\",\n         \"card\":{\n            \"expiry_month\":9,\n            \"expiry_year\":32,\n            \"first6\":\"553188\",\n            \"last4\":\"2950\",\n            \"network\":\"MASTERCARD\",\n            \"billing_address\":null,\n            \"cof\":null,\n            \"card_holder_name\":null\n         },\n         \"id\":\"pmd_ujxuBcf4cJ\",\n         \"customer_id\":null,\n         \"meta\":{},\n         \"device_fingerprint\":null,\n         \"client_ip\":null,\n         \"created_datetime\":\"2025-02-05T14:06:10.344Z\"\n      },\n      \"redirect_url\":null,\n      \"reference\":\"ex61m23ja3feykheoidho8ilrri\",\n      \"status\":\"succeeded\",\n      \"processor_response\":{\n         \"type\":\"approved\",\n         \"code\":\"00\"\n      },\n      \"created_datetime\":\"2025-02-13T14:24:43.133Z\"\n   }\n}\n```\n\nExample:\n```curl\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/charges/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Charge updated\",\n    \"data\": {\n        \"id\": \"chg_VoUhmFMhmF\",\n        \"amount\": 1500.25,\n        \"currency\": \"NGN\",\n        \"customer\": \"cus_EFE4TQhBSf\",\n        \"meta\": {},\n        \"next_action\": {\n            \"type\": \"requires_pin\"\n        },\n        \"payment_method_details\": {\n            \"type\": \"card\",\n            \"card\": {\n                \"expiry_month\": 8,\n                \"expiry_year\": 2024,\n                \"first6\": \"123412\",\n                \"last4\": \"4444\",\n                \"network\": \"mastercard\"\n            },\n            \"id\": \"pmd_NkWibrRJIy\",\n            \"customer\": \"cus_EFE4TQhBSf\",\n            \"meta\": {}\n        },\n        \"redirect_url\": \"www.flutterwave.com\",\n        \"reference\": \"XYZ123\",\n        \"status\": \"succeeded\",\n        \"issuer_response\": {\n            \"type\": \"approved\",\n            \"code\": \"00\"\n        }\n    }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/charges' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Scenario-Key: scenario:auth_3ds&issuer:approved' \\\n--data '{\n   \"reference\": \"cedfa85a-a803-4a06-a586-0f81fb9b9f22\",\n   \"currency\": \"USD\",\n   \"customer_id\": \"cus_IpH7CKCUtD\",\n   \"payment_method_id\": \"pmd_wlVhaYmkl2\",\n   \"redirect_url\":\"https://custom-redirect.com\",\n   \"amount\": 250,\n   \"meta\":{\n     \"person_name\": \"King James\",\n     \"role\": \"Developer\"\n   }\n }\n'\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.805Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":20,"totalLines":518,"estimatedTokens":3365}}162{"id":"doc-bank_account_transfers-cc0a16cc","source":"documentation","title":"Bank Account Transfers","url":"https://developer.flutterwave.com/v4.0/docs/bank-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"AUD\",\n    \"recipient\": {\n      \"bank\": {\n        \"routing_number\": \"062123\",\n        \"swift_code\": \"BANK123\",\n        \"name\": \"Commonwealth Bank of Australia\",\n        \"account_number\": \"123456789\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"61\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"AU\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"type\":\"bank\",\n   \"callback_url\":\"https://www.company.com/callback\",\n   \"narration\":\"Testing transfers\",\n   \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\",\n   \"payment_instruction\":{\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"source_currency\":\"EGP\",\n      \"destination_currency\":\"EGP\",\n      \"recipient\":{\n         \"bank\":{\n            \"code\":\"ADIB\",\n            \"account_number\":\"123456789\"\n         },\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"email\":\"[email protected]\",\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"9012345678\"\n         },\n         \"address\":{\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"city\":\"Cool City\",\n            \"state\":\"Super State\",\n            \"country\":\"EG\"\n         },\n         \"national_identification\":{\n            \"type\":\"NATIONAL_ID\",\n            \"identifier\":\"1234567890\",\n            \"expiration_date\":\"2029-11-15\"\n         }\n      },\n      \"sender\":{\n         \"name\":{\n            \"first\":\"Alexander\",\n            \"middle\":\"The\",\n            \"last\":\"Great\"\n         },\n         \"email\":\"[email protected]\",\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"8012345679\"\n         },\n         \"address\":{\n            \"line1\":\"3B, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"city\":\"Cool City\",\n            \"state\":\"Super State\",\n            \"country\":\"EG\"\n         },\n         \"date_of_birth\":\"1980-11-25\",\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-12-25\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"ETB\",\n    \"destination_currency\": \"ETB\",\n    \"recipient\": {\n      \"bank\": {\n        \"code\": \"7\",\n        \"account_number\": \"123456789\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"EUR\",\n    \"recipient\": {\n      \"bank\": {\n        \"name\": \"Continental Bank of Europe\",\n        \"swift_code\": \"DEUTDEFF\",\n        \"account_number\": \"9876543210\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"49\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"DE\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"GHS\",\n    \"destination_currency\": \"GHS\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"code\": \"25562284\",\n        \"branch\": \"001\",\n        \"account_number\": \"1234567890\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"type\":\"bank\",\n   \"callback_url\":\"https://www.company.com/callback\",\n   \"narration\":\"Testing transfers\",\n   \"reference\":\"{{YOUR_UNIQUE_REFERENCE}}\",\n   \"payment_instruction\":{\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"source_currency\":\"INR\",\n      \"destination_currency\":\"INR\",\n      \"recipient\":{\n         \"bank\":{\n            \"code\":\"SBIN\",\n            \"branch\":\"SBIN0015615\",\n            \"account_number\":\"123456789\"\n         },\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"email\":\"[email protected]\",\n         \"phone\":{\n            \"country_code\":\"91\",\n            \"number\":\"9012345678\"\n         },\n         \"address\":{\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"city\":\"Cool City\",\n            \"state\":\"Super State\",\n            \"country\":\"IN\"\n         }\n      },\n      \"sender\":{\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-11-25\"\n         }\n      }\n   }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"MWK\",\n    \"destination_currency\": \"MWK\",\n    \"recipient\": {\n      \"bank\": {\n        \"code\": \"20474000\",\n        \"branch\": \"1812061ZP6\",\n        \"account_number\": \"123456789\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"NGN\",\n    \"recipient\": {\n      \"bank\": {\n        \"code\": \"044\",\n        \"account_number\": \"0690000031\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"USD\",\n    \"destination_currency\": \"USD\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"code\": \"125200057\",\n        \"routing_number\": \"021000021\",\n        \"swift_code\": \"BOFAUS3N\",\n        \"account_type\": \"checking\",\n        \"account_number\": \"1234567890\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"1\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"US\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"type\": \"bank\",\n  \"callback_url\": \"https://www.company.com/callback\",\n  \"narration\": \"Testing transfers\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\",\n  \"payment_instruction\": {\n    \"amount\": {\n      \"value\": 1000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"source_currency\": \"ZAR\",\n    \"destination_currency\": \"ZAR\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"code\": \"ABSA\",\n        \"account_number\": \"1234567890\"\n      },\n      \"name\": {\n        \"first\": \"Bob\",\n        \"middle\": \"The\",\n        \"last\": \"Builder\"\n      },\n      \"email\": \"[email protected]\",\n      \"phone\": {\n        \"country_code\": \"27\",\n        \"number\": \"9012345678\"\n      },\n      \"address\": {\n        \"line1\": \"7A, Awesome Apartments\",\n        \"line2\": \"Sweet Street\",\n        \"postal_code\": \"123456\",\n        \"city\": \"Cool City\",\n        \"state\": \"Super State\",\n        \"country\": \"ZA\"\n      }\n    }\n  }\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_HHB2Yrc3LUyooR\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"duyiebieuei8eieu89383jhdjhdy\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"USD\",\n      \"destination_currency\":\"AUD\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_v3jeBmSUxC\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"AUD\",\n         \"phone\":{\n            \"country_code\":\"61\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"AU\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"name\":\"Commonwealth Bank of Australia\",\n            \"routing_number\":\"CTBAAU\",\n            \"swift_code\":\"BANK123\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:04:36.072Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_mm2c4ax7p3YDNB\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"kjvdcoihudfoidfpofjiof9r\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"EGP\",\n      \"destination_currency\":\"EGP\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_pvu4uNFiT7\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"EGP\",\n         \"national_identification\":{\n            \"type\":\"NATIONAL_ID\",\n            \"identifier\":\"1234567890\",\n            \"expiration_date\":\"2029-11-15\"\n         },\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"EG\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"ADIB\"\n         }\n      },\n      \"sender\":{\n         \"id\":\"sdr_tGCFUvSdVu\",\n         \"name\":{\n            \"first\":\"Alexander\",\n            \"middle\":\"The\",\n            \"last\":\"Great\"\n         },\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-12-25\"\n         },\n         \"phone\":{\n            \"country_code\":\"20\",\n            \"number\":\"8012345679\"\n         },\n         \"date_of_birth\":\"1980-11-25\",\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"EG\",\n            \"line1\":\"3B, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:29:48.366Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_zksyU4F4kFGZi7\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"778989JHUTGHJGHJYUYIUY\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"ETB\",\n      \"destination_currency\":\"ETB\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_ExC7XZKoC1\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"ETB\",\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"7\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:37:41.658Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_03mgMQvkcD1J4Q\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"duuidiudodudududj77262\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"USD\",\n      \"destination_currency\":\"EUR\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_2fh9yl2PCl\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"EUR\",\n         \"phone\":{\n            \"country_code\":\"49\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"DE\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"9876543210\",\n            \"name\":\"Continental Bank of Europe\",\n            \"swift_code\":\"DEUTDEFF\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:42:32.080Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_psJZCQCkOcQl06\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"jguyfghgyt7675hjg\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"GHS\",\n      \"destination_currency\":\"GHS\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_ykW6hU75cU\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"GHS\",\n         \"bank\":{\n            \"account_number\":\"1234567890\",\n            \"code\":\"25562284\",\n            \"branch\":\"001\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:46:29.584Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_Gr4gqFAiDheMvc\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"FYFTHGHGHJGhgyt57\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"INR\",\n      \"destination_currency\":\"INR\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_hKd3HybtHa\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"INR\",\n         \"phone\":{\n            \"country_code\":\"91\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"IN\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"SBIN\",\n            \"branch\":\"SBIN0015615\"\n         }\n      },\n      \"sender\":{\n         \"id\":\"sdr_M37FKMARWj\",\n         \"national_identification\":{\n            \"type\":\"PASSPORT\",\n            \"identifier\":\"0987654321\",\n            \"expiration_date\":\"2028-11-25\"\n         }\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2025-06-02T16:53:09.632Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_t8w0OGSNOdV4P5\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"GGUGTUYUHIIUIOU7\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"MWK\",\n      \"destination_currency\":\"MWK\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_t68rd2GfZ7\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"MWK\",\n         \"bank\":{\n            \"account_number\":\"123456789\",\n            \"code\":\"20474000\",\n            \"branch\":\"1812061ZP6\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T16:59:32.628Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_iWUfJopFYdyBmB\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"c3104347-5ebf-41bd-957c-7666df028bbe\",\n        \"status\": \"NEW\",\n        \"narration\": \"Testing transfers\",\n        \"source_currency\": \"USD\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 1000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"callback_url\": \"https://www.company.com/callback\",\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_gsLlPvnOLy\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-10T13:49:06.374991375Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_NvhGENkNcnBI2t\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"ugujbuujyujgjb7889\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"USD\",\n      \"destination_currency\":\"USD\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_Yro1zlIF7I\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"USD\",\n         \"phone\":{\n            \"country_code\":\"1\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"US\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"1234567890\",\n            \"account_type\":\"checking\",\n            \"code\":\"125200057\",\n            \"routing_number\":\"021000021\",\n            \"swift_code\":\"BOFAUS3N\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T17:07:00.549Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_bf65ZmcvRt5tq3\",\n      \"type\":\"bank\",\n      \"action\":\"instant\",\n      \"reference\":\"jhgvjhgjjyyiy79hg\",\n      \"status\":\"NEW\",\n      \"narration\":\"Testing transfers\",\n      \"source_currency\":\"ZAR\",\n      \"destination_currency\":\"ZAR\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"callback_url\":\"https://www.company.com/callback\",\n      \"recipient\":{\n         \"type\":\"bank\",\n         \"id\":\"rcb_mQnFh6aMOB\",\n         \"name\":{\n            \"first\":\"Bob\",\n            \"middle\":\"The\",\n            \"last\":\"Builder\"\n         },\n         \"currency\":\"ZAR\",\n         \"phone\":{\n            \"country_code\":\"27\",\n            \"number\":\"9012345678\"\n         },\n         \"email\":\"[email protected]\",\n         \"address\":{\n            \"city\":\"Cool City\",\n            \"country\":\"ZA\",\n            \"line1\":\"7A, Awesome Apartments\",\n            \"line2\":\"Sweet Street\",\n            \"postal_code\":\"123456\",\n            \"state\":\"Super State\"\n         },\n         \"bank\":{\n            \"account_number\":\"1234567890\",\n            \"code\":\"ABSA\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-02T17:10:26.917Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_rp0bjKyAWA52ViM8xlZ0\",\n  \"timestamp\": 1739877172874,\n  \"type\": \"transfer.disburse\",\n  \"data\": {\n    \"id\": \"trf_yMZATJ11yVPNkZ\",\n    \"type\": \"BANK\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": 50000,\n    \"reference\": \"5748745ug8ufdgjhveyebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"bank\": {\n      \"account_number\": \"0122333334\",\n      \"code\": \"044\",\n      \"branch\": null,\n      \"name\": null,\n      \"routing_number\": null,\n      \"swift_code\": null\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"504828363550713897092362940989\"\n    },\n    \"meta\": {}\n  }\n}\n```\n\nExample:\n```curl\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/trf_iWUfJopFYdyBmB' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer fetched\",\n    \"data\": {\n        \"id\": \"trf_iWUfJopFYdyBmB\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"c3104347-5ebf-41bd-957c-7666df028bbe\",\n        \"status\": \"NEW\",\n        \"narration\": \"Testing transfers\",\n        \"source_currency\": \"USD\",\n        \"destination_currency\": \"NGN\",\n        \"amount\": {\n            \"value\": 1000,\n            \"applies_to\": \"destination_currency\"\n        },\n        \"fee\": {\n            \"currency\": \"NGN\",\n            \"value\": 10.0\n        },\n        \"callback_url\": \"https://www.company.com/callback\",\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"currency\": \"NGN\",\n            \"bank\": {\n                \"account_number\": \"0690000031\",\n                \"code\": \"044\"\n            },\n            \"id\": \"rcb_gsLlPvnOLy\"\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-12-10T13:49:06.374Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"failed\",\n   \"error\":{\n      \"type\":\"TRANSFER_NOT_FOUND\",\n      \"code\":\"301404\",\n      \"message\":\"Transfer not found\",\n      \"validation_errors\":[\n         \n      ]\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.807Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":24,"totalLines":1103,"estimatedTokens":7004}}163{"id":"doc-mobile_money-81d49de6","source":"documentation","title":"Mobile Money","url":"https://developer.flutterwave.com/edit/mobile-money","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationMobile MoneyIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestCollect mobile money payments from your customers.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.807Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":273}}164{"id":"doc-general_transfer_flow-c23effba","source":"documentation","title":"General Transfer Flow","url":"https://developer.flutterwave.com/v4.0/docs/general-transfer-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/recipients' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"type\": \"bank_ngn\",\n  \"bank\": {\n    \"account_number\": \"0690000031\",\n    \"code\": \"044\"\n  }\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://api.flutterwave.cloud/developersandbox/transfers/recipients' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"type\":\"bank_egp\",\n   \"bank\":{\n      \"code\":\"ADIB\",\n      \"account_number\":\"123456789\"\n   },\n   \"name\":{\n      \"first\":\"Steve\",\n      \"last\":\"Mark\",\n      \"middle\":\"Jade\"\n   },\n   \"national_identification\":{\n      \"type\":\"PASSPORT\",\n      \"identifier\":\"FLY998754\",\n      \"expiration_date\":\"2029-06-01\"\n   },\n   \"phone\":{\n      \"country_code\":\"20\",\n      \"number\":\"9012345678\"\n   },\n   \"address\":{\n      \"line1\":\"7A, Awesome Apartments\",\n      \"line2\":\"Sweet Street\",\n      \"postal_code\":\"123456\",\n      \"state\":\"Super State\",\n      \"city\":\"Cool City\",\n      \"country\":\"EG\"\n   },\n   \"email\":\"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Recipient created\",\n  \"data\": {\n    \"type\": \"bank\",\n    \"id\": \"rcb_B9aAgsdzzl\",\n    \"name\": {\n      \"first\": \"Ajadi\",\n      \"last\": \"Jackson\"\n    },\n    \"currency\": \"NGN\",\n    \"bank\": {\n      \"account_number\": \"0690001032\",\n      \"code\": \"044\"\n    }\n  }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Recipient created\",\n   \"data\":{\n      \"type\":\"bank\",\n      \"id\":\"rcb_gFoQprtdrL\",\n      \"name\":{\n         \"first\":\"Steve\",\n         \"middle\":\"Jade\",\n         \"last\":\"Mark\"\n      },\n      \"currency\":\"EGP\",\n      \"national_identification\":{\n         \"type\":\"PASSPORT\",\n         \"identifier\":\"FLY998754\",\n         \"expiration_date\":\"2029-06-01\"\n      },\n      \"phone\":{\n         \"country_code\":\"20\",\n         \"number\":\"9012345678\"\n      },\n      \"email\":\"[email protected]\",\n      \"address\":{\n         \"city\":\"Cool City\",\n         \"country\":\"EG\",\n         \"line1\":\"7A, Awesome Apartments\",\n         \"line2\":\"Sweet Street\",\n         \"postal_code\":\"123456\",\n         \"state\":\"Super State\"\n      },\n      \"bank\":{\n         \"account_number\":\"123456789\",\n         \"code\":\"ADIB\"\n      }\n   }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/senders' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"type\": \"bank_egp\",\n  \"name\": {\n    \"first\": \"Jake\",\n    \"middle\": \"Leo\",\n    \"last\": \"Smith\"\n  },\n  \"national_identification\": {\n    \"type\": \"NATIONAL_ID\",\n    \"identifier\": \"B01123075\",\n    \"expiration_date\": \"2027-08-23\"\n  },\n  \"phone\": {\n    \"country_code\": \"234\",\n    \"number\": \"8067554433\"\n  },\n  \"address\": {\n    \"country\": \"NG\",\n    \"city\": \"Lagos\",\n    \"state\": \"Lagos\",\n    \"line1\": \"Crystal estate\",\n    \"postal_code\": \"100223 \",\n    \"line2\": \"H2\"\n  },\n  \"date_of_birth\": \"1994-04-09\",\n  \"email\": \"[email protected]\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Sender created\",\n  \"data\": {\n    \"id\": \"sdr_Cv7RMxkjNu\",\n    \"name\": {\n      \"first\": \"Jake\",\n      \"middle\": \"Leo\",\n      \"last\": \"Smith\"\n    },\n    \"national_identification\": {\n      \"type\": \"NATIONAL_ID\",\n      \"identifier\": \"B01123075\",\n      \"expiration_date\": \"2027-08-23\"\n    },\n    \"phone\": {\n      \"country_code\": \"234\",\n      \"number\": \"8067554433\"\n    },\n    \"date_of_birth\": \"1994-04-09\",\n    \"email\": \"[email protected]\",\n    \"address\": {\n      \"city\": \"Lagos\",\n      \"country\": \"NG\",\n      \"line1\": \"Crystal estate\",\n      \"line2\": \"H2\",\n      \"postal_code\": \"100223 \",\n      \"state\": \"Lagos\"\n    }\n  }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"reference\":\"95e25053-8ee4-42770-a29-af4004dyf9462d\",\n   \"narration\":\"Test transfer\",\n   \"meta\":{\n      \"username\":\"Madyson.Jones43\",\n      \"email\":\"[email protected]\"\n   },\n   \"payment_instruction\":{\n      \"source_currency\":\"EGP\",\n      \"amount\":{\n         \"applies_to\":\"source_currency\",\n         \"value\":100\n      },\n      \"recipient_id\":\"rcb_gFoQprtdrL\",\n      \"sender_id\":\"sdr_Cv7RMxkjNu\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_mDiIM2FzB3ATisAQQAUyE\",\n        \"type\": \"bank\",\n        \"action\": \"instant\",\n        \"reference\": \"95e25053-8ee4-42770-a29-af4004dyf9462d\",\n        \"status\": \"NEW\",\n        \"narration\": \"Test transfer\",\n        \"source_currency\": \"EGP\",\n        \"destination_currency\": \"EGP\",\n        \"amount\": {\n            \"value\": 100,\n            \"applies_to\": \"source_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"id\": \"rcb_gFoQprtdrL\",\n            \"name\": {\n                \"first\": \"Steve\",\n                \"middle\": \"Jade\",\n                \"last\": \"Mark\"\n            },\n            \"currency\": \"EGP\",\n            \"national_identification\": {\n                \"type\": \"PASSPORT\",\n                \"identifier\": \"FLY998754\",\n                \"expiration_date\": \"2029-06-01\"\n            },\n            \"phone\": {\n                \"country_code\": \"20\",\n                \"number\": \"9012345678\"\n            },\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Cool City\",\n                \"country\": \"EG\",\n                \"line1\": \"7A, Awesome Apartments\",\n                \"line2\": \"Sweet Street\",\n                \"postal_code\": \"123456\",\n                \"state\": \"Super State\"\n            },\n            \"bank\": {\n                \"account_number\": \"123456789\",\n                \"code\": \"ADIB\"\n            }\n        },\n        \"sender\": {\n            \"id\": \"sdr_Cv7RMxkjNu\",\n            \"name\": {\n                \"first\": \"Jake\",\n                \"middle\": \"Leo\",\n                \"last\": \"Smith\"\n            },\n            \"national_identification\": {\n                \"type\": \"NATIONAL_ID\",\n                \"identifier\": \"B01123075\",\n                \"expiration_date\": \"2027-08-23\"\n            },\n            \"phone\": {\n                \"country_code\": \"234\",\n                \"number\": \"8067554433\"\n            },\n            \"date_of_birth\": \"1994-04-09\",\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Lagos\",\n                \"country\": \"NG\",\n                \"line1\": \"Crystal estate\",\n                \"line2\": \"H2\",\n                \"postal_code\": \"100223 \",\n                \"state\": \"Lagos\"\n            }\n        },\n        \"meta\": {\n            \"username\": \"Madyson.Jones43\",\n            \"email\": \"[email protected]\"\n        },\n        \"created_datetime\": \"2025-06-25T08:46:52.790Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"deferred\",\n   \"reference\":\"95e25053-8ee4-42670-a29-af4004dyf9462d\",\n   \"narration\":\"Test transfer\",\n   \"meta\":{\n      \"username\":\"Madyson.Jones43\",\n      \"email\":\"[email protected]\"\n   },\n   \"payment_instruction\":{\n      \"source_currency\":\"EGP\",\n      \"amount\":{\n         \"applies_to\":\"source_currency\",\n         \"value\":100\n      },\n      \"recipient_id\":\"rcb_gFoQprtdrL\",\n      \"sender_id\":\"sdr_Cv7RMxkjNu\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_6Di84IgPPEtg6MGMDCpWr\",\n        \"type\": \"bank\",\n        \"action\": \"deferred\",\n        \"reference\": \"95e25053-8ee4-42670-a29-af4004dyf9462d\",\n        \"status\": \"NEW\",\n        \"narration\": \"Test transfer\",\n        \"source_currency\": \"EGP\",\n        \"destination_currency\": \"EGP\",\n        \"amount\": {\n            \"value\": 100,\n            \"applies_to\": \"source_currency\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"id\": \"rcb_gFoQprtdrL\",\n            \"name\": {\n                \"first\": \"Steve\",\n                \"middle\": \"Jade\",\n                \"last\": \"Mark\"\n            },\n            \"currency\": \"EGP\",\n            \"national_identification\": {\n                \"type\": \"PASSPORT\",\n                \"identifier\": \"FLY998754\",\n                \"expiration_date\": \"2029-06-01\"\n            },\n            \"phone\": {\n                \"country_code\": \"20\",\n                \"number\": \"9012345678\"\n            },\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Cool City\",\n                \"country\": \"EG\",\n                \"line1\": \"7A, Awesome Apartments\",\n                \"line2\": \"Sweet Street\",\n                \"postal_code\": \"123456\",\n                \"state\": \"Super State\"\n            },\n            \"bank\": {\n                \"account_number\": \"123456789\",\n                \"code\": \"ADIB\"\n            }\n        },\n        \"sender\": {\n            \"id\": \"sdr_Cv7RMxkjNu\",\n            \"name\": {\n                \"first\": \"Jake\",\n                \"middle\": \"Leo\",\n                \"last\": \"Smith\"\n            },\n            \"national_identification\": {\n                \"type\": \"NATIONAL_ID\",\n                \"identifier\": \"B01123075\",\n                \"expiration_date\": \"2027-08-23\"\n            },\n            \"phone\": {\n                \"country_code\": \"234\",\n                \"number\": \"8067554433\"\n            },\n            \"date_of_birth\": \"1994-04-09\",\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Lagos\",\n                \"country\": \"NG\",\n                \"line1\": \"Crystal estate\",\n                \"line2\": \"H2\",\n                \"postal_code\": \"100223 \",\n                \"state\": \"Lagos\"\n            }\n        },\n        \"meta\": {\n            \"username\": \"Madyson.Jones43\",\n            \"email\": \"[email protected]\"\n        },\n        \"created_datetime\": \"2025-06-25T10:21:45.104Z\"\n    }\n}\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"scheduled\",\n   \"disburse_option\":{\n      \"date_time\":\"2025-10-25 13:52:30\",\n      \"timezone\":\"UTC\"\n   },\n   \"reference\":\"95e25053-8ee4-42070-a29-af4004dyf9462d\",\n   \"narration\":\"Test transfer\",\n   \"meta\":{\n      \"username\":\"Madyson.Jones43\",\n      \"email\":\"[email protected]\"\n   },\n   \"payment_instruction\":{\n      \"source_currency\":\"EGP\",\n      \"amount\":{\n         \"applies_to\":\"source_currency\",\n         \"value\":100\n      },\n      \"recipient_id\":\"rcb_gFoQprtdrL\",\n      \"sender_id\":\"sdr_Cv7RMxkjNu\"\n   }\n}'\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer created\",\n    \"data\": {\n        \"id\": \"trf_vQSphUlHqnZywSnEoaOra\",\n        \"type\": \"bank\",\n        \"action\": \"scheduled\",\n        \"reference\": \"95e25053-8ee4-42070-a29-af4004dyf9462d\",\n        \"status\": \"NEW\",\n        \"narration\": \"Test transfer\",\n        \"source_currency\": \"EGP\",\n        \"destination_currency\": \"EGP\",\n        \"amount\": {\n            \"value\": 100,\n            \"applies_to\": \"source_currency\"\n        },\n        \"disburse_option\": {\n            \"date_time\": \"2025-10-25 13:52:30\",\n            \"timezone\": \"UTC\"\n        },\n        \"recipient\": {\n            \"type\": \"bank\",\n            \"id\": \"rcb_gFoQprtdrL\",\n            \"name\": {\n                \"first\": \"Steve\",\n                \"middle\": \"Jade\",\n                \"last\": \"Mark\"\n            },\n            \"currency\": \"EGP\",\n            \"national_identification\": {\n                \"type\": \"PASSPORT\",\n                \"identifier\": \"FLY998754\",\n                \"expiration_date\": \"2029-06-01\"\n            },\n            \"phone\": {\n                \"country_code\": \"20\",\n                \"number\": \"9012345678\"\n            },\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Cool City\",\n                \"country\": \"EG\",\n                \"line1\": \"7A, Awesome Apartments\",\n                \"line2\": \"Sweet Street\",\n                \"postal_code\": \"123456\",\n                \"state\": \"Super State\"\n            },\n            \"bank\": {\n                \"account_number\": \"123456789\",\n                \"code\": \"ADIB\"\n            }\n        },\n        \"sender\": {\n            \"id\": \"sdr_Cv7RMxkjNu\",\n            \"name\": {\n                \"first\": \"Jake\",\n                \"middle\": \"Leo\",\n                \"last\": \"Smith\"\n            },\n            \"national_identification\": {\n                \"type\": \"NATIONAL_ID\",\n                \"identifier\": \"B01123075\",\n                \"expiration_date\": \"2027-08-23\"\n            },\n            \"phone\": {\n                \"country_code\": \"234\",\n                \"number\": \"8067554433\"\n            },\n            \"date_of_birth\": \"1994-04-09\",\n            \"email\": \"[email protected]\",\n            \"address\": {\n                \"city\": \"Lagos\",\n                \"country\": \"NG\",\n                \"line1\": \"Crystal estate\",\n                \"line2\": \"H2\",\n                \"postal_code\": \"100223 \",\n                \"state\": \"Lagos\"\n            }\n        },\n        \"meta\": {\n            \"username\": \"Madyson.Jones43\",\n            \"email\": \"[email protected]\"\n        },\n        \"created_datetime\": \"2025-06-25T10:25:16.811Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n  \"webhook_id\": \"wbk_rp0bjKyAWA52ViM8xlZ0\",\n  \"timestamp\": 1739877172874,\n  \"type\": \"transfer.disburse\",\n  \"data\": {\n    \"id\": \"trf_yMZATJ11yVPNkZ\",\n    \"type\": \"BANK\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": 50000,\n    \"reference\": \"5748745ug8ufdgjhveyebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"bank\": {\n      \"account_number\": \"0122333334\",\n      \"code\": \"044\",\n      \"branch\": null,\n      \"name\": null,\n      \"routing_number\": null,\n      \"swift_code\": null\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"504828363550713897092362940989\"\n    },\n    \"meta\": {}\n  }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/{REPLACE_WITH_TRANSFER_ID}' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer fetched\",\n  \"data\": {\n    \"id\": \"trf_ighwLOK9pHxoo9\",\n    \"type\": \"bank\",\n    \"action\": \"instant\",\n    \"reference\": \"5748745ug8ufdgjhveyyeebjhcdbchb\",\n    \"status\": \"SUCCESSFUL\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"fee\": {\n      \"currency\": \"NGN\",\n      \"value\": 500\n    },\n    \"debit_information\": {\n      \"currency\": \"NGN\",\n      \"actual_debit_amount\": 50000,\n      \"rate_used\": 0.00123,\n      \"vat\": 3750\n    },\n    \"payment_information\": {\n      \"proof\": \"754119292904667985302775753026\"\n    },\n    \"callback_url\": \"https://webhook.site/352c4518-7797-4044-becc-669fc5b1e928\",\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"id\": \"rcb_TDk7vKxUkj\",\n      \"name\": {\n        \"first\": \"Ajadi\",\n        \"last\": \"Jackson\"\n      },\n      \"currency\": \"NGN\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2025-02-18T11:20:37.282Z\"\n  }\n}\n```\n\nExample:\n```json\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: <YOUR_UNIQUE_TRACE_ID>' \\\n--header 'X-Idempotency-Key: <YOUR_UNIQUE_INDEMPOTENCY_KEY>' \\\n--header 'X-Scenario-Key: scenario:successful' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 50000\n    },\n    \"recipient\": {\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"bank\",\n  \"reference\": \"{{YOUR_UNIQUE_REFERENCE}}\"\n}'\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer created\",\n  \"data\": {\n    \"id\": \"trf_pGoKPGH7rEgY4v\",\n    \"type\": \"bank\",\n    \"reference\": \"574874568ufdgjhvbjhcdbchb\",\n    \"status\": \"NEW\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 50000,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"recipient\": {\n      \"type\": \"bank\",\n      \"bank\": {\n        \"account_number\": \"0122333334\",\n        \"code\": \"044\"\n      }\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-05T12:36:20.069512926Z\"\n  }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.808Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":17,"totalLines":702,"estimatedTokens":4490}}165{"id":"doc-retrieve_a_customer-86ae9bdc","source":"documentation","title":"Retrieve a customer","url":"https://developer.flutterwave.com/v4.0/reference/customers_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.808Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}166{"id":"doc-general_transfer_flow-c375cede","source":"documentation","title":"General Transfer Flow","url":"https://developer.flutterwave.com/edit/general-transfer-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationGeneral Transfer FlowIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestMake payouts using our general transfer flow\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.808Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":273}}167{"id":"doc-bank_account_transfers-0ee48024","source":"documentation","title":"Bank Account Transfers","url":"https://developer.flutterwave.com/edit/bank-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationBank Account TransfersIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to make bank account transfers.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.808Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":273}}168{"id":"doc-create_a_refund-a322ebb5","source":"documentation","title":"Create a refund","url":"https://developer.flutterwave.com/v4.0/reference/refunds_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.809Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}169{"id":"doc-retrieve_a_refund-95f2acb3","source":"documentation","title":"Retrieve a refund","url":"https://developer.flutterwave.com/v4.0/reference/refunds_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.809Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}170{"id":"doc-mobile_money_transfers-51c2d4bf","source":"documentation","title":"Mobile Money Transfers","url":"https://developer.flutterwave.com/edit/mobile-money-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationMobile Money TransfersIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to make mobile money transfers.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.809Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":273}}171{"id":"doc-list_settlement-1fd0ee09","source":"documentation","title":"List settlement","url":"https://developer.flutterwave.com/v4.0/reference/settlement_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.809Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}172{"id":"doc-chargebacks-169c8f7d","source":"documentation","title":"Chargebacks","url":"https://developer.flutterwave.com/edit/chargebacks-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationChargebacksIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to handle customer's dispute on a transaction.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.809Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":274}}173{"id":"doc-transfer_orchestrator-df7af0ed","source":"documentation","title":"Transfer Orchestrator","url":"https://developer.flutterwave.com/edit/direct-transfer-flow","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationTransfer OrchestratorIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestMake payouts using our transfer orchestrator.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.809Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":274}}174{"id":"doc-wallet_to_wallet-a76d8fef","source":"documentation","title":"Wallet-to-Wallet","url":"https://developer.flutterwave.com/v4.0/docs/wallet-to-wallet","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n  \"action\": \"instant\",\n  \"payment_instruction\": {\n    \"source_currency\": \"NGN\",\n    \"amount\": {\n      \"applies_to\": \"destination_currency\",\n      \"value\": 100\n    },\n    \"recipient\": {\n      \"wallet\": {\n        \"provider\": \"flutterwave\",\n        \"identifier\": \"00118468\"\n      }\n    },\n    \"destination_currency\": \"NGN\"\n  },\n  \"type\": \"wallet\",\n  \"narration\": \"TESTING WALLET TRANSFERS\",\n  \"reference\": \"KYERIREYI-JGSJSJGSDJ\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_KDLtJacafRur4K\",\n      \"type\":\"wallet\",\n      \"action\":\"instant\",\n      \"reference\":\"KYERIREYI-JGSJSJGSDJ\",\n      \"status\":\"NEW\",\n      \"narration\":\"TESTING WALLET TRANSFERS\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":{\n         \"value\":100,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"wallet\",\n         \"id\":\"rcw_Gf547Peqq5\",\n         \"name\":{\n            \"first\":\"Ajadi\",\n            \"last\":\"Trailers & Co.\"\n         },\n         \"currency\":\"NGN\",\n         \"wallet\":{\n            \"provider\":\"flutterwave\",\n            \"identifier\":\"00118468\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T21:47:16.417Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_T1n3neXA7Wn52mnOIDBI\",\n   \"timestamp\":1749073636445,\n   \"type\":\"transfer.disburse\",\n   \"data\":{\n      \"id\":\"trf_KDLtJacafRur4K\",\n      \"type\":\"WALLET\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"NGN\",\n      \"amount\":100,\n      \"reference\":\"KYERIREYI-JGSJSJGSDJii\",\n      \"status\":\"SUCCESSFUL\",\n      \"wallet\":{\n         \"provider\":\"flutterwave\",\n         \"identifier\":\"00118468\"\n      },\n      \"fee\":{\n         \"currency\":\"NGN\",\n         \"value\":1\n      },\n      \"debit_information\":{\n         \"currency\":\"NGN\",\n         \"actual_debit_amount\":100,\n         \"rate_used\":0.00123,\n         \"vat\":7.5\n      },\n      \"payment_information\":{\n         \"proof\":\"489483145598277415954270427727\"\n      },\n      \"meta\":{}\n   }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n  \"status\": \"success\",\n  \"message\": \"Transfer fetched\",\n  \"data\": {\n    \"id\": \"trf_TovqwXP5McNbwI\",\n    \"type\": \"wallet\",\n    \"action\": \"instant\",\n    \"reference\": \"KYERIREYI-JGSJSJGSDJ\",\n    \"status\": \"NEW\",\n    \"narration\": \"TESTING WALLET TRANSFERS\",\n    \"source_currency\": \"NGN\",\n    \"destination_currency\": \"NGN\",\n    \"amount\": {\n      \"value\": 100,\n      \"applies_to\": \"destination_currency\"\n    },\n    \"recipient\": {\n      \"type\": \"wallet\",\n      \"currency\": \"NGN\",\n      \"wallet\": {\n        \"provider\": \"flutterwave\",\n        \"identifier\": \"00118468\"\n      },\n      \"id\": \"rcw_MZGa8LPctK\"\n    },\n    \"meta\": {},\n    \"created_datetime\": \"2024-12-11T08:57:49.040Z\"\n  }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"failed\",\n   \"error\":{\n      \"type\":\"TRANSFER_NOT_FOUND\",\n      \"code\":\"301404\",\n      \"message\":\"Transfer not found\",\n      \"validation_errors\":[\n         \n      ]\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.811Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":6,"totalLines":164,"estimatedTokens":940}}175{"id":"doc-mobile_money_transfers-8d4a227b","source":"documentation","title":"Mobile Money Transfers","url":"https://developer.flutterwave.com/v4.0/docs/mobile-money-1","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MTN\",\n            \"msisdn\":\"2339012345678\"\n         }\n      },\n      \"destination_currency\":\"GHS\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"GHS MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00107099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"Mpesa\",\n            \"msisdn\":\"2549012345678\"\n         }\n      },\n      \"destination_currency\":\"KES\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"KES MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001GVSDVDSU2Y\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John \",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"msisdn\":\"2559012345678\",\n            \"network\":\"airtel\"\n         }\n      },\n      \"destination_currency\":\"TZS\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"TZS MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001JEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"orangemoney\",\n            \"country\":\"CM\",\n            \"msisdn\":\"23709929220\"\n         }\n      },\n      \"destination_currency\":\"XAF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"XAF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00100IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"wave\",\n            \"country\":\"CI\",\n            \"msisdn\":\"22509929220\"\n         }\n      },\n      \"destination_currency\":\"XOF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-0010099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"EMONEY\",\n            \"country\":\"SN\",\n            \"msisdn\":\"22109929220\"\n         }\n      },\n      \"destination_currency\":\"XOF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00108099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2509012345678\"\n         }\n      },\n      \"destination_currency\":\"RWF\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"RWF MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-00147099IEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"AIRTELMW\",\n            \"msisdn\":\"2659012345678\"\n         }\n      },\n      \"destination_currency\":\"MWK\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"MWK MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001JYDWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"ETBAMOLE\",\n            \"msisdn\":\"2519012345678\"\n         }\n      },\n      \"destination_currency\":\"ETB\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"ETB MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001JYDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2569012345678\"\n         }\n      },\n      \"destination_currency\":\"UGX\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"UGX MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001OEDeWDSUYB\"\n}'\n```\n\nExample:\n```curl\ncurl --request POST \\\n--url 'https://developersandbox-api.flutterwave.com/direct-transfers' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n--data '{\n   \"action\":\"instant\",\n   \"payment_instruction\":{\n      \"source_currency\":\"NGN\",\n      \"amount\":{\n         \"applies_to\":\"destination_currency\",\n         \"value\":1000\n      },\n      \"recipient\":{\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2609012345678\"\n         }\n      },\n      \"destination_currency\":\"ZMW\"\n   },\n   \"type\":\"mobile_money\",\n   \"narration\":\"ZMW MOMO TRANSFER EXAMPLE\",\n   \"reference\":\"REF-001O9EDeWDSUYB\"\n}'\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_5JnyBhdTdj42zA\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00107099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"GHS MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"GHS\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_R8XvW9gXRP\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"GHS\",\n         \"mobile_money\":{\n            \"network\":\"MTN\",\n            \"msisdn\":\"2339012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:10:38.039Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_MNk7e9ups3VgZh\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001GVSDVDSU2Y\",\n      \"status\":\"NEW\",\n      \"narration\":\"KES MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"KES\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_VgJamvD4fE\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"KES\",\n         \"mobile_money\":{\n            \"network\":\"Mpesa\",\n            \"msisdn\":\"2549012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:21:47.932Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_O13h3LmPak5LBk\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001JEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"TZS MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"TZS\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_MQzTgQgkQe\",\n         \"name\":{\n            \"first\":\"John \",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"TZS\",\n         \"mobile_money\":{\n            \"network\":\"airtel\",\n            \"msisdn\":\"2559012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:31:11.232Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_fTdRGZIG7OGe20\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00100IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"XAF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"XAF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_8z3I4ICHIL\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"XAF\",\n         \"mobile_money\":{\n            \"network\":\"orangemoney\",\n            \"country\":\"CM\",\n            \"msisdn\":\"23709929220\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:35:12.797Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_EJ2vQnQvFzeBFK\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-0010099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"XOF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_c1ZhDIPcm7\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"XOF\",\n         \"mobile_money\":{\n            \"network\":\"wave\",\n            \"country\":\"CI\",\n            \"msisdn\":\"22509929220\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:39:23.780Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_p5kyu7ZCrgQpgI\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00108099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"XOF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"XOF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_ckorR5bbk0\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"XOF\",\n         \"mobile_money\":{\n            \"network\":\"EMONEY\",\n            \"country\":\"SN\",\n            \"msisdn\":\"22109929220\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:43:40.755Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_pZwUKMs9usU5QD\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-00147099IEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"RWF MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"RWF\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"RWF\",\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2509012345678\"\n         },\n         \"id\":\"rcm_q1boxqkoC3\"\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-13T05:13:14.569373217Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_ESaFaZjxqnNmm2\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001JYDWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"MWK MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"MWK\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_YfQrGYgC5B\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"MWK\",\n         \"mobile_money\":{\n            \"network\":\"AIRTELMW\",\n            \"msisdn\":\"2659012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:49:04.563Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_ktnCglatt92k8n\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001JYDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"ETB MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"ETB\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_uodrObhEa5\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"ETB\",\n         \"mobile_money\":{\n            \"network\":\"ETBAMOLE\",\n            \"msisdn\":\"2519012345678\"\n         }\n      },\n      \"meta\":{},\n      \"created_datetime\":\"2025-06-04T18:51:36.235Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_V5zoB57shPwgac\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001OEDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"UGX MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"UGX\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_yJBzZTFEnj\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"UGX\",\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2569012345678\"\n         }\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-12T12:59:15.403332030Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"success\",\n   \"message\":\"Transfer created\",\n   \"data\":{\n      \"id\":\"trf_ejDNIQngjLzUTx\",\n      \"type\":\"mobile_money\",\n      \"action\":\"instant\",\n      \"reference\":\"REF-001O9EDeWDSUYB\",\n      \"status\":\"NEW\",\n      \"narration\":\"ZMW MOMO TRANSFER EXAMPLE\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"ZMW\",\n      \"amount\":{\n         \"value\":1000,\n         \"applies_to\":\"destination_currency\"\n      },\n      \"recipient\":{\n         \"type\":\"mobile_money\",\n         \"id\":\"rcm_1aaTfsip3I\",\n         \"name\":{\n            \"first\":\"John\",\n            \"last\":\"Doe\"\n         },\n         \"currency\":\"ZMW\",\n         \"mobile_money\":{\n            \"network\":\"MPS\",\n            \"msisdn\":\"2609012345678\"\n         }\n      },\n      \"meta\":{\n         \n      },\n      \"created_datetime\":\"2024-12-12T13:02:53.774008555Z\"\n   }\n}\n```\n\nExample:\n```json\n{\n   \"webhook_id\":\"wbk_emXAIzd4Dd7495SG3NOX\",\n   \"timestamp\":1749071772784,\n   \"type\":\"transfer.disburse\",\n   \"data\":{\n      \"id\":\"trf_Fj62qmZOhSneRu\",\n      \"type\":\"MOBILE_MONEY\",\n      \"source_currency\":\"NGN\",\n      \"destination_currency\":\"KES\",\n      \"amount\":1000,\n      \"reference\":\"REF-001GVSDVDSU2Yhgu\",\n      \"status\":\"SUCCESSFUL\",\n      \"mobile_money\":{\n         \"network\":\"Mpesa\",\n         \"country\":null,\n         \"msisdn\":\"2549012345678\"\n      },\n      \"fee\":{\n         \"currency\":\"KES\",\n         \"value\":10\n      },\n      \"debit_information\":{\n         \"currency\":\"KES\",\n         \"actual_debit_amount\":1000,\n         \"rate_used\":0.00123,\n         \"vat\":75\n      },\n      \"payment_information\":{\n         \"proof\":\"815423162782592573350591343763\"\n      },\n      \"meta\":{}\n   }\n}\n```\n\nExample:\n```json\ncurl --request GET \\\n--url 'https://developersandbox-api.flutterwave.com/transfers/id' \\\n--header 'Authorization: Bearer {{YOUR_ACCESS_TOKEN}}' \\\n--header 'Content-Type: application/json' \\\n--header 'X-Trace-Id: {{YOUR_UNIQUE_TRACE_ID}}' \\\n--header 'X-Idempotency-Key: {{YOUR_UNIQUE_INDEMPOTENCY_KEY}}' \\\n```\n\nExample:\n```json\n{\n    \"status\": \"success\",\n    \"message\": \"Transfer fetched\",\n    \"data\": {\n        \"id\": \"trf_Hu3QERCeuWk8\",\n        \"type\": \"mobile_money\",\n        \"reference\": \"4dc065cc-08a3-4158-9f9b-e4e2f79120e7\",\n        \"status\": \"NEW\",\n        \"narration\": \"Testing transfers\",\n        \"source_currency\": \"NGN\",\n        \"destination_currency\": \"RWF\",\n        \"amount\": {\n            \"value\": 1000,\n            \"applies_to\": \"source_currency\"\n        },\n        \"callback_url\": \"https://www.flutterwave.com\",\n        \"recipient\": {\n            \"type\": \"mobile_money\",\n            \"name\": {\n                \"first\": \"Jane\",\n                \"middle\": \"The\",\n                \"last\": \"Janet\"\n            },\n            \"mobile_money\": {\n                \"network\": \"MPS\",\n                \"msisdn\": \"9012345678\"\n            }\n        },\n        \"meta\": {},\n        \"created_datetime\": \"2024-11-21T08:52:37.845Z\"\n    }\n}\n```\n\nExample:\n```json\n{\n   \"status\":\"failed\",\n   \"error\":{\n      \"type\":\"TRANSFER_NOT_FOUND\",\n      \"code\":\"301404\",\n      \"message\":\"Transfer not found\",\n      \"validation_errors\":[\n         \n      ]\n   }\n}\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.812Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":26,"totalLines":894,"estimatedTokens":5392}}176{"id":"doc-rate_conversion-25d74307","source":"documentation","title":"Rate conversion","url":"https://developer.flutterwave.com/v4.0/reference/transfer_rates_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.812Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}177{"id":"doc-create_a_chargeback-71d1177e","source":"documentation","title":"Create a chargeback","url":"https://developer.flutterwave.com/v4.0/reference/chargebacks_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.812Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}178{"id":"doc-create_a_transfer_recipient-f12b3f8c","source":"documentation","title":"Create a transfer recipient","url":"https://developer.flutterwave.com/v4.0/reference/transfers_recipients_create","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.813Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}179{"id":"doc-retrieve_a_transfer-5bd54c28","source":"documentation","title":"Retrieve a transfer","url":"https://developer.flutterwave.com/v4.0/reference/transfer_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.813Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}180{"id":"doc-initiate_an_orchestrator_transfer-92e39d8e","source":"documentation","title":"Initiate an Orchestrator transfer.","url":"https://developer.flutterwave.com/v4.0/reference/direct_transfers_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.813Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}181{"id":"doc-update_a_transfer-79ae5d95","source":"documentation","title":"Update a transfer","url":"https://developer.flutterwave.com/v4.0/reference/transfer_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.813Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}182{"id":"doc-opay-6f8fdb2a","source":"documentation","title":"OPay","url":"https://developer.flutterwave.com/edit/opay","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationOPayIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestCollect payments from OPay wallets\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.813Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":267}}183{"id":"doc-pay_with_bank_transfer-22c118d5","source":"documentation","title":"Pay With Bank Transfer","url":"https://developer.flutterwave.com/edit/pay-with-bank-transfer","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationPay With Bank TransferIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestReceive Bank transfer payments for NGN transactions.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.813Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":276}}184{"id":"doc-update_a_chargeback-796ea7ac","source":"documentation","title":"Update a chargeback","url":"https://developer.flutterwave.com/v4.0/reference/chargeback_put","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.814Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}185{"id":"doc-list_chargebacks-916fb3c4","source":"documentation","title":"List chargebacks","url":"https://developer.flutterwave.com/v4.0/reference/chargebacks_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.814Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}186{"id":"doc-real_time_fx_conversion-1d6a04b0","source":"documentation","title":"Real-time FX conversion","url":"https://developer.flutterwave.com/edit/real-time-fx-conversion","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationReal-time FX conversionIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestManage conversion rates with ease using our FX endpoints.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.814Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":277}}187{"id":"doc-loan_disbursements-998a668e","source":"documentation","title":"Loan disbursements","url":"https://developer.flutterwave.com/edit/managing-instant-loan-disbursements","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationLoan disbursementsIntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestLearn how to disburse loan payments to customers using our Payout and Bank APIs.\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.814Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":282}}188{"id":"doc-pay_with_bank_ng-b40c5f78","source":"documentation","title":"Pay with Bank (NG)","url":"https://developer.flutterwave.com/edit/ng-bank-account","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nJump to ContentDocumentationAPI ReferencesSupportBlogAsk AIHomeDocumentationRecipesAPI Referencesv2.0.0v3.0.0v4.0.0DocumentationAPI ReferencesSupportBlogAsk AIDocumentationv4.0.0DocumentationPay with Bank (NG)IntroductionGetting StartedQuickstartCharging a CardMaking a TransferIntegration JourneyCore ConceptsEnvironmentsAuthenticationSupported Request HeadersEncryptionErrorsWebhooksIdempotencyTestingBest PracticesCollections - inflowIntroductionGeneral FlowOrchestrator FlowCard PaymentsMobile MoneyPay With Bank TransferPay with Bank (NG)USSDOPayPayouts - OutflowsIntroductionGeneral Transfer FlowTransfer OrchestratorBank Account TransfersMobile Money TransfersWallet-to-WalletStablecoinsPayment OperationsSettlementsRefundsChargebacksReporting VATUse casesFintechsBanks and OFIsTravel and HospitalityE-CommerceRemittanceTelecommunicationsAPI WorkflowsLoan disbursementsReal-time FX conversionSuggestDebit your Customer's Bank account\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.814Z","totalSectionsIncluded":2,"totalCodeBlocksIncluded":0,"totalLines":5,"estimatedTokens":270}}189{"id":"doc-retrieve_bank_branches-e2f45013","source":"documentation","title":"Retrieve bank branches","url":"https://developer.flutterwave.com/v4.0/reference/bank_branches_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.814Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}190{"id":"doc-create_a_transfer_sender-fb005a85","source":"documentation","title":"Create a transfer sender","url":"https://developer.flutterwave.com/v4.0/reference/transfers_senders_create","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.814Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}191{"id":"doc-retrieve_mobile_networks-64f55829","source":"documentation","title":"Retrieve mobile networks","url":"https://developer.flutterwave.com/v4.0/reference/mobile_networks_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.815Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}192{"id":"doc-retrieve_banks-d1992d3f","source":"documentation","title":"Retrieve banks","url":"https://developer.flutterwave.com/v4.0/reference/banks_get","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.815Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}193{"id":"doc-create_a_transfer-7d04c47a","source":"documentation","title":"Create a transfer","url":"https://developer.flutterwave.com/v4.0/reference/transfers_post","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.815Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}194{"id":"doc-list_transfer_senders-1f331901","source":"documentation","title":"List transfer senders","url":"https://developer.flutterwave.com/reference/transfers_senders_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.815Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}195{"id":"doc-list_refunds-c7679560","source":"documentation","title":"List refunds","url":"https://developer.flutterwave.com/reference/refunds_list","text":"For AI https://developer.flutterwave.com/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.\n\nExample:\n```text\nLoading…\n```\n\n<|endofdoc|>","metadata":{"transformedAt":"2026-08-18T15:16:38.815Z","totalSectionsIncluded":1,"totalCodeBlocksIncluded":1,"totalLines":8,"estimatedTokens":42}}196