VendorsBeta
Manages vendor records for accounts payable and purchase order workflows. Supports vendor creation, retrieval, listing with filters, and sync status updates for integration with external accounting systems.
GET /api/v1/spend/vendorsGET /api/v1/spend/vendors/{id}POST /api/v1/spend/vendors/{id}/syncPOST /api/v1/spend/vendors/create
List vendors
GET /api/v1/spend/vendors
Returns a list of vendors filtered by the specified query parameters.
Filter by vendor external unique identifier.
Filter by vendors created after this timestamp (inclusive) in ISO8601 format. If not specified, defaults to last 30 days from to_created_at.
Filter by vendors updated after this timestamp (inclusive) in ISO8601 format.
Filter by legal entity unique identifier.
A bookmark for use in pagination to retrieve either the next page or the previous page of results. You can fetch the value for this identifier from the response of the previous API call.
Filter by vendor status. Possible values are DRAFT, AWAITING_APPROVAL, ACTIVE, ARCHIVED.
Filter by sync status. Possible values are NOT_SYNCED, SYNCED, SYNC_FAILED.
Filter by vendors created before this timestamp (exclusive) in ISO8601 format. If not specified, defaults to now.
Filter by vendors updated before this timestamp (exclusive) in ISO8601 format.
List of items returned.
List of user emails who can approve the vendor.
List of file attachments associated with the vendor.
MIME type of the attached file. Common types include image/jpeg, image/png, and application/pdf.
Timestamp for when the resource was created in ISO8601 format.
Original filename of the uploaded attachment, including the file extension.
URL to access and download the attachment file. Authentication is required.
Unique identifier of the attachment.
List of comments associated with the vendor.
Text body of the comment.
Timestamp for when the resource was created in ISO8601 format.
Email address of the user who created this comment. Used for attribution, notifications, and audit trail tracking.
Contacts associated with this vendor.
Full name of the vendor contact.
Email address of the vendor contact.
Phone number in E.164 format.
Timestamp for when the resource was created in ISO8601 format.
Unique identifier of the vendor.
Unique identifiers of the legal entities associated with this vendor.
Display name of the vendor.
Vendor status. Possible values are DRAFT, AWAITING_APPROVAL, ACTIVE, ARCHIVED.
Sync status for an accounting system. Possible values are NOT_SYNCED, SYNCED, SYNC_FAILED.
Timestamp for when the resource was updated in ISO8601 format.
Address.
City, district, suburb, or town.
Country code (ISO 3166-1 alpha-2).
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Postal/ZIP code.
State, province, or region.
Street address line.
Business/legal name of the vendor.
Business registration number of the vendor.
Country of the vendor, as an ISO 3166-1 alpha-2 country code.
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
External identifier for this vendor in your system.
Email of the internal owner responsible for managing this vendor.
Error message describing the sync failure reason, populated when the sync status is updated via the API. Null when no sync error has occurred.
A pointer to the end of the page list used in pagination to retrieve the next page of results.
A pointer to the start of the page list use in pagination to retrieve the previous page of results.
| Error status | Description |
|---|---|
| 400 | Invalid Request. |
| 404 | Not found. |
| 500 | Internal server error. |
$curl --request GET \> --url 'https://api.airwallex.com/api/v1/spend/vendors' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "items": [3 {4 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",5 "legal_entity_ids": [6 "le_U3jlHqQRNHWn2zAKeeT8sg",7 "le_V4kmIrRSOMXo3bBLffU9th"8 ],9 "name": "Airwallex",10 "business_name": "Airwallex Pty Ltd",11 "country_code": "US",12 "address": {13 "street_address": "123 Main Street",14 "city": "San Francisco",15 "state": "California",16 "postcode": "94105",17 "country_code": "US"18 },19 "status": "ACTIVE",20 "sync_status": "SYNCED",21 "sync_error_message": "Failed to sync vendor: a vendor with this name already exists.",22 "approvers": [23 "[email protected]",24 "[email protected]"25 ],26 "owner_email": "[email protected]",27 "business_registration_number": "123456789",28 "external_id": "VENDOR-EXT-001",29 "contacts": [30 {31 "contact_name": "Airwallex",32 "email": "[email protected]",33 "phone_number": "+61499999999"34 }35 ],36 "attachments": [37 {38 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",39 "content_type": "image/jpeg",40 "file_name": "flight_receipt.jpg",41 "file_url": "https://www.airwallex.com/flight_receipt.jpg",42 "created_at": "2025-02-02T00:00:00Z"43 }44 ],45 "comments": [46 {47 "content": "Expense approved - valid business purpose confirmed",48 "created_by": "[email protected]",49 "created_at": "2025-01-01T00:00:00Z"50 }51 ],52 "created_at": "2025-01-01T00:00:00Z",53 "updated_at": "2025-02-02T00:00:00Z"54 }55 ],56 "page_after": "eyJwYWdlX2JlZm9yZSI6IjIwMjUtMDctMDFUMDA6MDA6MDBaIn0=",57 "page_before": "eyJwYWdlX2JlZm9yZSI6IjIwMjUtMDctMDFUMDA6MDA6MDBaIn0="58}
Get vendor
GET /api/v1/spend/vendors/{id}
Retrieves the details of an existing vendor.
Unique identifier of the vendor.
Address.
City, district, suburb, or town.
Country code (ISO 3166-1 alpha-2).
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Postal/ZIP code.
State, province, or region.
Street address line.
List of user emails who can approve the vendor.
List of file attachments associated with the vendor.
MIME type of the attached file. Common types include image/jpeg, image/png, and application/pdf.
Timestamp for when the resource was created in ISO8601 format.
Original filename of the uploaded attachment, including the file extension.
URL to access and download the attachment file. Authentication is required.
Unique identifier of the attachment.
Business/legal name of the vendor.
Business registration number of the vendor.
List of comments associated with the vendor.
Text body of the comment.
Timestamp for when the resource was created in ISO8601 format.
Email address of the user who created this comment. Used for attribution, notifications, and audit trail tracking.
Contacts associated with this vendor.
Full name of the vendor contact.
Email address of the vendor contact.
Phone number in E.164 format.
Country of the vendor, as an ISO 3166-1 alpha-2 country code.
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Timestamp for when the resource was created in ISO8601 format.
External identifier for this vendor in your system.
Unique identifier of the vendor.
Unique identifiers of the legal entities associated with this vendor.
Display name of the vendor.
Email of the internal owner responsible for managing this vendor.
Vendor status. Possible values are DRAFT, AWAITING_APPROVAL, ACTIVE, ARCHIVED.
Error message describing the sync failure reason, populated when the sync status is updated via the API. Null when no sync error has occurred.
Sync status for an accounting system. Possible values are NOT_SYNCED, SYNCED, SYNC_FAILED.
Timestamp for when the resource was updated in ISO8601 format.
| Error status | Description |
|---|---|
| 400 | Invalid Request. |
| 404 | Not found. |
| 500 | Internal server error. |
$curl --request GET \> --url 'https://api.airwallex.com/api/v1/spend/vendors/vendor_id' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json'
1{2 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",3 "legal_entity_ids": [4 "le_U3jlHqQRNHWn2zAKeeT8sg",5 "le_V4kmIrRSOMXo3bBLffU9th"6 ],7 "name": "Airwallex",8 "business_name": "Airwallex Pty Ltd",9 "country_code": "US",10 "address": {11 "street_address": "123 Main Street",12 "city": "San Francisco",13 "state": "California",14 "postcode": "94105",15 "country_code": "US"16 },17 "status": "ACTIVE",18 "sync_status": "SYNCED",19 "sync_error_message": "Failed to sync vendor: a vendor with this name already exists.",20 "approvers": [21 "[email protected]",22 "[email protected]"23 ],24 "owner_email": "[email protected]",25 "business_registration_number": "123456789",26 "external_id": "VENDOR-EXT-001",27 "contacts": [28 {29 "contact_name": "Airwallex",30 "email": "[email protected]",31 "phone_number": "+61499999999"32 }33 ],34 "attachments": [35 {36 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",37 "content_type": "image/jpeg",38 "file_name": "flight_receipt.jpg",39 "file_url": "https://www.airwallex.com/flight_receipt.jpg",40 "created_at": "2025-02-02T00:00:00Z"41 }42 ],43 "comments": [44 {45 "content": "Expense approved - valid business purpose confirmed",46 "created_by": "[email protected]",47 "created_at": "2025-01-01T00:00:00Z"48 }49 ],50 "created_at": "2025-01-01T00:00:00Z",51 "updated_at": "2025-02-02T00:00:00Z"52}
Update vendor sync status
POST /api/v1/spend/vendors/{id}/sync
Updates the sync status of a vendor.
Unique identifier of the vendor.
Sync status for an accounting system. Possible values are NOT_SYNCED, SYNCED, SYNC_FAILED.
Error message for sync failures. Only applicable when sync_status is SYNC_FAILED.
Address.
City, district, suburb, or town.
Country code (ISO 3166-1 alpha-2).
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Postal/ZIP code.
State, province, or region.
Street address line.
List of user emails who can approve the vendor.
List of file attachments associated with the vendor.
MIME type of the attached file. Common types include image/jpeg, image/png, and application/pdf.
Timestamp for when the resource was created in ISO8601 format.
Original filename of the uploaded attachment, including the file extension.
URL to access and download the attachment file. Authentication is required.
Unique identifier of the attachment.
Business/legal name of the vendor.
Business registration number of the vendor.
List of comments associated with the vendor.
Text body of the comment.
Timestamp for when the resource was created in ISO8601 format.
Email address of the user who created this comment. Used for attribution, notifications, and audit trail tracking.
Contacts associated with this vendor.
Full name of the vendor contact.
Email address of the vendor contact.
Phone number in E.164 format.
Country of the vendor, as an ISO 3166-1 alpha-2 country code.
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Timestamp for when the resource was created in ISO8601 format.
External identifier for this vendor in your system.
Unique identifier of the vendor.
Unique identifiers of the legal entities associated with this vendor.
Display name of the vendor.
Email of the internal owner responsible for managing this vendor.
Vendor status. Possible values are DRAFT, AWAITING_APPROVAL, ACTIVE, ARCHIVED.
Error message describing the sync failure reason, populated when the sync status is updated via the API. Null when no sync error has occurred.
Sync status for an accounting system. Possible values are NOT_SYNCED, SYNCED, SYNC_FAILED.
Timestamp for when the resource was updated in ISO8601 format.
| Error status | Description |
|---|---|
| 400 | Invalid Request. |
| 404 | Not found. |
| 500 | Internal server error. |
$curl --request POST \> --url 'https://api.airwallex.com/api/v1/spend/vendors/vendor_id/sync' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "sync_status": "SYNC_FAILED",> "sync_error_message": "Failed to sync vendor: a vendor with this name already exists.">}'
1{2 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",3 "legal_entity_ids": [4 "le_U3jlHqQRNHWn2zAKeeT8sg",5 "le_V4kmIrRSOMXo3bBLffU9th"6 ],7 "name": "Airwallex",8 "business_name": "Airwallex Pty Ltd",9 "country_code": "US",10 "address": {11 "street_address": "123 Main Street",12 "city": "San Francisco",13 "state": "California",14 "postcode": "94105",15 "country_code": "US"16 },17 "status": "ACTIVE",18 "sync_status": "SYNCED",19 "sync_error_message": "Failed to sync vendor: a vendor with this name already exists.",20 "approvers": [21 "[email protected]",22 "[email protected]"23 ],24 "owner_email": "[email protected]",25 "business_registration_number": "123456789",26 "external_id": "VENDOR-EXT-001",27 "contacts": [28 {29 "contact_name": "Airwallex",30 "email": "[email protected]",31 "phone_number": "+61499999999"32 }33 ],34 "attachments": [35 {36 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",37 "content_type": "image/jpeg",38 "file_name": "flight_receipt.jpg",39 "file_url": "https://www.airwallex.com/flight_receipt.jpg",40 "created_at": "2025-02-02T00:00:00Z"41 }42 ],43 "comments": [44 {45 "content": "Expense approved - valid business purpose confirmed",46 "created_by": "[email protected]",47 "created_at": "2025-01-01T00:00:00Z"48 }49 ],50 "created_at": "2025-01-01T00:00:00Z",51 "updated_at": "2025-02-02T00:00:00Z"52}
Create vendor
POST /api/v1/spend/vendors/create
Creates a new vendor.
External identifier for this vendor in your system.
List of unique identifiers of the legal entities associated with the vendor.
Name of the vendor.
Unique identifier for this request to ensure idempotency. To prevent accidental duplication, clients should generate a random UUID.
Vendor status. Possible values are DRAFT, AWAITING_APPROVAL, ACTIVE, ARCHIVED.
Sync status for an accounting system. Possible values are NOT_SYNCED, SYNCED, SYNC_FAILED.
Address.
City, district, suburb, or town.
Country code (ISO 3166-1 alpha-2).
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Postal/ZIP code.
State, province, or region.
Street address line.
Business/legal name of the vendor.
Business registration number of the vendor.
List of vendor contacts associated with the vendor.
Full name of the vendor contact.
Email address of the vendor contact.
Phone number in E.164 format.
Country code of the vendor (ISO 3166-1 alpha-2).
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Email of the vendor owner.
Address.
City, district, suburb, or town.
Country code (ISO 3166-1 alpha-2).
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Postal/ZIP code.
State, province, or region.
Street address line.
List of user emails who can approve the vendor.
List of file attachments associated with the vendor.
MIME type of the attached file. Common types include image/jpeg, image/png, and application/pdf.
Timestamp for when the resource was created in ISO8601 format.
Original filename of the uploaded attachment, including the file extension.
URL to access and download the attachment file. Authentication is required.
Unique identifier of the attachment.
Business/legal name of the vendor.
Business registration number of the vendor.
List of comments associated with the vendor.
Text body of the comment.
Timestamp for when the resource was created in ISO8601 format.
Email address of the user who created this comment. Used for attribution, notifications, and audit trail tracking.
Contacts associated with this vendor.
Full name of the vendor contact.
Email address of the vendor contact.
Phone number in E.164 format.
Country of the vendor, as an ISO 3166-1 alpha-2 country code.
UNDEFINED, AC, AD, AE, AF, AG, AI, AL, AM, AN, AO, AQ, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BQ, BR, BS, BT, BU, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CP, CR, CS, CU, CV, CW, CX, CY, CZ, DE, DG, DJ, DK, DM, DO, DZ, EA, EC, EE, EG, EH, ER, ES, ET, EU, EZ, FI, FJ, FK, FM, FO, FR, FX, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, IC, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NT, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, SS, ST, SU, SV, SX, SY, SZ, TA, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TP, TR, TT, TV, TW, TZ, UA, UG, UK, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, XI, XU, XK, YE, YT, YU, ZA, ZM, ZR, ZW
Timestamp for when the resource was created in ISO8601 format.
External identifier for this vendor in your system.
Unique identifier of the vendor.
Unique identifiers of the legal entities associated with this vendor.
Display name of the vendor.
Email of the internal owner responsible for managing this vendor.
Vendor status. Possible values are DRAFT, AWAITING_APPROVAL, ACTIVE, ARCHIVED.
Error message describing the sync failure reason, populated when the sync status is updated via the API. Null when no sync error has occurred.
Sync status for an accounting system. Possible values are NOT_SYNCED, SYNCED, SYNC_FAILED.
Timestamp for when the resource was updated in ISO8601 format.
| Error status | Description |
|---|---|
| 400 | Invalid Request. |
| 404 | Not found. |
| 500 | Internal server error. |
$curl --request POST \> --url 'https://api.airwallex.com/api/v1/spend/vendors/create' \> --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \> --header 'Content-Type: application/json' \> --data '{> "request_id": "985461d5-016f-4e1f-a387-5f1380b42d92",> "external_id": "VENDOR-EXT-001",> "name": "Airwallex",> "legal_entity_ids": [> "le_U3jlHqQRNHWn2zAKeeT8sg",> "le_V4kmIrRSOMXo3bBLffU9th"> ],> "status": "ACTIVE",> "sync_status": "SYNCED",> "owner_email": "[email protected]",> "business_registration_number": "123456789",> "business_name": "Airwallex Pty Ltd",> "country_code": "US",> "address": {> "street_address": "123 Main Street",> "city": "San Francisco",> "state": "California",> "postcode": "94105",> "country_code": "US"> },> "contacts": [> {> "contact_name": "Airwallex",> "email": "[email protected]",> "phone_number": "+61499999999"> }> ]>}'
1{2 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",3 "legal_entity_ids": [4 "le_U3jlHqQRNHWn2zAKeeT8sg",5 "le_V4kmIrRSOMXo3bBLffU9th"6 ],7 "name": "Airwallex",8 "business_name": "Airwallex Pty Ltd",9 "country_code": "US",10 "address": {11 "street_address": "123 Main Street",12 "city": "San Francisco",13 "state": "California",14 "postcode": "94105",15 "country_code": "US"16 },17 "status": "ACTIVE",18 "sync_status": "SYNCED",19 "sync_error_message": "Failed to sync vendor: a vendor with this name already exists.",20 "approvers": [21 "[email protected]",22 "[email protected]"23 ],24 "owner_email": "[email protected]",25 "business_registration_number": "123456789",26 "external_id": "VENDOR-EXT-001",27 "contacts": [28 {29 "contact_name": "Airwallex",30 "email": "[email protected]",31 "phone_number": "+61499999999"32 }33 ],34 "attachments": [35 {36 "id": "985461d5-016f-4e1f-a387-5f1380b42d92",37 "content_type": "image/jpeg",38 "file_name": "flight_receipt.jpg",39 "file_url": "https://www.airwallex.com/flight_receipt.jpg",40 "created_at": "2025-02-02T00:00:00Z"41 }42 ],43 "comments": [44 {45 "content": "Expense approved - valid business purpose confirmed",46 "created_by": "[email protected]",47 "created_at": "2025-01-01T00:00:00Z"48 }49 ],50 "created_at": "2025-01-01T00:00:00Z",51 "updated_at": "2025-02-02T00:00:00Z"52}